55 schedule :
66 - cron : " 3 4 * * 5"
77
8+ concurrency :
9+ group : ${{ github.workflow }}-${{ github.ref }}
10+ cancel-in-progress : true
11+
812permissions :
913 contents : read
1014
@@ -13,42 +17,48 @@ jobs:
1317 runs-on : ubuntu-latest
1418 steps :
1519 - name : Checkout repository
16- uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6 .0.1
20+ uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 .0.1
1721 with :
1822 persist-credentials : false
1923
2024 - name : Setup Node.js
21- uses : actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1 .0
25+ uses : actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0 .0
2226 with :
23- node-version : 24
27+ node-version : 26
2428
2529 - name : Install dependencies
2630 run : npm ci
2731
2832 - name : Lint files
33+ continue-on-error : true
2934 run : npm run lint -- --formatter github
3035
3136 - name : Check types
32- if : always()
37+ continue-on-error : true
3338 run : npm run lint:types
3439
35- - name : JSR publish dry run
36- run : npx jsr publish --dry-run
40+ - name : Check publish on npm
41+ continue-on-error : true
42+ run : npm run lint:npm
43+
44+ - name : Check publish on JSR
45+ continue-on-error : true
46+ run : npm run lint:jsr
3747
3848 test-node :
3949 runs-on : ${{ matrix.os }}
4050 strategy :
4151 matrix :
4252 os : [ubuntu-latest, macos-latest, windows-latest]
43- node-version : [22, 24, latest]
53+ node-version : [22, 24, 26, latest]
4454 steps :
4555 - name : Checkout repository
46- uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6 .0.1
56+ uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 .0.1
4757 with :
4858 persist-credentials : false
4959
5060 - name : Setup Node.js ${{ matrix.node-version }}
51- uses : actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1 .0
61+ uses : actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0 .0
5262 with :
5363 node-version : ${{ matrix.node-version }}
5464
@@ -65,15 +75,15 @@ jobs:
6575 os : [ubuntu-latest, macos-latest, windows-latest]
6676 steps :
6777 - name : Checkout repository
68- uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6 .0.1
78+ uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 .0.1
6979 with :
7080 persist-credentials : false
7181
7282 - name : Setup Bun
73- uses : oven-sh/setup-bun@b7a1c7ccf290d58743029c4f6903da283811b979 # v2.1 .0
83+ uses : oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2.2 .0
7484
7585 - name : Install dependencies
76- run : bun ci
86+ run : bun install
7787
7888 - name : Run unit tests on Bun
7989 run : npm run test:unit:bun
@@ -102,22 +112,22 @@ jobs:
102112 runs-on : ubuntu-latest
103113 steps :
104114 - name : Checkout repository
105- uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6 .0.1
115+ uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 .0.1
106116 with :
107117 persist-credentials : false
108118
109119 - name : Setup Node.js
110- uses : actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1 .0
120+ uses : actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0 .0
111121 with :
112- node-version : 24
122+ node-version : 26
113123
114124 - name : Install dependencies
115125 run : npm ci
116126
117127 - name : Run mutation tests and send coverage
118- run : npm run test:coverage -- --reporters clear-text,dashboard
119128 env :
120129 STRYKER_DASHBOARD_API_KEY : ${{ secrets.STRYKER_DASHBOARD_API_KEY }}
130+ run : npm run test:coverage -- --reporters clear-text,dashboard
121131
122132 analyze :
123133 runs-on : ubuntu-latest
@@ -127,24 +137,25 @@ jobs:
127137 security-events : write
128138 steps :
129139 - name : Checkout repository
130- uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6 .0.1
140+ uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 .0.1
131141 with :
132142 persist-credentials : false
133143
134144 - name : Initialize CodeQL
135- uses : github/codeql-action/init@5d4e8d1aca955e8d8589aabd499c5cae939e33c7 # v4.31.9
145+ uses : github/codeql-action/init@ff2f1c621b7f889edc0d3c761ac2e6a3f8cdb0dd # v4.37.7
136146 with :
137147 languages : javascript
138148
139149 - name : Perform CodeQL Analysis
140- uses : github/codeql-action/analyze@5d4e8d1aca955e8d8589aabd499c5cae939e33c7 # v4.31.9
150+ uses : github/codeql-action/analyze@ff2f1c621b7f889edc0d3c761ac2e6a3f8cdb0dd # v4.37.7
141151
142152 - name : Run Snyk to check for vulnerabilities
153+ # Ne pas exécuter Snyk sur les forks, car ils n'ont pas accès au jeton.
143154 if : ${{ 'Actions' == github.secret_source }}
144- uses : snyk/actions/node@9adf32b1121593767fc3c057af55b55db032dc04 # v1.0.0
145155 continue-on-error : true
146156 env :
147157 SNYK_TOKEN : ${{ secrets.SNYK_TOKEN }}
158+ uses : snyk/actions/node@9adf32b1121593767fc3c057af55b55db032dc04 # v1.0.0
148159 with :
149160 args : --sarif-file-output=snyk.sarif
150161
0 commit comments