rusqlite 0.31.0

Ergonomic wrapper for SQLite
Documentation
[package]
name = "rusqlite"
# Note: Update version in README.md when you change this.
version = "0.31.0"
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 = []
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.0", features = ["formatting", "macros", "parsing"], optional = true }
bitflags = "2.0"
hashlink = "0.9"
chrono = { version = "0.4", 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.2.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.28.0"

[[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