1- name : Node.js CI
1+ name : Tests
22
33on :
44 push :
@@ -10,67 +10,86 @@ permissions:
1010 contents : read
1111
1212jobs :
13- lint :
14- name : Lint JS
15- runs-on : ubuntu-latest
16- steps :
17- - uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v6
18- - uses : pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
19- - uses : actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v6
20- with :
21- node-version : 22
22- cache : pnpm
23- - run : pnpm install --frozen-lockfile --ignore-scripts
24- - run : pnpm run lint
25-
2613 test :
2714 name : Unit tests
2815 runs-on : ubuntu-latest
2916 steps :
30- - uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v6
17+ - uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
18+ with :
19+ persist-credentials : false
3120 - uses : pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
32- - uses : actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v6
21+ - name : Use Node.js
22+ uses : actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v6
3323 with :
34- node-version : 22
35- cache : pnpm
36- - run : pnpm install --frozen-lockfile --ignore-scripts
24+ cache : ' pnpm '
25+ node-version : 24
26+ - run : pnpm install --frozen-lockfile
3727 - run : pnpm test
3828
39- code-coverage :
40- name : Code coverage
29+ check :
30+ name : Check types
4131 runs-on : ubuntu-latest
4232 steps :
43- - uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v6
33+ - uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
34+ with :
35+ persist-credentials : false
4436 - uses : pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
45- - uses : actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v6
37+ - name : Use Node.js
38+ uses : actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v6
4639 with :
47- node-version : 22
48- cache : pnpm
49- - run : pnpm install --frozen-lockfile --ignore-scripts
50- - run : pnpm test
40+ cache : ' pnpm '
41+ node-version : 24
42+ - run : pnpm install --frozen-lockfile
43+ - run : pnpm run check
5144
5245 build :
5346 name : Build
5447 runs-on : ubuntu-latest
5548 steps :
56- - uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v6
49+ - uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
50+ with :
51+ persist-credentials : false
5752 - uses : pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
58- - uses : actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v6
53+ - name : Use Node.js
54+ uses : actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v6
5955 with :
60- node-version : 22
61- cache : pnpm
62- - run : pnpm install --frozen-lockfile --ignore-scripts
56+ cache : ' pnpm '
57+ node-version : 24
58+ - run : pnpm install --frozen-lockfile
6359 - run : pnpm run build
6460
61+ lint :
62+ name : Lint
63+ runs-on : ubuntu-latest
64+ steps :
65+ - uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
66+ with :
67+ persist-credentials : false
68+ - uses : pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
69+ - name : Use Node.js
70+ uses : actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v6
71+ with :
72+ cache : ' pnpm'
73+ node-version : 24
74+ - run : pnpm install --frozen-lockfile
75+ - run : pnpm run lint
76+
77+ npm-audit :
78+ name : Audit packages
79+ runs-on : ubuntu-latest
80+ steps :
81+ - uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
82+ with :
83+ persist-credentials : false
84+ - uses : pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
85+ - run : pnpm audit --audit-level=high
86+
6587 knip :
6688 name : Lint unused code
6789 runs-on : ubuntu-latest
6890 steps :
69- - uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v6
70- - uses : pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
71- - uses : actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v6
91+ - uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
7292 with :
73- node-version : 22
74- cache : pnpm
75- - run : pnpm install --frozen-lockfile --ignore-scripts
93+ persist-credentials : false
94+ - uses : pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
7695 - run : pnpm run knip
0 commit comments