Rocket/contrib/db_pools/lib/Cargo.toml
Sergio Benitez 926e06ef3c Finalize 'tracing' migration.
This commit complete the migration to 'tracing' for all logging. Below
is a summary of all relevant commits, including this one:

Log improvements:
  - All log (trace) messages are structured which means they contain fields
    that can formatted by any subscriber.
  - Logging can be disabled entirely by disabling the default `trace` feature.
  - Routes and catchers now contain location (file/line) information.
  - Two log format kinds: pretty and compact via ROCKET_LOG_FORMAT
  - Coloring is not disabled globally. Thus applications can color even if
    Rocket is configured not to.
  - Rocket is more conservative about 'warn' and 'error' messages, reserving
    those log levels for messages useful in production.
  - Errors from guards logged by codegen now use the 'Display' implementation of
    those errors when one exists.
  - Secrets are never logged, even when directly asked for.

New features:
  - Many Rocket types know how to trace themselves via a new `Trace` trait.
  - `Either` types can now be used in `uri!()` calls.
  - A `RequestIdLayer` tags all requests with a unique ID.

Breaking changes to configuration:
  - `Config::log_level` is of type `Option<Level>`. `None` disables tracing.
  - `log_level` now uses the traditional log level names: "off", "error",
    "warn", "info", "debug", "trace", or 0-5. This replace the Rocket-specific
    "normal", "debug", "critical".
  - A new option, `log_format`, which is either `compact` or `pretty`,
    determines how Rocket's tracing subscriber log trace messages.

Breaking changes:
  - Hidden `rocket::Either` is now publicly available at `rocket::either::Either`.
  - `rocket::Error` no longer panics when dropped.
  - `main` generated by `#[launch]` returns an `ExitCode`.
  - `FromParam` `Err` now always returns the actual error as opposed to the
    string that failed to parse. To recover the original string, use `Either<T,
    &str>`, where `T: FromParam`, as a parameter guard.
  - Many types that implemented `Display` now instead implement `Trace`.
  - `Error::pretty_print()` was removed. Use `Error::trace()` via `Trace` impl.

Internal improvements:
  - Made more space in CI machines for tasks.
  - Cleaned up testbench code using `inventory`.

Resolves #21.
2024-06-03 15:02:44 -07:00

101 lines
2.3 KiB
TOML

[package]
name = "rocket_db_pools"
version = "0.1.0"
authors = ["Sergio Benitez <sb@sergio.bz>", "Jeb Rosen <jeb@jebrosen.com>"]
description = "Rocket async database pooling support"
repository = "https://github.com/rwf2/Rocket/tree/master/contrib/db_pools"
readme = "../README.md"
keywords = ["rocket", "framework", "database", "pools"]
license = "MIT OR Apache-2.0"
edition = "2021"
rust-version = "1.75"
[package.metadata.docs.rs]
all-features = true
[lints]
workspace = true
[features]
# deadpool features
deadpool_postgres = ["deadpool-postgres", "deadpool"]
deadpool_redis = ["deadpool-redis", "deadpool"]
# sqlx features
sqlx_mysql = ["sqlx", "sqlx/mysql", "log"]
sqlx_postgres = ["sqlx", "sqlx/postgres", "log"]
sqlx_sqlite = ["sqlx", "sqlx/sqlite", "log"]
sqlx_macros = ["sqlx/macros"]
# diesel features
diesel_postgres = ["diesel-async/postgres", "diesel-async/deadpool", "diesel", "deadpool_09"]
diesel_mysql = ["diesel-async/mysql", "diesel-async/deadpool", "diesel", "deadpool_09"]
# implicit features: mongodb
[dependencies.rocket]
path = "../../../core/lib"
version = "0.6.0-dev"
default-features = false
[dependencies.rocket_db_pools_codegen]
path = "../codegen"
version = "0.1.0"
[dependencies.deadpool_09]
package = "deadpool"
version = "0.9.5"
default-features = false
features = ["rt_tokio_1", "managed"]
optional = true
[dependencies.deadpool-postgres]
version = "0.13.2"
default-features = false
features = ["rt_tokio_1"]
optional = true
[dependencies.deadpool]
version = "0.12.1"
default-features = false
features = ["rt_tokio_1", "managed"]
optional = true
[dependencies.deadpool-redis]
version = "0.15"
default-features = false
features = ["rt_tokio_1"]
optional = true
[dependencies.mongodb]
version = "2"
default-features = false
features = ["tokio-runtime"]
optional = true
[dependencies.diesel-async]
version = "0.4.1"
default-features = false
optional = true
[dependencies.diesel]
version = "2.1"
default-features = false
optional = true
[dependencies.sqlx]
version = "0.7"
default-features = false
features = ["runtime-tokio-rustls"]
optional = true
[dependencies.log]
version = "0.4"
default-features = false
optional = true
[dev-dependencies.rocket]
path = "../../../core/lib"
default-features = false
features = ["json"]
[build-dependencies]
version_check = "0.9"