Commit Graph

241 Commits

Author SHA1 Message Date
gwenn
a52eeb2565 [ci skip] Prepare release 0.19
rusqlite 0.19.0
And libsqlite3-sys 0.15.0
2019-06-26 18:13:41 +02:00
gwenn
b9a4628b47 [ci skip] rustftmt 2019-06-25 20:40:28 +02:00
kpcyrd
73f1ef817f Add bundled-windows feature 2019-06-21 06:43:39 +02:00
gwenn
db74fda4d8 [ci skip] rustfmt 2019-06-02 09:12:51 +02:00
Julius de Bruijn
bf0eea5d60 Rerun build if max vars or exprs change in the env 2019-05-15 20:23:20 +02:00
Julius de Bruijn
d034cd56b7 Get MAX_VARIABLE_NUMBER and EXPR_DEPTH as env variables 2019-05-15 18:41:23 +02:00
Julius de Bruijn
4b9295c186 Increase bundled SQLite variables and depth
We've been hitting the default `MAX_VARIABLE_NUMBER` and
`MAX_EXPR_DEPTH` with quite basic tests here in Prisma. I was able to
run the tests by using the Arch Linux packaged libsqlite3, but when
turning on the bundled version I was able to get my test to crash with
this test project:

https://github.com/pimeys/sqlite_parameter_test

Now taking a look how Arch Linux builds sqlite, I was able to find two
flags fixing the issue:

https://git.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD?h=packages/sqlite#n35

I think it would be safe to include them in rusqlite.
2019-05-15 10:33:22 +02:00
gwenn
13ee12cb0c Upgrade bundled SQLite sources to 3.28.0
Also upgrade bindgen to 0.49
2019-04-25 18:50:21 +02:00
gwenn
c0e6a584ad Prepare 0.14.0 release 2019-04-24 18:03:11 +02:00
Thom Chiovoloni
fe80b51e89 Allow specifying both sqlcipher and bundled.
This is useful because currently, when using `rusqlite` in a Cargo
workspace with one crate that uses `sqlcipher` and another that uses
`bundled`, a build error will be triggered by an unqualified `cargo
build` (as cargo will use the union of all features enabled by crates in
the workspace).

Instead of panicing, this just emits a warning, before (mostly) ignoring
that the `bundled` feature was specified. Note: in this configuration,
we still use our bundled bindings, to avoid changing `rusqlite` to
handle this edge case (hence 'mostly').
2019-04-19 11:57:29 -07:00
gwenn
b24f3c5519
Merge pull request #483 from technic/master
Clarify instruction for building with vcpkg
2019-03-25 20:00:36 +01:00
Alex Maystrenko
f702bc0797 rebuild when VCPKGRS_DYNAMIC changes 2019-03-24 21:21:13 +01:00
gwenn
e760344351 Upgrade bundled version to SQLite 3.27.2
And upgrade to bindgen 0.48
2019-03-10 13:49:21 +01:00
Will Davis
9f009fe1e0 Use pkg-config to generate sqlite link dependencies
When built as a static library, sqlite (or sqlcipher) doesn't carry
additional link dependencies with it, and the libsqlite3-sys rlib
doesn't pick them up either. A dependent crate attempting to link
against rusqlite then has to specify these additional link commands,
and even then they need to be specified before the libsqlite3-sys
rlib is specified on the command line.

Fix this by attempting to use pkg-config when the
(SQLITE3|SQLCIPHER)_LIB_DIR is specified, since these builds produce
the pkg-config link dependency information, and the pkg_config crate
can automatically generate the correct link commands using that.

(Additionally, since (SQLITE3|SQLCIPHER)_STATIC is already defined,
or not, the --static flag will be correctly configured for pkg_config)
2019-02-04 22:53:57 -06:00
gwenn
62d5ffe678 Fix some enum representation 2019-02-02 11:04:46 +01:00
gwenn
1c3ad27b2f Upgrade to bindgen 0.47 2019-01-26 10:54:21 +01:00
gwenn
dbc4eef657
Session extension (#459)
Session extension bindings
2019-01-13 12:46:19 +01:00
gwenn
f9a08d7a5c Prepare for next release 2019-01-06 09:56:55 +01:00
gwenn
8cf11b18b3 Upgrade to bindgen 0.46 2019-01-06 09:55:56 +01:00
gwenn
6d668d798a Restore old bindgen for Diesel 2019-01-06 09:50:35 +01:00
gwenn
2c872fc763 Upgrade to bindgen 0.45 2018-12-16 09:53:19 +01:00
gwenn
287e2f5dbc Fix vtab modules
`xShadowName` added
2018-12-15 10:51:02 +01:00
gwenn
ae461b8ed2 Upgrade bundled version to SQLite 3.26.0 2018-12-15 10:19:53 +01:00
Thom Chiovoloni
4fd00a6311 Add support for forcing cargo:rustc-link-lib to link as native 2018-12-14 17:12:31 -08:00
gwenn
d874180333 Rust 2018 idioms 2018-12-07 21:57:04 +01:00
gwenn
626118ce07 Merge remote-tracking branch 'jgallagher/master' into 2018 2018-12-06 18:50:21 +01:00
gwenn
d5ce4c234b Upgrade to bindgen 0.44 2018-11-30 18:55:25 +01:00
gwenn
f04047db01 Rust 2018 2018-10-30 20:15:08 +01:00
gwenn
e5b1af51ab Allow build time bindgen of bundled SQLite
Rewrite https://github.com/jgallagher/rusqlite/pull/320
2018-10-28 18:16:48 +01:00
gwenn
567e36424b Upgrade to bindgen 0.43 2018-10-28 08:33:25 +01:00
gwenn
b4f93328f6
[ci skip] prepare version 0.10.0 2018-10-21 15:40:32 +02:00
gwenn
382cac1abb Try to fix AppVayor build 2018-10-10 20:23:40 +02:00
gwenn
557156fef7 Upgrade bindgen and SQLite bundled sources 2018-10-07 11:57:21 +02:00
gwenn
6f5ffa2f19 Regenerate bindgen on linux 2018-09-17 19:39:49 +02:00
gwenn
fde3a59488 Upgrade bundled version to SQLite 3.25.0 2018-09-17 18:42:19 +02:00
gwenn
27939d01c9 Upgrade to bindgen 0.40 2018-09-08 11:19:24 +02:00
gwenn
33307b8cd5 [ci skip] remove unused feature 2018-09-08 11:11:56 +02:00
gwenn
9db7b2e7af Remove old bindgens
Keep the oldest/default one (3.6.8).
But remove intermediate versions: 3.6.11, 3.7.3, 3.7.4, 3.7.16.
2018-09-04 18:58:17 +02:00
gwenn
6e7b35ae15 Upgrade rust-bindgen version 2018-08-31 19:01:26 +02:00
gwenn
d1b5acfe52 Upgrade to bindgen 0.38 2018-08-15 13:58:04 +02:00
gwenn
0ccf98d214 Merge remote-tracking branch 'jgallagher/master' into vtab 2018-08-11 13:37:56 +02:00
gwenn
c925d1aa97 Rustfmt 2018-08-11 12:48:21 +02:00
gwenn
fc37b324b8 Merge remote-tracking branch 'jgallagher/master' into vtab 2018-07-28 16:56:21 +02:00
gwenn
94c6865d28 Upgrade SQLite bundled sources to 3.24.0 2018-07-14 07:53:01 +02:00
Tom
028d8945a3 Exporting the built library's directory, for linking 2018-06-29 23:20:59 +01:00
gwenn
d72c4582d9 Merge remote-tracking branch 'jgallagher/master' into vtab 2018-06-10 19:16:20 +02:00
gwenn
e1ba89c310 Merge remote-tracking branch 'jgallagher/master' into vtab 2018-06-10 18:49:40 +02:00
gwenn
7369994fd3 Upgrade bindgen version 2018-05-23 18:51:22 +02:00
gwenn
1f0437c084
Merge pull request #344 from gwenn/rerun-if-env-changed
Use `rerun-if-env-changed` in libsqlite3-sys
2018-05-12 19:16:50 +02:00
gwenn
1e3dc542a4 Merge remote-tracking branch 'jgallagher/master' into vtab 2018-05-06 08:00:12 +02:00
gwenn
88f2f3e4bd
Merge pull request #350 from jgallagher/clippy
Fix clippy warnings
2018-05-04 20:44:34 +02:00
gwenn
994d40da26 Fix clippy warnings 2018-05-04 19:55:55 +02:00
gwenn
fee4bfcc86 Merge remote-tracking branch 'jgallagher/master' into unlock-notify 2018-05-04 18:06:41 +02:00
gwenn
9c5c9e3c7e Merge remote-tracking branch 'jgallagher/master' into vtab 2018-04-30 22:02:14 +02:00
gwenn
cd26d53a23 Upgrade dependencies
bindgen 0.36
lazy_static 1.0
2018-04-27 19:06:34 +02:00
gwenn
9178e3f452 Use rerun-if-env-changed in libsqlite3-sys
Fix #329
2018-04-06 22:27:07 +02:00
gwenn
5d91fb088f Unlock notification 2018-03-24 08:03:21 +01:00
gwenn
9bdc18d4c0 Fix typo 2018-03-24 03:48:09 +01:00
gwenn
87d97b143e Fix upgrade script
Avoid cleaning the whole target dir
2018-02-10 11:11:51 +01:00
gwenn
08cda05406 Update to latest version of SQLite3 3.22.0 #326
Upgrade to bindgen 0.32
Add a shell script to upgrade bundled SQLite version
Upgrade bundle SQLite to 3.22.0
Upgrade libsqlite3-sys version to 0.9.2
2018-02-10 11:04:02 +01:00
gwenn
3aaab1e36f Merge remote-tracking branch 'remotes/jgallagher/master' into vtab 2018-01-20 12:29:07 +01:00
John Gallagher
402d5340d5 Patch release of libsqlite3-sys to remove crates.io keyword 2017-12-05 18:05:51 -05:00
Sean Griffin
b553a214c8 Remove the database keyword/category from libsqlite3-sys
Currently `libsqlite3-sys` is the first result for both the "database"
keyword, and the "Database interfaces" category. This makes sense, as it
is a dependency of both Diesel and rusqlite. However, this library is
not intended to be used directly. While it can technically be called a
database interface, FFI is clearly the category that applies more than
anything else. Someone browsing this keyword or category is likely
looking for a Rust library they can use, not a C one.
2017-12-03 14:22:01 -07:00
John Gallagher
a3bec58c96 Bump to v0.13.0. 2017-11-13 15:55:48 -07:00
John Gallagher
00e90eaafe
Merge pull request #308 from jgallagher/lvillani-sqlcipher
Add support for linking to SQLCipher
2017-11-13 15:47:11 -07:00
John Gallagher
cbdbacddd8 Merge branch 'sqlcipher' of https://github.com/lvillani/rusqlite into lvillani-sqlcipher 2017-11-13 13:29:24 -07:00
John Gallagher
dc6268d4c9 Merge branch 'update-bindgen-dep' of https://github.com/fitzgen/rusqlite into fitzgen-update-bindgen-dep 2017-11-13 13:26:50 -07:00
Nick Fitzgerald
ea7207b83d Update bindgen dependency to the latest version
This also required adjusting the fixup inserting `SQLITE_DETERMINISTIC` into the
bindings if it was missing. Now that `bindgen` uses the `quote` crate for code
generation, instead of `syntex`, we can't rely on the output being formatted (it
only is formatted if there is a usable `rustfmt` on the `$PATH`). Even better
than this `contains` tweak would be switching to regexps or something.

Despite that formatting hiccup, newer `bindgen` releases are more reliable due
to many bug fixes, and also build in approximately half the time that older
`bindgen` versions do.
2017-11-11 17:09:19 -08:00
Lorenzo Villani
8cbfc00ec6 Add support for linking to SQLCipher 2017-10-24 19:52:19 +02:00
Ossi Herrala
28d58529b7 Update dependencies
* Gcc crate has been renamed to cc.
* Chrono::UTC has been renamed to Chrono::Utc.
* bitflags 1.0 uses associated constants. So prefix OpenFlags.
2017-10-09 23:25:40 +03:00
gwenn
c842e789bd Merge remote-tracking branch 'jgallagher/master' into vtab 2017-09-11 19:45:22 +02:00
John Gallagher
d5bd7d9601 Bump libsqlite3-sys to 0.8.1.
This minor version includes some internal rearranging of constants that
should not affect the public interface, and additions to the build
system that allow the use of vcpkg on Windows.
2017-05-29 16:56:47 -04:00
John Gallagher
6b360a11c2 Merge pull request #258 from gwenn/constants
Constants
2017-05-29 10:37:26 -04:00
John Gallagher
b1927b31bf Merge pull request #278 from mcgoo/vcpkg
for msvc abi builds, add support for using sqlite from a vcpkg installation if available
2017-05-29 10:23:08 -04:00
John Gallagher
b7ce75b463 Merge pull request #264 from gwenn/outdated
Upgrade outdated dependencies
2017-05-29 10:11:09 -04:00
Jim McGrath
b3faed0f75 only depend on vcpkg for cfg(target_env = "msvc") 2017-05-28 06:15:47 -05:00
Jim McGrath
0dd10f85ba for msvc abi builds, add support for using sqlite from a vcpkg installation if available 2017-05-27 22:35:46 -05:00
gwenn
e8bc9fcc21 TypeChooser has been renamed to ParseCallbacks 2017-04-27 18:42:10 +02:00
gwenn
6371c0c6ec Fix bindgen 3.7.7 2017-04-21 21:38:29 +02:00
gwenn
1d684ae653 Merge remote-tracking branch 'jgallagher/master' into vtab 2017-04-21 20:01:04 +02:00
gwenn
30bba4618b Upgrade outdated dependencies
serde 0.9 -> 1.0
bitflags 0.7 -> 0.8
bindgen 0.21 -> 0.23
2017-04-21 19:47:47 +02:00
gwenn
fba280ff64 Some limits are not available in 3.6.8 2017-04-20 20:33:18 +02:00
Steven Fackler
d4177c5217 Set HAVE_USLEEP
SQLite otherwise has to sleep for a second at a time when waiting for a
lock (!)
2017-04-18 12:37:04 +02:00
gwenn
4e5b64fbca Use constants generated by bindgen where possible 2017-04-07 19:36:31 +02:00
John Gallagher
5a5d28ec69 Add bindgen bindings for SQLite 3.7.16 to libsqlite3-sys.
Bump to version 0.10.3 to use libsqlite3-sys 0.8.0.
2017-04-06 13:42:01 -04:00
John Gallagher
a13df1e3cd Avoid publicly exporting constants from libsqlite3-sys multiple times. 2017-04-05 13:05:28 -04:00
gwenn
c40b395410 Min SQLite version for vtab is 3.7.7 2017-03-09 19:24:02 +01:00
gwenn
7f0082e44e Merge remote-tracking branch 'jgallagher/master' into vtab 2017-03-08 20:35:07 +01:00
John Gallagher
f0dfab0349 Only check for and require SQLITE3_INCLUDE_DIR if we're running bindgen at buildtime. 2017-03-03 15:37:45 -05:00
John Gallagher
06383c65cb Update build process to use prebuilt bindings.
Adds buildtime_bindgen feature to run bindgen dynamically.
2017-03-03 15:37:45 -05:00
John Gallagher
9510e25ef3 Add prebuilt bindings for all relevant SQLite versions. 2017-03-03 15:37:45 -05:00
John Gallagher
0a35f4bb1e Version bumps to use new bundled SQLite. 2017-03-03 13:07:27 -05:00
John Gallagher
62eef1c8a0 Update bundled SQLite source to 3.17.0 2017-03-03 13:07:15 -05:00
gwenn
aedb681f54 Add categories and keywords to libsqlite3-sys 2017-02-23 21:07:10 +01:00
Sean Griffin
2c58b3f804 Remove the dependency on libc
Recent versions of bindgen use `std::os::raw` over `libc`, but currently
`libsqlite3-sys` is overriding that. `std::os::raw` is a subset of
`libc` that exports only the relevant type definitions, but not any
functions which require additional linking. This enables
`libsqlite3-sys` to be more easily used on targets that may not have a
libc available (presumably sqlite itself would have been compiled with
musl in that case)
2017-02-16 11:17:24 -05:00
John Gallagher
5dbfa2850e Manually insert SQLITE_DETERMINISTIC flag in bindgen output if needed.
See comment in libsqlite3-sys/build.rs for details - adding this flag is
harmless if it's not present in the header, and not having it can break
builds against older SQLite versions.
2017-02-08 21:41:34 -05:00
John Gallagher
161ac2bf0a Update libsqlite3-sys to run bindgen at build time 2017-02-08 20:40:30 -05:00
John Gallagher
509257dfa8 Merge branch 'limits' of https://github.com/gwenn/rusqlite into gwenn-limits 2017-02-07 19:41:30 -05:00
gwenn
307431911c Exporting libsqlite3_sys::error::ErrorCode (#218) 2017-02-04 11:33:23 +01:00
gwenn
359ec914d2 Expose limits (#220) 2017-02-04 11:01:38 +01:00
John Gallagher
36c5ed2ceb Upgrade dependencies.
In libsqlite3-sys, skip printing system libraries. See
https://github.com/sfackler/rust-openssl/issues/554#issuecomment-274878088.
2017-01-25 18:01:03 -05:00
John Gallagher
9d50a456c4 Bump libsqlite3-sys to 0.6.1 2017-01-23 20:18:08 -05:00
John Gallagher
f130f62b1a Don't ask to link to /usr/lib directly if pkg-config fails to find SQLite. 2017-01-23 20:17:14 -05:00
John Gallagher
51f6a24d60 Set build flags for bundled libsqlite.
Build flags from @chamakits; see https://github.com/jgallagher/rusqlite/pull/176.
2016-12-31 01:02:29 -05:00
Omar Ferrer
4b0d0f0d89 Deleted unneeded shell.c 2016-10-08 01:59:42 -04:00
Omar Ferrer
70203f9ed6 Changing binding from std::os::raw back to libc 2016-10-08 01:39:57 -04:00
Omar Ferrer
b2da510b04 Reran bindgens to match the bundled sqlite.
Added manually to the bindgens a type entry for 'Struct_sqlite3' pointing to sqlite3 to prevent changing multiple files.

Reran bindgens as:
bindgen --builtins --link=sqlite3 --output=./libsqlite3-sys/src/bindgen.rs ./libsqlite3-sys/sqlite3/sqlite3.h
2016-10-08 01:12:30 -04:00
Chip Collier
dde6e9ee3a Added feature to build a static sqlite from the bundled amalgamation. 2016-06-15 16:34:13 +02:00
Chip Collier
a9421e2047 adding sqlite v3.13.0 amalgamation 2016-06-15 16:33:37 +02:00
John Gallagher
9379002076 Bump to version 0.7.0.
Also bumps libsqlite3-sys to 0.5.0.
2016-05-19 20:26:18 -05:00
Xidorn Quan
d9fffaf797 Remove load_extension feature from the binding 2016-02-13 10:51:24 +08:00
gwenn
2d0175b7dd Fix warning with Rust 1.6
warning: lint raw_pointer_derive has been removed: using derive with raw
pointers is ok
2016-02-01 18:41:52 +01:00
John Gallagher
38cf8d597b Bump to rusqlite 0.6.0 and libsqlite3-sys 0.4.0. 2015-12-17 00:17:44 -05:00
John Gallagher
aac4d59fcc Change Error from a struct to an enum (BREAKING CHANGE).
This allows us to separate out the underlying SQLite error codes from
errors that occur on the Rust side.
2015-12-16 20:30:27 -05:00
John Gallagher
b385ae002b Add ErrorCode enum and Error struct to libsqlite3-sys. 2015-12-16 20:30:27 -05:00
John Gallagher
1f26093fc6 Move error codes into module (internal change only - public API stays the same). 2015-12-16 20:30:27 -05:00
John Gallagher
17e54eb6f6 Add extended result codes to libsqlite3-sys 2015-12-16 20:30:27 -05:00
John Gallagher
e94a5b8411 Add bindgen / sqlite version note to libsqlite3-sys 2015-12-13 08:30:42 -05:00
Gwenael Treguier
6e208fa655 Update bindings with bindgen 0.15.0/sqlite3 3.8.10 2015-12-13 08:30:33 -05:00
John Gallagher
9f5f4ac385 Merge branch 'functions' of https://github.com/gwenn/rusqlite into gwenn-functions
Conflicts:
	Cargo.toml
	src/lib.rs
2015-12-11 11:31:25 -05:00
John Gallagher
e71104e6c3 Bump version to 0.5.0 2015-12-08 21:30:44 -05:00
John Gallagher
e0b3ad7c9b Merge remote-tracking branch 'origin/master' into flexible-build-script 2015-12-07 11:15:21 -05:00
Gwenael Treguier
fe6afe2a94 Merge branch 'master' of https://github.com/jgallagher/rusqlite into functions 2015-12-06 21:33:21 +01:00
John Gallagher
7fbe1172e2 Make libsqlite3-sys's build script slightly more intelligent.
* If SQLITE3_LIB_DIR is present in the environment, we use that.
* If SQLITE3_LIB_DIR is not present, we try to use pkg-config.
* If SQLITE3_LIB_DIR is not present and pkg-config fails, we fall back
  to /usr/lib (if it exists).
2015-12-01 11:36:31 -05:00
John Gallagher
49cb1efe62 Merge branch 'master' into gwenn-trace_extension 2015-12-01 11:13:23 -05:00
Michał Krasnoborski
8e31a64dde Update Cargo.tomls to libc ~0.2 2015-12-01 06:18:44 +00:00
Gwenael Treguier
0a454eed79 Add support to user defined scalar functions 2015-08-09 09:52:53 +02:00
gwenn
4a7e83f0af Feature sqlite3_{log,trace,profile}. 2015-08-01 17:21:41 +02:00
John Gallagher
e8967388e6 Update Changelog for 0.2.0 2015-07-26 14:00:51 -04:00
John Gallagher
4d1063348e Use sqlite3_destructor_type from bindgen'd header 2015-07-26 13:43:43 -04:00
gwenn
b6dda11c3a Fix generated binding
for example sqlite3_exec callback signature is wrong
2015-07-04 20:46:39 +02:00
John Gallagher
84fc82f48c Add remaining datatype constaints to libsqlite3-sys 2015-05-04 21:44:05 -04:00
John Gallagher
5e04b98840 Updates to track rustc nightly 2015-04-03 08:32:11 -05:00
John Gallagher
4b085b9103 Bump version and use libc from crates.io 2015-03-28 23:09:21 -04:00
John Gallagher
134f34362a Use new hyphen-less extern crate name 2015-03-26 15:47:51 -04:00
Marcus Klaas
f30ceffa6c bump version 2015-03-12 21:33:29 +01:00
Marcus Klaas
59f0128bf1 upgrade pkg-config 2015-03-12 21:32:40 +01:00
John Gallagher
9db251e25b Correct Cargo.toml for publishing 2015-02-23 21:54:46 -05:00
John Gallagher
ee89f8db59 Fix warnings from latest rustc 2015-02-23 20:37:55 -05:00
John Gallagher
1097842a85 Put sqlite3 extension functions behind a feature 2015-02-23 20:37:55 -05:00
John Gallagher
03f368c4f4 Build raw sqlite interface as libsqlite3-sys
Use pkg-config to find it.
2015-02-23 20:37:55 -05:00