IreneKnapp / direct-sqlite

MIT License
35 stars 54 forks source link

Update sqlite to 3.20.1 #68

Closed mvoidex closed 7 years ago

mvoidex commented 7 years ago

With json1 extension

nurpax commented 7 years ago

Hi @mvoidex, can update the PR with another commit that re-applies to Mac OS build fix, as in https://github.com/IreneKnapp/direct-sqlite/wiki/Hacking#upgrading-sqlite3? Or if it's fixed in sqlite upstream, confirm that it's ok now.

The Travis failures seem to be related to a broken Travis misconfig. I should try to fix that at some point.

dunnl commented 7 years ago

Can we update this to add -DSQLITE_ENABLE_FTS5? I've been playing around with this in issue #67 before I noticed this PR. I just confirmed that FTS5 works with 3.20.1

mvoidex commented 7 years ago

@nurpax, ok, I'll check when i have some time

mvoidex commented 7 years ago

@nurpax, can't test it on MacOS, but it seems, that nothing changed in upstream, so i've applied patch. @dunnl, I'm fine with that; @nurpax, if you don't mind, I'll add -DSQLITE_ENABLE_FTS5 under fulltextsearch flag condition

nurpax commented 7 years ago

@mvoidex Thanks! please enable FTS5 too. It seems like it's enabled at even in some distros (@dunnl said in another thread that he had FTS5 with -lsystemlib) so it does look like something we just wanna turn on. It's not like direct-sqlite is going to be used in space-limited embedded systems.

nurpax commented 7 years ago

@mvoidex You mention json1 in your original comment. Do you know if that's enabled by default? Here are all the compile time options: https://sqlite.org/compile.html

Should probably take a close look and try to match the defaults with what Linux distros typically use.

mvoidex commented 7 years ago

@nurpax, what i've found at sqlite3.org:

The json1 source code is included with the SQLite amalgamation, though it is disabled by default. Add the -DSQLITE_ENABLE_JSON1 compile-time option to enable the json1 extension that is built into the amalgamation. The standard makefiles include -DSQLITE_ENABLE_JSON1 when building the command-line shell and some of the test utilities so this extension is normally available in the command-line shell.

(http://www.sqlite.org/json1.html#compiling_the_json1_extension)

Or what do you mean (maybe i misunderstood you)?

nurpax commented 7 years ago

Released to hackage as 2.3.21. Thanks for the PR!

mvoidex commented 7 years ago

Cool, thanks!