Skip to content

Commit

Permalink
Build with separate headers for NodeJS 16.6
Browse files Browse the repository at this point in the history
  • Loading branch information
reuben committed Aug 1, 2021
1 parent d33ba0b commit 70d3366
Showing 1 changed file with 16 additions and 16 deletions.
32 changes: 16 additions & 16 deletions .github/workflows/build-and-test.yml
Expand Up @@ -458,15 +458,15 @@ jobs:
id: node-headers-cache
with:
path: native_client/javascript/headers/nodejs/
key: node-headers-10.0.0_16.0.0
key: node-headers-10.0.0_16.6.0
- uses: actions/cache@v2
id: electron-headers-cache
with:
path: native_client/javascript/headers/electronjs/
key: electron-headers-5.0.13_12.0.0
- uses: ./.github/actions/node-build
with:
nodejs_versions: "10.0.0 11.0.0 12.7.0 13.0.0 14.0.0 15.0.0 16.0.0"
nodejs_versions: "10.0.0 11.0.0 12.7.0 13.0.0 14.0.0 15.0.0 16.0.0 16.6.0"
electronjs_versions: "5.0.13 6.0.12 6.1.7 7.0.1 7.1.8 8.0.1 9.0.1 9.1.0 9.2.0 10.0.0 10.1.0 11.0.0 12.0.0"
- uses: actions/upload-artifact@v2
with:
Expand Down Expand Up @@ -568,7 +568,7 @@ jobs:
strategy:
matrix:
# https://nodejs.org/en/about/releases/
nodejs-version: [10, 12, 14, 16]
nodejs-version: [10, 12, 14, 16.5, 16.6]
models: ["test"]
bitrate: ["16k"]
fail-fast: false
Expand Down Expand Up @@ -1195,15 +1195,15 @@ jobs:
id: node-headers-cache
with:
path: native_client/javascript/headers/nodejs/
key: node-headers-10.0.0_16.0.0
key: node-headers-10.0.0_16.6.0
- uses: actions/cache@v2
id: electron-headers-cache
with:
path: native_client/javascript/headers/electronjs/
key: electron-headers-5.0.13_12.0.0
- uses: ./.github/actions/node-build
with:
nodejs_versions: "10.0.0 11.0.0 12.7.0 13.0.0 14.0.0 15.0.0 16.0.0"
nodejs_versions: "10.0.0 11.0.0 12.7.0 13.0.0 14.0.0 15.0.0 16.0.0 16.6.0"
electronjs_versions: "5.0.13 6.0.12 6.1.7 7.0.1 7.1.8 8.0.1 9.0.1 9.1.0 9.2.0 10.0.0 10.1.0 11.0.0 12.0.0"
- uses: actions/upload-artifact@v2
with:
Expand Down Expand Up @@ -1303,7 +1303,7 @@ jobs:
strategy:
matrix:
# https://nodejs.org/en/about/releases/
nodejs-version: [10, 12, 14, 16]
nodejs-version: [10, 12, 14, 16.5, 16.6]
models: ["test"]
bitrate: ["16k"]
fail-fast: false
Expand Down Expand Up @@ -1666,15 +1666,15 @@ jobs:
id: node-headers-cache
with:
path: native_client/javascript/headers/nodejs/
key: node-headers-win-10.0.0_16.0.0
key: node-headers-win-10.0.0_16.6.0
- uses: actions/cache@v2
id: electron-headers-cache
with:
path: native_client/javascript/headers/electronjs/
key: electron-headers-win-5.0.13_12.0.0
- uses: ./.github/actions/node-build
with:
nodejs_versions: "10.0.0 11.0.0 12.7.0 13.0.0 14.0.0 15.0.0 16.0.0"
nodejs_versions: "10.0.0 11.0.0 12.7.0 13.0.0 14.0.0 15.0.0 16.0.0 16.6.0"
electronjs_versions: "5.0.13 6.0.12 6.1.7 7.0.1 7.1.8 8.0.1 9.0.1 9.1.0 9.2.0 10.0.0 10.1.0 11.0.0 12.0.0"
- uses: actions/upload-artifact@v2
with:
Expand Down Expand Up @@ -1791,7 +1791,7 @@ jobs:
if: ${{ github.event_name == 'pull_request' }}
strategy:
matrix:
nodejs-version: [10, 12, 14, 16]
nodejs-version: [10, 12, 14, 16.5, 16.6]
models: ["test"]
bitrate: ["16k"]
fail-fast: false
Expand Down Expand Up @@ -1967,7 +1967,7 @@ jobs:
strategy:
matrix:
# https://nodejs.org/en/about/releases/
nodejs-version: [10, 16]
nodejs-version: [10, 16.5, 16.6]
models: ["test", "prod"]
bitrate: ["8k", "16k"]
fail-fast: false
Expand Down Expand Up @@ -2077,7 +2077,7 @@ jobs:
strategy:
matrix:
# https://nodejs.org/en/about/releases/
nodejs-version: [10, 16]
nodejs-version: [10, 16.5, 16.6]
models: ["test", "prod"]
bitrate: ["8k", "16k"]
fail-fast: false
Expand Down Expand Up @@ -2183,7 +2183,7 @@ jobs:
strategy:
matrix:
# https://nodejs.org/en/about/releases/
nodejs-version: [10, 16]
nodejs-version: [10, 16.5, 16.6]

This comment has been minimized.

Copy link
@lissyx

lissyx Aug 1, 2021

Collaborator

ABI compat might trick you, if you build against a newer release than 16.0.0 you might pick dependency on newer symbols from newer yet compatible v8 release, making th茅 binding broken with releases from before.

This comment has been minimized.

Copy link
@reuben

reuben Aug 1, 2021

Author Collaborator

Since they didn't bump the NODE_MODULE_VERSION, what ended up happening is that the wrapper built for 16.6 overwrote the one built for 16.0, so this change ended up breaking tests in 16.5 due to the same symbol change. I'm pretty sure this is an ABI breakage on NodeJS end: nodejs/node#39470 (comment)

I'm trying a new workaround...

models: ["test", "prod"]
bitrate: ["8k", "16k"]
fail-fast: false
Expand Down Expand Up @@ -2597,15 +2597,15 @@ jobs:
id: node-headers-cache
with:
path: native_client/javascript/headers/nodejs/
key: node-headers-10.0.0_16.0.0
key: node-headers-10.0.0_16.6.0
- uses: actions/cache@v2
id: electron-headers-cache
with:
path: native_client/javascript/headers/electronjs/
key: electron-headers-5.0.13_12.0.0
- uses: ./.github/actions/node-build
with:
nodejs_versions: "10.0.0 11.0.0 12.7.0 13.0.0 14.0.0 15.0.0 16.0.0"
nodejs_versions: "10.0.0 11.0.0 12.7.0 13.0.0 14.0.0 15.0.0 16.0.0 16.6.0"
electronjs_versions: "5.0.13 6.0.12 6.1.7 7.0.1 7.1.8 8.0.1 9.0.1 9.1.0 9.2.0 10.0.0 10.1.0 11.0.0 12.0.0"
target: ${{ env.SYSTEM_TARGET }}
chroot: ${{ env.SYSTEM_RASPBIAN }}
Expand Down Expand Up @@ -2742,15 +2742,15 @@ jobs:
id: node-headers-cache
with:
path: native_client/javascript/headers/nodejs/
key: node-headers-10.0.0_16.0.0
key: node-headers-10.0.0_16.6.0
- uses: actions/cache@v2
id: electron-headers-cache
with:
path: native_client/javascript/headers/electronjs/
key: electron-headers-5.0.13_12.0.0
- uses: ./.github/actions/node-build
with:
nodejs_versions: "10.0.0 11.0.0 12.7.0 13.0.0 14.0.0 15.0.0 16.0.0"
nodejs_versions: "10.0.0 11.0.0 12.7.0 13.0.0 14.0.0 15.0.0 16.0.0 16.6.0"
electronjs_versions: "5.0.13 6.0.12 6.1.7 7.0.1 7.1.8 8.0.1 9.0.1 9.1.0 9.2.0 10.0.0 10.1.0 11.0.0 12.0.0"
target: ${{ env.SYSTEM_TARGET }}
chroot: ${{ env.SYSTEM_RASPBIAN }}
Expand Down

0 comments on commit 70d3366

Please sign in to comment.