diff --git a/CHANGELOG.md b/CHANGELOG.md index dcedb6ff1..5fd943be8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.2.5](https://github.com/LukeMathWalker/pavex/compare/0.2.4...0.2.5) - 2025-09-26 + + +### ⛰️ Features +- Don't raise an error for malformed request cookies (by @LukeMathWalker) - #526 +- Implement Debug for pavex::Response (by @LukeMathWalker) - #525 + + + +### 🐛 Bug Fixes +- Replace '{CONSOLE_URL}' with the concrete URL value before showing the error message to the user (by @LukeMathWalker) - #540 + + +### Contributors + +* @LukeMathWalker + ## [0.2.4](https://github.com/LukeMathWalker/pavex/compare/0.2.3...0.2.4) - 2025-08-09 ### 📚 Documentation diff --git a/libs/Cargo.lock b/libs/Cargo.lock index 83f4fdcbd..72fce033d 100644 --- a/libs/Cargo.lock +++ b/libs/Cargo.lock @@ -1307,7 +1307,7 @@ dependencies = [ [[package]] name = "generate_from_path" -version = "0.2.4" +version = "0.2.5" dependencies = [ "anyhow", "fs-err", @@ -2558,7 +2558,7 @@ dependencies = [ [[package]] name = "pavex" -version = "0.2.4" +version = "0.2.5" dependencies = [ "anyhow", "biscotti", @@ -2606,7 +2606,7 @@ dependencies = [ [[package]] name = "pavex_bp_schema" -version = "0.2.4" +version = "0.2.5" dependencies = [ "pavex_reflection", "serde", @@ -2614,7 +2614,7 @@ dependencies = [ [[package]] name = "pavex_cli" -version = "0.2.4" +version = "0.2.5" dependencies = [ "anstyle", "anyhow", @@ -2675,7 +2675,7 @@ dependencies = [ [[package]] name = "pavex_cli_client" -version = "0.2.4" +version = "0.2.5" dependencies = [ "anyhow", "pavex", @@ -2684,7 +2684,7 @@ dependencies = [ [[package]] name = "pavex_cli_deps" -version = "0.2.4" +version = "0.2.5" dependencies = [ "anyhow", "cargo-like-utils", @@ -2695,7 +2695,7 @@ dependencies = [ [[package]] name = "pavex_cli_diagnostic" -version = "0.2.4" +version = "0.2.5" dependencies = [ "anyhow", "miette", @@ -2704,7 +2704,7 @@ dependencies = [ [[package]] name = "pavex_cli_flock" -version = "0.2.4" +version = "0.2.5" dependencies = [ "anyhow", "fs-err", @@ -2716,7 +2716,7 @@ dependencies = [ [[package]] name = "pavex_cli_shell" -version = "0.2.4" +version = "0.2.5" dependencies = [ "anyhow", "cargo-like-utils", @@ -2724,7 +2724,7 @@ dependencies = [ [[package]] name = "pavex_macros" -version = "0.2.4" +version = "0.2.5" dependencies = [ "convert_case 0.8.0", "darling 0.21.3", @@ -2740,7 +2740,7 @@ dependencies = [ [[package]] name = "pavex_miette" -version = "0.2.4" +version = "0.2.5" dependencies = [ "miette", "owo-colors", @@ -2754,14 +2754,14 @@ dependencies = [ [[package]] name = "pavex_reflection" -version = "0.2.4" +version = "0.2.5" dependencies = [ "serde", ] [[package]] name = "pavex_session" -version = "0.2.4" +version = "0.2.5" dependencies = [ "anyhow", "async-trait", @@ -2782,7 +2782,7 @@ dependencies = [ [[package]] name = "pavex_session_memory_store" -version = "0.2.4" +version = "0.2.5" dependencies = [ "async-trait", "pavex", @@ -2794,7 +2794,7 @@ dependencies = [ [[package]] name = "pavex_session_redis" -version = "0.2.4" +version = "0.2.5" dependencies = [ "anyhow", "async-trait", @@ -2810,7 +2810,7 @@ dependencies = [ [[package]] name = "pavex_session_sqlx" -version = "0.2.4" +version = "0.2.5" dependencies = [ "anyhow", "async-trait", @@ -2829,7 +2829,7 @@ dependencies = [ [[package]] name = "pavex_test_runner" -version = "0.2.4" +version = "0.2.5" dependencies = [ "ahash", "anyhow", @@ -2861,7 +2861,7 @@ dependencies = [ [[package]] name = "pavex_tracing" -version = "0.2.4" +version = "0.2.5" dependencies = [ "pavex", "tracing", @@ -2870,7 +2870,7 @@ dependencies = [ [[package]] name = "pavexc" -version = "0.2.4" +version = "0.2.5" dependencies = [ "ahash", "anyhow", @@ -2930,7 +2930,7 @@ dependencies = [ [[package]] name = "pavexc_attr_parser" -version = "0.2.4" +version = "0.2.5" dependencies = [ "darling 0.21.3", "insta", @@ -2945,7 +2945,7 @@ dependencies = [ [[package]] name = "pavexc_cli" -version = "0.2.4" +version = "0.2.5" dependencies = [ "anyhow", "better-panic", @@ -2982,7 +2982,7 @@ dependencies = [ [[package]] name = "pavexc_cli_client" -version = "0.2.4" +version = "0.2.5" dependencies = [ "anyhow", "pavex", @@ -3039,7 +3039,7 @@ checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" [[package]] name = "persist_if_changed" -version = "0.2.4" +version = "0.2.5" dependencies = [ "anyhow", "fs-err", diff --git a/libs/Cargo.toml b/libs/Cargo.toml index 627c117fd..45e2ac5e2 100644 --- a/libs/Cargo.toml +++ b/libs/Cargo.toml @@ -12,7 +12,7 @@ edition = "2024" repository = "https://github.com/LukeMathWalker/pavex" homepage = "https://pavex.dev" license = "Apache-2.0" -version = "0.2.4" +version = "0.2.5" [workspace.dependencies] vergen-gitcl = { version = "1.0.8", features = ["build"] } diff --git a/libs/pavex/Cargo.toml b/libs/pavex/Cargo.toml index ad025b58a..547133677 100644 --- a/libs/pavex/Cargo.toml +++ b/libs/pavex/Cargo.toml @@ -34,15 +34,15 @@ futures-util = { workspace = true } mime = { workspace = true } thiserror = { workspace = true } serde = { workspace = true, features = ["derive"] } -pavex_macros = { path = "../pavex_macros", version = "0.2.4" } +pavex_macros = { path = "../pavex_macros", version = "0.2.5" } paste = { workspace = true } tracing = { workspace = true } http-body-util = { workspace = true } pin-project-lite = { workspace = true } ubyte = { workspace = true, features = ["serde"] } -pavex_bp_schema = { path = "../pavex_bp_schema", version = "=0.2.4" } -pavex_reflection = { path = "../pavex_reflection", version = "=0.2.4" } -persist_if_changed = { path = "../persist_if_changed", version = "0.2.4" } +pavex_bp_schema = { path = "../pavex_bp_schema", version = "=0.2.5" } +pavex_reflection = { path = "../pavex_reflection", version = "=0.2.5" } +persist_if_changed = { path = "../persist_if_changed", version = "0.2.5" } # Configuration figment = { workspace = true, features = ["env", "yaml"], optional = true } @@ -97,4 +97,4 @@ pavex_tracing = { path = "../pavex_tracing" } pavex_macros = { path = "../pavex_macros", features = [ "allow_unreachable_pub", -], version = "0.2.4" } +], version = "0.2.5" } diff --git a/libs/pavex_bp_schema/Cargo.toml b/libs/pavex_bp_schema/Cargo.toml index c4f967a91..5c8e22c32 100644 --- a/libs/pavex_bp_schema/Cargo.toml +++ b/libs/pavex_bp_schema/Cargo.toml @@ -9,4 +9,4 @@ license.workspace = true [dependencies] serde = { workspace = true, features = ["derive"] } -pavex_reflection = { path = "../pavex_reflection", version = "=0.2.4" } +pavex_reflection = { path = "../pavex_reflection", version = "=0.2.5" } diff --git a/libs/pavex_cli/Cargo.toml b/libs/pavex_cli/Cargo.toml index 3acbf78a8..bc27c8c59 100644 --- a/libs/pavex_cli/Cargo.toml +++ b/libs/pavex_cli/Cargo.toml @@ -20,12 +20,12 @@ vergen-gitcl = { workspace = true } anyhow = { workspace = true } [dependencies] -pavexc_cli_client = { path = "../pavexc_cli_client", version = "0.2.4" } -pavex_cli_deps = { path = "../pavex_cli_deps", version = "0.2.4" } -pavex_cli_shell = { path = "../pavex_cli_shell", version = "0.2.4" } -pavex_cli_flock = { path = "../pavex_cli_flock", version = "0.2.4" } -pavex_cli_diagnostic = { path = "../pavex_cli_diagnostic", version = "0.2.4" } -pavex_miette = { path = "../pavex_miette", version = "0.2.4" } +pavexc_cli_client = { path = "../pavexc_cli_client", version = "0.2.5" } +pavex_cli_deps = { path = "../pavex_cli_deps", version = "0.2.5" } +pavex_cli_shell = { path = "../pavex_cli_shell", version = "0.2.5" } +pavex_cli_flock = { path = "../pavex_cli_flock", version = "0.2.5" } +pavex_cli_diagnostic = { path = "../pavex_cli_diagnostic", version = "0.2.5" } +pavex_miette = { path = "../pavex_miette", version = "0.2.5" } tracing_log_error = { workspace = true } async-trait = { workspace = true } http = { workspace = true } diff --git a/libs/pavex_cli_client/Cargo.toml b/libs/pavex_cli_client/Cargo.toml index 3ec867db8..81eafb2dc 100644 --- a/libs/pavex_cli_client/Cargo.toml +++ b/libs/pavex_cli_client/Cargo.toml @@ -9,5 +9,5 @@ license.workspace = true [dependencies] anyhow = { workspace = true } -pavex = { path = "../pavex", version = "0.2.4" } +pavex = { path = "../pavex", version = "0.2.5" } thiserror = { workspace = true } diff --git a/libs/pavex_cli_deps/Cargo.toml b/libs/pavex_cli_deps/Cargo.toml index 7822ad2b5..153e2ff2e 100644 --- a/libs/pavex_cli_deps/Cargo.toml +++ b/libs/pavex_cli_deps/Cargo.toml @@ -9,7 +9,7 @@ version.workspace = true [dependencies] anyhow = { workspace = true } -pavex_cli_shell = { path = "../pavex_cli_shell", version = "0.2.4" } +pavex_cli_shell = { path = "../pavex_cli_shell", version = "0.2.5" } cargo-like-utils = { workspace = true } thiserror = { workspace = true } miette = { workspace = true } diff --git a/libs/pavex_cli_flock/Cargo.toml b/libs/pavex_cli_flock/Cargo.toml index 8c558208b..3b00491c0 100644 --- a/libs/pavex_cli_flock/Cargo.toml +++ b/libs/pavex_cli_flock/Cargo.toml @@ -9,7 +9,7 @@ version.workspace = true [dependencies] anyhow = { workspace = true } -pavex_cli_shell = { path = "../pavex_cli_shell", version = "0.2.4" } +pavex_cli_shell = { path = "../pavex_cli_shell", version = "0.2.5" } tracing = { workspace = true } libc = { workspace = true } fs-err = { workspace = true } diff --git a/libs/pavex_macros/Cargo.toml b/libs/pavex_macros/Cargo.toml index bade5eeea..f999ac8e9 100644 --- a/libs/pavex_macros/Cargo.toml +++ b/libs/pavex_macros/Cargo.toml @@ -17,7 +17,7 @@ proc-macro = true allow_unreachable_pub = [] [dependencies] -pavexc_attr_parser = { path = "../pavexc_attr_parser", version = "=0.2.4" } +pavexc_attr_parser = { path = "../pavexc_attr_parser", version = "=0.2.5" } paste = { workspace = true } darling = { workspace = true } proc-macro2 = { workspace = true } diff --git a/libs/pavex_session/Cargo.toml b/libs/pavex_session/Cargo.toml index 1aff2f008..97a2f24b4 100644 --- a/libs/pavex_session/Cargo.toml +++ b/libs/pavex_session/Cargo.toml @@ -11,10 +11,10 @@ license.workspace = true unexpected_cfgs = { level = "allow", check-cfg = ['cfg(pavex_ide_hint)'] } [dependencies] -pavex = { version = "0.2.4", path = "../pavex", default-features = false, features = [ +pavex = { version = "0.2.5", path = "../pavex", default-features = false, features = [ "cookie", ] } -pavex_tracing = { version = "0.2.4", path = "../pavex_tracing" } +pavex_tracing = { version = "0.2.5", path = "../pavex_tracing" } serde = { workspace = true, features = ["derive"] } serde_json = { workspace = true } anyhow = { workspace = true } diff --git a/libs/pavex_session_memory_store/Cargo.toml b/libs/pavex_session_memory_store/Cargo.toml index 5163564aa..24d39a3f2 100644 --- a/libs/pavex_session_memory_store/Cargo.toml +++ b/libs/pavex_session_memory_store/Cargo.toml @@ -11,8 +11,8 @@ license.workspace = true unexpected_cfgs = { level = "allow", check-cfg = ['cfg(pavex_ide_hint)'] } [dependencies] -pavex_session = { version = "0.2.4", path = "../pavex_session" } -pavex = { version = "0.2.4", path = "../pavex" } +pavex_session = { version = "0.2.5", path = "../pavex_session" } +pavex = { version = "0.2.5", path = "../pavex" } serde_json = { workspace = true } async-trait = { workspace = true } tokio = { workspace = true, features = ["sync"] } diff --git a/libs/pavex_session_redis/Cargo.toml b/libs/pavex_session_redis/Cargo.toml index 08a0bf9c7..4fdcb7dfc 100644 --- a/libs/pavex_session_redis/Cargo.toml +++ b/libs/pavex_session_redis/Cargo.toml @@ -9,8 +9,8 @@ version.workspace = true [dependencies] anyhow = { workspace = true } async-trait = { workspace = true } -pavex = { version = "0.2.4", path = "../pavex" } -pavex_session = { version = "0.2.4", path = "../pavex_session" } +pavex = { version = "0.2.5", path = "../pavex" } +pavex_session = { version = "0.2.5", path = "../pavex_session" } redis = { workspace = true } tokio = { workspace = true } tracing = { workspace = true } diff --git a/libs/pavex_session_sqlx/Cargo.toml b/libs/pavex_session_sqlx/Cargo.toml index 66e25ad1b..5c198e94e 100644 --- a/libs/pavex_session_sqlx/Cargo.toml +++ b/libs/pavex_session_sqlx/Cargo.toml @@ -22,8 +22,8 @@ unexpected_cfgs = { level = "allow", check-cfg = ['cfg(pavex_ide_hint)'] } [dependencies] jiff-sqlx = { workspace = true } -pavex_session = { version = "0.2.4", path = "../pavex_session" } -pavex = { version = "0.2.4", path = "../pavex" } +pavex_session = { version = "0.2.5", path = "../pavex_session" } +pavex = { version = "0.2.5", path = "../pavex" } serde_json = { workspace = true } async-trait = { workspace = true } tokio = { workspace = true, features = ["sync"] } diff --git a/libs/pavex_test_runner/Cargo.toml b/libs/pavex_test_runner/Cargo.toml index a4101010a..66794862c 100644 --- a/libs/pavex_test_runner/Cargo.toml +++ b/libs/pavex_test_runner/Cargo.toml @@ -27,7 +27,7 @@ walkdir = { workspace = true } serde_json = { workspace = true } itertools = { workspace = true } sha2 = { workspace = true } -persist_if_changed = { path = "../persist_if_changed", version = "0.2.4" } +persist_if_changed = { path = "../persist_if_changed", version = "0.2.5" } object-pool = { workspace = true } num_cpus = { workspace = true } globwalk = { workspace = true } diff --git a/libs/pavex_tracing/Cargo.toml b/libs/pavex_tracing/Cargo.toml index 1a95421d7..2e8a27de9 100644 --- a/libs/pavex_tracing/Cargo.toml +++ b/libs/pavex_tracing/Cargo.toml @@ -12,4 +12,4 @@ readme = "README.md" [dependencies] tracing = { workspace = true, features = ["std"] } tracing_log_error = { workspace = true } -pavex = { version = "0.2.4", path = "../pavex" } +pavex = { version = "0.2.5", path = "../pavex" } diff --git a/libs/pavexc/Cargo.toml b/libs/pavexc/Cargo.toml index 26db4fdfa..920b23848 100644 --- a/libs/pavexc/Cargo.toml +++ b/libs/pavexc/Cargo.toml @@ -22,12 +22,12 @@ anyhow = { workspace = true } debug_assertions = [] [dependencies] -pavex = { path = "../pavex", version = "0.2.4" } -pavexc_attr_parser = { path = "../pavexc_attr_parser", version = "=0.2.4" } -pavex_bp_schema = { path = "../pavex_bp_schema", version = "=0.2.4" } -pavex_reflection = { path = "../pavex_reflection", version = "=0.2.4" } -pavex_cli_shell = { path = "../pavex_cli_shell", version = "=0.2.4" } -pavex_cli_diagnostic = { path = "../pavex_cli_diagnostic", version = "=0.2.4" } +pavex = { path = "../pavex", version = "0.2.5" } +pavexc_attr_parser = { path = "../pavexc_attr_parser", version = "=0.2.5" } +pavex_bp_schema = { path = "../pavex_bp_schema", version = "=0.2.5" } +pavex_reflection = { path = "../pavex_reflection", version = "=0.2.5" } +pavex_cli_shell = { path = "../pavex_cli_shell", version = "=0.2.5" } +pavex_cli_diagnostic = { path = "../pavex_cli_diagnostic", version = "=0.2.5" } rustdoc-types = { workspace = true } cargo-like-utils = { workspace = true } tracing_log_error = { workspace = true } @@ -60,7 +60,7 @@ once_cell = { workspace = true } toml = { workspace = true } toml_edit = { workspace = true, features = ["serde"] } semver = { workspace = true } -persist_if_changed = { path = "../persist_if_changed", version = "0.2.4" } +persist_if_changed = { path = "../persist_if_changed", version = "0.2.5" } matchit = { workspace = true } relative-path = { workspace = true } camino = { workspace = true } diff --git a/libs/pavexc_attr_parser/Cargo.toml b/libs/pavexc_attr_parser/Cargo.toml index 0e37735c4..9ea37bfa6 100644 --- a/libs/pavexc_attr_parser/Cargo.toml +++ b/libs/pavexc_attr_parser/Cargo.toml @@ -9,7 +9,7 @@ version.workspace = true keywords = ["pavex"] [dependencies] -pavex_bp_schema = { path = "../pavex_bp_schema", version = "=0.2.4" } +pavex_bp_schema = { path = "../pavex_bp_schema", version = "=0.2.5" } serde = { workspace = true } syn = { workspace = true, features = ["full"] } proc-macro2 = { workspace = true } diff --git a/libs/pavexc_cli/Cargo.toml b/libs/pavexc_cli/Cargo.toml index a22b88d6c..a2f1776dd 100644 --- a/libs/pavexc_cli/Cargo.toml +++ b/libs/pavexc_cli/Cargo.toml @@ -14,15 +14,15 @@ path = "src/main.rs" [dependencies] clap = { workspace = true, features = ["derive", "env"] } -pavexc = { path = "../pavexc", version = "0.2.4" } -pavex_bp_schema = { path = "../pavex_bp_schema", version = "0.2.4" } -pavexc_cli_client = { path = "../pavexc_cli_client", version = "0.2.4" } -pavex_cli_deps = { path = "../pavex_cli_deps", version = "0.2.4" } -pavex_cli_shell = { path = "../pavex_cli_shell", version = "0.2.4" } -pavex_cli_diagnostic = { path = "../pavex_cli_diagnostic", version = "0.2.4" } +pavexc = { path = "../pavexc", version = "0.2.5" } +pavex_bp_schema = { path = "../pavex_bp_schema", version = "0.2.5" } +pavexc_cli_client = { path = "../pavexc_cli_client", version = "0.2.5" } +pavex_cli_deps = { path = "../pavex_cli_deps", version = "0.2.5" } +pavex_cli_shell = { path = "../pavex_cli_shell", version = "0.2.5" } +pavex_cli_diagnostic = { path = "../pavex_cli_diagnostic", version = "0.2.5" } tracing_log_error = { workspace = true } cargo-like-utils = { workspace = true } -pavex_miette = { path = "../pavex_miette", version = "0.2.4" } +pavex_miette = { path = "../pavex_miette", version = "0.2.5" } liquid-core = { workspace = true } miette = { workspace = true } fs-err = { workspace = true } @@ -38,7 +38,7 @@ supports-color = { workspace = true } include_dir = { workspace = true } path-absolutize = { workspace = true } ron = { workspace = true } -generate_from_path = { path = "../generate_from_path", version = "0.2.4" } +generate_from_path = { path = "../generate_from_path", version = "0.2.5" } tempfile = { workspace = true } better-panic = { workspace = true } serde = { workspace = true, features = ["derive"] } diff --git a/libs/pavexc_cli_client/Cargo.toml b/libs/pavexc_cli_client/Cargo.toml index 021afc28a..94447e122 100644 --- a/libs/pavexc_cli_client/Cargo.toml +++ b/libs/pavexc_cli_client/Cargo.toml @@ -9,5 +9,5 @@ license.workspace = true [dependencies] anyhow = { workspace = true } -pavex = { path = "../pavex", version = "0.2.4" } +pavex = { path = "../pavex", version = "0.2.5" } thiserror = { workspace = true }