Skip to content

Commit

Permalink
Upgrade minimum supported Node.js version to 16
Browse files Browse the repository at this point in the history
Drops support for Node.js 10, 12 and 14
  • Loading branch information
lovell committed Sep 3, 2024
1 parent ad36182 commit 9d3424f
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 61 deletions.
96 changes: 41 additions & 55 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,107 +14,93 @@ jobs:
fail-fast: false
matrix:
include:
- os: ubuntu-22.04
container: centos:7
nodejs_version: 10
prebuild: true
- os: ubuntu-22.04
container: centos:7
nodejs_version: 12
- os: ubuntu-22.04
container: centos:7
nodejs_version: 14
- os: ubuntu-22.04
container: centos:7
- os: ubuntu-24.04
container: rockylinux:8
nodejs_version: 16
- os: ubuntu-22.04
prebuild: true
- os: ubuntu-24.04
container: rockylinux:8
nodejs_version: 18
- os: ubuntu-22.04
container: node:10-alpine3.11
prebuild: true
- os: ubuntu-22.04
container: node:12-alpine3.12
- os: ubuntu-22.04
container: node:14-alpine3.12
- os: ubuntu-22.04
- os: ubuntu-24.04
container: rockylinux:8
nodejs_version: 20
- os: ubuntu-24.04
container: rockylinux:8
nodejs_version: 22
- os: ubuntu-24.04
container: node:16-alpine3.12
- os: ubuntu-22.04
prebuild: true
- os: ubuntu-24.04
container: node:18-alpine3.14
- os: ubuntu-24.04
container: node:20-alpine3.18
- os: ubuntu-24.04
container: node:22-alpine3.20
- os: macos-12
nodejs_version: 10
nodejs_version: 16
nodejs_arch: x64
prebuild: true
- os: macos-12
nodejs_version: 12
nodejs_arch: x64
- os: macos-12
nodejs_version: 14
nodejs_version: 18
nodejs_arch: x64
- os: macos-12
nodejs_version: 16
nodejs_version: 20
nodejs_arch: x64
- os: macos-12
nodejs_version: 18
nodejs_version: 22
nodejs_arch: x64
- os: macos-14
nodejs_version: 18
nodejs_arch: arm64
prebuild: true
- os: macos-14
nodejs_version: 20
nodejs_arch: arm64
- os: macos-14
nodejs_version: 22
nodejs_arch: arm64
- os: windows-2019
nodejs_version: 10
nodejs_version: 16
nodejs_arch: x86
prebuild: true
- os: windows-2019
nodejs_version: 12
nodejs_arch: x86
- os: windows-2019
nodejs_version: 14
nodejs_version: 18
nodejs_arch: x86
- os: windows-2019
nodejs_version: 16
nodejs_version: 20
nodejs_arch: x86
- os: windows-2019
nodejs_version: 18
nodejs_version: 22
nodejs_arch: x86
- os: windows-2019
nodejs_version: 10
nodejs_version: 16
nodejs_arch: x64
prebuild: true
- os: windows-2019
nodejs_version: 12
nodejs_version: 18
nodejs_arch: x64
- os: windows-2019
nodejs_version: 14
nodejs_version: 20
nodejs_arch: x64
- os: windows-2019
nodejs_version: 16
nodejs_arch: x64
- os: windows-2019
nodejs_version: 18
nodejs_version: 22
nodejs_arch: x64
steps:
- name: Dependencies (Linux glibc)
if: contains(matrix.container, 'centos')
run: |
curl -sL https://rpm.nodesource.com/setup_${{ matrix.nodejs_version }}.x | bash -
yum install -y centos-release-scl
yum install -y devtoolset-11-gcc-c++ make git python3 nodejs
echo "/opt/rh/devtoolset-11/root/usr/bin" >> $GITHUB_PATH
- name: Dependencies (Rocky Linux glibc)
if: contains(matrix.container, 'rockylinux')
run: |
curl -sL https://rpm.nodesource.com/setup_${{ matrix.nodejs_version }}.x | bash -
dnf install -y gcc-toolset-11-gcc-c++ make git python3 nodejs
dnf install -y gcc-toolset-11-gcc-c++ make git python3.12 nodejs
echo "/opt/rh/gcc-toolset-11/root/usr/bin" >> $GITHUB_PATH
echo "PYTHON=/usr/bin/python3.12" >> $GITHUB_ENV
- name: Dependencies (Linux musl)
if: contains(matrix.container, 'alpine')
run: apk add build-base git python3 --update-cache
- name: Dependencies (Python 3.10 - macOS, Windows)
- name: Dependencies (Python - macOS, Windows)
if: contains(matrix.os, 'macos') || contains(matrix.os, 'windows')
uses: actions/setup-python@v5
with:
python-version: '3.10'
python-version: "3.12"
- name: Dependencies (Node.js - macOS, Windows)
if: contains(matrix.os, 'macos') || contains(matrix.os, 'windows')
uses: actions/setup-node@v4
Expand All @@ -125,7 +111,7 @@ jobs:
if: matrix.os != 'macos-14'
run: echo "CXXFLAGS=-march=nehalem" >> $GITHUB_ENV
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Install
run: npm install --build-from-source --unsafe-perm
- name: Test
Expand All @@ -134,4 +120,4 @@ jobs:
if: matrix.prebuild && startsWith(github.ref, 'refs/tags/')
env:
prebuild_upload: ${{ secrets.GITHUB_TOKEN }}
run: npx prebuild --runtime napi --target 3
run: npx prebuild --runtime napi --target 8
13 changes: 7 additions & 6 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -29,26 +29,27 @@
"fingerprint"
],
"dependencies": {
"node-addon-api": "^5.1.0",
"node-addon-api": "^8.1.0",
"prebuild-install": "^7.1.2"
},
"devDependencies": {
"cc": "^3.0.1",
"prebuild": "^11.0.4",
"semistandard": "^16.0.1"
"node-gyp": "^10.2.0",
"prebuild": "^13.0.1",
"semistandard": "^17.0.0"
},
"license": "Apache-2.0",
"engines": {
"node": ">=10"
"node": ">=16"
},
"binary": {
"napi_versions": [
3
8
]
},
"config": {
"runtime": "napi",
"target": 3
"target": 8
},
"cc": {
"linelength": "120",
Expand Down

0 comments on commit 9d3424f

Please sign in to comment.