69 Commits
Author SHA1 Message Date
Joshua Wise df5a17def4 implemented Database#explain() 2026-07-21 01:06:49 -05:00
Joshua WiseandGitHub 8f20ead317 Refactored codebase to use node-addon-api (#1498)
* refactored codebase to use node-addon-api and publish with prebuilt binaries

* upgraded to sqlite 3.53.3

* fixed typo

* fixed test for windows

* mitigated performace regression from NAPI refactor

* mitigated performace regression from NAPI refactor

* mitigated performace regression from NAPI refactor

* mitigated performace regression from NAPI refactor

* fixed performance regression to surpass node:sqlite

* improved array optimization for large arrays

* further improved performance

* removed dead code
2026-07-20 23:15:34 -05:00
Joshua Wise 423566aa88 support the SQLITE_USE_URI environment variable 2025-07-21 05:56:41 -05:00
Joshua Wise 3ad27de0fb general cleanup 2023-09-02 13:51:41 -05:00
006f2fc1b8 feat(database): now nativeBinding supports addon object (#974)
* Added `webpack` support

* changed from `webpack_require` to `non_webpack_require`

* Update database.js

Added URL to webpack documentation

* feat(database): now `nativeBinding` supports addon object

* style(package): line break removed

---------

Co-authored-by: Matthew McEachen <[email protected]>
2023-09-02 13:40:40 -05:00
Joshua Wise fa5bed9564 implemented "nativeBinding" database option 2022-01-18 17:45:57 -06:00
Joshua Wise 5724f53c0d implemented rought draft version of virtual tables 2021-05-07 01:50:07 -05:00
Joshua Wise d51ad4a7f1 implemented db.serialize() and deserialization 2021-05-04 18:47:20 -05:00
Joshua Wise acfda67fd7 fixed database subclassing 2021-04-14 17:53:42 -05:00
Joshua Wise bb8f2d0dbc made Database class extendable, and fixed importing into jest environments 2021-03-30 12:31:07 -05:00
Joshua Wise a353d74f23 removed "memory" option when opening new databases 2020-04-22 18:56:14 -05:00
Joshua Wise a202cebc32 dropped support for node versions < 10
removed the integer library in favor of bigints
added support for worker threads
enabled SQLITE_THREADSAFE=2
replaced native Require() calls with dependency injection
2020-04-21 20:53:31 -05:00
Dan Barela 44d78645b3 Use bindings to load the .node file 2020-01-07 08:22:29 -07:00
Dan Barela cf310e56ba remove the bindings dependency 2020-01-06 14:01:38 -07:00
Dan Barela 896bc22b15 Prebuild
This adds prebuild support.  When the library is released from GitHub a travis build will run which builds the library for Node 8, 10 and 12, and Electron 2 - 7
2019-10-30 11:22:49 -06:00
Joshua Wise bc0816729b made logging synchronous 2019-01-22 11:58:15 -05:00
Joshua Wise dd53ee0f98 Merge branch 'verbose' 2019-01-22 00:31:39 -05:00
Joshua Wise 13a13c59db Merge branch 'backups' 2019-01-22 00:16:03 -05:00
Joshua Thomas Wise a7f281e23e implemented the "verbose" database option 2019-01-11 14:59:22 -05:00
Joshua Thomas Wise 239ef23be7 allow temporary databases and treat them like in-memory databases 2019-01-11 12:04:17 -05:00
Joshua Wise 5f0f5f4803 added db.backup() method 2018-12-22 23:41:03 -05:00
Joshua Thomas Wise b8218afa8b changed code style 2018-11-19 14:07:54 -05:00
Joshua Wise 34079d1463 added option to set busy timeout on database connection 2018-10-08 22:28:46 -04:00
Joshua Wise c38f026ba8 removed bindings and package-require deps 2018-10-04 14:25:25 -04:00
Joshua Wise d587051914 added stubbed .aggregate() method 2018-09-23 13:44:42 -04:00
Joshua Wise 497a070a51 changed .register() to .function(), fixed bug where inTransaction would be true when database was closed 2018-09-21 20:15:44 -04:00
Joshua Wise 73fd12e0f6 added support for :memory: databases 2018-09-16 20:56:16 -04:00
Joshua Wise f58d0193d8 added transaction library function 2018-06-13 04:54:53 -04:00
Joshua Wise bfff6e895b converted more files to es6 2018-01-20 04:26:06 -05:00
Joshua Wise 987fdd0e5a rewrote some code as es6 2018-01-20 02:08:19 -05:00
Joshua Wise 61e1bdd67b added helpful error throw 2017-08-24 18:11:47 -04:00
Joshua Wise ed69af45bc added fileMustExist option to database constructor 2017-08-24 18:08:01 -04:00
Joshua Wise 7d75547533 reworked db.checkpoint() 2017-06-06 00:48:53 -04:00
Joshua Wise fc1553f9c3 fixed typo 2017-06-02 08:13:30 -04:00
Joshua Wise 3f4a5fde61 removed Int64 2017-06-01 23:45:51 -04:00
Joshua Wise 0372d31429 removed Int64#value function 2017-05-26 22:48:26 -04:00
Joshua Wise 3151683cb6 added tests for error codes 2017-05-26 21:45:25 -04:00
Joshua Wise 64075708f8 added checkpoint method 2017-05-19 01:33:56 -04:00
Joshua Wise 74ab7d08da made progress on the database object 2017-05-18 22:16:01 -04:00
Joshua Wise 35c1d200b7 removed periods from error messages 2017-05-14 02:38:11 -04:00
Joshua Wise 01ca9388e8 multiple custom aggregates can be registered with the same name but different argument counts 2017-05-13 22:12:41 -04:00
Joshua Wise 32e5d29536 added early check for generator functions 2017-04-23 21:40:53 -04:00
Joshua Wise 7cca024061 proof-of-concept with generators 2017-04-22 13:41:24 -04:00
Joshua Thomas Wise 4f8ea38c87 ambiguous options are not allowed 2017-04-14 17:19:25 -04:00
Joshua Thomas Wise 104179164b upon registration, registered functions will default to the safeIntegers setting of the the database 2017-04-12 20:37:37 -04:00
Joshua Thomas Wise 52652340c0 changed "variadic" to varargs" because its easier to type 2017-04-10 13:31:49 -04:00
Joshua Thomas Wise 2f507d4c75 registered functions now have a strict argument count by default 2017-04-10 13:10:57 -04:00
Joshua Wise 332ffd6a1e added the ability to register custom SQL functions 2017-04-08 21:19:00 -04:00
Joshua Wise 550fd8daf1 added readonly mode 2017-04-07 23:01:58 -04:00
Joshua Wise eb6240989a removed optimize option 2017-04-03 20:32:32 -04:00