From 73af068949ded9adcb1c77b6e3207852ca8bde8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Josh=20Wedekind=20=F0=9F=A5=9A?= Date: Thu, 25 Feb 2021 13:41:04 -0800 Subject: [PATCH 1/2] Update node-sass to support node 15. Note: Loses heft sass support for Node versions 8, 11, and 13. --- apps/heft/package.json | 2 +- build-tests/heft-sass-test/package.json | 6 +- common/config/rush/pnpm-lock.yaml | 153 ++++++++++++++----- common/config/rush/repo-state.json | 2 +- core-build/gulp-core-build-sass/package.json | 2 +- 5 files changed, 122 insertions(+), 43 deletions(-) diff --git a/apps/heft/package.json b/apps/heft/package.json index 42617262fa8..e9330460df2 100644 --- a/apps/heft/package.json +++ b/apps/heft/package.json @@ -49,7 +49,7 @@ "glob-escape": "~0.0.2", "glob": "~7.0.5", "jest-snapshot": "~25.4.0", - "node-sass": "4.14.1", + "node-sass": "5.0.0", "postcss-modules": "~1.5.0", "postcss": "7.0.32", "prettier": "~2.1.1", diff --git a/build-tests/heft-sass-test/package.json b/build-tests/heft-sass-test/package.json index 9af7c69e0b1..99d3b6f917c 100644 --- a/build-tests/heft-sass-test/package.json +++ b/build-tests/heft-sass-test/package.json @@ -5,7 +5,7 @@ "private": true, "scripts": { "build": "heft test --clean", - "start": "heft start" + "start": "heft start --clean" }, "devDependencies": { "@rushstack/eslint-config": "workspace:*", @@ -18,12 +18,12 @@ "css-loader": "~4.2.1", "eslint": "~7.12.1", "html-webpack-plugin": "~4.5.0", - "node-sass": "4.14.1", + "node-sass": "5.0.0", "postcss": "7.0.32", "postcss-loader": "~4.0.1", "react-dom": "~16.13.1", "react": "~16.13.1", - "sass-loader": "~7.3.1", + "sass-loader": "~10.1.1", "style-loader": "~1.2.1", "typescript": "~3.9.7", "webpack": "~4.44.2" diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 0a6c3be4e9f..b0a00a4b1d0 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -114,7 +114,7 @@ importers: glob: 7.0.6 glob-escape: 0.0.2 jest-snapshot: 25.4.0 - node-sass: 4.14.1 + node-sass: 5.0.0 postcss: 7.0.32 postcss-modules: 1.5.0 prettier: 2.1.2 @@ -170,7 +170,7 @@ importers: glob: ~7.0.5 glob-escape: ~0.0.2 jest-snapshot: ~25.4.0 - node-sass: 4.14.1 + node-sass: 5.0.0 postcss: 7.0.32 postcss-modules: ~1.5.0 prettier: ~2.1.1 @@ -647,12 +647,12 @@ importers: css-loader: 4.2.2_webpack@4.44.2 eslint: 7.12.1 html-webpack-plugin: 4.5.1_webpack@4.44.2 - node-sass: 4.14.1 + node-sass: 5.0.0 postcss: 7.0.32 postcss-loader: 4.0.4_postcss@7.0.32+webpack@4.44.2 react: 16.13.1 react-dom: 16.13.1_react@16.13.1 - sass-loader: 7.3.1_webpack@4.44.2 + sass-loader: 10.1.1_node-sass@5.0.0+webpack@4.44.2 style-loader: 1.2.1_webpack@4.44.2 typescript: 3.9.9 webpack: 4.44.2 @@ -668,12 +668,12 @@ importers: css-loader: ~4.2.1 eslint: ~7.12.1 html-webpack-plugin: ~4.5.0 - node-sass: 4.14.1 + node-sass: 5.0.0 postcss: 7.0.32 postcss-loader: ~4.0.1 react: ~16.13.1 react-dom: ~16.13.1 - sass-loader: ~7.3.1 + sass-loader: ~10.1.1 style-loader: ~1.2.1 typescript: ~3.9.7 webpack: ~4.44.2 @@ -1136,7 +1136,7 @@ importers: autoprefixer: 9.8.6 clean-css: 4.2.1 glob: 7.0.6 - node-sass: 4.14.1 + node-sass: 5.0.0 postcss: 7.0.32 postcss-modules: 1.5.0 devDependencies: @@ -1169,7 +1169,7 @@ importers: glob: ~7.0.5 gulp: ~4.0.2 jest: ~25.4.0 - node-sass: 4.14.1 + node-sass: 5.0.0 postcss: 7.0.32 postcss-modules: ~1.5.0 ../../core-build/gulp-core-build-serve: @@ -4731,6 +4731,7 @@ packages: /block-stream/0.0.9: dependencies: inherits: 2.0.4 + dev: true engines: node: 0.4 || >=0.5.8 resolution: @@ -5166,6 +5167,11 @@ packages: /chownr/1.1.4: resolution: integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== + /chownr/2.0.0: + engines: + node: '>=10' + resolution: + integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== /chrome-trace-event/1.0.2: dependencies: tslib: 1.14.1 @@ -5256,16 +5262,6 @@ packages: node: '>= 0.10' resolution: integrity: sha1-4+JbIHrE5wGvch4staFnksrD3Fg= - /clone-deep/4.0.1: - dependencies: - is-plain-object: 2.0.4 - kind-of: 6.0.3 - shallow-clone: 3.0.1 - dev: true - engines: - node: '>=6' - resolution: - integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== /clone-stats/0.0.1: resolution: integrity: sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE= @@ -5544,6 +5540,7 @@ packages: dependencies: lru-cache: 4.1.5 which: 1.3.1 + dev: true resolution: integrity: sha1-ElYDfsufDF9549bvE14wdwGEuYI= /cross-spawn/6.0.5: @@ -6169,6 +6166,11 @@ packages: /entities/2.2.0: resolution: integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== + /env-paths/2.2.0: + engines: + node: '>=6' + resolution: + integrity: sha512-6u0VYSCo/OW6IoD5WCLLy9JUGARbamfSavcNXry/eu8aHVFei6CD3Sw+VGX5alea1i9pgPHW0mbu6Xj0uBh7gA== /errno/0.1.8: dependencies: prr: 1.0.1 @@ -7077,7 +7079,6 @@ packages: /fs-minipass/2.1.0: dependencies: minipass: 3.1.3 - dev: false engines: node: '>= 8' resolution: @@ -7137,6 +7138,7 @@ packages: inherits: 2.0.4 mkdirp: 0.5.5 rimraf: 2.7.1 + dev: true engines: node: '>=0.6' resolution: @@ -8010,6 +8012,7 @@ packages: resolution: integrity: sha1-khi5srkoojixPcT7a21XbyMUU+o= /in-publish/2.0.1: + dev: true hasBin: true resolution: integrity: sha512-oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ== @@ -9563,6 +9566,7 @@ packages: dependencies: pseudomap: 1.0.2 yallist: 2.1.2 + dev: true resolution: integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== /lru-cache/5.1.1: @@ -9809,7 +9813,6 @@ packages: /minipass/3.1.3: dependencies: yallist: 4.0.0 - dev: false engines: node: '>=8' resolution: @@ -9818,7 +9821,6 @@ packages: dependencies: minipass: 3.1.3 yallist: 4.0.0 - dev: false engines: node: '>= 8' resolution: @@ -9865,6 +9867,12 @@ packages: hasBin: true resolution: integrity: sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== + /mkdirp/1.0.4: + engines: + node: '>=10' + hasBin: true + resolution: + integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== /mocha/5.2.0: dependencies: browser-stdout: 1.3.1 @@ -10042,11 +10050,29 @@ packages: semver: 5.3.0 tar: 2.2.2 which: 1.3.1 + dev: true engines: node: '>= 0.8.0' hasBin: true resolution: integrity: sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA== + /node-gyp/7.1.2: + dependencies: + env-paths: 2.2.0 + glob: 7.1.6 + graceful-fs: 4.2.6 + nopt: 5.0.0 + npmlog: 4.1.2 + request: 2.88.2 + rimraf: 3.0.2 + semver: 7.3.4 + tar: 6.1.0 + which: 2.0.2 + engines: + node: '>= 10.12.0' + hasBin: true + resolution: + integrity: sha512-CbpcIo7C3eMu3dL1c3d0xw449fHIGALIJsRP4DDPHpyiW8vcriNY7ubh9TE4zEKfSxscY7PjeFnshE7h75ynjQ== /node-int64/0.4.0: resolution: integrity: sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= @@ -10122,12 +10148,37 @@ packages: sass-graph: 2.2.5 stdout-stream: 1.4.1 true-case-path: 1.0.3 + dev: true engines: node: '>=0.10.0' hasBin: true requiresBuild: true resolution: integrity: sha512-sjCuOlvGyCJS40R8BscF5vhVlQjNN069NtQ1gSxyK1u9iqvn6tf7O1R4GNowVZfiZUCRt5MmMs1xd+4V/7Yr0g== + /node-sass/5.0.0: + dependencies: + async-foreach: 0.1.3 + chalk: 1.1.3 + cross-spawn: 7.0.3 + gaze: 1.1.3 + get-stdin: 4.0.1 + glob: 7.0.6 + lodash: 4.17.20 + meow: 3.7.0 + mkdirp: 0.5.5 + nan: 2.14.2 + node-gyp: 7.1.2 + npmlog: 4.1.2 + request: 2.88.2 + sass-graph: 2.2.5 + stdout-stream: 1.4.1 + true-case-path: 1.0.3 + engines: + node: '>=10' + hasBin: true + requiresBuild: true + resolution: + integrity: sha512-opNgmlu83ZCF792U281Ry7tak9IbVC+AKnXGovcQ8LG8wFaJv6cLnRlc6DIHlmNxWEexB5bZxi9SZ9JyUuOYjw== /noop-logger/0.1.1: dev: false optional: true @@ -10139,6 +10190,14 @@ packages: hasBin: true resolution: integrity: sha1-xkZdvwirzU2zWTF/eaxopkayj/k= + /nopt/5.0.0: + dependencies: + abbrev: 1.0.9 + engines: + node: '>=6' + hasBin: true + resolution: + integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ== /normalize-package-data/2.5.0: dependencies: hosted-git-info: 2.8.8 @@ -11122,6 +11181,7 @@ packages: resolution: integrity: sha512-OZ8I/hwYEJ3beN3IEcNnt8EpcqblH0/x23hulKBXjs+WhTTEle+ijCHCkh2bd+cIIeCuCwSCbBe93IthGG6hLw== /pseudomap/1.0.2: + dev: true resolution: integrity: sha1-8FKijacOYYkX7wqKw0wa5aaChrM= /psl/1.8.0: @@ -11806,21 +11866,32 @@ packages: hasBin: true resolution: integrity: sha512-VFWDAHOe6mRuT4mZRd4eKE+d8Uedrk6Xnh7Sh9b4NGufQLQjOrvf/MQoOdx+0s92L89FeyUUNfU597j/3uNpag== - /sass-loader/7.3.1_webpack@4.44.2: + /sass-loader/10.1.1_node-sass@5.0.0+webpack@4.44.2: dependencies: - clone-deep: 4.0.1 - loader-utils: 1.1.0 + klona: 2.0.4 + loader-utils: 2.0.0 neo-async: 2.6.2 - pify: 4.0.1 - semver: 6.3.0 + node-sass: 5.0.0 + schema-utils: 3.0.0 + semver: 7.3.4 webpack: 4.44.2 dev: true engines: - node: '>= 6.9.0' + node: '>= 10.13.0' peerDependencies: - webpack: ^3.0.0 || ^4.0.0 + fibers: '>= 3.1.0' + node-sass: ^4.0.0 || ^5.0.0 + sass: ^1.3.0 + webpack: ^4.36.0 || ^5.0.0 + peerDependenciesMeta: + fibers: + optional: true + node-sass: + optional: true + sass: + optional: true resolution: - integrity: sha512-tuU7+zm0pTCynKYHpdqaPpe+MMTQ76I9TPZ7i4/5dZsigE350shQWe5EZNl5dBidM49TPET75tNqRbcsUZWeNA== + integrity: sha512-W6gVDXAd5hR/WHsPicvZdjAWHBcEJ44UahgxcIE196fW2ong0ZHMPO1kZuI5q0VlvMQZh32gpv69PLWQm70qrw== /sax/1.2.4: resolution: integrity: sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== @@ -11889,6 +11960,7 @@ packages: resolution: integrity: sha1-E+jCZYq5aRywzXEJMkAoDTb3els= /semver/5.3.0: + dev: true hasBin: true resolution: integrity: sha1-myzl094C0XxgEq0yaqa00M9U+U8= @@ -12045,14 +12117,6 @@ packages: hasBin: true resolution: integrity: sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== - /shallow-clone/3.0.1: - dependencies: - kind-of: 6.0.3 - dev: true - engines: - node: '>=8' - resolution: - integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== /shebang-command/1.2.0: dependencies: shebang-regex: 1.0.0 @@ -12694,6 +12758,7 @@ packages: block-stream: 0.0.9 fstream: 1.0.12 inherits: 2.0.4 + dev: true resolution: integrity: sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA== /tar/5.0.5: @@ -12709,6 +12774,18 @@ packages: node: '>= 8' resolution: integrity: sha512-MNIgJddrV2TkuwChwcSNds/5E9VijOiw7kAc1y5hTNJoLDSuIyid2QtLYiCYNnICebpuvjhPQZsXwUL0O3l7OQ== + /tar/6.1.0: + dependencies: + chownr: 2.0.0 + fs-minipass: 2.1.0 + minipass: 3.1.3 + minizlib: 2.1.2 + mkdirp: 1.0.4 + yallist: 4.0.0 + engines: + node: '>= 10' + resolution: + integrity: sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA== /terminal-link/2.1.1: dependencies: ansi-escapes: 4.3.1 @@ -14662,6 +14739,7 @@ packages: resolution: integrity: sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ== /yallist/2.1.2: + dev: true resolution: integrity: sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= /yallist/3.1.1: @@ -14776,3 +14854,4 @@ packages: commander: 2.20.3 resolution: integrity: sha512-DUOKC/IhbkdLKKiV89gw9DUauTV8U/8yJl1sjf6MtDmzevLKOF2duNJ495S3MFVjqZarr+qNGCPbkg4mu4PpLw== +registry: '' diff --git a/common/config/rush/repo-state.json b/common/config/rush/repo-state.json index 2f5615e0920..4ebe0673fc1 100644 --- a/common/config/rush/repo-state.json +++ b/common/config/rush/repo-state.json @@ -1,5 +1,5 @@ // DO NOT MODIFY THIS FILE. It is generated and used by Rush. { - "pnpmShrinkwrapHash": "6885aa6d827c96e3e21267ffa8ab3a5838bfc510", + "pnpmShrinkwrapHash": "3347df3a4e1e940c45f0fdeb61af510f5c2666ba", "preferredVersionsHash": "2519e88d149a9cb84227de92c71a8d8063bdcfd4" } diff --git a/core-build/gulp-core-build-sass/package.json b/core-build/gulp-core-build-sass/package.json index 66c82fe3cf5..590d0249c6d 100644 --- a/core-build/gulp-core-build-sass/package.json +++ b/core-build/gulp-core-build-sass/package.json @@ -21,7 +21,7 @@ "autoprefixer": "~9.8.0", "clean-css": "4.2.1", "glob": "~7.0.5", - "node-sass": "4.14.1", + "node-sass": "5.0.0", "postcss": "7.0.32", "postcss-modules": "~1.5.0" }, From 9bd9aa24fdc12d9c671ab864d046cd5c57892d6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Josh=20Wedekind=20=F0=9F=A5=9A?= Date: Thu, 25 Feb 2021 13:42:54 -0800 Subject: [PATCH 2/2] Rush change. --- ...-halfnibble-update-node-sass_2021-02-25-21-42.json | 11 +++++++++++ ...-halfnibble-update-node-sass_2021-02-25-21-42.json | 11 +++++++++++ 2 files changed, 22 insertions(+) create mode 100644 common/changes/@microsoft/gulp-core-build-sass/user-halfnibble-update-node-sass_2021-02-25-21-42.json create mode 100644 common/changes/@rushstack/heft/user-halfnibble-update-node-sass_2021-02-25-21-42.json diff --git a/common/changes/@microsoft/gulp-core-build-sass/user-halfnibble-update-node-sass_2021-02-25-21-42.json b/common/changes/@microsoft/gulp-core-build-sass/user-halfnibble-update-node-sass_2021-02-25-21-42.json new file mode 100644 index 00000000000..1440890469c --- /dev/null +++ b/common/changes/@microsoft/gulp-core-build-sass/user-halfnibble-update-node-sass_2021-02-25-21-42.json @@ -0,0 +1,11 @@ +{ + "changes": [ + { + "packageName": "@microsoft/gulp-core-build-sass", + "comment": "Update node-sass to support Node 15.", + "type": "minor" + } + ], + "packageName": "@microsoft/gulp-core-build-sass", + "email": "halfnibble@users.noreply.github.com" +} \ No newline at end of file diff --git a/common/changes/@rushstack/heft/user-halfnibble-update-node-sass_2021-02-25-21-42.json b/common/changes/@rushstack/heft/user-halfnibble-update-node-sass_2021-02-25-21-42.json new file mode 100644 index 00000000000..7ab69aa9415 --- /dev/null +++ b/common/changes/@rushstack/heft/user-halfnibble-update-node-sass_2021-02-25-21-42.json @@ -0,0 +1,11 @@ +{ + "changes": [ + { + "packageName": "@rushstack/heft", + "comment": "Update node-sass to support Node 15.", + "type": "patch" + } + ], + "packageName": "@rushstack/heft", + "email": "halfnibble@users.noreply.github.com" +} \ No newline at end of file