diff --git a/.github/workflows/test-and-release.yml b/.github/workflows/test-and-release.yml new file mode 100644 index 0000000..8396e68 --- /dev/null +++ b/.github/workflows/test-and-release.yml @@ -0,0 +1,31 @@ +name: Test and Release +on: [push, pull_request] +permissions: + contents: read +jobs: + test: + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, macos-latest, windows-latest] + node: [12, 14, 16, 18, 20] + arch: [x86, x64] + exclude: + - { os: ubuntu-latest, arch: x86 } + - { os: macos-latest, arch: x86 } + runs-on: ${{ matrix.os }} + name: ${{ matrix.os }} / Node ${{ matrix.node }} ${{ matrix.arch }} + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + submodules: recursive + - name: Use node ${{ matrix.node }} + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node }} + architecture: ${{ matrix.arch }} + - name: Install + run: npm install + - name: Test + run: npm test diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index bdec2e9..0000000 --- a/.travis.yml +++ /dev/null @@ -1,25 +0,0 @@ -dist: trusty - -language: node_js - -node_js: - - "16" - - "15" - - "14" - - "12" - - "10" - - "8" - - "6" - -os: - - linux - - osx - -install: - - g++ --version - - node --version - - npm --version - - npm install - -script: - - npm test diff --git a/appveyor.yml b/appveyor.yml deleted file mode 100644 index ba8f378..0000000 --- a/appveyor.yml +++ /dev/null @@ -1,45 +0,0 @@ -# http://www.appveyor.com/docs/appveyor-yml - -environment: - # Test against these versions of Node.js - matrix: - # node.js - - nodejs_version: "16" - - nodejs_version: "15" - - nodejs_version: "14" - - nodejs_version: "12" - - nodejs_version: "10" - - nodejs_version: "8" - - nodejs_version: "6" - -# Build on both platforms -platform: - - x86 - - x64 - -# Install scripts. (runs after repo cloning) -install: - # Select node version $env:nodejs_version - - ps: | - try { - Install-Product node $env:nodejs_version $env:platform - } catch { - echo "Unable to install node $env:nodejs_version, trying update..." - Update-NodeJsInstallation (Get-NodeJsLatestBuild $env:nodejs_version) $env:platform - } - # Output useful info for debugging. - - node --version - - npm --version - # Install modules - - npm install - -# Post-install test scripts. -test_script: - # run tests - - npm test - -# Don't actually build. -build: off - -# Set build version format here instead of in the admin panel. -version: "{build}" diff --git a/package.json b/package.json index caad798..2f0bff7 100644 --- a/package.json +++ b/package.json @@ -18,18 +18,18 @@ "name": "Mathias Küsel" }, "engines": { - "node": ">=4" + "node": ">=12" }, "license": "MIT", "readmeFilename": "README.md", "dependencies": { - "nan": "~2.14.1", + "nan": "~2.18.0", "bindings": "~1.5.0", - "prebuild-install": "^6.1.2" + "prebuild-install": "^7.1.1" }, "devDependencies": { - "prebuild": "^10.0.0", - "prebuild-ci": "^3.1.0" + "prebuild": "^12.1.0", + "prebuild-ci": "^4.0.0" }, "scripts": { "install": "prebuild-install || node-gyp rebuild",