Commit Graph

178 Commits

Author SHA1 Message Date
Thom Chiovoloni
185899eab1 Run asan in CI. Fixes #713 2020-04-16 03:09:51 -07:00
Thom Chiovoloni
9322b0e881 Update links & copyright statement 2020-04-15 21:37:39 -07:00
Thom Chiovoloni
e85963852d Fix shellcheck compaints about upgrade.sh 2020-04-15 09:49:23 -07:00
Thom Chiovoloni
22564d3099 Upgrade bundled sqlite to 3.31.1 2020-04-10 16:15:34 -07:00
Thom Chiovoloni
288aa961a7 Exclude va_list and functions using it from the bundled bindings file 2020-04-10 05:29:35 -07:00
Thom Chiovoloni
6b8e2fc02b Prep rusqlite 0.22.0 and libsqlite3-sys 0.17.3 2020-04-08 10:59:28 -07:00
Thom Chiovoloni
6f6f7ffd9f
Add #[non_exhaustive] to enums that might get new variants. (#673)
This just using them in patterns without a catchall. I left things alone
that seem very unlikely to change (`Value`, `ValueRef`, `DatabaseName`,
etc...). This might help reduce the number of breaking changes we need
(rusqlite is still pre-1.0 so it doesn't really matter that much, but
breaking changes complicate the story around when we can cut releases).
2020-04-06 12:01:39 -07:00
Thom Chiovoloni
26c744d0c3
Improve CI test coverage (#670)
* Improve CI test coverage

* Run clippy/rustfmt/rustdoc in CI

* Disable warnings when building bundled sqlite
2020-04-06 10:43:43 -07:00
Thom Chiovoloni
521f8dc481
Prep for libsqlite3-sys 0.17.2 (#667)
This is essentially to get a release out that contains `in_gecko` so
that this library can be used in firefox.

Note: This had temporarially been 0.18.0, but as noted in
https://github.com/jgallagher/rusqlite/pull/619#discussion_r370435032
there isn't an actual need for this, as it isn't a breaking change.

By releasing it as 0.17.2, we can still link rusqlite 0.21 against it,
which lets us avoid needing to cut a release of rusqlite just for a
gecko-specific linkage flag (I imagine there are a few more rusqlite
features we'd want for the next release).
2020-04-06 10:07:55 -07:00
Thom Chiovoloni
a2db66ee3e Add in_gecko feature to libsqlite3-sys to bypass linking. 2020-04-03 13:37:56 -07:00
gwenn
f971c6e625 Fix clippy warnings 2020-03-14 07:41:57 +01:00
gwenn
15fc3b4b71 Clippy + rust fmt 2020-02-22 11:50:00 +01:00
gwenn
2a90073c1e
Merge pull request #629 from gwenn/const
Add missing constants
2020-02-09 12:11:05 +01:00
gwenn
05e87b8d8d Add missing constants 2020-02-09 11:47:01 +01:00
gwenn
9ca29b950e
Merge pull request #627 from gwenn/ignore_path_change
Ignore PATH change
2020-02-09 08:24:41 +01:00
gwenn
b0be8a1536 Upgrade to bindgen 0.53 2020-02-08 11:12:18 +01:00
gwenn
17759a912e Ignore PATH change
Cargo itself changes the PATH.
So `libsqlite3-sys` is always rebuilt on Windows platform.
To avoid this, we ignore PATH change.
If the PATH has been modified in such a way that a different SQLite library is found,
you will have to also modify SQLITE3_LIB_DIR to make cargo rebuild `libsqlite3-sys`

Fix #435.
2020-02-08 10:25:52 +01:00
gwenn
055352f07b
Merge pull request #619 from KamranMackey/master
Upgraded the bundled SQLite version to 3.31.0.
2020-01-26 21:02:09 +01:00
Kamran Mackey
c3f83c281a Upgrade bundled SQLite version to 3.31.0.
Signed-off-by: Kamran Mackey <kamranm1200@gmail.com>
2020-01-26 12:44:03 -07:00
gwenn
cf7e2b5aec Add missing error codes 2020-01-26 18:24:09 +01:00
Thom Chiovoloni
c70d148542 Remove most of the code using feature=bundled as a version check 2020-01-14 08:11:36 -08:00
gwenn
dbc25a9fd5 Prepare 0.17.1 of libsqlite3-sys 2020-01-09 19:13:47 +01:00
Thom Chiovoloni
844839d9a5 Allow crates with a direct dep on libsqlite3-sys to know if sqlcipher has been enabled 2020-01-08 04:11:39 -08:00
gwenn
2d25b34428 Fix some Clippy warnings 2019-12-19 20:08:04 +01:00
gwenn
fe81e7bc10
Merge pull request #601 from gwenn/bindgen
Upgrade bindgen to version 0.52
2019-12-14 08:34:42 +01:00
gwenn
cade470f15 Use runtime feature for bindgen
https://github.com/rust-lang/rust-bindgen/issues/1694#issuecomment-565625756
> Are you using default-features = false? I think you need to change to
features = ["dynamic"] if so so that clang is runtime-detected.
Otherwise it needs a relatively-new libclang version.
2019-12-14 08:18:21 +01:00
gwenn
a0551496d8 Upgrade bindgen to version 0.52 2019-12-13 18:21:38 +01:00
Jake McGinty
8e1f70d465
Download sqlite source via HTTPS. 2019-12-05 11:46:23 +09:00
gwenn
8302a50fb8 Fix clippy warnings 2019-11-03 11:19:07 +01:00
gwenn
a7ad3849da Upgrade bundled SQLite version to 3.30.1 2019-10-19 09:16:14 +00:00
gwenn
08e32444c9 Cleanup use statements 2019-08-17 08:18:37 +02:00
gwenn
e4fecf7fb8 Rustfmt 2019-08-09 20:03:46 +02:00
Richard Dodd
a50d37bd3a Handle old versions of visual studio 2019-07-28 17:05:34 +01:00
gwenn
813ec1272e Upgrade dependencies
bindgen 0.51
url 2.0
2019-07-27 09:14:55 +02:00
gwenn
be12a78e60 Upgrade bundled SQLite version to 3.29 2019-07-11 16:27:07 +00:00
gwenn
8070f3cbe6 Remove bindgen defaut features 2019-07-03 21:12:47 +02:00
gwenn
54ccb0d026 Upgrade bindgen to 0.50 2019-07-03 21:06:22 +02:00
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