[package] name = "rusqlite" # Note: Update version in README.md when you change this. version = "0.32.1" authors = ["The rusqlite developers"] edition = "2021" description = "Ergonomic wrapper for SQLite" repository = "https://github.com/rusqlite/rusqlite" documentation = "https://docs.rs/rusqlite/" readme = "README.md" keywords = ["sqlite", "database", "ffi"] license = "MIT" categories = ["database"] exclude = [ "/.github/*", "/.gitattributes", "/appveyor.yml", "/Changelog.md", "/clippy.toml", "/codecov.yml", ] [badges] appveyor = { repository = "rusqlite/rusqlite" } codecov = { repository = "rusqlite/rusqlite" } maintenance = { status = "actively-developed" } [lib] name = "rusqlite" [workspace] members = ["libsqlite3-sys"] [features] load_extension = [] # hot-backup interface: 3.6.11 (2009-02-18) backup = [] # sqlite3_blob_reopen: 3.7.4 blob = [] collation = [] # sqlite3_create_function_v2: 3.7.3 (2010-10-08) functions = [] # sqlite3_log: 3.6.23 (2010-03-09) trace = [] # sqlite3_db_release_memory: 3.7.10 (2012-01-16) release_memory = [] bundled = ["libsqlite3-sys/bundled", "modern_sqlite"] bundled-sqlcipher = ["libsqlite3-sys/bundled-sqlcipher", "bundled"] bundled-sqlcipher-vendored-openssl = ["libsqlite3-sys/bundled-sqlcipher-vendored-openssl", "bundled-sqlcipher"] buildtime_bindgen = ["libsqlite3-sys/buildtime_bindgen"] limits = [] loadable_extension = ["libsqlite3-sys/loadable_extension"] hooks = [] preupdate_hook = ["libsqlite3-sys/preupdate_hook", "hooks"] i128_blob = [] sqlcipher = ["libsqlite3-sys/sqlcipher"] unlock_notify = ["libsqlite3-sys/unlock_notify"] # xSavepoint, xRelease and xRollbackTo: 3.7.7 (2011-06-23) vtab = [] csvtab = ["csv", "vtab"] # pointer passing interfaces: 3.20.0 array = ["vtab"] # session extension: 3.13.0 session = ["libsqlite3-sys/session", "hooks"] # window functions: 3.25.0 window = ["functions"] # 3.9.0 series = ["vtab"] # check for invalid query. extra_check = [] # ]3.14.0, last] modern_sqlite = ["libsqlite3-sys/bundled_bindings"] in_gecko = ["modern_sqlite", "libsqlite3-sys/in_gecko"] bundled-windows = ["libsqlite3-sys/bundled-windows"] # Build bundled sqlite with -fsanitize=address with-asan = ["libsqlite3-sys/with-asan"] column_decltype = [] wasm32-wasi-vfs = ["libsqlite3-sys/wasm32-wasi-vfs"] # 3.23.0 serialize = ["modern_sqlite"] # Helper feature for enabling most non-build-related optional features # or dependencies (except `session`). This is useful for running tests / clippy # / etc. New features and optional dependencies that don't conflict with anything # else should be added here. modern-full = [ "array", "backup", "blob", "modern_sqlite", "chrono", "collation", "column_decltype", "csvtab", "extra_check", "functions", "hooks", "i128_blob", "limits", "load_extension", "serde_json", "series", "time", "trace", "unlock_notify", "url", "uuid", "vtab", "window", ] bundled-full = ["modern-full", "bundled"] [dependencies] time = { version = "0.3.36", features = ["formatting", "macros", "parsing"], optional = true } bitflags = "2.6.0" hashlink = "0.9" chrono = { version = "0.4.38", optional = true, default-features = false, features = ["clock"] } serde_json = { version = "1.0", optional = true } csv = { version = "1.1", optional = true } url = { version = "2.1", optional = true } fallible-iterator = "0.3" fallible-streaming-iterator = "0.1" uuid = { version = "1.0", optional = true } smallvec = "1.6.1" rusqlite-macros = { path = "rusqlite-macros", version = "0.3.0", optional = true } [dev-dependencies] doc-comment = "0.3" tempfile = "3.1.0" lazy_static = "1.4" regex = "1.5.5" uuid = { version = "1.0", features = ["v4"] } unicase = "2.6.0" # Use `bencher` over criterion because it builds much faster, # and we don't have many benchmarks bencher = "0.1" [dependencies.libsqlite3-sys] path = "libsqlite3-sys" version = "0.30.1" [[test]] name = "auto_ext" [[test]] name = "config_log" harness = false [[test]] name = "deny_single_threaded_sqlite_config" [[test]] name = "vtab" [[bench]] name = "cache" harness = false [[bench]] name = "exec" harness = false [[example]] name = "loadable_extension" crate-type = ["cdylib"] required-features = ["loadable_extension", "functions", "trace"] [[example]] name = "load_extension" required-features = ["load_extension", "bundled", "functions", "trace"] [package.metadata.docs.rs] features = ["modern-full", "rusqlite-macros"] all-features = false no-default-features = true default-target = "x86_64-unknown-linux-gnu" rustdoc-args = ["--cfg", "docsrs"] [package.metadata.playground] features = ["bundled-full"] all-features = false