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

Enable the use of PRAGMA Key to encrypt db #1018

Open
wants to merge 100 commits into
base: revert-982-linux-image-bump
Choose a base branch
from

Conversation

K3yr0nym0us
Copy link

Personally, I think that a Sqlite database that has so many features and improvements but that has no way to make it secure seems to me to be of little use, even so, I will use it with the hope that one day it will be able to encrypt its data.

m4heshd and others added 8 commits April 18, 2023 17:40
* Move repetitive build commands into environment variables

* Merge 'https://github.com/mceachen/better-sqlite3/tree/dry-gha-989'

Co-authored-by: mceachen <[email protected]>

---------

Co-authored-by: mceachen <[email protected]>
* Move repetitive build commands into environment variables (#989)

* Move repetitive build commands into environment variables

* Merge 'https://github.com/mceachen/better-sqlite3/tree/dry-gha-989'

Co-authored-by: mceachen <[email protected]>

---------

Co-authored-by: mceachen <[email protected]>

* restore "env." prefixes to NODE_BUILD_CMD and ELECTRON_BUILD_CMD

---------

Co-authored-by: mceachen <[email protected]>
Co-authored-by: Matthew McEachen <[email protected]>
* Add support for Node v20 prebuilds

* Also test v20
Remove node.js v14 builds and testing (runtime EOL)
* Fix out-of-bounds read in statement tail parser

* Add comment with link to tail parsing issue

* Fix missing increment in tail parser + tests
@K3yr0nym0us K3yr0nym0us requested review from JoshuaWise and a team as code owners June 5, 2023 13:40
mceachen and others added 20 commits July 19, 2023 13:31
Prebuild for Node on other architectures as well
Fix buffer create in sandbox mode (electron)
Fix: Allow building with space in path
From the docs:

> This option is obsolete. It used to enable some extra some extra
> PRAGMA statements such as PRAGMA function_list, PRAGMA module_list,
> and PRAGMA pragma_list, but those pragmas are now all enabled by
> default.  See SQLITE_OMIT_INTROSPECTION_PRAGMAS.

It has been obsolete since 2019-10-04 (with SQLite 3.30.0).
* 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]>
added HAVE_USLEEP=1 compile-time option
mceachen and others added 27 commits April 26, 2024 14:29
There were a bunch of windows instructions that aren't relevant anymore (Node.js on windows just works if you "install the necessary tools" now!)
fix macos setuptools workaround
* Drop unsupported versions of node and electron

* Drop Node.js v21 prebuilds

* Also drop electron v25
relax allowed timeout (GHA is slow)
* replace v8::CopyablePersistentTraits with v8::Global

* add Electron v31 to build tasks
* use c++20 required by v8

* adjust macro and method signatures

* replace SetAccessor with SetNativeDataProperty

* use old signatures for older node version

* install g++ 10 on ubuntu
added prebuild for electron 32.0.0
* Add new patch infra. See #1208 and #1238

* add patches to CODEOWNERS

* revert CODEOWNERS addition
@GitMurf
Copy link

GitMurf commented Sep 20, 2024

Sorry for the dumb question, but I’m a bit confused reviewing the PR history. Is this something being actively worked on with a chance for merge? Or for an encrypted SQLite database do we need to use something like https://github.com/m4heshd/better-sqlite3-multiple-ciphers?tab=readme-ov-file ?

thanks!

@m4heshd
Copy link
Contributor

m4heshd commented Sep 20, 2024

@GitMurf #1018 (comment)

@GitMurf
Copy link

GitMurf commented Sep 20, 2024

@GitMurf #1018 (comment)

Ok thanks @m4heshd ... I saw that but never saw a response from Josh so wasn't sure whether the conversation continued somewhere else.

So is the plan that you keep that fork up to date with better SQLite 3 and just add the encryption extension to it? Or is it forked and will have other commits / changes to it? I really love better SQLite 3 and appreciate all the work and history here so want to make sure I am able to stick to the maintainability of this repo as I trust its future :) can you explain a little bit your plan for your repo? Is it basically to just keep the same as better SQLite 3 and just have a build version that allows encryption? Are there any differences? Thanks a ton!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.