diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a808806..604248b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -23,6 +23,10 @@ jobs: uses: pnpm/action-setup@v2.2.4 with: version: "7" + - name: Setup Node.js + uses: actions/setup-node@v3 + with: + node-version: 20.10.0 - name: Install dependencies run: pnpm i --no-frozen-lockfile - name: build diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 439619d..f0b1629 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -28,6 +28,10 @@ jobs: uses: pnpm/action-setup@v2.2.4 with: version: "7" + - name: Setup Node.js + uses: actions/setup-node@v3 + with: + node-version: 20.10.0 - name: Install dependencies run: pnpm i --frozen-lockfile - name: release @@ -55,7 +59,7 @@ jobs: steps: - uses: actions/setup-node@v3 with: - node-version: 18.x + node-version: 20.10.0 - name: Download build artifacts uses: actions/download-artifact@v3 with: diff --git a/.github/workflows/upgrade-main.yml b/.github/workflows/upgrade-main.yml index cc20a76..88fca0b 100644 --- a/.github/workflows/upgrade-main.yml +++ b/.github/workflows/upgrade-main.yml @@ -22,6 +22,10 @@ jobs: uses: pnpm/action-setup@v2.2.4 with: version: "7" + - name: Setup Node.js + uses: actions/setup-node@v3 + with: + node-version: 20.10.0 - name: Install dependencies run: pnpm i --frozen-lockfile - name: Upgrade dependencies diff --git a/.projen/deps.json b/.projen/deps.json index 36cf332..f371cad 100644 --- a/.projen/deps.json +++ b/.projen/deps.json @@ -6,7 +6,7 @@ }, { "name": "@types/node", - "version": "^18", + "version": "^20", "type": "build" }, { diff --git a/.projen/tasks.json b/.projen/tasks.json index c47ce86..fb8522b 100644 --- a/.projen/tasks.json +++ b/.projen/tasks.json @@ -156,7 +156,7 @@ "description": "Prepare a release from \"main\" branch", "env": { "RELEASE": "true", - "MAJOR": "1" + "MAJOR": "2" }, "steps": [ { @@ -181,7 +181,7 @@ "description": "Run tests", "steps": [ { - "exec": "jest --passWithNoTests --updateSnapshot", + "exec": "jest --passWithNoTests --coverageProvider=v8 --updateSnapshot", "receiveArgs": true }, { diff --git a/.projenrc.ts b/.projenrc.ts index 351a466..e4077e9 100644 --- a/.projenrc.ts +++ b/.projenrc.ts @@ -6,8 +6,11 @@ import { const project = new GitHubActionTypeScriptProject({ packageManager: NodePackageManager.PNPM, - majorVersion: 1, + minNodeVersion: "20.10.0", + + majorVersion: 2, defaultReleaseBranch: "main", + devDeps: ["projen-github-action-typescript"], name: "reaction-action", projenrcTs: true, diff --git a/README.md b/README.md index 221025b..e6fe1f9 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ React to any comment with the GitHub Reaction types. ```yaml - name: React to comment - uses: dkershner6/reaction-action@v1 + uses: dkershner6/reaction-action@latest # You can also use a specific version, e.g. v2.0.0 with: token: ${{ secrets.GITHUB_TOKEN }} commentId: 1234 # Optional if the trigger is a comment. Use another action to find this otherwise. diff --git a/package.json b/package.json index 756b106..18a012d 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ }, "devDependencies": { "@types/jest": "^29.5.11", - "@types/node": "^18", + "@types/node": "^20", "@typescript-eslint/eslint-plugin": "^6", "@typescript-eslint/parser": "^6", "@vercel/ncc": "^0.38.1", @@ -49,6 +49,9 @@ "@octokit/webhooks-types": "^7.3.1" }, "pnpm": {}, + "engines": { + "node": ">= 20.10.0" + }, "main": "lib/index.js", "license": "Apache-2.0", "version": "0.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 79f48d0..11c7c40 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -20,8 +20,8 @@ devDependencies: specifier: ^29.5.11 version: 29.5.11 '@types/node': - specifier: ^18 - version: 18.19.3 + specifier: ^20 + version: 20.10.5 '@typescript-eslint/eslint-plugin': specifier: ^6 version: 6.15.0(@typescript-eslint/parser@6.15.0)(eslint@8.56.0)(typescript@5.3.3) @@ -51,7 +51,7 @@ devDependencies: version: 5.1.1(eslint-config-prettier@9.1.0)(eslint@8.56.0)(prettier@3.1.1) jest: specifier: ^29.7.0 - version: 29.7.0(@types/node@18.19.3)(ts-node@10.9.2) + version: 29.7.0(@types/node@20.10.5)(ts-node@10.9.2) jest-junit: specifier: ^15 version: 15.0.0 @@ -72,7 +72,7 @@ devDependencies: version: 29.1.1(jest@29.7.0)(typescript@5.3.3) ts-node: specifier: ^10.9.2 - version: 10.9.2(@types/node@18.19.3)(typescript@5.3.3) + version: 10.9.2(@types/node@20.10.5)(typescript@5.3.3) typescript: specifier: ^5.3.3 version: 5.3.3 @@ -543,7 +543,7 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@jest/types': 29.6.3 - '@types/node': 18.19.3 + '@types/node': 20.10.5 chalk: 4.1.2 jest-message-util: 29.7.0 jest-util: 29.7.0 @@ -564,14 +564,14 @@ packages: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 18.19.3 + '@types/node': 20.10.5 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 3.9.0 exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@18.19.3)(ts-node@10.9.2) + jest-config: 29.7.0(@types/node@20.10.5)(ts-node@10.9.2) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -599,7 +599,7 @@ packages: dependencies: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 18.19.3 + '@types/node': 20.10.5 jest-mock: 29.7.0 dev: true @@ -626,7 +626,7 @@ packages: dependencies: '@jest/types': 29.6.3 '@sinonjs/fake-timers': 10.3.0 - '@types/node': 18.19.3 + '@types/node': 20.10.5 jest-message-util: 29.7.0 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -659,7 +659,7 @@ packages: '@jest/transform': 29.7.0 '@jest/types': 29.6.3 '@jridgewell/trace-mapping': 0.3.20 - '@types/node': 18.19.3 + '@types/node': 20.10.5 chalk: 4.1.2 collect-v8-coverage: 1.0.2 exit: 0.1.2 @@ -747,7 +747,7 @@ packages: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 - '@types/node': 18.19.3 + '@types/node': 20.10.5 '@types/yargs': 17.0.32 chalk: 4.1.2 dev: true @@ -1003,7 +1003,7 @@ packages: /@types/graceful-fs@4.1.9: resolution: {integrity: sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==} dependencies: - '@types/node': 18.19.3 + '@types/node': 20.10.5 dev: true /@types/istanbul-lib-coverage@2.0.6: @@ -1041,8 +1041,8 @@ packages: resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==} dev: true - /@types/node@18.19.3: - resolution: {integrity: sha512-k5fggr14DwAytoA/t8rPrIz++lXK7/DqckthCmoZOKNsEbJkId4Z//BqgApXBUGrGddrigYa1oqheo/7YmW4rg==} + /@types/node@20.10.5: + resolution: {integrity: sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==} dependencies: undici-types: 5.26.5 dev: true @@ -1863,7 +1863,7 @@ packages: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} dev: true - /create-jest@29.7.0(@types/node@18.19.3)(ts-node@10.9.2): + /create-jest@29.7.0(@types/node@20.10.5)(ts-node@10.9.2): resolution: {integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true @@ -1872,7 +1872,7 @@ packages: chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@18.19.3)(ts-node@10.9.2) + jest-config: 29.7.0(@types/node@20.10.5)(ts-node@10.9.2) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -3219,7 +3219,7 @@ packages: '@jest/expect': 29.7.0 '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 18.19.3 + '@types/node': 20.10.5 chalk: 4.1.2 co: 4.6.0 dedent: 1.5.1 @@ -3240,7 +3240,7 @@ packages: - supports-color dev: true - /jest-cli@29.7.0(@types/node@18.19.3)(ts-node@10.9.2): + /jest-cli@29.7.0(@types/node@20.10.5)(ts-node@10.9.2): resolution: {integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true @@ -3254,10 +3254,10 @@ packages: '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@18.19.3)(ts-node@10.9.2) + create-jest: 29.7.0(@types/node@20.10.5)(ts-node@10.9.2) exit: 0.1.2 import-local: 3.1.0 - jest-config: 29.7.0(@types/node@18.19.3)(ts-node@10.9.2) + jest-config: 29.7.0(@types/node@20.10.5)(ts-node@10.9.2) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.7.2 @@ -3268,7 +3268,7 @@ packages: - ts-node dev: true - /jest-config@29.7.0(@types/node@18.19.3)(ts-node@10.9.2): + /jest-config@29.7.0(@types/node@20.10.5)(ts-node@10.9.2): resolution: {integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: @@ -3283,7 +3283,7 @@ packages: '@babel/core': 7.23.6 '@jest/test-sequencer': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 18.19.3 + '@types/node': 20.10.5 babel-jest: 29.7.0(@babel/core@7.23.6) chalk: 4.1.2 ci-info: 3.9.0 @@ -3303,7 +3303,7 @@ packages: pretty-format: 29.7.0 slash: 3.0.0 strip-json-comments: 3.1.1 - ts-node: 10.9.2(@types/node@18.19.3)(typescript@5.3.3) + ts-node: 10.9.2(@types/node@20.10.5)(typescript@5.3.3) transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -3344,7 +3344,7 @@ packages: '@jest/environment': 29.7.0 '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 18.19.3 + '@types/node': 20.10.5 jest-mock: 29.7.0 jest-util: 29.7.0 dev: true @@ -3360,7 +3360,7 @@ packages: dependencies: '@jest/types': 29.6.3 '@types/graceful-fs': 4.1.9 - '@types/node': 18.19.3 + '@types/node': 20.10.5 anymatch: 3.1.3 fb-watchman: 2.0.2 graceful-fs: 4.2.11 @@ -3421,7 +3421,7 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@jest/types': 29.6.3 - '@types/node': 18.19.3 + '@types/node': 20.10.5 jest-util: 29.7.0 dev: true @@ -3476,7 +3476,7 @@ packages: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 18.19.3 + '@types/node': 20.10.5 chalk: 4.1.2 emittery: 0.13.1 graceful-fs: 4.2.11 @@ -3507,7 +3507,7 @@ packages: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 18.19.3 + '@types/node': 20.10.5 chalk: 4.1.2 cjs-module-lexer: 1.2.3 collect-v8-coverage: 1.0.2 @@ -3559,7 +3559,7 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@jest/types': 29.6.3 - '@types/node': 18.19.3 + '@types/node': 20.10.5 chalk: 4.1.2 ci-info: 3.9.0 graceful-fs: 4.2.11 @@ -3584,7 +3584,7 @@ packages: dependencies: '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 18.19.3 + '@types/node': 20.10.5 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.13.1 @@ -3596,13 +3596,13 @@ packages: resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@types/node': 18.19.3 + '@types/node': 20.10.5 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 dev: true - /jest@29.7.0(@types/node@18.19.3)(ts-node@10.9.2): + /jest@29.7.0(@types/node@20.10.5)(ts-node@10.9.2): resolution: {integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true @@ -3615,7 +3615,7 @@ packages: '@jest/core': 29.7.0(ts-node@10.9.2) '@jest/types': 29.6.3 import-local: 3.1.0 - jest-cli: 29.7.0(@types/node@18.19.3)(ts-node@10.9.2) + jest-cli: 29.7.0(@types/node@20.10.5)(ts-node@10.9.2) transitivePeerDependencies: - '@types/node' - babel-plugin-macros @@ -4895,7 +4895,7 @@ packages: dependencies: bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@18.19.3)(ts-node@10.9.2) + jest: 29.7.0(@types/node@20.10.5)(ts-node@10.9.2) jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 @@ -4905,7 +4905,7 @@ packages: yargs-parser: 21.1.1 dev: true - /ts-node@10.9.2(@types/node@18.19.3)(typescript@5.3.3): + /ts-node@10.9.2(@types/node@20.10.5)(typescript@5.3.3): resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} hasBin: true peerDependencies: @@ -4924,7 +4924,7 @@ packages: '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 18.19.3 + '@types/node': 20.10.5 acorn: 8.11.2 acorn-walk: 8.3.1 arg: 4.1.3