Changes:
- Re-export the
ErrorCode
enum fromlibsqlite3-sys
. - Adds
version()
andversion_number()
functions for querying the version of SQLite in use. - Adds the
limits
feature, exposinglimit()
andset_limit()
methods onConnection
. - Updates to
libsqlite3-sys
0.7.0, which runs rust-bindgen at build-time instead of assuming the precense of all expected SQLite constants and functions. - Clarifies supported SQLite versions. Running with SQLite older than 3.6.8 now panics, and some features will not compile unless a sufficiently-recent SQLite version is used. See the README for requirements of particular features.
- When running with SQLite 3.6.x, rusqlite attempts to perform SQLite initialization. If it fails, rusqlite will panic since it cannot ensure the threading mode for SQLite. This check can by skipped by calling the unsafe function
rusqlite::bypass_sqlite_initialization()
. This is technically a breaking change but is unlikely to affect anyone in practice, since prior to this version the check that rusqlite was using would cause a segfault if linked against a SQLite older than 3.7.0. - rusqlite now performs a one-time check (prior to the first connection attempt) that the runtime SQLite version is at least as new as the SQLite version found at buildtime. This check can by skipped by calling the unsafe function
rusqlite::bypass_sqlite_version_check()
. - Removes the
libc
dependency in favor of usingstd::os::raw