Skip to content

Sync latest sql.js into this fork #2

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

Open
wants to merge 18 commits into
base: master
Choose a base branch
from

Conversation

nrakochy
Copy link

  • git rebase on sql.js/master
  • One conflict -> accepted both changes
export_fn_conflict

lovasoa and others added 18 commits September 30, 2021 17:23
Changed "Is is generated..." to "It is generated...".
`Buffer()` is deprecated due to security and usability issues
* Upgrade to Emscripten 3.0.0

* Upgrade to sqlite 3.38.5
…ql-js#479)

* Run `npm ci` automatically after the devcontainer is created.
This reduces the chance that another dev will forget to do this.

* Upgrade to Emscripten 2.0.29
Changes required:
* Defined EM_NODE_JS environment variable to get rid of
a warning that appears if the NODE environment variable
is set, but EM_NODE_JS is not.
* EXTRA_EXPORTED_RUNTIME_METHODS is now EXPORTED_RUNTIME_METHODS
* No longer pass the `-s LINKABLE=1` option to emcc when compiling. (This is a linktime setting and emcc
warns about not using a linktime setting when compiling now).

* Upgrade to Sqlite 3.36.0
Sqlite now publishes the hash as a SHA3 instead of SHA1,
necessitating the installation of the sha3sum command.

* Use -Oz optimizations instead of -O2
This reduces most compilation output by around 50%
* initial commit.

* documentation

* remove no-longer-valid type

* close over state initialization for performance

* link documentation in comment

* more testing

* run tests if they're main

* accept a single arg

* this kind of works but I'm abandoning this branch

Basically it seems that the sqlite extension pattern of 'allocate
a struct and stick it in the context pointer' is not going to work
for us here. I wonder if using the id of the pointer returned by
sqlite3_aggregate_context would be enough? Since no two functions
could use the same pointer, per https://www.sqlite.org/c3ref/aggregate_context.html ?

* a middle road sqlite3_agg_context solution

* try out auto-updating state

* improve quantile test, add multiple agg test

* add a null to the test

* acorn fails to parse ||=, whatever

* make eslint happy

* make initial_value an argument

* test step and finalize exceptions

* add memory leak test

* update docs to current interface

* delete state in exception handlers

* remove null state

* return init function and document object

* more tests and update back to init function

* update redefinition test for new interface

* update README to match fixed signature

* more consistent test formatting

* Update README.md

Co-authored-by: Ophir LOJKINE <[email protected]>

* clarify what exactly the result will contain

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Improve documentation and type annotations

* ignore documentation in eslintrc

* reduce code size

Thanks a lot, @llimllib !
 
Co-authored-by: dogquery <>
Co-authored-by: Ophir LOJKINE <[email protected]>
SQLite 3.38
emscripten 3.1.20
@nrakochy nrakochy force-pushed the nr/2023-aug-sync-latest branch from ee1fda1 to d1644f5 Compare August 11, 2023 04:57
@nrakochy
Copy link
Author

nrakochy commented Aug 11, 2023

Hmm... doing the rebase-accept both is conflicting. I thought rebase would keep the history easier to maintain. I can add a new commit or defer if you prefer to resolve the conflict. Since the original PR into sql.js has stalled, thought I would open this up to keep the fork up to date w the upstream

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

Successfully merging this pull request may close these issues.