Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch from NAN to N-API #1304

Merged
merged 29 commits into from
Apr 27, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
de8888e
Convert NAN to N-API using tool
mohd-akram Sep 30, 2019
fc09ced
Fix macros and binding.gyp
mohd-akram Sep 30, 2019
dd3ef52
Fix compilation
jschlight Jul 8, 2019
421b8ab
Disable N-API C++ exceptions
mohd-akram Sep 30, 2019
4177fb7
Fix tests failing
mohd-akram Sep 30, 2019
3806e0c
Use N-API for async work
mohd-akram Sep 30, 2019
bbec1fa
Add assert.h
mohd-akram Sep 30, 2019
70766c7
Improve usage of libuv
mohd-akram Oct 1, 2019
ae9a005
Support worker threads
mohd-akram Oct 1, 2019
d0142a7
Fix build on Windows
mohd-akram Feb 24, 2020
3aa2e88
fix travis config
Apr 11, 2020
99d7126
Remove unsupported Node.js versions from CI
mohd-akram Apr 16, 2020
6d40993
Add missing return
mohd-akram Apr 16, 2020
bf4770a
Change causes test fail on Node.js 12, macOS
jschlight Apr 16, 2020
8c8083c
Fix references
mohd-akram Apr 16, 2020
5fc6fed
Add define for NAPI_VERSION=3 to binding.gyp
jschlight Apr 17, 2020
b0332e7
Update package.json for N-API builds
jschlight Apr 17, 2020
7b85fb3
Remove unsupported Electron versions
jschlight Apr 18, 2020
af31fb8
Fix warnings
mohd-akram Apr 18, 2020
6b5e3fe
Merge branch 'master' into napi
kewde Apr 19, 2020
e3d9006
ci: fix travis & add latest electron builds
kewde Apr 19, 2020
ad56e17
ci: reduce matrix of prebuilts (to Node >= v10 & electron >= v6) (linux)
kewde Apr 19, 2020
80edf6f
ci: reduce matrix of prebuilts (to Node >= v10 & electron >= v6) (win…
kewde Apr 19, 2020
187adc0
Merge branch 'master' into napi
kewde Apr 19, 2020
766ee8f
Add N-API v3 badge
jschlight Apr 20, 2020
5b38ca4
Update Travis electron node versions
mohd-akram Apr 20, 2020
78dd0d9
Update README with supported versions
mohd-akram Apr 20, 2020
18c37ae
Simplify binding.gyp
mohd-akram Apr 20, 2020
0ffea2d
Merge branch 'master' into napi
kewde Apr 27, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,5 @@ test/nw/app.nw
local.env
.mason
.eslintrc.js
setup.sh
setup.sh
/build-tmp-napi-v3
202 changes: 14 additions & 188 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,56 +48,6 @@ matrix:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5', 'libstdc++-4.9-dev']
- os: linux
compiler: clang
env: NODE_VERSION="9"
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5']
- os: linux
compiler: clang
env: NODE_VERSION="8"
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5']
- os: linux
compiler: clang
env: NODE_VERSION="7"
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5']
- os: linux
compiler: clang
env: NODE_VERSION="6"
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5']
- os: linux
compiler: clang
env: NODE_VERSION="5"
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5']
- os: linux
compiler: clang
env: NODE_VERSION="4"
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5']
# test building against external sqlite
- os: linux
compiler: clang
env: NODE_VERSION="8" EXTERNAL_SQLITE=true PUBLISHABLE=false
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5','libsqlite3-dev']
# OS X
- os: osx
compiler: clang
Expand All @@ -111,209 +61,85 @@ matrix:
- os: osx
compiler: clang
env: NODE_VERSION="10" # node abi 64
- os: osx
compiler: clang
env: NODE_VERSION="9" # node abi 59
- os: osx
compiler: clang
env: NODE_VERSION="8" # node abi 57
- os: osx
compiler: clang
env: NODE_VERSION="7" # node abi 51
- os: osx
compiler: clang
env: NODE_VERSION="6" # node abi 48
- os: osx
compiler: clang
env: NODE_VERSION="5" # node abi 47
- os: osx
compiler: clang
env: NODE_VERSION="4" # node abi 46
# electron Linux
- os: linux
compiler: clang
env: NODE_VERSION="8" ELECTRON_VERSION="8.2.0"
env: NODE_VERSION="12" ELECTRON_VERSION="8.2.0"
dist: trusty
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5', 'libstdc++-4.9-dev']
- os: linux
compiler: clang
env: NODE_VERSION="8" ELECTRON_VERSION="8.1.0"
env: NODE_VERSION="12" ELECTRON_VERSION="8.1.0"
dist: trusty
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5', 'libstdc++-4.9-dev']
- os: linux
compiler: clang
env: NODE_VERSION="8" ELECTRON_VERSION="8.0.0"
env: NODE_VERSION="12" ELECTRON_VERSION="8.0.0"
dist: trusty
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5', 'libstdc++-4.9-dev']
- os: linux
compiler: clang
env: NODE_VERSION="8" ELECTRON_VERSION="7.1.0"
env: NODE_VERSION="12" ELECTRON_VERSION="7.1.0"
dist: trusty
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5', 'libstdc++-4.9-dev']
- os: linux
compiler: clang
env: NODE_VERSION="8" ELECTRON_VERSION="7.0.0"
env: NODE_VERSION="12" ELECTRON_VERSION="7.0.0"
dist: trusty
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5', 'libstdc++-4.9-dev']
- os: linux
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="6.1.0"
env: NODE_VERSION="12" ELECTRON_VERSION="6.1.0"
dist: trusty
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5', 'libstdc++-4.9-dev']
- os: linux
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="6.0.0"
dist: trusty # needed for libc6 / 'version `GLIBC_2.17` not found' error on precise
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5', 'libstdc++-4.9-dev']
- os: linux
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="5.0.0"
dist: trusty # needed for libc6 / 'version `GLIBC_2.17` not found' error on precise
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5', 'libstdc++-4.9-dev']
- os: linux
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="4.2.0"
dist: trusty # needed for libc6 / 'version `GLIBC_2.17` not found' error on precise
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5', 'libstdc++-4.9-dev']
- os: linux
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="4.1.0"
dist: trusty # needed for libc6 / 'version `GLIBC_2.17` not found' error on precise
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5', 'libstdc++-4.9-dev']
- os: linux
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="4.0.0"
dist: trusty # needed for libc6 / 'version `GLIBC_2.17` not found' error on precise
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5', 'libstdc++-4.9-dev']
- os: linux
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="3.0.6"
env: NODE_VERSION="12" ELECTRON_VERSION="6.0.0"
dist: trusty # needed for libc6 / 'version `GLIBC_2.17` not found' error on precise
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5', 'libstdc++-4.9-dev']
- os: linux
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="2.0.1"
dist: trusty # needed for libc6 / 'version `GLIBC_2.17` not found' error on precise
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5', 'libc6']
- os: linux
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="1.8.4"
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5']
- os: linux
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="1.7.12"
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5']
- os: linux
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="1.6.2"
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5']
- os: linux
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="1.3.14"
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5', 'gcc-multilib', 'g++-multilib', 'libsqlite3-dev:i386' ]
packages: [ 'clang-3.5']
# electron MacOs
- os: osx
compiler: clang
env: NODE_VERSION="8" ELECTRON_VERSION="8.2.0"
- os: osx
compiler: clang
env: NODE_VERSION="8" ELECTRON_VERSION="8.1.0"
- os: osx
compiler: clang
env: NODE_VERSION="8" ELECTRON_VERSION="8.0.0"
- os: osx
compiler: clang
env: NODE_VERSION="8" ELECTRON_VERSION="7.1.0"
- os: osx
compiler: clang
env: NODE_VERSION="8" ELECTRON_VERSION="7.0.0"
- os: osx
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="6.1.0"
- os: osx
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="6.0.0"
- os: osx
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="5.0.0"
- os: osx
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="4.2.0"
- os: osx
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="4.1.0"
- os: osx
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="4.0.0"
env: NODE_VERSION="12" ELECTRON_VERSION="8.2.0"
- os: osx
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="3.0.6"
env: NODE_VERSION="12" ELECTRON_VERSION="8.1.0"
- os: osx
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="2.0.1"
env: NODE_VERSION="12" ELECTRON_VERSION="8.0.0"
- os: osx
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="1.8.4"
env: NODE_VERSION="12" ELECTRON_VERSION="7.1.0"
- os: osx
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="1.7.12"
env: NODE_VERSION="12" ELECTRON_VERSION="7.0.0"
- os: osx
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="1.6.2"
env: NODE_VERSION="12" ELECTRON_VERSION="6.1.0"
- os: osx
compiler: clang
env: NODE_VERSION="6" ELECTRON_VERSION="1.3.14"
env: NODE_VERSION="12" ELECTRON_VERSION="6.0.0"

env:
global:
Expand Down
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,13 @@ Asynchronous, non-blocking [SQLite3](https://sqlite.org/) bindings for [Node.js]
[![Coverage Status](https://coveralls.io/repos/mapbox/node-sqlite3/badge.svg?branch=master&service=github)](https://coveralls.io/github/mapbox/node-sqlite3?branch=master)
[![Dependencies](https://david-dm.org/mapbox/node-sqlite3.svg)](https://david-dm.org/mapbox/node-sqlite3)
[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bhttps%3A%2F%2Fgithub.com%2Fmapbox%2Fnode-sqlite3.svg?type=shield)](https://app.fossa.io/projects/git%2Bhttps%3A%2F%2Fgithub.com%2Fmapbox%2Fnode-sqlite3?ref=badge_shield)
[![N-API v3 Badge](https://img.shields.io/badge/N--API-v3-green.svg)](https://nodejs.org/dist/latest/docs/api/n-api.html#n_api_n_api)

## Supported platforms

The `sqlite3` module works with:
* Node.js v4.x, v6.x, v8.x, v10.x, v11.x, v12.x and v13.x.
* Electron v1.3.X, v1.6.x, v1.7.x, v1.8.x, v2.0.x, v3.0.x, v4.0.x, v4.1.x, v4.2.x, v5.0.x, v6.0.x, v6.1.x, v7.0.x, v7.1.x, v8.0.x, v8.1.x and v8.2.x
* Node.js v11.x, v12.x, v13.x and v14.x.
* Electron v6.0.x, v6.1.x, v7.0.x, v7.1.x, v8.0.x, v8.1.x and v8.2.x

Binaries for most Node versions and platforms are provided by default via [node-pre-gyp](https://github.com/mapbox/node-pre-gyp).

Expand Down
Loading