Skip to content

use the built-ini queue #508

use the built-ini queue

use the built-ini queue #508

Workflow file for this run

name: CI
on:
push:
branches: '*'
paths-ignore:
- '*.md'
pull_request:
branches: main
paths-ignore:
- '*.md'
jobs:
default:
runs-on: ${{ matrix.platform }}
strategy:
fail-fast: false
matrix:
platform:
- ubuntu-22.04
- ubuntu-24.04
- windows-2022
- windows-2025
- macos-13
- macos-14
- macos-15
node-version: ['18.17', 18, 20, 22, 24]
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- run: npm install
- run: npm test
- name: Link the package
run: npm link
- name: Check the example
run: |
cd example
npm install --ignore-scripts
npm link nobind17
npx node-gyp configure build --debug
node -p "require('./lib/hello.node').hello('Garga')"
npx node-gyp configure build
node -p "require('./lib/hello.node').hello('Garga')"
npx tsx hello.ts
shell: bash
legacy:
runs-on: ubuntu-latest
container: ubuntu:20.04
strategy:
fail-fast: false
matrix:
node-version: ['18.17', 18, 20, 22]
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Setup dependencies
run: |
apt-get update
apt-get -y install python3 g++ make
env:
DEBIAN_FRONTEND: noninteractive
- run: npm install
- run: npm test
- name: Link the package
run: npm link
- name: Check the example
run: |
cd example
npm install --ignore-scripts
npm link nobind17
npx node-gyp configure build --debug
node -p "require('./lib/hello.node').hello('Garga')"
npx node-gyp configure build
node -p "require('./lib/hello.node').hello('Garga')"
npx tsx hello.ts
shell: bash
options:
runs-on: ${{ matrix.platform }}
strategy:
fail-fast: false
matrix:
platform: [ubuntu-latest]
node-version: [22]
options:
- '-DNOBIND_NO_OBJECT_STORE'
- '-DNOBIND_NO_TYPESCRIPT_GENERATOR'
- '-DNOBIND_NO_ASYNC_LOCKING'
- '-DNODE_ADDON_API_REQUIRE_BASIC_FINALIZERS'
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- run: npm install
- run: npm test
env:
CXXFLAGS: ${{ matrix.options }}
asan:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: Use Node.js 18.x
uses: actions/setup-node@v3
with:
node-version: 18.x
- run: npm install
- run: npm test
env:
ENABLE_ASAN: 1
LSAN_OPTIONS: suppressions=${{ github.workspace }}/test/napi-leaks-suppression.txt
LD_PRELOAD: /usr/lib/x86_64-linux-gnu/libasan.so.6.0.0