Commit Graph

51 Commits

Author SHA1 Message Date
Fedor Indutny
5c0f7371f7 Use -flto for sqlcipher as well 2024-10-16 12:04:10 -07:00
Fedor Indutny
0da082ad0d Change compile flags on macOS 2024-10-16 09:39:46 -07:00
Fedor Indutny
28d1929af0 Remove loadExtension method 2024-10-16 09:39:46 -07:00
Fedor Indutny
6439afa9d5 Revert all changes since v8.8.5 to reapply cleanly 2024-10-16 09:39:01 -07:00
Fedor Indutny
e64c401b72 Some further optimizations 2024-10-15 17:20:39 -07:00
Fedor Indutny
2f59f4f15b V8_HAS_LOCAL_VECTOR 2024-10-15 17:00:04 -07:00
Fedor Indutny
99cede2168 Build using c++20 for Electron 32 2024-08-22 14:42:17 -07:00
Joshua Wise
36cf1c47bd upgraded to SQLite version 3.40.0 2022-11-21 17:51:44 -06:00
neoxpert
ba9fcecb87
Support build for electron v20 (#870)
* support prebuild for electron v20

* Remove unsupported versions of Node and Electron

(see https://www.electronjs.org/docs/latest/tutorial/electron-timelines and https://github.com/nodejs/Release/#end-of-life-releases)

* enforce the use of node-gyp 8.4.1

builds for electron 20 fail with prebuild 11.0.4 internal node-gyp version 6.1.0

* conditional compile with CreationContext for NodeJs < 16

* use c++17 to fix Mac M1 and Linux x64 builds

* add c++17 flag for MSVC

Co-authored-by: Matthew McEachen <matthew@photostructure.com>
2022-11-21 17:31:03 -06:00
Jan Alexander Steffens
23c56aa77e
Encapsulate the internal SQLite (#684)
Add linker flags to
 - prevent the dynamic linker from using an external SQLite for this
   library (`-Bsymbolic`) and
 - prevent the dynamic linker from using the internal SQLite for other
   libraries (`--exclude-libs ALL`).

This is just a (conflict-free) cherry-pick of a Signal-specific fix in
https://github.com/signalapp/better-sqlite3/pull/3 that seems OK to
upstream further.
2021-08-23 13:41:58 -05:00
Paul Rosania
fe4ce3ac48
Adopt C++14 (#497)
V8 has required C++14 since ~2017. It appears that changes in recent V8 versions (8.6+) have brought C++14 features into the parts of V8 that `better-sqlite3` builds against, causing native module compilation to fail. (I observed this when updating from Electron 10, which uses V8 8.5, to Electron 11, which uses V8 8.7.) Updating to the C++14 standard resolves this issue and gets `better-sqlite3` building again.
2020-12-19 12:56:02 -06:00
Joshua Wise
c1553ed9eb added support for the SQLITE_DIR environment variable for specifying custom sqlite builds 2020-04-22 13:49:52 -05:00
Dan Barela
f889257db4 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
b71bdcd82b custom amalgamations no longer require sqlite3ext.h 2018-10-09 10:11:11 -04:00
Joshua Wise
efe93b1c63 added the --sqlite3 build option to use a custom amalgamation 2018-10-04 16:27:11 -04:00
Joshua Wise
e8a931550e removed bindings and package-require deps 2018-10-04 14:25:25 -04:00
Joshua Wise
c49509185b enabled SQLITE_ENABLE_UPDATE_DELETE_LIMIT 2018-09-25 19:58:51 -04:00
Joshua Wise
a97398d014 enabled sqlite debug flags while testing 2018-09-16 05:57:57 -04:00
Joshua Wise
07297b9ac9 linted gyp files 2018-09-15 17:25:40 -04:00
Joshua Wise
ab69a58bd4 added the db.loadExtension() method 2017-08-24 17:29:18 -04:00
Joshua Wise
2562b97447 tweaks 2017-06-04 12:15:30 -04:00
Joshua Wise
766bdec832 tweaks 2017-06-04 11:45:57 -04:00
Joshua Wise
88a2592229 moved src2 to src 2017-06-04 11:33:08 -04:00
Joshua Wise
44248bfcd1 removed nan 2017-06-02 00:15:19 -04:00
Joshua Wise
dce517cef9 ughh 2017-05-15 11:17:31 -04:00
Joshua Wise
ec9dea2893 removed async interfaces 2016-10-26 20:26:09 -04:00
Joshua Wise
3c542c1565 - Rewrote Data and List modules
- Incorporated new modules into read-only query methods
- Rewrote pragma method
- Added limits to sqlite3 connections to prevent segfaults and data corruption
2016-09-16 18:27:36 -04:00
Joshua Wise
eda9a392b5 added int64 2016-09-13 02:57:29 -04:00
Joshua Wise
75b6f48ccd wrote API for syncronous operations 2016-09-12 17:16:11 -04:00
Joshua Wise
f7313eec14 edited binding.gyp 2016-09-12 12:01:02 -04:00
Joshua Wise
ad754608f1 edited binding.gyp 2016-09-12 11:53:58 -04:00
Joshua Wise
b4c0b1a7be edited binding.gyp 2016-09-12 11:50:19 -04:00
Joshua Wise
f2ecfe250a edited binding.gyp 2016-09-12 11:46:12 -04:00
Joshua Wise
24e9263add edited binding.gyp 2016-09-12 11:41:29 -04:00
Joshua Wise
e4bd391c7a fixed binding.gyp 2016-09-12 09:58:49 -04:00
Joshua Wise
bce1561710 added .checkpoint method 2016-09-09 17:25:25 -04:00
Joshua Wise
0069de9e22 cleaned up repo 2016-09-07 13:35:04 -04:00
Joshua Wise
e512ea08c1 overhauled scope of module 2016-09-05 04:54:34 -04:00
Joshua Wise
7a445b44f1 added write queue with transaction worker and run worker 2016-09-02 16:03:13 -04:00
Joshua Wise
6f58d25609 reorganized workers 2016-09-01 17:08:00 -04:00
Joshua Wise
1a290db59a implemented broken mulitbinder 2016-09-01 13:36:50 -04:00
Joshua Wise
5681268650 added binder, partially implemented 2016-03-22 15:49:05 -04:00
Joshua Wise
e69bd0b09b split up all files 2016-03-19 19:17:41 -04:00
Joshua Wise
b17d0b786a added all() 2016-03-13 18:03:24 -04:00
Joshua Wise
d123ead21d added proper close procedure 2016-03-10 22:32:44 -05:00
Joshua Wise
42ce806368 separated classes 2016-03-10 05:45:17 -05:00
Joshua Wise
0754c07db0 removed old statement files 2016-03-05 18:11:34 -05:00
Joshua Wise
ed2c943e2d removed lib cruft 2016-03-01 15:46:01 -05:00
Joshua Wise
eef9265fb0 fixed binding dependency 2016-02-25 05:25:17 -05:00
Joshua Wise
8a56b00e59 removed binding info 2016-02-25 04:54:11 -05:00