From cbb49955edd766cbffe0387ee32b8310add157dd Mon Sep 17 00:00:00 2001 From: Isaac Lee <16869656+ijlee2@users.noreply.github.com> Date: Wed, 28 Aug 2024 10:53:41 +0200 Subject: [PATCH] Downstreamed changes from @codemod-utils/cli@2.0.1 (#89) * chore: Updated dependencies and scripts * chore: Simplified scripts --------- Co-authored-by: ijlee2 --- .npmignore | 4 +- codemod-test-fixture.sh | 44 ---------- codemod-test-fixtures.sh | 48 ----------- create-test-fixture.sh | 107 ------------------------- package.json | 12 +-- pnpm-lock.yaml | 169 ++++++++++++++++++++++----------------- update-test-fixtures.sh | 92 +++++++++++++++++++++ 7 files changed, 194 insertions(+), 282 deletions(-) delete mode 100755 codemod-test-fixture.sh delete mode 100755 codemod-test-fixtures.sh delete mode 100755 create-test-fixture.sh create mode 100755 update-test-fixtures.sh diff --git a/.npmignore b/.npmignore index e3a2455e..44cf7f7b 100644 --- a/.npmignore +++ b/.npmignore @@ -18,8 +18,6 @@ /.prettierignore /.prettierrc.cjs /build.sh -/codemod-test-fixture.sh -/codemod-test-fixtures.sh -/create-test-fixture.sh /CONTRIBUTING.md +/update-test-fixtures.sh /tests/ diff --git a/codemod-test-fixture.sh b/codemod-test-fixture.sh deleted file mode 100755 index 7e54e8cf..00000000 --- a/codemod-test-fixture.sh +++ /dev/null @@ -1,44 +0,0 @@ -#!/usr/bin/env sh - -#---------- -# -# A. Purpose -# -# Fix the expected output of a test fixture after updating the source code. -# -# B. Usage -# -# For named arguments, do not include `=` between the flag and the value. -# Positional arguments are to appear at the end. -# -# ./codemod-test-fixture.sh [OPTIONAL-FLAGS] -# -#--------- - -# Get named arguments for the binary -while getopts ":N:" flag -do - case $flag in - N) NAMED_ARGUMENTS=$OPTARG;; - esac -done - -# Get fixture name -FIXTURE=${@:$OPTIND:1} - -if [ ! $FIXTURE ] -then - echo "ERROR: Please specify the fixture name.\n" - exit 1 -elif [ ! -d "tests/fixtures/$FIXTURE/input" ] -then - echo "ERROR: Input folder \`tests/fixtures/$FIXTURE/input\` does not exist.\n" - exit 1 -fi - -rm -r "tests/fixtures/$FIXTURE/output" -cp -r "tests/fixtures/$FIXTURE/input" "tests/fixtures/$FIXTURE/output" - -./dist/bin/ember-codemod-v1-to-v2.js $NAMED_ARGUMENTS --root="tests/fixtures/$FIXTURE/output" - -echo "SUCCESS: Updated the output of $FIXTURE.\n" diff --git a/codemod-test-fixtures.sh b/codemod-test-fixtures.sh deleted file mode 100755 index 8bf52563..00000000 --- a/codemod-test-fixtures.sh +++ /dev/null @@ -1,48 +0,0 @@ -#!/usr/bin/env sh - -#---------- -# -# A. Purpose -# -# Fix all test fixtures after updating the source code. -# -# B. Usage -# -# ./codemod-test-fixtures.sh -# -#--------- - -# Compile TypeScript -pnpm build - -./codemod-test-fixture.sh \ - -N "--addon-location packages/ember-container-query --test-app-location demo-app --test-app-name demo-app-for-ember-container-query" \ - ember-container-query-customizations - -./codemod-test-fixture.sh \ - ember-container-query-glint - -./codemod-test-fixture.sh \ - ember-container-query-javascript - -./codemod-test-fixture.sh \ - ember-container-query-scoped - -./codemod-test-fixture.sh \ - ember-container-query-typescript - -./codemod-test-fixture.sh \ - -N "--addon-location packages/new-v1-addon --test-app-location demo-app --test-app-name demo-app-for-new-v1-addon" \ - new-v1-addon-customizations - -./codemod-test-fixture.sh \ - new-v1-addon-javascript - -./codemod-test-fixture.sh \ - new-v1-addon-npm - -./codemod-test-fixture.sh \ - new-v1-addon-pnpm - -./codemod-test-fixture.sh \ - new-v1-addon-typescript diff --git a/create-test-fixture.sh b/create-test-fixture.sh deleted file mode 100755 index 0fee05e0..00000000 --- a/create-test-fixture.sh +++ /dev/null @@ -1,107 +0,0 @@ -#!/usr/bin/env sh - -#---------- -# -# A. Purpose -# -# Copy an existing project to tests/fixtures. -# -# B. Usage -# -# ./create-test-fixture.sh [CREATE-EMPTY-FILES] -# -# Step 1. Ensure that the project is available on your local machine. -# -# cd ~/Desktop -# git clone git@github.com:ijlee2/ember-container-query.git -# -# Step 2. Run the script to copy the files to `tests/fixtures/`. -# -# Choice a. Keep most of the source code. -# -# ./create-test-fixture.sh "../../Desktop/ember-container-query/docs-app" ember-container-query -# -# Choice b. Empty every file. -# -# ./create-test-fixture.sh "../../Desktop/ember-container-query/docs-app" ember-container-query true -# -#--------- - -SOURCE=$1 -DESTINATION=$2 -CREATE_EMPTY_FILES=$3 - -if [ ! -d $SOURCE ] -then - echo "ERROR: Source \`$SOURCE\` does not exist.\n" - exit 1 -fi - -if [ ! $DESTINATION ] -then - echo "ERROR: Please specify the destination (i.e. the fixture name).\n" - exit 1 -elif [ -d "tests/fixtures/$DESTINATION" ] -then - echo "WARNING: Test fixture already exists. Removing it now.\n" - rm -r "tests/fixtures/$DESTINATION" -fi - - -mkdir -p "tests/fixtures/$DESTINATION/input" -mkdir -p "tests/fixtures/$DESTINATION/output" - -echo "import { convertFixtureToJson } from '@codemod-utils/tests'; - -const inputProject = convertFixtureToJson('$DESTINATION/input'); -const outputProject = convertFixtureToJson('$DESTINATION/output'); - -export { inputProject, outputProject };" \ - > "tests/fixtures/$DESTINATION/index.ts" - -echo "SUCCESS: Scaffolded the input and output folders.\n" - - -rsync \ - --exclude=".git" \ - --exclude="dist" \ - --exclude="node_modules" \ - --quiet \ - --recursive \ - "$SOURCE/" \ - "tests/fixtures/$DESTINATION/input" - -rsync \ - --exclude=".git" \ - --exclude="dist" \ - --exclude="node_modules" \ - --quiet \ - --recursive \ - "$SOURCE/" \ - "tests/fixtures/$DESTINATION/output" - -echo "SUCCESS: Copied the source code to destination.\n" - - -if [ $CREATE_EMPTY_FILES ] -then - find "tests/fixtures/$DESTINATION/input" -type f -exec truncate -s 0 {} \; - find "tests/fixtures/$DESTINATION/output" -type f -exec truncate -s 0 {} \; - - echo "SUCCESS: Emptied all files.\n" -else - for file in {package-lock.json,pnpm-lock.yaml,yarn.lock} - do - if [ -f "tests/fixtures/$DESTINATION/input/$file" ] - then - truncate -s 0 "tests/fixtures/$DESTINATION/input/$file" - fi - - if [ -f "tests/fixtures/$DESTINATION/output/$file" ] - then - truncate -s 0 "tests/fixtures/$DESTINATION/output/$file" - fi - done - - echo "SUCCESS: Emptied select files.\n" -fi diff --git a/package.json b/package.json index d6145e86..07bc2b7f 100644 --- a/package.json +++ b/package.json @@ -28,8 +28,8 @@ ], "scripts": { "build": "./build.sh --production", - "lint": "concurrently \"npm:lint:*(!fix)\" --names \"lint:\"", - "lint:fix": "concurrently \"npm:lint:*:fix\" --names \"fix:\"", + "lint": "concurrently 'pnpm:lint:*(!fix)' --names 'lint:'", + "lint:fix": "concurrently 'pnpm:lint:*:fix' --names 'fix:'", "lint:js": "eslint . --cache", "lint:js:fix": "eslint . --fix", "lint:types": "tsc --noEmit", @@ -51,14 +51,14 @@ "@sondr3/minitest": "^0.1.2", "@tsconfig/node18": "^18.2.4", "@tsconfig/strictest": "^2.0.5", - "@types/node": "^18.19.44", + "@types/node": "^18.19.47", "@types/yargs": "^17.0.33", - "@typescript-eslint/eslint-plugin": "^8.1.0", - "@typescript-eslint/parser": "^8.1.0", + "@typescript-eslint/eslint-plugin": "^8.3.0", + "@typescript-eslint/parser": "^8.3.0", "concurrently": "^8.2.2", "eslint": "^8.57.0", "eslint-config-prettier": "^9.1.0", - "eslint-import-resolver-typescript": "^3.6.1", + "eslint-import-resolver-typescript": "^3.6.3", "eslint-plugin-import": "^2.29.1", "eslint-plugin-n": "^17.10.2", "eslint-plugin-prettier": "^5.2.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 60d94a40..abc105e8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -43,17 +43,17 @@ importers: specifier: ^2.0.5 version: 2.0.5 '@types/node': - specifier: ^18.19.44 - version: 18.19.44 + specifier: ^18.19.47 + version: 18.19.47 '@types/yargs': specifier: ^17.0.33 version: 17.0.33 '@typescript-eslint/eslint-plugin': - specifier: ^8.1.0 - version: 8.1.0(@typescript-eslint/parser@8.1.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4) + specifier: ^8.3.0 + version: 8.3.0(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4) '@typescript-eslint/parser': - specifier: ^8.1.0 - version: 8.1.0(eslint@8.57.0)(typescript@5.5.4) + specifier: ^8.3.0 + version: 8.3.0(eslint@8.57.0)(typescript@5.5.4) concurrently: specifier: ^8.2.2 version: 8.2.2 @@ -64,11 +64,11 @@ importers: specifier: ^9.1.0 version: 9.1.0(eslint@8.57.0) eslint-import-resolver-typescript: - specifier: ^3.6.1 - version: 3.6.1(@typescript-eslint/parser@8.1.0(eslint@8.57.0)(typescript@5.5.4))(eslint-plugin-import@2.29.1)(eslint@8.57.0) + specifier: ^3.6.3 + version: 3.6.3(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint-plugin-import@2.29.1)(eslint@8.57.0) eslint-plugin-import: specifier: ^2.29.1 - version: 2.29.1(@typescript-eslint/parser@8.1.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) + version: 2.29.1(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.0) eslint-plugin-n: specifier: ^17.10.2 version: 17.10.2(eslint@8.57.0) @@ -80,7 +80,7 @@ importers: version: 12.1.1(eslint@8.57.0) eslint-plugin-typescript-sort-keys: specifier: ^3.2.0 - version: 3.2.0(@typescript-eslint/parser@8.1.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4) + version: 3.2.0(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4) lerna-changelog: specifier: ^2.2.0 version: 2.2.0 @@ -258,6 +258,10 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} + '@nolyfill/is-core-module@1.0.39': + resolution: {integrity: sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==} + engines: {node: '>=12.4.0'} + '@npmcli/fs@1.1.1': resolution: {integrity: sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==} @@ -304,8 +308,8 @@ packages: '@types/minimatch@5.1.2': resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} - '@types/node@18.19.44': - resolution: {integrity: sha512-ZsbGerYg72WMXUIE9fYxtvfzLEuq6q8mKERdWFnqTmOvudMxnz+CBNRoOwJ2kNpFOncrKjT1hZwxjlFgQ9qvQA==} + '@types/node@18.19.47': + resolution: {integrity: sha512-1f7dB3BL/bpd9tnDJrrHb66Y+cVrhxSOTGorRNdHwYTUlTay3HuTDPKo9a/4vX9pMQkhYBcAbL4jQdNlhCFP9A==} '@types/rimraf@3.0.2': resolution: {integrity: sha512-F3OznnSLAUxFrCEu/L5PY8+ny8DtcFRjx7fZZ9bycvXRi3KPTRS9HOitGZwvPg0juRhXFWIeKX58cnX5YqLohQ==} @@ -319,8 +323,8 @@ packages: '@types/yargs@17.0.33': resolution: {integrity: sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==} - '@typescript-eslint/eslint-plugin@8.1.0': - resolution: {integrity: sha512-LlNBaHFCEBPHyD4pZXb35mzjGkuGKXU5eeCA1SxvHfiRES0E82dOounfVpL4DCqYvJEKab0bZIA0gCRpdLKkCw==} + '@typescript-eslint/eslint-plugin@8.3.0': + resolution: {integrity: sha512-FLAIn63G5KH+adZosDYiutqkOkYEx0nvcwNNfJAf+c7Ae/H35qWwTYvPZUKFj5AS+WfHG/WJJfWnDnyNUlp8UA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 @@ -336,8 +340,8 @@ packages: peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - '@typescript-eslint/parser@8.1.0': - resolution: {integrity: sha512-U7iTAtGgJk6DPX9wIWPPOlt1gO57097G06gIcl0N0EEnNw8RGD62c+2/DiP/zL7KrkqnnqF7gtFGR7YgzPllTA==} + '@typescript-eslint/parser@8.3.0': + resolution: {integrity: sha512-h53RhVyLu6AtpUzVCYLPhZGL5jzTD9fZL+SYf/+hYOx2bDkyQXztXSc4tbvKYHzfMXExMLiL9CWqJmVz6+78IQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 @@ -350,12 +354,12 @@ packages: resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@typescript-eslint/scope-manager@8.1.0': - resolution: {integrity: sha512-DsuOZQji687sQUjm4N6c9xABJa7fjvfIdjqpSIIVOgaENf2jFXiM9hIBZOL3hb6DHK9Nvd2d7zZnoMLf9e0OtQ==} + '@typescript-eslint/scope-manager@8.3.0': + resolution: {integrity: sha512-mz2X8WcN2nVu5Hodku+IR8GgCOl4C0G/Z1ruaWN4dgec64kDBabuXyPAr+/RgJtumv8EEkqIzf3X2U5DUKB2eg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@8.1.0': - resolution: {integrity: sha512-oLYvTxljVvsMnldfl6jIKxTaU7ok7km0KDrwOt1RHYu6nxlhN3TIx8k5Q52L6wR33nOwDgM7VwW1fT1qMNfFIA==} + '@typescript-eslint/type-utils@8.3.0': + resolution: {integrity: sha512-wrV6qh//nLbfXZQoj32EXKmwHf4b7L+xXLrP3FZ0GOUU72gSvLjeWUl5J5Ue5IwRxIV1TfF73j/eaBapxx99Lg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' @@ -367,8 +371,8 @@ packages: resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@typescript-eslint/types@8.1.0': - resolution: {integrity: sha512-q2/Bxa0gMOu/2/AKALI0tCKbG2zppccnRIRCW6BaaTlRVaPKft4oVYPp7WOPpcnsgbr0qROAVCVKCvIQ0tbWog==} + '@typescript-eslint/types@8.3.0': + resolution: {integrity: sha512-y6sSEeK+facMaAyixM36dQ5NVXTnKWunfD1Ft4xraYqxP0lC0POJmIaL/mw72CUMqjY9qfyVfXafMeaUj0noWw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@typescript-eslint/typescript-estree@5.62.0': @@ -380,8 +384,8 @@ packages: typescript: optional: true - '@typescript-eslint/typescript-estree@8.1.0': - resolution: {integrity: sha512-NTHhmufocEkMiAord/g++gWKb0Fr34e9AExBRdqgWdVBaKoei2dIyYKD9Q0jBnvfbEA5zaf8plUFMUH6kQ0vGg==} + '@typescript-eslint/typescript-estree@8.3.0': + resolution: {integrity: sha512-Mq7FTHl0R36EmWlCJWojIC1qn/ZWo2YiWYc1XVtasJ7FIgjo0MVv9rZWXEE7IK2CGrtwe1dVOxWwqXUdNgfRCA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' @@ -395,8 +399,8 @@ packages: peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - '@typescript-eslint/utils@8.1.0': - resolution: {integrity: sha512-ypRueFNKTIFwqPeJBfeIpxZ895PQhNyH4YID6js0UoBImWYoSjBsahUn9KMiJXh94uOjVBgHD9AmkyPsPnFwJA==} + '@typescript-eslint/utils@8.3.0': + resolution: {integrity: sha512-F77WwqxIi/qGkIGOGXNBLV7nykwfjLsdauRB/DOFPdv6LTF3BHHkBpq81/b5iMPSF055oO2BiivDJV4ChvNtXA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 @@ -405,8 +409,8 @@ packages: resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@typescript-eslint/visitor-keys@8.1.0': - resolution: {integrity: sha512-ba0lNI19awqZ5ZNKh6wCModMwoZs457StTebQ0q1NP58zSi2F6MOZRXwfKZy+jB78JNJ/WH8GSh2IQNzXX8Nag==} + '@typescript-eslint/visitor-keys@8.3.0': + resolution: {integrity: sha512-RmZwrTbQ9QveF15m/Cl28n0LXD6ea2CjkhH5rQ55ewz3H24w+AMCJHPVYaZ8/0HoG8Z3cLLFFycRXxeO2tz9FA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@ungap/structured-clone@1.2.0': @@ -719,12 +723,18 @@ packages: eslint-import-resolver-node@0.3.9: resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} - eslint-import-resolver-typescript@3.6.1: - resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==} + eslint-import-resolver-typescript@3.6.3: + resolution: {integrity: sha512-ud9aw4szY9cCT1EWWdGv1L1XR6hh2PaRWif0j2QjQ0pgTY/69iw+W0Z4qZv5wHahOl8isEr+k/JnyAqNQkLkIA==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: eslint: '*' eslint-plugin-import: '*' + eslint-plugin-import-x: '*' + peerDependenciesMeta: + eslint-plugin-import: + optional: true + eslint-plugin-import-x: + optional: true eslint-module-utils@2.8.1: resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==} @@ -1083,6 +1093,9 @@ packages: resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} engines: {node: '>= 0.4'} + is-bun-module@1.1.0: + resolution: {integrity: sha512-4mTAVPlrXpaN3jtF0lsnPCMGnq4+qZjVIKq0HCpfcqf8OC1SM5oATCIAPM5V5FN05qp2NNnFndphmdZS9CV3hA==} + is-callable@1.2.7: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} @@ -2041,6 +2054,8 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.17.1 + '@nolyfill/is-core-module@1.0.39': {} + '@npmcli/fs@1.1.1': dependencies: '@gar/promisify': 1.1.3 @@ -2066,12 +2081,12 @@ snapshots: '@types/fs-extra@9.0.13': dependencies: - '@types/node': 18.19.44 + '@types/node': 18.19.47 '@types/glob@8.1.0': dependencies: '@types/minimatch': 5.1.2 - '@types/node': 18.19.44 + '@types/node': 18.19.47 '@types/json-schema@7.0.15': {} @@ -2079,14 +2094,14 @@ snapshots: '@types/minimatch@5.1.2': {} - '@types/node@18.19.44': + '@types/node@18.19.47': dependencies: undici-types: 5.26.5 '@types/rimraf@3.0.2': dependencies: '@types/glob': 8.1.0 - '@types/node': 18.19.44 + '@types/node': 18.19.47 '@types/semver@7.5.8': {} @@ -2096,14 +2111,14 @@ snapshots: dependencies: '@types/yargs-parser': 21.0.3 - '@typescript-eslint/eslint-plugin@8.1.0(@typescript-eslint/parser@8.1.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)': + '@typescript-eslint/eslint-plugin@8.3.0(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)': dependencies: '@eslint-community/regexpp': 4.11.0 - '@typescript-eslint/parser': 8.1.0(eslint@8.57.0)(typescript@5.5.4) - '@typescript-eslint/scope-manager': 8.1.0 - '@typescript-eslint/type-utils': 8.1.0(eslint@8.57.0)(typescript@5.5.4) - '@typescript-eslint/utils': 8.1.0(eslint@8.57.0)(typescript@5.5.4) - '@typescript-eslint/visitor-keys': 8.1.0 + '@typescript-eslint/parser': 8.3.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/scope-manager': 8.3.0 + '@typescript-eslint/type-utils': 8.3.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/utils': 8.3.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/visitor-keys': 8.3.0 eslint: 8.57.0 graphemer: 1.4.0 ignore: 5.3.2 @@ -2122,12 +2137,12 @@ snapshots: - supports-color - typescript - '@typescript-eslint/parser@8.1.0(eslint@8.57.0)(typescript@5.5.4)': + '@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4)': dependencies: - '@typescript-eslint/scope-manager': 8.1.0 - '@typescript-eslint/types': 8.1.0 - '@typescript-eslint/typescript-estree': 8.1.0(typescript@5.5.4) - '@typescript-eslint/visitor-keys': 8.1.0 + '@typescript-eslint/scope-manager': 8.3.0 + '@typescript-eslint/types': 8.3.0 + '@typescript-eslint/typescript-estree': 8.3.0(typescript@5.5.4) + '@typescript-eslint/visitor-keys': 8.3.0 debug: 4.3.6 eslint: 8.57.0 optionalDependencies: @@ -2140,15 +2155,15 @@ snapshots: '@typescript-eslint/types': 5.62.0 '@typescript-eslint/visitor-keys': 5.62.0 - '@typescript-eslint/scope-manager@8.1.0': + '@typescript-eslint/scope-manager@8.3.0': dependencies: - '@typescript-eslint/types': 8.1.0 - '@typescript-eslint/visitor-keys': 8.1.0 + '@typescript-eslint/types': 8.3.0 + '@typescript-eslint/visitor-keys': 8.3.0 - '@typescript-eslint/type-utils@8.1.0(eslint@8.57.0)(typescript@5.5.4)': + '@typescript-eslint/type-utils@8.3.0(eslint@8.57.0)(typescript@5.5.4)': dependencies: - '@typescript-eslint/typescript-estree': 8.1.0(typescript@5.5.4) - '@typescript-eslint/utils': 8.1.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/typescript-estree': 8.3.0(typescript@5.5.4) + '@typescript-eslint/utils': 8.3.0(eslint@8.57.0)(typescript@5.5.4) debug: 4.3.6 ts-api-utils: 1.3.0(typescript@5.5.4) optionalDependencies: @@ -2159,7 +2174,7 @@ snapshots: '@typescript-eslint/types@5.62.0': {} - '@typescript-eslint/types@8.1.0': {} + '@typescript-eslint/types@8.3.0': {} '@typescript-eslint/typescript-estree@5.62.0(typescript@5.5.4)': dependencies: @@ -2175,12 +2190,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/typescript-estree@8.1.0(typescript@5.5.4)': + '@typescript-eslint/typescript-estree@8.3.0(typescript@5.5.4)': dependencies: - '@typescript-eslint/types': 8.1.0 - '@typescript-eslint/visitor-keys': 8.1.0 + '@typescript-eslint/types': 8.3.0 + '@typescript-eslint/visitor-keys': 8.3.0 debug: 4.3.6 - globby: 11.1.0 + fast-glob: 3.3.2 is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.6.3 @@ -2205,12 +2220,12 @@ snapshots: - supports-color - typescript - '@typescript-eslint/utils@8.1.0(eslint@8.57.0)(typescript@5.5.4)': + '@typescript-eslint/utils@8.3.0(eslint@8.57.0)(typescript@5.5.4)': dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@typescript-eslint/scope-manager': 8.1.0 - '@typescript-eslint/types': 8.1.0 - '@typescript-eslint/typescript-estree': 8.1.0(typescript@5.5.4) + '@typescript-eslint/scope-manager': 8.3.0 + '@typescript-eslint/types': 8.3.0 + '@typescript-eslint/typescript-estree': 8.3.0(typescript@5.5.4) eslint: 8.57.0 transitivePeerDependencies: - supports-color @@ -2221,9 +2236,9 @@ snapshots: '@typescript-eslint/types': 5.62.0 eslint-visitor-keys: 3.4.3 - '@typescript-eslint/visitor-keys@8.1.0': + '@typescript-eslint/visitor-keys@8.3.0': dependencies: - '@typescript-eslint/types': 8.1.0 + '@typescript-eslint/types': 8.3.0 eslint-visitor-keys: 3.4.3 '@ungap/structured-clone@1.2.0': {} @@ -2631,31 +2646,33 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.1.0(eslint@8.57.0)(typescript@5.5.4))(eslint-plugin-import@2.29.1)(eslint@8.57.0): + eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint-plugin-import@2.29.1)(eslint@8.57.0): dependencies: + '@nolyfill/is-core-module': 1.0.39 debug: 4.3.6 enhanced-resolve: 5.17.1 eslint: 8.57.0 - eslint-module-utils: 2.8.1(@typescript-eslint/parser@8.1.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.1.0(eslint@8.57.0)(typescript@5.5.4))(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@8.1.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) + eslint-module-utils: 2.8.1(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0) fast-glob: 3.3.2 get-tsconfig: 4.7.6 - is-core-module: 2.15.0 + is-bun-module: 1.1.0 is-glob: 4.0.3 + optionalDependencies: + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.0) transitivePeerDependencies: - '@typescript-eslint/parser' - eslint-import-resolver-node - eslint-import-resolver-webpack - supports-color - eslint-module-utils@2.8.1(@typescript-eslint/parser@8.1.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.1.0(eslint@8.57.0)(typescript@5.5.4))(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0): + eslint-module-utils@2.8.1(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 8.1.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/parser': 8.3.0(eslint@8.57.0)(typescript@5.5.4) eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@8.1.0(eslint@8.57.0)(typescript@5.5.4))(eslint-plugin-import@2.29.1)(eslint@8.57.0) + eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint-plugin-import@2.29.1)(eslint@8.57.0) transitivePeerDependencies: - supports-color @@ -2666,7 +2683,7 @@ snapshots: eslint: 8.57.0 eslint-compat-utils: 0.5.1(eslint@8.57.0) - eslint-plugin-import@2.29.1(@typescript-eslint/parser@8.1.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0): + eslint-plugin-import@2.29.1(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.0): dependencies: array-includes: 3.1.8 array.prototype.findlastindex: 1.2.5 @@ -2676,7 +2693,7 @@ snapshots: doctrine: 2.1.0 eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.1(@typescript-eslint/parser@8.1.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.1.0(eslint@8.57.0)(typescript@5.5.4))(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0) + eslint-module-utils: 2.8.1(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0) hasown: 2.0.2 is-core-module: 2.15.0 is-glob: 4.0.3 @@ -2687,7 +2704,7 @@ snapshots: semver: 6.3.1 tsconfig-paths: 4.2.0 optionalDependencies: - '@typescript-eslint/parser': 8.1.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/parser': 8.3.0(eslint@8.57.0)(typescript@5.5.4) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack @@ -2718,10 +2735,10 @@ snapshots: dependencies: eslint: 8.57.0 - eslint-plugin-typescript-sort-keys@3.2.0(@typescript-eslint/parser@8.1.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4): + eslint-plugin-typescript-sort-keys@3.2.0(@typescript-eslint/parser@8.3.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4): dependencies: '@typescript-eslint/experimental-utils': 5.62.0(eslint@8.57.0)(typescript@5.5.4) - '@typescript-eslint/parser': 8.1.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/parser': 8.3.0(eslint@8.57.0)(typescript@5.5.4) eslint: 8.57.0 json-schema: 0.4.0 natural-compare-lite: 1.4.0 @@ -3079,6 +3096,10 @@ snapshots: call-bind: 1.0.7 has-tostringtag: 1.0.2 + is-bun-module@1.1.0: + dependencies: + semver: 7.6.3 + is-callable@1.2.7: {} is-core-module@2.15.0: diff --git a/update-test-fixtures.sh b/update-test-fixtures.sh new file mode 100755 index 00000000..b189e4c3 --- /dev/null +++ b/update-test-fixtures.sh @@ -0,0 +1,92 @@ +#!/usr/bin/env sh + +#---------- +# +# A. Purpose +# +# Fix all test fixtures after updating the source code. +# +# B. Usage +# +# ./update-test-fixtures.sh +# +#--------- + +# Compile TypeScript +pnpm build + +# Update fixtures +rm -r "tests/fixtures/ember-container-query-customizations/output" +cp -r "tests/fixtures/ember-container-query-customizations/input" "tests/fixtures/ember-container-query-customizations/output" + +./dist/bin/ember-codemod-v1-to-v2.js \ + --addon-location packages/ember-container-query \ + --root "tests/fixtures/ember-container-query-customizations/output" \ + --test-app-location demo-app \ + --test-app-name demo-app-for-ember-container-query + +# Update fixtures +rm -r "tests/fixtures/ember-container-query-glint/output" +cp -r "tests/fixtures/ember-container-query-glint/input" "tests/fixtures/ember-container-query-glint/output" + +./dist/bin/ember-codemod-v1-to-v2.js \ + --root "tests/fixtures/ember-container-query-glint/output" + +# Update fixtures +rm -r "tests/fixtures/ember-container-query-javascript/output" +cp -r "tests/fixtures/ember-container-query-javascript/input" "tests/fixtures/ember-container-query-javascript/output" + +./dist/bin/ember-codemod-v1-to-v2.js \ + --root "tests/fixtures/ember-container-query-javascript/output" + +# Update fixtures +rm -r "tests/fixtures/ember-container-query-scoped/output" +cp -r "tests/fixtures/ember-container-query-scoped/input" "tests/fixtures/ember-container-query-scoped/output" + +./dist/bin/ember-codemod-v1-to-v2.js \ + --root "tests/fixtures/ember-container-query-scoped/output" + +# Update fixtures +rm -r "tests/fixtures/ember-container-query-typescript/output" +cp -r "tests/fixtures/ember-container-query-typescript/input" "tests/fixtures/ember-container-query-typescript/output" + +./dist/bin/ember-codemod-v1-to-v2.js \ + --root "tests/fixtures/ember-container-query-typescript/output" + +# Update fixtures +rm -r "tests/fixtures/new-v1-addon-customizations/output" +cp -r "tests/fixtures/new-v1-addon-customizations/input" "tests/fixtures/new-v1-addon-customizations/output" + +./dist/bin/ember-codemod-v1-to-v2.js \ + --addon-location packages/new-v1-addon \ + --root "tests/fixtures/new-v1-addon-customizations/output" \ + --test-app-location demo-app \ + --test-app-name demo-app-for-new-v1-addon + +# Update fixtures +rm -r "tests/fixtures/new-v1-addon-javascript/output" +cp -r "tests/fixtures/new-v1-addon-javascript/input" "tests/fixtures/new-v1-addon-javascript/output" + +./dist/bin/ember-codemod-v1-to-v2.js \ + --root "tests/fixtures/new-v1-addon-javascript/output" + +# Update fixtures +rm -r "tests/fixtures/new-v1-addon-npm/output" +cp -r "tests/fixtures/new-v1-addon-npm/input" "tests/fixtures/new-v1-addon-npm/output" + +./dist/bin/ember-codemod-v1-to-v2.js \ + --root "tests/fixtures/new-v1-addon-npm/output" + +# Update fixtures +rm -r "tests/fixtures/new-v1-addon-pnpm/output" +cp -r "tests/fixtures/new-v1-addon-pnpm/input" "tests/fixtures/new-v1-addon-pnpm/output" + +./dist/bin/ember-codemod-v1-to-v2.js \ + --root "tests/fixtures/new-v1-addon-pnpm/output" + +# Update fixtures +rm -r "tests/fixtures/new-v1-addon-typescript/output" +cp -r "tests/fixtures/new-v1-addon-typescript/input" "tests/fixtures/new-v1-addon-typescript/output" + +./dist/bin/ember-codemod-v1-to-v2.js \ + --root "tests/fixtures/new-v1-addon-typescript/output"