diff --git a/apps/ssr-tests-v9/package.json b/apps/ssr-tests-v9/package.json index a208c34687ad22..1553846cb25523 100644 --- a/apps/ssr-tests-v9/package.json +++ b/apps/ssr-tests-v9/package.json @@ -9,13 +9,13 @@ }, "license": "MIT", "scripts": { - "build": "ts-node --transpile-only ./src/build.ts", + "build": "ts-node --swc ./src/build.ts", "clean": "just-scripts clean", "code-style": "just-scripts code-style", "lint": "just-scripts lint", "storybook": "node ../../scripts/storybook/runner", "test:unit": "jest", - "test:ssr": "ts-node --transpile-only ./src/test.ts", + "test:ssr": "ts-node --swc ./src/test.ts", "test": "yarn test:unit && yarn test:ssr", "type-check": "tsc -b tsconfig.json" }, diff --git a/azure-pipelines.release-vnext.yml b/azure-pipelines.release-vnext.yml index 2cf72b75c54e67..84bdc8c8c32675 100644 --- a/azure-pipelines.release-vnext.yml +++ b/azure-pipelines.release-vnext.yml @@ -71,7 +71,7 @@ jobs: displayName: Publish changes and bump versions - script: | - yarn ts-node scripts/beachball/tagVNext.ts --token $(npmToken) + node -r ./scripts/ts-node-register scripts/beachball/tagVNext.ts --token $(npmToken) displayName: Tag prelease packages with prerelease tag continueOnError: true diff --git a/change/@fluentui-web-components-dc75c576-2286-4559-9849-24a5147e98ee.json b/change/@fluentui-web-components-dc75c576-2286-4559-9849-24a5147e98ee.json new file mode 100644 index 00000000000000..a64d0272b7c5d7 --- /dev/null +++ b/change/@fluentui-web-components-dc75c576-2286-4559-9849-24a5147e98ee.json @@ -0,0 +1,7 @@ +{ + "type": "none", + "comment": "chore: use only 1 instance of ts-node in monorepo", + "packageName": "@fluentui/web-components", + "email": "martinhochel@microsoft.com", + "dependentChangeType": "none" +} diff --git a/package.json b/package.json index 2da70f40721f1d..c39c13ad564388 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ "check:change": "beachball check", "check:modified-files": "yarn workspace @fluentui/scripts just check-for-modified-files", "check:affected-package": "node ./scripts/monorepo/checkIfPackagesAffected.js", - "check:installed-dependencies-versions": "satisfied --skip-invalid --ignore \"prettier|angular|lit|sass|@storybook/web-components|@storybook/html|@storybook/mdx2-csf|svelte|@testing-library|vue|@cypress/react|cypress\"", + "check:installed-dependencies-versions": "satisfied --skip-invalid --ignore \"prettier|angular|lit|sass|@storybook/web-components|@storybook/html|@storybook/mdx2-csf|svelte|@testing-library|vue|@cypress/react|cypress|@swc/wasm\"", "clean": "lage clean --verbose", "code-style": "lage code-style --verbose", "codepen": "cd packages/react && node ../../scripts/local-codepen.js", @@ -216,6 +216,7 @@ "loader-utils": "2.0.0", "memfs": "3.2.2", "node-fetch": "2.6.7", + "nx": "13.10.6", "portfinder": "1.0.28", "postcss": "8.3.5", "postcss-loader": "4.1.0", @@ -244,7 +245,8 @@ "terser-webpack-plugin": "5.3.1", "tmp": "0.2.1", "ts-jest": "26.5.6", - "ts-loader": "8.0.14", + "ts-loader": "9.3.1", + "ts-node": "10.9.1", "tsconfig-paths": "3.9.0", "tsconfig-paths-webpack-plugin": "3.5.2", "tslib": "2.4.0", @@ -259,8 +261,7 @@ "workspace-tools": "0.18.4", "yargs": "13.3.2", "yargs-parser": "13.1.2", - "yargs-unparser": "2.0.0", - "nx": "13.10.6" + "yargs-unparser": "2.0.0" }, "dependencies": { "copy-to-clipboard": "3.3.1" @@ -284,8 +285,6 @@ "@fluentui/web-components/@storybook/html", "@fluentui/web-components/ts-loader", "@fluentui/web-components/ts-loader/**", - "@fluentui/web-components/ts-node", - "@fluentui/web-components/ts-node/**", "@fluentui/web-components/webpack" ] }, @@ -364,7 +363,6 @@ "dependencies": [ "mocha", "ts-loader", - "ts-node", "tslib", "webpack" ] diff --git a/packages/web-components/package.json b/packages/web-components/package.json index 98f1b8158b9125..2edf95be3608ab 100644 --- a/packages/web-components/package.json +++ b/packages/web-components/package.json @@ -82,7 +82,6 @@ "source-map": "^0.7.3", "source-map-loader": "^0.2.4", "ts-loader": "^7.0.2", - "ts-node": "^8.0.0", "webpack": "^4.43.0" }, "dependencies": { diff --git a/scripts/package.json b/scripts/package.json index 8fe6cfcea852a3..f453c3709c023a 100644 --- a/scripts/package.json +++ b/scripts/package.json @@ -71,8 +71,7 @@ "request-promise-native": "^1.0.5", "resolve": "^1.7.1", "riceburn": "^1.3.1", - "through2": "^2.0.3", - "ts-node": "^7.0.0" + "through2": "^2.0.3" }, "bundlesize": [ { diff --git a/scripts/ts-node-register.js b/scripts/ts-node-register.js index dfd85e1013b25e..209531b4863fb9 100644 --- a/scripts/ts-node-register.js +++ b/scripts/ts-node-register.js @@ -1,19 +1,10 @@ const tsNode = require('ts-node'); -const path = require('path'); -const { readConfig } = require('./read-config'); -// Until ts-node re-enables caching, we're using version 7 (before caching was disabled). -// https://github.com/TypeStrong/ts-node/issues/951 tsNode.register({ - // Run in transpileOnly mode because with type checking it's very slow transpileOnly: true, - // TODO: re-enable when upgrading ts-node to version which supports this - // // Register ts-node so that it uses the scripts directory's tsconfig - // dir: __dirname, - // Hack to work around lack of `dir` option: manually pass in tsconfig - compilerOptions: { - ...readConfig(path.join(__dirname, 'typescript/tsconfig.common.json')).compilerOptions, - ...readConfig(path.join(__dirname, 'tsconfig.json')).compilerOptions, - }, - skipProject: true, // don't read tsconfig within ts-node + // https://github.com/TypeStrong/ts-node#cwdmode - consume tsconfig.json within scripts/ + cwd: __dirname, + // https://github.com/TypeStrong/ts-node#skipproject - don't read tsconfig within ts-node + skipProject: true, + swc: true, }); diff --git a/yarn.lock b/yarn.lock index fe968fcc9fe681..f7665b734279cf 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1347,6 +1347,13 @@ resolved "https://registry.yarnpkg.com/@colors/colors/-/colors-1.5.0.tgz#bb504579c1cae923e6576a4f5da43d25f97bdbd9" integrity sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ== +"@cspotcode/source-map-support@^0.8.0": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" + integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw== + dependencies: + "@jridgewell/trace-mapping" "0.3.9" + "@ctrl/tinycolor@3.3.4": version "3.3.4" resolved "https://registry.yarnpkg.com/@ctrl/tinycolor/-/tinycolor-3.3.4.tgz#59691edd031eedc431bda1bdf601257c06289a40" @@ -2173,6 +2180,14 @@ resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz#b6461fb0c2964356c469e115f504c95ad97ab88c" integrity sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w== +"@jridgewell/trace-mapping@0.3.9": + version "0.3.9" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9" + integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== + dependencies: + "@jridgewell/resolve-uri" "^3.0.3" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping@^0.3.9": version "0.3.13" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz#dcfe3e95f224c8fe97a87a5235defec999aa92ea" @@ -4860,6 +4875,26 @@ mkdirp "^1.0.4" multimatch "^5.0.0" +"@tsconfig/node10@^1.0.7": + version "1.0.9" + resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.9.tgz#df4907fc07a886922637b15e02d4cebc4c0021b2" + integrity sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA== + +"@tsconfig/node12@^1.0.7": + version "1.0.11" + resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.11.tgz#ee3def1f27d9ed66dac6e46a295cffb0152e058d" + integrity sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag== + +"@tsconfig/node14@^1.0.0": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.3.tgz#e4386316284f00b98435bf40f72f75a09dabf6c1" + integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow== + +"@tsconfig/node16@^1.0.2": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.3.tgz#472eaab5f15c1ffdd7f8628bd4c4f753995ec79e" + integrity sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ== + "@types/argparse@1.0.38": version "1.0.38" resolved "https://registry.yarnpkg.com/@types/argparse/-/argparse-1.0.38.tgz#a81fd8606d481f873a3800c6ebae4f1d768a56a9" @@ -6496,7 +6531,7 @@ acorn-walk@^7.1.1, acorn-walk@^7.2.0: resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== -acorn-walk@^8.0.0: +acorn-walk@^8.0.0, acorn-walk@^8.1.1: version "8.2.0" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== @@ -7146,7 +7181,7 @@ array.prototype.flatmap@^1.2.1, array.prototype.flatmap@^1.2.4, array.prototype. define-properties "^1.1.3" es-abstract "^1.19.0" -arrify@^1.0.0, arrify@^1.0.1: +arrify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= @@ -8302,7 +8337,7 @@ buffer-fill@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c" integrity sha1-+PeLdniYiO858gXNY39o5wISKyw= -buffer-from@1.x, buffer-from@^1.0.0, buffer-from@^1.1.0: +buffer-from@1.x, buffer-from@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== @@ -10918,7 +10953,7 @@ diff-sequences@^27.4.0: resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.4.0.tgz#d783920ad8d06ec718a060d00196dfef25b132a5" integrity sha512-YqiQzkrsmHMH5uuh8OdQFU9/ZpADnwzml8z0O5HvRNda+5UZsaX/xN+AAxfR2hWq1Y7HZnAzO9J5lJXOuDz2Ww== -diff@3.5.0, diff@^3.1.0: +diff@3.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== @@ -25439,14 +25474,13 @@ ts-jest@26.5.6: semver "7.x" yargs-parser "20.x" -ts-loader@8.0.14: - version "8.0.14" - resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-8.0.14.tgz#e46ac1f8dcb88808d0b1335d2eae65b74bd78fe8" - integrity sha512-Jt/hHlUnApOZjnSjTmZ+AbD5BGlQFx3f1D0nYuNKwz0JJnuDGHJas6az+FlWKwwRTu+26GXpv249A8UAnYUpqA== +ts-loader@9.3.1, ts-loader@^9.2.6: + version "9.3.1" + resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-9.3.1.tgz#fe25cca56e3e71c1087fe48dc67f4df8c59b22d4" + integrity sha512-OkyShkcZTsTwyS3Kt7a4rsT/t2qvEVQuKCTg4LJmpj9fhFR7ukGdZwV6Qq3tRUkqcXtfGpPR7+hFKHCG/0d3Lw== dependencies: chalk "^4.1.0" - enhanced-resolve "^4.0.0" - loader-utils "^2.0.0" + enhanced-resolve "^5.0.0" micromatch "^4.0.0" semver "^7.3.4" @@ -25461,16 +25495,6 @@ ts-loader@^7.0.2: micromatch "^4.0.0" semver "^6.0.0" -ts-loader@^9.2.6: - version "9.2.6" - resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-9.2.6.tgz#9937c4dd0a1e3dbbb5e433f8102a6601c6615d74" - integrity sha512-QMTC4UFzHmu9wU2VHZEmWWE9cUajjfcdcws+Gh7FhiO+Dy0RnR1bNz0YCHqhI0yRowCE9arVnNxYHqELOy9Hjw== - dependencies: - chalk "^4.1.0" - enhanced-resolve "^5.0.0" - micromatch "^4.0.0" - semver "^7.3.4" - ts-morph@^10.0.1: version "10.0.1" resolved "https://registry.yarnpkg.com/ts-morph/-/ts-morph-10.0.1.tgz#5a620cc4ef85e3e6d161989e690f44d0a0f723b0" @@ -25480,29 +25504,23 @@ ts-morph@^10.0.1: "@ts-morph/common" "~0.8.0" code-block-writer "^10.1.1" -ts-node@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-7.0.1.tgz#9562dc2d1e6d248d24bc55f773e3f614337d9baf" - integrity sha512-BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw== - dependencies: - arrify "^1.0.0" - buffer-from "^1.1.0" - diff "^3.1.0" - make-error "^1.1.1" - minimist "^1.2.0" - mkdirp "^0.5.1" - source-map-support "^0.5.6" - yn "^2.0.0" - -ts-node@^8.0.0: - version "8.10.2" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-8.10.2.tgz#eee03764633b1234ddd37f8db9ec10b75ec7fb8d" - integrity sha512-ISJJGgkIpDdBhWVu3jufsWpK3Rzo7bdiIXJjQc0ynKxVOVcg2oIrf2H2cejminGrptVc6q6/uynAHNCuWGbpVA== +ts-node@10.9.1: + version "10.9.1" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b" + integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw== dependencies: + "@cspotcode/source-map-support" "^0.8.0" + "@tsconfig/node10" "^1.0.7" + "@tsconfig/node12" "^1.0.7" + "@tsconfig/node14" "^1.0.0" + "@tsconfig/node16" "^1.0.2" + acorn "^8.4.1" + acorn-walk "^8.1.1" arg "^4.1.0" + create-require "^1.1.0" diff "^4.0.1" make-error "^1.1.1" - source-map-support "^0.5.17" + v8-compile-cache-lib "^3.0.1" yn "3.1.1" ts-node@~9.1.1: @@ -26249,6 +26267,11 @@ uuid@^8.1.0, uuid@^8.3.0, uuid@^8.3.1, uuid@^8.3.2: resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== +v8-compile-cache-lib@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" + integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== + v8-compile-cache@2.3.0, v8-compile-cache@^2.0.3, v8-compile-cache@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" @@ -27415,11 +27438,6 @@ yn@3.1.1: resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== -yn@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/yn/-/yn-2.0.0.tgz#e5adabc8acf408f6385fc76495684c88e6af689a" - integrity sha1-5a2ryKz0CPY4X8dklWhMiOavaJo= - yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"