mirror of
https://github.com/rwf2/Rocket.git
synced 2025-01-22 09:22:03 +00:00
926e06ef3c
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.
30 lines
578 B
TOML
30 lines
578 B
TOML
[package]
|
|
name = "testbench"
|
|
description = "End-to-end HTTP Rocket testbench."
|
|
version = "0.0.0"
|
|
edition = "2021"
|
|
publish = false
|
|
|
|
[workspace]
|
|
|
|
[dependencies]
|
|
thiserror = "1.0"
|
|
procspawn = "1"
|
|
pretty_assertions = "1.4.0"
|
|
ipc-channel = "0.18"
|
|
rustls-pemfile = "2.1"
|
|
inventory = "0.3.15"
|
|
|
|
[dependencies.nix]
|
|
version = "0.28"
|
|
features = ["signal"]
|
|
|
|
[dependencies.rocket]
|
|
path = "../core/lib/"
|
|
features = ["secrets", "tls", "mtls"]
|
|
|
|
[dependencies.reqwest]
|
|
version = "0.12.3"
|
|
default-features = false
|
|
features = ["rustls-tls-manual-roots", "charset", "cookies", "blocking", "http2"]
|