diff --git a/.github/workflows/check-dist.yml b/.github/workflows/check-dist.yml index 452f175..6795ca1 100644 --- a/.github/workflows/check-dist.yml +++ b/.github/workflows/check-dist.yml @@ -20,10 +20,10 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Setup Node 20 + - name: Setup Node 24 uses: actions/setup-node@v4 with: - node-version: 20.x + node-version: 24.x cache: 'npm' - name: Install dependencies diff --git a/.github/workflows/test-node24-workflow.yml b/.github/workflows/test-node24-workflow.yml new file mode 100644 index 0000000..2af7c0f --- /dev/null +++ b/.github/workflows/test-node24-workflow.yml @@ -0,0 +1,49 @@ +name: Test with Node.js 24 + +on: + push: + branches: [ node24 ] + workflow_dispatch: + +jobs: + test-node24: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + # Setup with Node.js 24 + - name: Setup Node.js 24 + uses: actions/setup-node@v4 + with: + node-version: '24' + + # Create a test artifact + - name: Create test file + run: | + mkdir -p test-artifact + echo "Hello from Node.js 24" > test-artifact/test.txt + + # Upload the test artifact + - name: Upload test artifact + uses: actions/upload-artifact@v4 + with: + name: test-artifact + path: test-artifact + + # Download using this action + - name: Download with the updated action + uses: ./ + with: + name: test-artifact + path: downloaded-artifact + + # Verify download succeeded + - name: Verify download + run: | + if [ -f "downloaded-artifact/test.txt" ]; then + echo "✅ Download succeeded!" + cat downloaded-artifact/test.txt + else + echo "❌ Download failed!" + exit 1 + fi diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 1a69539..52158a0 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -22,10 +22,10 @@ jobs: - name: Checkout uses: actions/checkout@v4 - - name: Setup Node 20 + - name: Setup Node 24 uses: actions/setup-node@v4 with: - node-version: 20.x + node-version: 24.x cache: 'npm' - name: npm install diff --git a/action.yml b/action.yml index 7fc4fb5..7f962f0 100644 --- a/action.yml +++ b/action.yml @@ -39,5 +39,5 @@ outputs: download-path: description: 'Path of artifact download' runs: - using: 'node20' + using: 'node24' main: 'dist/index.js' diff --git a/package-lock.json b/package-lock.json index 165fa10..069d8c8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,7 +16,7 @@ }, "devDependencies": { "@types/jest": "^29.5.14", - "@types/node": "^12.12.6", + "@types/node": "^24.1.0", "@typescript-eslint/eslint-plugin": "^6.14.0", "@vercel/ncc": "^0.33.4", "concurrently": "^5.2.0", @@ -28,6 +28,9 @@ "ts-jest": "^29.2.6", "ts-node": "^10.9.2", "typescript": "^5.3.3" + }, + "engines": { + "node": ">=24" } }, "node_modules/@aashutoshrathi/word-wrap": { @@ -2271,9 +2274,12 @@ "dev": true }, "node_modules/@types/node": { - "version": "12.12.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.6.tgz", - "integrity": "sha512-FjsYUPzEJdGXjwKqSpE0/9QEh6kzhTAeObA54rn6j3rR4C/mzpI9L0KNfoeASSPMMdxIsoJuCLDWcM/rVjIsSA==" + "version": "24.1.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.1.0.tgz", + "integrity": "sha512-ut5FthK5moxFKH2T1CUOC6ctR67rQRvvHdFLCD2Ql6KXmMuCrjsSsRI9UsLCm9M18BMwClv4pn327UvB7eeO1w==", + "dependencies": { + "undici-types": "~7.8.0" + } }, "node_modules/@types/node-fetch": { "version": "2.6.9", @@ -10192,6 +10198,11 @@ "node": ">=14.0" } }, + "node_modules/undici-types": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.8.0.tgz", + "integrity": "sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==" + }, "node_modules/universal-user-agent": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", @@ -12471,9 +12482,12 @@ "dev": true }, "@types/node": { - "version": "12.12.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.6.tgz", - "integrity": "sha512-FjsYUPzEJdGXjwKqSpE0/9QEh6kzhTAeObA54rn6j3rR4C/mzpI9L0KNfoeASSPMMdxIsoJuCLDWcM/rVjIsSA==" + "version": "24.1.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.1.0.tgz", + "integrity": "sha512-ut5FthK5moxFKH2T1CUOC6ctR67rQRvvHdFLCD2Ql6KXmMuCrjsSsRI9UsLCm9M18BMwClv4pn327UvB7eeO1w==", + "requires": { + "undici-types": "~7.8.0" + } }, "@types/node-fetch": { "version": "2.6.9", @@ -18199,6 +18213,11 @@ "@fastify/busboy": "^2.0.0" } }, + "undici-types": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.8.0.tgz", + "integrity": "sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==" + }, "universal-user-agent": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", diff --git a/package.json b/package.json index 676b9a7..572dffb 100644 --- a/package.json +++ b/package.json @@ -28,6 +28,9 @@ "url": "https://github.com/actions/download-artifact/issues" }, "homepage": "https://github.com/actions/download-artifact#readme", + "engines": { + "node": ">=24" + }, "dependencies": { "@actions/artifact": "^2.3.2", "@actions/core": "^1.10.1", @@ -36,7 +39,7 @@ }, "devDependencies": { "@types/jest": "^29.5.14", - "@types/node": "^12.12.6", + "@types/node": "^24.1.0", "@typescript-eslint/eslint-plugin": "^6.14.0", "@vercel/ncc": "^0.33.4", "concurrently": "^5.2.0",