[package]
edition = "2021"
rust-version = "1.86.0"
name = "diesel"
version = "2.3.12"
build = false
include = [
"src/**/*.rs",
"tests/**/*.rs",
"LICENSE-*",
"README.md",
"src/sqlite/connection/diesel_manage_updated_at.sql",
"src/migration/setup_migration_table.sql",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A safe, extensible ORM and Query Builder for PostgreSQL, SQLite, and MySQL"
homepage = "https://diesel.rs"
documentation = "https://docs.rs/diesel/"
readme = "README.md"
keywords = [
"orm",
"database",
"sql",
]
categories = ["database"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/diesel-rs/diesel"
[package.metadata.docs.rs]
features = [
"postgres",
"mysql",
"sqlite",
"extras",
]
no-default-features = true
rustc-args = [
"--cfg",
"diesel_docs",
]
rustdoc-args = [
"--cfg",
"diesel_docsrs",
"-Z",
"unstable-options",
"--generate-link-to-definition",
"--generate-macro-expansion",
]
[features]
128-column-tables = [
"64-column-tables",
"diesel_derives/128-column-tables",
]
32-column-tables = ["diesel_derives/32-column-tables"]
64-column-tables = [
"32-column-tables",
"diesel_derives/64-column-tables",
]
__with_asan_tests = [
"libsqlite3-sys?/bundled",
"libsqlite3-sys?/with-asan",
"pq-sys?/bundled",
"pq-src?/with-asan",
"mysqlclient-sys?/bundled",
"mysqlclient-src?/with-asan",
]
chrono = [
"diesel_derives/chrono",
"dep:chrono",
]
default = [
"with-deprecated",
"32-column-tables",
]
extras = [
"chrono",
"time",
"serde_json",
"uuid",
"network-address",
"numeric",
"r2d2",
]
huge-tables = ["64-column-tables"]
i-implement-a-third-party-backend-and-opt-into-breaking-changes = []
ipnet-address = [
"dep:ipnet",
"dep:libc",
]
large-tables = ["32-column-tables"]
mysql = [
"dep:mysqlclient-sys",
"dep:url",
"dep:percent-encoding",
"dep:bitflags",
"mysql_backend",
]
mysql_backend = [
"diesel_derives/mysql",
"dep:byteorder",
]
network-address = [
"dep:ipnetwork",
"dep:libc",
]
numeric = [
"dep:num-bigint",
"dep:bigdecimal",
"dep:num-traits",
"dep:num-integer",
"diesel_derives/numeric",
]
postgres = [
"dep:pq-sys",
"postgres_backend",
]
postgres_backend = [
"diesel_derives/postgres",
"dep:bitflags",
"dep:byteorder",
"dep:itoa",
]
r2d2 = [
"diesel_derives/r2d2",
"dep:r2d2",
]
returning_clauses_for_sqlite_3_35 = ["sqlite"]
serde_json = ["dep:serde_json"]
sqlite = [
"dep:libsqlite3-sys",
"dep:sqlite-wasm-rs",
"diesel_derives/sqlite",
"time?/formatting",
"time?/parsing",
]
time = [
"diesel_derives/time",
"dep:time",
]
unstable = ["diesel_derives/nightly"]
uuid = ["dep:uuid"]
with-deprecated = ["diesel_derives/with-deprecated"]
without-deprecated = ["diesel_derives/without-deprecated"]
[lib]
name = "diesel"
path = "src/lib.rs"
[dependencies.bigdecimal]
version = ">=0.0.13, < 0.5.0"
optional = true
[dependencies.bitflags]
version = "2.0.0"
optional = true
[dependencies.byteorder]
version = "1.0"
optional = true
[dependencies.chrono]
version = "0.4.20"
features = [
"clock",
"std",
]
optional = true
default-features = false
[dependencies.diesel_derives]
version = "~2.3.0"
[dependencies.downcast-rs]
version = "2.0.1"
[dependencies.ipnet]
version = "2.5.0"
optional = true
[dependencies.ipnetwork]
version = ">=0.12.2, <0.22.0"
optional = true
[dependencies.itoa]
version = "1.0.0"
optional = true
[dependencies.libc]
version = "0.2.0"
optional = true
[dependencies.mysqlclient-src]
version = ">=0.1.0, <0.3"
optional = true
[dependencies.mysqlclient-sys]
version = ">=0.2.5, <0.6.0"
optional = true
[dependencies.num-bigint]
version = ">=0.2.0, <0.5.0"
optional = true
[dependencies.num-integer]
version = "0.1.39"
optional = true
[dependencies.num-traits]
version = "0.2.0"
optional = true
[dependencies.percent-encoding]
version = "2.1.0"
optional = true
[dependencies.pq-src]
version = "0.3"
optional = true
[dependencies.pq-sys]
version = ">=0.4.0, <0.8.0"
optional = true
[dependencies.quickcheck]
version = "1.0.3"
optional = true
[dependencies.r2d2]
version = ">= 0.8.2, < 0.9.0"
optional = true
[dependencies.serde_json]
version = ">=0.8.0, <2.0"
optional = true
[dependencies.time]
version = "0.3.9"
features = ["macros"]
optional = true
[dependencies.url]
version = "2.1.0"
optional = true
[dependencies.uuid]
version = ">=0.7.0, <2.0.0"
optional = true
[dev-dependencies.cfg-if]
version = "1"
[dev-dependencies.dotenvy]
version = "0.15"
[dev-dependencies.ipnetwork]
version = ">=0.12.2, <0.22.0"
[dev-dependencies.quickcheck]
version = "1.0.3"
[dev-dependencies.tempfile]
version = "3.10.1"
[target.'cfg(all(target_family = "wasm", target_os = "unknown"))'.dependencies.sqlite-wasm-rs]
version = ">=0.4.0, <0.6.0"
optional = true
default-features = false
[target.'cfg(all(target_family = "wasm", target_os = "unknown"))'.dev-dependencies.getrandom_02]
version = "0.2"
features = ["js"]
package = "getrandom"
[target.'cfg(all(target_family = "wasm", target_os = "unknown"))'.dev-dependencies.getrandom_04]
version = "0.4"
features = ["wasm_js"]
package = "getrandom"
[target.'cfg(all(target_family = "wasm", target_os = "unknown"))'.dev-dependencies.wasm-bindgen-test]
version = "0.3.49"
[target.'cfg(not(all(target_family = "wasm", target_os = "unknown")))'.dependencies.libsqlite3-sys]
version = ">=0.17.2, <0.39.0"
features = ["bundled_bindings"]
optional = true
[lints.clippy]
dbg_macro = "warn"
print_stdout = "warn"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(diesel_docsrs)"]