@@ -26,30 +26,30 @@ jobs:
2626 - name : Set up Node.js
2727 uses : actions/setup-node@v4.0.3 # Specific version
2828 with :
29- node-version : ' 20 '
30- cache : ' npm ' # Added caching
29+ node-version : ' 22 ' # Use latest LTS
30+ cache : ' pnpm ' # Use pnpm cache
3131
3232 - name : Install dependencies
33- run : npm ci
33+ run : pnpm install --frozen-lockfile # Use pnpm install
3434
3535 - name : Check formatting
36- run : npm run check-format
36+ run : pnpm run check-format
3737
3838 - name : Lint code
39- run : npm run lint
39+ run : pnpm run lint
4040
4141 - name : Perform type checking
42- run : npm run typecheck
42+ run : pnpm run typecheck
4343
4444 - name : Run tests with coverage
45- run : npm run test:cov
45+ run : pnpm run test:cov
4646
4747 - name : Upload coverage to Coveralls
4848 uses : coverallsapp/github-action@v2.3.0 # Specific version
4949 with :
5050 github-token : ${{ secrets.GITHUB_TOKEN }}
5151 path-to-lcov : ./coverage/lcov.info # Verify path exists after test:cov
52- flag-name : run-${{ matrix.node-version || 'node-20 ' }} # Use matrix or default
52+ flag-name : run-${{ matrix.node-version || 'node-22 ' }} # Use matrix or default (updated node version)
5353 parallel : false # Set to true if using parallel matrix later
5454
5555 build :
@@ -66,14 +66,14 @@ jobs:
6666 - name : Set up Node.js
6767 uses : actions/setup-node@v4.0.3 # Specific version
6868 with :
69- node-version : ' 20 '
70- cache : ' npm ' # Added caching
69+ node-version : ' 22 ' # Use latest LTS
70+ cache : ' pnpm ' # Use pnpm cache
7171
7272 - name : Install dependencies
73- run : npm ci
73+ run : pnpm install --frozen-lockfile # Use pnpm install
7474
7575 - name : Build project
76- run : npm run build
76+ run : pnpm run build
7777
7878 - name : Get package version
7979 id : get_version
9292 id : archive_build
9393 run : |
9494 # Ensure scripts directory is included if postbuild.js is needed
95- tar -czf build-artifacts.tar.gz build package.json package -lock.json README.md CHANGELOG.md LICENSE Dockerfile .dockerignore scripts/postbuild.js
95+ tar -czf build-artifacts.tar.gz build package.json pnpm -lock.yaml README.md CHANGELOG.md LICENSE Dockerfile .dockerignore scripts/postbuild.js # Replaced package-lock with pnpm-lock
9696 echo "archive_name=build-artifacts.tar.gz" >> $GITHUB_OUTPUT
9797
9898 - name : Upload build artifacts (only on tag push)
@@ -122,9 +122,9 @@ jobs:
122122 - name : Set up Node.js for npm publish
123123 uses : actions/setup-node@v4.0.3 # Specific version
124124 with :
125- node-version : ' 20 '
125+ node-version : ' 22 ' # Use latest LTS
126126 registry-url : ' https://registry.npmjs.org/'
127- cache : ' npm ' # Added caching
127+ cache : ' pnpm ' # Use pnpm cache
128128
129129 # Install only production dependencies before publishing (optional but good practice)
130130 # - name: Install production dependencies
0 commit comments