Niedzielski has uploaded a new change for review. (
https://gerrit.wikimedia.org/r/387583 )
Change subject: Chore: upgrade dependencies
......................................................................
Chore: upgrade dependencies
• preact v8.2.5 → 8.2.6
• Fix: AnyComponent type to allow parameterized class usage. (Removed
workaround in preact-utils.ts.)
• Update: add link preload "as" to HTMLAttributes type definition.
(Removed workarounds in html-page.ts.)
• (Added a workaround for preact/debug to the Webpack config.)
https://github.com/developit/preact/releases/tag/8.2.6
• ts-loader v2.3.7 → 3.1.1
Drop support for typescript < 2.0. This upgrade causes an error
compiling node_modules so this patch temporarily disables the
"checkJs" TypeScript compiler option.
https://github.com/TypeStrong/ts-loader/releases/tag/v3.0.0
https://github.com/TypeStrong/ts-loader/releases/tag/v3.0.3
https://github.com/TypeStrong/ts-loader/releases/tag/v3.0.4
https://github.com/TypeStrong/ts-loader/releases/tag/v3.0.5
https://github.com/TypeStrong/ts-loader/releases/tag/v3.1.0
https://github.com/TypeStrong/ts-loader/releases/tag/v3.1.1
• domino v1.0.29 → 1.0.30
https://github.com/fgnass/domino/blob/b4cacbb/CHANGELOG.md#domino-1030-24-oct-2017
• path-to-regexp v2.0.0 → 2.1.0
https://github.com/pillarjs/path-to-regexp/blob/b0b9a92/History.md#210--2017-10-20
• webpack-dev-server v2.9.2 → 2.9.3
https://github.com/webpack/webpack-dev-server/releases/tag/v2.9.3
• extract-text-webpack-plugin v3.0.1 → 3.0.2
https://github.com/webpack-contrib/extract-text-webpack-plugin/releases/tag/v3.0.2
• typescript-eslint-parser v8.0.0 → 8.0.1
https://github.com/eslint/typescript-eslint-parser/releases/tag/v8.0.1
• eslint v4.8.0 → 4.10.0
Lots of changes as per usual. It's unclear why there's a version minor
bump to v4.10.0.
https://github.com/eslint/eslint/releases/tag/v4.9.0
https://github.com/eslint/eslint/releases/tag/v4.10.0
• eslint-plugin-import v2.7.0 → 2.8.0
https://github.com/benmosher/eslint-plugin-import/blob/4071379/CHANGELOG.md#280---2017-10-18
• sinon v4.0.1 → 4.0.2
https://github.com/sinonjs/sinon/blob/39e5737/docs/changelog.md#402--2017-10-25
• @types/express v4.0.37 → 4.0.39
• @types/history v4.6.0 → 4.6.1
• @types/mocha v2.2.43 → 2.2.44
• @types/node v8.0.34 → 8.0.47
No significant output differences identified.
Bug: T176965
Bug: T177011
Change-Id: I0a06a7385520f499eb15f4a5be4d93ebf4bebaac
---
M package-lock.json
M package.json
M src/common/components/preact-utils.ts
M src/common/routers/route.ts
M src/common/routers/router.ts
M src/server/components/html-page.tsx
M tsconfig.json
M webpack.config.ts
8 files changed, 222 insertions(+), 164 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/marvin refs/changes/83/387583/1
diff --git a/package-lock.json b/package-lock.json
index 4b9f2ba..d31efd9 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -13,32 +13,43 @@
"@types/webpack": "3.0.9"
}
},
+ "@types/body-parser": {
+ "version": "1.16.7",
+ "resolved":
"https://registry.npmjs.org/@types/body-parser/-/body-parser-1.16.7.tgz",
+ "integrity":
"sha512-Obn1/GG0sYsnlAlhhSR1hvYRGBpQT+fzSi2IlGN8emCE4iu6f6xIjaq499B1sa7N9iBLzxyOUBo5bzgJd16BvA==",
+ "dev": true,
+ "requires": {
+ "@types/express": "4.0.39",
+ "@types/node": "8.0.47"
+ }
+ },
"@types/compression": {
"version": "0.0.34",
"resolved":
"https://registry.npmjs.org/@types/compression/-/compression-0.0.34.tgz",
"integrity":
"sha512-NUEw+1DmdMFjVXSaSYf0okgyrnydH7q2DpWTA5/M5lgsUzwut0Ir8qgkTKCavM558CXhNrj5TTTqe3WCfUHMAQ==",
"dev": true,
"requires": {
- "@types/express": "4.0.37"
+ "@types/express": "4.0.39"
}
},
"@types/express": {
- "version": "4.0.37",
- "resolved":
"https://registry.npmjs.org/@types/express/-/express-4.0.37.tgz",
- "integrity":
"sha512-tIULTLzQpFFs5/PKnFIAFOsXQxss76glppbVKR3/jddPK26SBsD5HF5grn5G2jOGtpRWSBvYmDYoduVv+3wOXg==",
+ "version": "4.0.39",
+ "resolved":
"https://registry.npmjs.org/@types/express/-/express-4.0.39.tgz",
+ "integrity":
"sha512-dBUam7jEjyuEofigUXCtublUHknRZvcRgITlGsTbFgPvnTwtQUt2NgLakbsf+PsGo/Nupqr3IXCYsOpBpofyrA==",
"dev": true,
"requires": {
- "@types/express-serve-static-core": "4.0.52",
- "@types/serve-static": "1.7.32"
+ "@types/body-parser": "1.16.7",
+ "@types/express-serve-static-core": "4.0.56",
+ "@types/serve-static": "1.13.0"
}
},
"@types/express-serve-static-core": {
- "version": "4.0.52",
- "resolved":
"https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.0.52.tgz",
- "integrity":
"sha512-UpN389YLcQEIn1t4Kxc8TlCrg43r6o8IcF57LvmbCGNhWzz0dEg4AaUsN6IHrrSjPzPmmJ1FLYXGPP/expXOWg==",
+ "version": "4.0.56",
+ "resolved":
"https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.0.56.tgz",
+ "integrity":
"sha512-/0nwIzF1Bd4KGwW4lhDZYi5StmCZG1DIXXMfQ/zjORzlm4+F1eRA4c6yJQrt4hqX//TDtPULpSlYwmSNyCMeMg==",
"dev": true,
"requires": {
- "@types/node": "8.0.34"
+ "@types/node": "8.0.47"
}
},
"@types/extract-text-webpack-plugin": {
@@ -51,27 +62,27 @@
}
},
"@types/history": {
- "version": "4.6.0",
- "resolved":
"https://registry.npmjs.org/@types/history/-/history-4.6.0.tgz",
- "integrity":
"sha512-2A0stT6b61DANLErAfSkeQ77N+A3FbR7ardUJUP3xm9f4W8qtG9ispBYDUX42Fl1EbR0rqSV3IWjbB6ew7hXRw==",
+ "version": "4.6.1",
+ "resolved":
"https://registry.npmjs.org/@types/history/-/history-4.6.1.tgz",
+ "integrity":
"sha512-Z8DQIdWtl0ff+tXDKeG3P0IOXd0kCI5wCXqZZjymjwcwe/o46BlEXeDrN09L9qnhzHmo9ObpkrlMCHPfbVvewA==",
"dev": true
},
"@types/mime": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.1.tgz",
- "integrity":
"sha512-rek8twk9C58gHYqIrUlJsx8NQMhlxqHzln9Z9ODqiNgv3/s+ZwIrfr+djqzsnVM12xe9hL98iJ20lj2RvCBv6A==",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@types/mime/-/mime-2.0.0.tgz",
+ "integrity":
"sha512-A2TAGbTFdBw9azHbpVd+/FkdW2T6msN1uct1O9bH3vTerEHKZhTXJUQXy+hNq1B0RagfU8U+KBdqiZpxjhOUQA==",
"dev": true
},
"@types/mocha": {
- "version": "2.2.43",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-2.2.43.tgz",
- "integrity":
"sha512-xNlAmH+lRJdUMXClMTI9Y0pRqIojdxfm7DHsIxoB2iTzu3fnPmSMEN8SsSx0cdwV36d02PWCWaDUoZPDSln+xw==",
+ "version": "2.2.44",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-2.2.44.tgz",
+ "integrity":
"sha512-k2tWTQU8G4+iSMvqKi0Q9IIsWAp/n8xzdZS4Q4YVIltApoMA00wFBFdlJnmoaK1/z7B0Cy0yPe6GgXteSmdUNw==",
"dev": true
},
"@types/node": {
- "version": "8.0.34",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-8.0.34.tgz",
- "integrity":
"sha512-Jnmm57+nHqvJUPwUzt1CLoLzFtF2B2vgG7cWFut+a4nqTp9/L6pL0N+o0Jt3V7AQnCKMsPEqQpLFZYleBCdq3w==",
+ "version": "8.0.47",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-8.0.47.tgz",
+ "integrity":
"sha512-kOwL746WVvt/9Phf6/JgX/bsGQvbrK5iUgzyfwZNcKVFcjAUVSpF9HxevLTld2SG9aywYHOILj38arDdY1r/iQ==",
"dev": true
},
"@types/node-fetch": {
@@ -80,17 +91,17 @@
"integrity": "sha1-UhB46PDGmhWOUCIAWsqS0mIPbVc=",
"dev": true,
"requires": {
- "@types/node": "8.0.34"
+ "@types/node": "8.0.47"
}
},
"@types/serve-static": {
- "version": "1.7.32",
- "resolved":
"https://registry.npmjs.org/@types/serve-static/-/serve-static-1.7.32.tgz",
- "integrity":
"sha512-WpI0g7M1FiOmJ/a97Qrjafq2I938tjAZ3hZr9O7sXyA6oUhH3bqUNZIt7r1KZg8TQAKxcvxt6JjQ5XuLfIBFvg==",
+ "version": "1.13.0",
+ "resolved":
"https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.0.tgz",
+ "integrity":
"sha512-wvQkePwCDZoyQPGb64DTl2TEeLw54CQFXjY+tznxYYxNcBb4LG40ezoVbMDa0epwE4yogB0f42jCaH0356x5Mg==",
"dev": true,
"requires": {
- "@types/express-serve-static-core": "4.0.52",
- "@types/mime": "1.3.1"
+ "@types/express-serve-static-core": "4.0.56",
+ "@types/mime": "2.0.0"
}
},
"@types/source-map": {
@@ -111,7 +122,7 @@
"integrity":
"sha512-Bskfd5wztYbQ/mvU4rgHUB3fKcjW2hA6o/F0JN8O+jRPJQDN/2pPV6SmdIiFm2vLyyN/XQzoCULTE05ZOpnNbQ==",
"dev": true,
"requires": {
- "@types/node": "8.0.34"
+ "@types/node": "8.0.47"
}
},
"@types/uglify-js": {
@@ -129,7 +140,7 @@
"integrity":
"sha512-xXqusBBKbYb8fA1jtE3iO75uRW1ejqGuH93V+6fhbfNY59ndKjfhftJVxcSaYAMDjmFTRBHy82d+513JKuHD5g==",
"dev": true,
"requires": {
- "@types/node": "8.0.34",
+ "@types/node": "8.0.47",
"@types/tapable": "0.2.3",
"@types/uglify-js": "2.6.29"
}
@@ -1530,9 +1541,9 @@
}
},
"domino": {
- "version": "1.0.29",
- "resolved": "https://registry.npmjs.org/domino/-/domino-1.0.29.tgz",
- "integrity": "sha1-3oqh9vmOPFU4/remH6acHqu6zgY="
+ "version": "1.0.30",
+ "resolved": "https://registry.npmjs.org/domino/-/domino-1.0.30.tgz",
+ "integrity":
"sha512-ikq8WiDSkICdkElud317F2Sigc6A3EDpWsxWBwIZqOl95km4p/Vc9Rj98id7qKgsjDmExj0AVM7JOd4bb647Xg=="
},
"domutils": {
"version": "1.5.1",
@@ -1770,14 +1781,14 @@
}
},
"eslint": {
- "version": "4.8.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.8.0.tgz",
- "integrity": "sha1-Ip7w41Tg5h2DfHqA/fuoJeGZgV4=",
+ "version": "4.10.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.10.0.tgz",
+ "integrity":
"sha512-MMVl8P/dYUFZEvolL8PYt7qc5LNdS2lwheq9BYa5Y07FblhcZqFyaUqlS8TW5QITGex21tV4Lk0a3fK8lsJIkA==",
"dev": true,
"requires": {
"ajv": "5.2.2",
"babel-code-frame": "6.26.0",
- "chalk": "2.1.0",
+ "chalk": "2.3.0",
"concat-stream": "1.6.0",
"cross-spawn": "5.1.0",
"debug": "3.1.0",
@@ -1791,7 +1802,7 @@
"functional-red-black-tree": "1.0.1",
"glob": "7.1.2",
"globals": "9.18.0",
- "ignore": "3.3.5",
+ "ignore": "3.3.7",
"imurmurhash": "0.1.4",
"inquirer": "3.3.0",
"is-resolvable": "1.0.0",
@@ -1830,14 +1841,14 @@
}
},
"chalk": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz",
- "integrity":
"sha512-LUHGS/dge4ujbXMJrnihYMcL4AoOweGnw9Tp3kQuqy1Kx5c1qKjqvMJZ6nVJPMWJtKCTN72ZogH3oeSO9g9rXQ==",
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz",
+ "integrity":
"sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==",
"dev": true,
"requires": {
"ansi-styles": "3.2.0",
"escape-string-regexp": "1.0.5",
- "supports-color": "4.4.0"
+ "supports-color": "4.5.0"
}
},
"debug": {
@@ -1881,9 +1892,9 @@
}
},
"supports-color": {
- "version": "4.4.0",
- "resolved":
"https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz",
- "integrity":
"sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==",
+ "version": "4.5.0",
+ "resolved":
"https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz",
+ "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=",
"dev": true,
"requires": {
"has-flag": "2.0.0"
@@ -1919,7 +1930,7 @@
"dev": true,
"requires": {
"debug": "2.6.8",
- "resolve": "1.4.0"
+ "resolve": "1.5.0"
}
},
"eslint-module-utils": {
@@ -1933,9 +1944,9 @@
}
},
"eslint-plugin-import": {
- "version": "2.7.0",
- "resolved":
"https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.7.0.tgz",
- "integrity":
"sha512-HGYmpU9f/zJaQiKNQOVfHUh2oLWW3STBrCgH0sHTX1xtsxYlH1zjLh8FlQGEIdZSdTbUMaV36WaZ6ImXkenGxQ==",
+ "version": "2.8.0",
+ "resolved":
"https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.8.0.tgz",
+ "integrity":
"sha512-Rf7dfKJxZ16QuTgVv1OYNxkZcsu/hULFnC+e+w0Gzi6jMC3guQoWQgxYxc54IDRinlb6/0v5z/PxxIKmVctN+g==",
"dev": true,
"requires": {
"builtin-modules": "1.1.1",
@@ -2207,7 +2218,7 @@
"dev": true,
"requires": {
"iconv-lite": "0.4.18",
- "jschardet": "1.5.1",
+ "jschardet": "1.6.0",
"tmp": "0.0.33"
}
},
@@ -2221,9 +2232,9 @@
}
},
"extract-text-webpack-plugin": {
- "version": "3.0.1",
- "resolved":
"https://registry.npmjs.org/extract-text-webpack-plugin/-/extract-text-webpack-plugin-3.0.1.tgz",
- "integrity":
"sha512-zv0/Cg2mU8uMzeQQ3oyfJvZU4Iv/GbQYUIr/HU+8pZetT/0W3xj6XAbxoG4gsp8SbnYcFd4BOsCAZPl9NvplPw==",
+ "version": "3.0.2",
+ "resolved":
"https://registry.npmjs.org/extract-text-webpack-plugin/-/extract-text-webpack-plugin-3.0.2.tgz",
+ "integrity":
"sha512-bt/LZ4m5Rqt/Crl2HiKuAl/oqg0psx1tsTLkvWbJen1CtD+fftkZhMaQ9HOtY2gWsl2Wq+sABmMVi9z3DhKWQQ==",
"dev": true,
"requires": {
"async": "2.5.0",
@@ -2242,6 +2253,12 @@
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.1.2.tgz",
"integrity":
"sha512-KaJUt+M9t1qaIteSvjc6P3RbMdXsNhK61GRftR6SNxqmhthcd9MGIi4T+o0jD8LUSpSnSKXE20nLtJ3fOHxQig==",
+ "dev": true
+ },
+ "fast-json-stable-stringify": {
+ "version": "2.0.0",
+ "resolved":
"https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz",
+ "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=",
"dev": true
},
"fast-levenshtein": {
@@ -2816,9 +2833,9 @@
"dev": true
},
"ignore": {
- "version": "3.3.5",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.5.tgz",
- "integrity":
"sha512-JLH93mL8amZQhh/p6mfQgVBH3M6epNq3DfsXsTSuSrInVjwyYlFE1nv2AgfRCC8PoOhM0jwQ5v8s9LgbK7yGDw==",
+ "version": "3.3.7",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.7.tgz",
+ "integrity":
"sha512-YGG3ejvBNHRqu0559EOxxNFihD0AjpvHlC/pdGKd3X3ofe+CoJkYazwNJYTNebqpPKN+VVQbh4ZFn1DivMNuHA==",
"dev": true
},
"ignore-by-default": {
@@ -2838,6 +2855,27 @@
"resolved":
"https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz",
"integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=",
"dev": true
+ },
+ "import-local": {
+ "version": "0.1.1",
+ "resolved":
"https://registry.npmjs.org/import-local/-/import-local-0.1.1.tgz",
+ "integrity": "sha1-sReVcqrNwRxqkQCftDDbyrX2aKg=",
+ "dev": true,
+ "requires": {
+ "pkg-dir": "2.0.0",
+ "resolve-cwd": "2.0.0"
+ },
+ "dependencies": {
+ "pkg-dir": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz",
+ "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=",
+ "dev": true,
+ "requires": {
+ "find-up": "2.1.0"
+ }
+ }
+ }
},
"imurmurhash": {
"version": "0.1.4",
@@ -2894,7 +2932,7 @@
"dev": true,
"requires": {
"ansi-escapes": "3.0.0",
- "chalk": "2.1.0",
+ "chalk": "2.3.0",
"cli-cursor": "2.1.0",
"cli-width": "2.2.0",
"external-editor": "2.0.5",
@@ -2925,14 +2963,14 @@
}
},
"chalk": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz",
- "integrity":
"sha512-LUHGS/dge4ujbXMJrnihYMcL4AoOweGnw9Tp3kQuqy1Kx5c1qKjqvMJZ6nVJPMWJtKCTN72ZogH3oeSO9g9rXQ==",
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz",
+ "integrity":
"sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==",
"dev": true,
"requires": {
"ansi-styles": "3.2.0",
"escape-string-regexp": "1.0.5",
- "supports-color": "4.4.0"
+ "supports-color": "4.5.0"
}
},
"has-flag": {
@@ -2951,9 +2989,9 @@
}
},
"supports-color": {
- "version": "4.4.0",
- "resolved":
"https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz",
- "integrity":
"sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==",
+ "version": "4.5.0",
+ "resolved":
"https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz",
+ "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=",
"dev": true,
"requires": {
"has-flag": "2.0.0"
@@ -3300,9 +3338,9 @@
}
},
"jschardet": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/jschardet/-/jschardet-1.5.1.tgz",
- "integrity":
"sha512-vE2hT1D0HLZCLLclfBSfkfTTedhVj0fubHpJBHKwwUWX0nSbhPAfk+SG9rTX95BYNmau8rGFfCeaT6T5OW1C2A==",
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/jschardet/-/jschardet-1.6.0.tgz",
+ "integrity":
"sha512-xYuhvQ7I9PDJIGBWev9xm0+SMSed3ZDBAmvVjbFR1ZRLAF+vlXcQu6cRI9uAlj81rzikElRVteehwV7DuX2ZmQ==",
"dev": true
},
"jsesc": {
@@ -3381,9 +3419,9 @@
"dev": true
},
"just-extend": {
- "version": "1.1.22",
- "resolved":
"https://registry.npmjs.org/just-extend/-/just-extend-1.1.22.tgz",
- "integrity": "sha1-MzCvdWyralQnAMZLLk5KoGLVL/8=",
+ "version": "1.1.27",
+ "resolved":
"https://registry.npmjs.org/just-extend/-/just-extend-1.1.27.tgz",
+ "integrity":
"sha512-mJVp13Ix6gFo3SBAy9U/kL+oeZqzlYYYLQBwXVBlVzIsZwBqGREnOro24oC/8s8aox+rJhtZ2DiQof++IrkA+g==",
"dev": true
},
"kind-of": {
@@ -4137,12 +4175,6 @@
"integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=",
"dev": true
},
- "native-promise-only": {
- "version": "0.8.1",
- "resolved":
"https://registry.npmjs.org/native-promise-only/-/native-promise-only-0.8.1.tgz",
- "integrity": "sha1-IKMYwwy0X3H+et+/eyHJnBRy7xE=",
- "dev": true
- },
"natural-compare": {
"version": "1.4.0",
"resolved":
"https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
@@ -4155,13 +4187,13 @@
"integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk="
},
"nise": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/nise/-/nise-1.1.1.tgz",
- "integrity":
"sha512-f5DMJB0MqBaSuP2NAwPx7HyVKPdaozds0KsNe9XIP3npKWt/QUg73l5TTLRTSwfG/Y3AB0ktacuxX4QNcg6vVw==",
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/nise/-/nise-1.2.0.tgz",
+ "integrity":
"sha512-q9jXh3UNsMV28KeqI43ILz5+c3l+RiNW8mhurEwCKckuHQbL+hTJIKKTiUlCPKlgQ/OukFvSnKB/Jk3+sFbkGA==",
"dev": true,
"requires": {
"formatio": "1.2.0",
- "just-extend": "1.1.22",
+ "just-extend": "1.1.27",
"lolex": "1.6.0",
"path-to-regexp": "1.7.0",
"text-encoding": "0.6.4"
@@ -4748,9 +4780,9 @@
"dev": true
},
"path-to-regexp": {
- "version": "2.0.0",
- "resolved":
"https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.0.0.tgz",
- "integrity":
"sha512-DPZblKdQsbV6B3fHknj89h6Nw/Z5zFK0nFX+DVN7y8a+IUHf9taJWvMK+ue0+AEjXrke0KVRCcfm2pOYGSRk8g=="
+ "version": "2.1.0",
+ "resolved":
"https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.1.0.tgz",
+ "integrity":
"sha512-dZY7QPCPp5r9cnNuQ955mOv4ZFVDXY/yvqeV7Y1W2PJA3PEFcuow9xKFfJxbBj1pIjOAP+M2B4/7xubmykLrXw=="
},
"path-type": {
"version": "2.0.0",
@@ -5422,9 +5454,9 @@
}
},
"preact": {
- "version": "8.2.5",
- "resolved": "https://registry.npmjs.org/preact/-/preact-8.2.5.tgz",
- "integrity": "sha1-y/o5YqgBJ2gVn20B1G+cHrMhPAo="
+ "version": "8.2.6",
+ "resolved": "https://registry.npmjs.org/preact/-/preact-8.2.6.tgz",
+ "integrity": "sha1-ACi0Ju+Y/Mp0Gjxhf/W4E7mpR8c="
},
"preact-render-to-string": {
"version": "3.7.0",
@@ -5874,12 +5906,29 @@
"dev": true
},
"resolve": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.4.0.tgz",
- "integrity":
"sha512-aW7sVKPufyHqOmyyLzg/J+8606v5nevBgaliIlV7nUpVMsDnoBGV/cbSLNjZAg9q0Cfd/+easKVKQ8vOu8fn1Q==",
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.5.0.tgz",
+ "integrity":
"sha512-hgoSGrc3pjzAPHNBg+KnFcK2HwlHTs/YrAGUr6qgTVUZmXv1UEXXl0bZNBKMA9fud6lRYFdPGz0xXxycPzmmiw==",
"dev": true,
"requires": {
"path-parse": "1.0.5"
+ }
+ },
+ "resolve-cwd": {
+ "version": "2.0.0",
+ "resolved":
"https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz",
+ "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=",
+ "dev": true,
+ "requires": {
+ "resolve-from": "3.0.0"
+ },
+ "dependencies": {
+ "resolve-from": {
+ "version": "3.0.0",
+ "resolved":
"https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz",
+ "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=",
+ "dev": true
+ }
}
},
"resolve-from": {
@@ -6158,36 +6207,33 @@
"dev": true
},
"sinon": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/sinon/-/sinon-4.0.1.tgz",
- "integrity":
"sha512-4qIY0pCWCvGCJpV/1JkFu9kbsNEZ9O34cG1oru/c7OCDtrEs50Gq/VjkA2ID5ZwLyoNx1i1ws118oh/p6fVeDg==",
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/sinon/-/sinon-4.0.2.tgz",
+ "integrity":
"sha512-4mUsjHfjrHyPFGDTtNJl0q8cv4VOJGvQykI1r3fnn05ys0sQL9M1Y+DyyGNWLD2PMcoyqjJ/nFDm4K54V1eQOg==",
"dev": true,
"requires": {
"diff": "3.2.0",
"formatio": "1.2.0",
"lodash.get": "4.4.2",
"lolex": "2.1.3",
- "native-promise-only": "0.8.1",
- "nise": "1.1.1",
- "path-to-regexp": "1.7.0",
- "samsam": "1.3.0",
- "text-encoding": "0.6.4",
+ "nise": "1.2.0",
+ "supports-color": "4.5.0",
"type-detect": "4.0.3"
},
"dependencies": {
- "isarray": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
+ "has-flag": {
+ "version": "2.0.0",
+ "resolved":
"https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz",
+ "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=",
"dev": true
},
- "path-to-regexp": {
- "version": "1.7.0",
- "resolved":
"https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz",
- "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=",
+ "supports-color": {
+ "version": "4.5.0",
+ "resolved":
"https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz",
+ "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=",
"dev": true,
"requires": {
- "isarray": "0.0.1"
+ "has-flag": "2.0.0"
}
}
}
@@ -6516,24 +6562,24 @@
"integrity":
"sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==",
"dev": true,
"requires": {
- "ajv": "5.2.3",
+ "ajv": "5.3.0",
"ajv-keywords": "2.1.0",
- "chalk": "2.1.0",
+ "chalk": "2.3.0",
"lodash": "4.17.4",
"slice-ansi": "1.0.0",
"string-width": "2.1.1"
},
"dependencies": {
"ajv": {
- "version": "5.2.3",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.2.3.tgz",
- "integrity": "sha1-wG9Zh3jETGsWGrr+NGa4GtGBTtI=",
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.3.0.tgz",
+ "integrity": "sha1-RBT/dKUIecII7l/cgm4ywwNUnto=",
"dev": true,
"requires": {
"co": "4.6.0",
"fast-deep-equal": "1.0.0",
- "json-schema-traverse": "0.3.1",
- "json-stable-stringify": "1.0.1"
+ "fast-json-stable-stringify": "2.0.0",
+ "json-schema-traverse": "0.3.1"
}
},
"ansi-styles": {
@@ -6546,14 +6592,14 @@
}
},
"chalk": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz",
- "integrity":
"sha512-LUHGS/dge4ujbXMJrnihYMcL4AoOweGnw9Tp3kQuqy1Kx5c1qKjqvMJZ6nVJPMWJtKCTN72ZogH3oeSO9g9rXQ==",
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz",
+ "integrity":
"sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==",
"dev": true,
"requires": {
"ansi-styles": "3.2.0",
"escape-string-regexp": "1.0.5",
- "supports-color": "4.4.0"
+ "supports-color": "4.5.0"
}
},
"has-flag": {
@@ -6563,9 +6609,9 @@
"dev": true
},
"supports-color": {
- "version": "4.4.0",
- "resolved":
"https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz",
- "integrity":
"sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==",
+ "version": "4.5.0",
+ "resolved":
"https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz",
+ "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=",
"dev": true,
"requires": {
"has-flag": "2.0.0"
@@ -6674,12 +6720,12 @@
"dev": true
},
"ts-loader": {
- "version": "2.3.7",
- "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-2.3.7.tgz",
- "integrity":
"sha512-8t3bu2FcEkXb+D4L+Cn8qiK2E2C6Ms4/GQChvz6IMbVurcFHLXrhW4EMtfaol1a1ASQACZGDUGit4NHnX9g7hQ==",
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-3.1.1.tgz",
+ "integrity":
"sha512-AQmLFSIgTiR8AlS5BxqvoHpZ3OUTwHHuDZTAZ2KcKsYRz/yANGeQn4Se/DCQ4cn1/eVvN37f/caVW4+kUPNNHw==",
"dev": true,
"requires": {
- "chalk": "2.1.0",
+ "chalk": "2.3.0",
"enhanced-resolve": "3.4.1",
"loader-utils": "1.1.0",
"semver": "5.4.1"
@@ -6695,14 +6741,14 @@
}
},
"chalk": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz",
- "integrity":
"sha512-LUHGS/dge4ujbXMJrnihYMcL4AoOweGnw9Tp3kQuqy1Kx5c1qKjqvMJZ6nVJPMWJtKCTN72ZogH3oeSO9g9rXQ==",
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz",
+ "integrity":
"sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==",
"dev": true,
"requires": {
"ansi-styles": "3.2.0",
"escape-string-regexp": "1.0.5",
- "supports-color": "4.4.0"
+ "supports-color": "4.5.0"
}
},
"has-flag": {
@@ -6712,9 +6758,9 @@
"dev": true
},
"supports-color": {
- "version": "4.4.0",
- "resolved":
"https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz",
- "integrity":
"sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==",
+ "version": "4.5.0",
+ "resolved":
"https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz",
+ "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=",
"dev": true,
"requires": {
"has-flag": "2.0.0"
@@ -6836,9 +6882,9 @@
"dev": true
},
"typescript-eslint-parser": {
- "version": "8.0.0",
- "resolved":
"https://registry.npmjs.org/typescript-eslint-parser/-/typescript-eslint-parser-8.0.0.tgz",
- "integrity": "sha1-gfcLv/yhE5wdxaEwEgin/YIT+LI=",
+ "version": "8.0.1",
+ "resolved":
"https://registry.npmjs.org/typescript-eslint-parser/-/typescript-eslint-parser-8.0.1.tgz",
+ "integrity": "sha1-6MrFN9mW4Ww9uw18TVCXmeZ6/gw=",
"dev": true,
"requires": {
"lodash.unescape": "4.0.1",
@@ -7160,9 +7206,9 @@
}
},
"webpack-dev-server": {
- "version": "2.9.2",
- "resolved":
"https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-2.9.2.tgz",
- "integrity":
"sha512-ppL53TttdTPfiZA4EphKRE4QgtXssjLdHBwNs/MOx/fWLHCrZ0JeyE+eFcHrAcv7qOJgvR5jFZ1quO7i1LNieA==",
+ "version": "2.9.3",
+ "resolved":
"https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-2.9.3.tgz",
+ "integrity":
"sha512-bwq7sj452FRH+oVfgOA8xXKkLYPTNsYB4dQ0Jhz3ydjNJ9MvhpGJtehFW8Z0cEcwNkRRiF4aYbReiSGQ4pbS1w==",
"dev": true,
"requires": {
"ansi-html": "0.0.7",
@@ -7171,10 +7217,12 @@
"chokidar": "1.7.0",
"compression": "1.7.1",
"connect-history-api-fallback": "1.4.0",
+ "debug": "3.1.0",
"del": "3.0.0",
"express": "4.16.2",
"html-entities": "1.2.1",
"http-proxy-middleware": "0.17.4",
+ "import-local": "0.1.1",
"internal-ip": "1.2.0",
"ip": "1.1.5",
"loglevel": "1.5.1",
@@ -7208,6 +7256,15 @@
"wrap-ansi": "2.1.0"
}
},
+ "debug": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
+ "integrity":
"sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
+ "dev": true,
+ "requires": {
+ "ms": "2.0.0"
+ }
+ },
"del": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/del/-/del-3.0.0.tgz",
diff --git a/package.json b/package.json
index eef72d6..7a4f141 100644
--- a/package.json
+++ b/package.json
@@ -45,35 +45,35 @@
},
"dependencies": {
"compression": "1.7.1",
- "domino": "1.0.29",
+ "domino": "1.0.30",
"express": "4.16.2",
"isomorphic-unfetch": "2.0.0",
- "path-to-regexp": "2.0.0",
- "preact": "8.2.5",
+ "path-to-regexp": "2.1.0",
+ "preact": "8.2.6",
"preact-render-to-string": "3.7.0"
},
"devDependencies": {
"@types/assets-webpack-plugin": "3.5.0",
"@types/compression": "0.0.34",
- "@types/express": "4.0.37",
+ "@types/express": "4.0.39",
"@types/extract-text-webpack-plugin": "3.0.0",
- "@types/history": "4.6.0",
- "@types/mocha": "2.2.43",
- "@types/node": "8.0.34",
+ "@types/history": "4.6.1",
+ "@types/mocha": "2.2.44",
+ "@types/node": "8.0.47",
"@types/node-fetch": "1.6.7",
"@types/touch": "3.1.0",
"assets-webpack-plugin": "3.5.1",
"copyfiles": "1.2.0",
"css-loader": "0.28.7",
- "eslint": "4.8.0",
+ "eslint": "4.10.0",
"eslint-config-node-services": "2.2.3",
"eslint-config-prettier": "2.6.0",
"eslint-config-wikimedia": "0.5.0",
- "eslint-plugin-import": "2.7.0",
+ "eslint-plugin-import": "2.8.0",
"eslint-plugin-jsdoc": "3.1.3",
"eslint-plugin-json": "1.2.0",
"eslint-plugin-prettier": "2.3.1",
- "extract-text-webpack-plugin": "3.0.1",
+ "extract-text-webpack-plugin": "3.0.2",
"history": "4.7.2",
"husky": "0.14.3",
"ignore-styles": "5.0.1",
@@ -81,16 +81,16 @@
"nodemon": "1.12.1",
"npm-run-all": "4.1.1",
"prettier": "1.7.4",
- "sinon": "4.0.1",
+ "sinon": "4.0.2",
"style-loader": "0.19.0",
"svg-inline-loader": "0.8.0",
"touch": "3.1.0",
- "ts-loader": "2.3.7",
+ "ts-loader": "3.1.1",
"ts-node": "3.3.0",
"typescript": "2.5.3",
- "typescript-eslint-parser": "8.0.0",
+ "typescript-eslint-parser": "8.0.1",
"webpack": "3.8.1",
- "webpack-dev-server": "2.9.2",
+ "webpack-dev-server": "2.9.3",
"wikimedia-ui-base": "0.9.2"
}
}
diff --git a/src/common/components/preact-utils.ts
b/src/common/components/preact-utils.ts
index ebc1e3e..22a43d1 100644
--- a/src/common/components/preact-utils.ts
+++ b/src/common/components/preact-utils.ts
@@ -1,13 +1,8 @@
-import { FunctionalComponent, ComponentConstructor } from "preact";
+import "preact";
// todo: delete pending https://github.com/developit/preact/pull/869.
export type ComponentChild = JSX.Element | string;
export type ComponentChildren = ComponentChild[];
-
-// todo: consider upstreaming type definition for AnyComponent
-export type AnyComponent<PropsType, StateType> =
- | FunctionalComponent<PropsType>
- | ComponentConstructor<PropsType, StateType>;
export interface ChildrenProps {
children?: ComponentChildren;
diff --git a/src/common/routers/route.ts b/src/common/routers/route.ts
index a402259..e9915f5 100644
--- a/src/common/routers/route.ts
+++ b/src/common/routers/route.ts
@@ -1,5 +1,5 @@
import * as pathToRegExp from "path-to-regexp";
-import { AnyComponent } from "../components/preact-utils";
+import { AnyComponent } from "preact";
import HttpResponse from "../data-clients/http-response";
/**
diff --git a/src/common/routers/router.ts b/src/common/routers/router.ts
index cc5e4f8..7c91b9c 100644
--- a/src/common/routers/router.ts
+++ b/src/common/routers/router.ts
@@ -1,4 +1,4 @@
-import { AnyComponent } from "../components/preact-utils";
+import { AnyComponent } from "preact";
import {
AnyRoute,
PageModule,
diff --git a/src/server/components/html-page.tsx
b/src/server/components/html-page.tsx
index 844f7b1..50c9ea8 100644
--- a/src/server/components/html-page.tsx
+++ b/src/server/components/html-page.tsx
@@ -25,11 +25,9 @@
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>{title ? `${title} - ` : ""}Marvin</title>
{/* Preload the stylesheet before the scripts */}
- <link rel="preload" href={style(manifest)} {...{ as: "style" }} />
+ <link rel="preload" href={style(manifest)} as="style" />
<link rel="stylesheet" href={style(manifest)} />
- {assets.map(path => (
- <link rel="preload" href={path} {...{ as: "script" }} />
- ))}
+ {assets.map(path => <link rel="preload" href={path} as="script" />)}
</head>
<body>
<div id="root">{children}</div>
diff --git a/tsconfig.json b/tsconfig.json
index 738add8..dd427b0 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -10,7 +10,10 @@
"moduleResolution": "node",
"sourceMap": true,
"allowJs": true,
- "checkJs": true,
+
+ // todo: reenable. This is causing ts-loader errors in
+ // node_modules/unfetch/dist/unfetch.es.js.
+ // "checkJs": true,
"strict": true,
diff --git a/webpack.config.ts b/webpack.config.ts
index d237589..0e41110 100644
--- a/webpack.config.ts
+++ b/webpack.config.ts
@@ -145,6 +145,11 @@
},
resolve: {
+ alias: {
+ // todo: remove. https://github.com/developit/preact/issues/924
+ preact$: "preact/dist/preact.js"
+ },
+
// Add `.ts` and `.tsx` as a resolvable extension.
extensions: [".ts", ".tsx", ".js"]
},
--
To view, visit https://gerrit.wikimedia.org/r/387583
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I0a06a7385520f499eb15f4a5be4d93ebf4bebaac
Gerrit-PatchSet: 1
Gerrit-Project: marvin
Gerrit-Branch: master
Gerrit-Owner: Niedzielski <[email protected]>
Gerrit-Reviewer: Sniedzielski <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits