@@ -26,10 +26,10 @@ jobs:
2626 timeout-minutes : 15
2727 steps :
2828 - name : Checkout
29- uses : actions/checkout@v5
29+ uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
3030
3131 - name : Setup Node.js
32- uses : actions/setup-node@v5
32+ uses : actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5
3333 with :
3434 cache : ' npm'
3535 node-version : ${{ env.NODE_VERSION }}
@@ -47,17 +47,41 @@ jobs:
4747 - name : Check Prettier formatting
4848 run : npm run format
4949
50+ typecheck :
51+ name : TypeCheck
52+ runs-on : ubuntu-latest
53+ timeout-minutes : 15
54+ steps :
55+ - name : Checkout
56+ uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
57+
58+ - name : Setup Node.js
59+ uses : actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5
60+ with :
61+ cache : ' npm'
62+ node-version : ${{ env.NODE_VERSION }}
63+ registry-url : ' https://npm.pkg.github.com'
64+ scope : ' @deepnote'
65+
66+ - name : Install dependencies
67+ run : npm ci --prefer-offline --no-audit
68+ env :
69+ NODE_AUTH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
70+
71+ - name : Run TypeScript type checking
72+ run : npm run typecheck
73+
5074 qlty :
5175 name : Qlty Check
5276 runs-on : ubuntu-latest
5377 timeout-minutes : 3
5478
5579 steps :
5680 - name : Checkout code
57- uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
81+ uses : actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493
5882
5983 - name : Install qlty
60- uses : qltysh/qlty-action/install@06730ef41b86b073c3813c0fc07a0c734980ce5d
84+ uses : qltysh/qlty-action/install@a19242102d17e497f437d7466aa01b528537e899
6185
6286 - name : Run qlty check
6387 run : qlty check
@@ -69,12 +93,15 @@ jobs:
6993 name : Build & Test
7094 runs-on : ubuntu-latest
7195 timeout-minutes : 15
96+ permissions :
97+ id-token : write
98+ contents : read
7299 steps :
73100 - name : Checkout
74- uses : actions/checkout@v5
101+ uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
75102
76103 - name : Setup Node.js
77- uses : actions/setup-node@v5
104+ uses : actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5
78105 with :
79106 cache : ' npm'
80107 node-version : ${{ env.NODE_VERSION }}
@@ -95,18 +122,18 @@ jobs:
95122 VSC_JUPYTER_INSTRUMENT_CODE_FOR_COVERAGE : true
96123
97124 - name : Upload coverage to Codecov
98- uses : codecov/codecov-action@v5
125+ uses : codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 # v5
99126 with :
100- token : ${{ secrets.CODECOV_TOKEN }}
127+ use_oidc : true
101128 files : coverage/lcov.info
102129 fail_ci_if_error : true
103130
104131 - name : Upload test results to Codecov
105132 if : ' !cancelled()'
106- uses : codecov/test-results-action@v1
133+ uses : codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1
107134 with :
108- token : ${{ secrets.CODECOV_TOKEN }}
109- files : test-report .xml
135+ use_oidc : true
136+ files : test-results .xml
110137 fail_ci_if_error : true
111138
112139 - name : Check dependencies
@@ -121,10 +148,10 @@ jobs:
121148 runs-on : ubuntu-latest
122149 steps :
123150 - name : Checkout
124- uses : actions/checkout@v5
151+ uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
125152
126153 - name : Setup Node.js
127- uses : actions/setup-node@v5
154+ uses : actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5
128155 with :
129156 cache : ' npm'
130157 node-version : ${{ env.NODE_VERSION }}
@@ -169,10 +196,10 @@ jobs:
169196 timeout-minutes : 15
170197 steps :
171198 - name : Checkout
172- uses : actions/checkout@v5
199+ uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
173200
174201 - name : Setup Node.js
175- uses : actions/setup-node@v5
202+ uses : actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5
176203 with :
177204 cache : ' npm'
178205 node-version : ${{ env.NODE_VERSION }}
@@ -193,10 +220,10 @@ jobs:
193220 timeout-minutes : 15
194221 steps :
195222 - name : Checkout
196- uses : actions/checkout@v5
223+ uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
197224
198225 - name : Setup Node.js
199- uses : actions/setup-node@v5
226+ uses : actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5
200227 with :
201228 cache : ' npm'
202229 node-version : ${{ env.NODE_VERSION }}
0 commit comments