3131 runs-on : " ubuntu-latest"
3232 name : Native addon ABI compatibility
3333 env :
34- # The flags the runner passes in a real benchmark process.
34+ # The flags the runner passes in a real benchmark process. They cannot go
35+ # through NODE_OPTIONS (--allow-natives-syntax is rejected there), so jest
36+ # runs in-band under a flagged node instead of forking workers.
3537 NODE_OPTS : " --interpreted-frames-native-stack --allow-natives-syntax"
3638 steps :
3739 - uses : " actions/checkout@v4"
@@ -49,26 +51,21 @@ jobs:
4951 key-suffix : native-abi
5052 - run : pnpm install --frozen-lockfile --prefer-offline
5153 # Build one prebuild set, then load it without rebuilding under each
52- # runtime. The other jobs compile the addon with the Node version that
53- # loads it, so they cannot detect an ABI mismatch.
54+ # runtime via the jest integ test. The other jobs compile the addon
55+ # with the Node version that loads it, so they cannot detect an ABI
56+ # mismatch.
5457 - run : pnpm turbo run build --filter=@codspeed/core
5558
5659 - uses : actions/setup-node@v6
5760 with :
58- node-version : " 22.0.0"
59- - run : node ${{ env.NODE_OPTS }} scripts/assert-native-binding.cjs
61+ node-version : " 22"
62+ - run : node ${{ env.NODE_OPTS }} "$(node -p 'require.resolve("jest/bin/jest")')" -c jest.config.integ.js --runInBand tests/index.integ.test.ts
63+ working-directory : packages/core
6064 - uses : actions/setup-node@v6
6165 with :
62- node-version : " 22.23.2"
63- - run : node ${{ env.NODE_OPTS }} scripts/assert-native-binding.cjs
64- - uses : actions/setup-node@v6
65- with :
66- node-version : " 24.0.0"
67- - run : node ${{ env.NODE_OPTS }} scripts/assert-native-binding.cjs
68- - uses : actions/setup-node@v6
69- with :
70- node-version : " 24.20.0"
71- - run : node ${{ env.NODE_OPTS }} scripts/assert-native-binding.cjs
66+ node-version : " 24"
67+ - run : node ${{ env.NODE_OPTS }} "$(node -p 'require.resolve("jest/bin/jest")')" -c jest.config.integ.js --runInBand tests/index.integ.test.ts
68+ working-directory : packages/core
7269
7370 list-examples :
7471 runs-on : " ubuntu-latest"
0 commit comments