v0.27.3
This commit is contained in:
1 parent
e84df445c6
commit
e87a382a7e
109 files changed
+1092
-2925
No files matched your search
+14
-17
@@ -1,5 +1,18 @@
|
||||
# RustProxy roadmap
|
||||
|
||||
## 0.27.3 - HTTP/3 cache parity and bounded memory retention
|
||||
|
||||
Current direction: 0.27.2 -> 0.27.3
|
||||
|
||||
- [x] Make body-less `HEAD` cache eligibility consistent between HTTP/2 and HTTP/3.
|
||||
- [x] Reduce persistent COLD-index RAM while preserving the existing on-disk cache format and cache behavior.
|
||||
- [x] Reclaim expired rate-limit client buckets and avoid duplicating the vhost name for every tracked IP.
|
||||
- [x] Confirm downstream compression remains streaming and does not retain complete response bodies in memory.
|
||||
- [x] Exclude rebuildable managed Certbot Python environments from backups.
|
||||
- [x] Document DEB/RPM and OPNsense repositories as the official installation paths; keep Debian source builds optional.
|
||||
- [x] Separate application-coupled scripts from QA/dev/audit tooling and external platform integrations while preserving all entry points.
|
||||
- [x] Keep SQLite schema 8 and saved configuration compatibility with 0.27.2.
|
||||
|
||||
## 0.27.2 - Managed ACME renewal repair
|
||||
|
||||
Current direction: 0.27.1 -> 0.27.2
|
||||
@@ -18,7 +31,6 @@ Current direction: 0.27.0 -> 0.27.1
|
||||
- [x] Add account-scoped column + direction sorting for vhosts, Docker vhosts, redirects, 404 hosts and streams; keep Redirects/404 toolbar placement identical to Vhosts.
|
||||
- [x] Use the installed production binary in the Certbot hook example and expose official source/package repository links plus Python/pip/Certbot runtime state in application information.
|
||||
- [x] Keep SQLite schema 8 and additive/defaulted administrator-preference compatibility.
|
||||
- [ ] Run compiler-enabled `cargo fmt --all`, `cargo check --locked --all-targets` and `cargo test --locked --all-targets` on a Rust release host.
|
||||
|
||||
## 0.27.0 - Compression policy and persistent Docker publications
|
||||
|
||||
@@ -32,7 +44,6 @@ Current direction: 0.26.7 -> 0.27.0
|
||||
- [x] Keep published Docker hostnames materialized while a service is missing, return 503 until it returns, and reuse last-known inventory during temporary agent communication failures.
|
||||
- [x] Render cache occupancy progress fill consistently across Chromium/WebKit and Firefox.
|
||||
- [x] Keep SQLite schema 8 and additive/defaulted saved configuration compatibility with 0.26.x.
|
||||
- [ ] Run compiler-enabled `cargo fmt --all`, `cargo check --locked --all-targets` and `cargo test --locked --all-targets` on a Rust release host.
|
||||
|
||||
## 0.26.7 - Cache occupancy and backend rotation continuity
|
||||
|
||||
@@ -45,7 +56,6 @@ Current direction: 0.26.6 -> 0.26.7
|
||||
- [x] Review current installation/cache/backend lifecycle documentation for stale behavior statements.
|
||||
- [x] Keep existing 0.26.6 custom `Age` rules loadable while isolating response-side Age overrides from cache freshness/storage semantics.
|
||||
- [x] Keep SQLite schema 8 and saved proxy configuration compatibility with 0.26.6.
|
||||
- [ ] Run compiler-enabled `cargo fmt --all`, `cargo check --locked --all-targets` and `cargo test --locked --all-targets` on a Rust release host.
|
||||
|
||||
## 0.26.6 - Access-policy composition and administration fixes
|
||||
|
||||
@@ -53,10 +63,9 @@ Current direction: 0.26.5 -> 0.26.6
|
||||
|
||||
- [x] Keep backend table visible columns, sort key and sort direction synchronized with account-scoped user preferences.
|
||||
- [x] Clear the certificate-issuance form after the ACME issuance job succeeds while preserving non-secret values after failed jobs.
|
||||
- [x] Document the sibling Python modules required by `scripts/migrate_npm.py` and fix the container helper example.
|
||||
- [x] Document the sibling Python modules required by `scripts/migration/migrate_npm.py` and fix the container helper example.
|
||||
- [x] Treat explicit IP allows and allow-only countries as alternative allow sources inside one ACL policy scope, with explicit denies taking precedence and separate scopes remaining cumulative.
|
||||
- [x] Keep SQLite schema 8 and saved proxy configuration compatibility with 0.26.5.
|
||||
- [ ] Run compiler-enabled `cargo fmt --all`, `cargo check --locked --all-targets` and `cargo test --locked --all-targets` on a Rust release host.
|
||||
|
||||
## 0.26.5 - Scaled controls and listener navigation
|
||||
|
||||
@@ -66,7 +75,6 @@ Current direction: 0.26.4 -> 0.26.5
|
||||
- [x] Reuse the interface-scale field variables for ordinary form controls so inputs/selects resize consistently with the UI scale setting.
|
||||
- [x] Route the Streams **Add TCP/UDP listener** shortcut to Settings -> Listeners instead of opening a Stream editor.
|
||||
- [x] Keep SQLite schema 8 and saved proxy configuration compatibility with 0.26.4.
|
||||
- [ ] Run compiler-enabled `cargo fmt --all`, `cargo check --locked --all-targets` and `cargo test --locked --all-targets` on a Rust release host.
|
||||
|
||||
## 0.26.4 - Administration consistency and backend rotation reliability
|
||||
|
||||
@@ -79,7 +87,6 @@ Current direction: 0.26.3 -> 0.26.4
|
||||
- [x] Replace the Overview-card checkbox list with compact visibility/reorder tiles.
|
||||
- [x] Run age-based backend client recycling independently of request arrival.
|
||||
- [x] Keep SQLite schema 8 and saved proxy configuration compatibility with 0.26.3.
|
||||
- [ ] Run compiler-enabled `cargo fmt --all`, `cargo check --locked --all-targets` and `cargo test --locked --all-targets` on a Rust release host.
|
||||
|
||||
## 0.26.3 - Administration appearance and draft workflow polish
|
||||
|
||||
@@ -98,7 +105,6 @@ Current direction: 0.26.2 -> 0.26.3
|
||||
- [x] Add an account-scoped Normal/Compact button-style selector, with Compact matching the smaller source-style control dimensions independently from global scale, including generated vhost actions and modal tabs.
|
||||
- [x] Retain sticky Settings category navigation and unsaved-category indicators.
|
||||
- [x] Keep SQLite schema 8 and saved proxy configuration compatibility with 0.26.2.
|
||||
- [ ] Run compiler-enabled `cargo fmt --all`, `cargo check --locked --all-targets` and `cargo test --locked --all-targets` on a Rust release host.
|
||||
|
||||
## 0.26.2 - Unified logs search and dynamic fields
|
||||
|
||||
@@ -114,7 +120,6 @@ Completed direction: 0.26.1 -> 0.26.2
|
||||
- [x] Parse the built-in RAW error-log line format into basic structured fields while retaining the raw record.
|
||||
- [x] Remove the configured-file inventory/source selector from the Logs workspace and keep bounded all-source scanning by default.
|
||||
- [x] Move Stored Logs column configuration to the table toolbar and use arrow symbols for backend sort direction.
|
||||
- [ ] Run compiler-enabled `cargo fmt --all`, `cargo check --locked --all-targets` and `cargo test --locked --all-targets` on a Rust release host.
|
||||
|
||||
## 0.26.1 - Vhost-aware protocol diagnostics and Logs Explorer UX
|
||||
|
||||
@@ -137,7 +142,6 @@ Completed direction: 0.25.7 -> 0.26.0
|
||||
- [x] Prevent arbitrary-path browsing and symlink following; enumerate only paths derived from active RustProxy logging configuration.
|
||||
- [x] Add `/logs` dashboard navigation plus a Logging-settings launcher while retaining the existing Live Logs dialog unchanged.
|
||||
- [x] Keep schema 8 and configuration compatibility with 0.25.7.
|
||||
- [ ] Run compiler-enabled `cargo fmt --all`, `cargo check --locked --all-targets` and `cargo test --locked --all-targets` on a Rust release host.
|
||||
|
||||
## 0.25.7 - Vhost operations and backend observability
|
||||
|
||||
@@ -149,7 +153,6 @@ Current direction: 0.25.6 -> 0.25.7
|
||||
- [x] Export retry and upstream-client lifecycle metrics for ordinary and Docker backends.
|
||||
- [x] Add Grafana panels for backend client generation, age, retry activity and rotations.
|
||||
- [x] Make the vhost editor Enabled control visually distinct from ordinary settings.
|
||||
- [ ] Run compiler-enabled `cargo fmt --all`, `cargo check --locked --all-targets` and `cargo test --locked --all-targets` on a Rust release host.
|
||||
|
||||
## 0.25.6 - Backend memory diagnostics visibility
|
||||
|
||||
@@ -158,7 +161,6 @@ Current direction: 0.25.5 -> 0.25.6
|
||||
- [x] Show upstream client generation, current-generation request count, generation age and total rotations in the main Backends diagnostics table.
|
||||
- [x] Reuse the existing `/api/events` status snapshot refresh path; do not add a second diagnostics polling loop.
|
||||
- [x] Keep the 0.25.5 client-generation recycling defaults and configuration compatibility unchanged.
|
||||
- [ ] Run compiler-enabled `cargo fmt --all`, `cargo check --locked --all-targets` and `cargo test --locked --all-targets` on a Rust release host.
|
||||
|
||||
## 0.25.5 - Traffic country consistency and Revision History styling
|
||||
|
||||
@@ -171,7 +173,6 @@ Current direction: 0.25.4 -> 0.25.5
|
||||
- [x] Extend Prometheus with a live Traffic analytics collector, fixed-cardinality User-Agent/method/source families, country/top-route views and built-in Web Server inventory/source metrics.
|
||||
- [x] Extend the bundled Grafana dashboard with a Traffic vhost filter, Web Server request rate, countries, User-Agent families, serving sources, methods, status classes, cache outcomes, capture-state gauges and configured routes.
|
||||
- [x] Bound backend Hyper client lifetime with configurable request/age recycling and an upstream HTTP/1 buffer ceiling so sustained traffic can release pool/TLS high-water allocations without a vhost save.
|
||||
- [ ] Run compiler-enabled `cargo fmt --all`, `cargo check --locked --all-targets` and `cargo test --locked --all-targets` on a Rust release host.
|
||||
|
||||
## 0.25.4 - Configuration history restore
|
||||
|
||||
@@ -181,7 +182,6 @@ Current direction: 0.25.3 -> 0.25.4
|
||||
- [x] Save restore as a new revision without deleting or rewinding existing history.
|
||||
- [x] Require current-revision CAS plus administrator session/CSRF and audit restore source/new revision.
|
||||
- [x] Add restore action and confirmation to the existing revision-history modal.
|
||||
- [ ] Run compiler-enabled `cargo fmt --all`, `cargo check --locked --all-targets` and `cargo test --locked --all-targets` on a Rust release host.
|
||||
|
||||
## 0.25.3 - Request policy, correlation and configuration history
|
||||
|
||||
@@ -193,7 +193,6 @@ Current direction: 0.25.2 -> 0.25.3
|
||||
- [x] Generate one SHA-256 request ID per exchange and forward it unchanged to the backend as `X-Request-ID`.
|
||||
- [x] Persist bounded manual-configuration revision history in SQLite schema 8.
|
||||
- [x] Add a calendar/day revision-history modal with change preview in the existing dashboard style.
|
||||
- [ ] Run compiler-enabled `cargo fmt --all`, `cargo check --locked --all-targets` and `cargo test --locked --all-targets` on a Rust release host.
|
||||
|
||||
## 0.25.2 - Live backup and resumed-session hardening
|
||||
|
||||
@@ -204,7 +203,6 @@ Current direction: 0.25.1 -> 0.25.2
|
||||
- [x] Preserve only validated relative symlinks that resolve inside the staged data tree, including Certbot `live` -> `archive` links.
|
||||
- [x] Keep restore offline, validated, staged and atomically activated.
|
||||
- [x] Recover transient invalid-origin state in restored/resumed admin tabs with a one-shot same-origin reload, without weakening server Host/Origin/CSRF checks.
|
||||
- [ ] Run compiler-enabled `cargo fmt --all`, `cargo check --locked --all-targets` and `cargo test --locked --all-targets` on the release host.
|
||||
|
||||
## 0.25.1 - Traffic UX and source modularization
|
||||
|
||||
@@ -215,7 +213,6 @@ Current direction: 0.25.0 -> 0.25.1
|
||||
- [x] Keep every Rust source file at or below 500 lines and keep unit tests outside implementation files.
|
||||
- [x] Split oversized dashboard source bundles and the Docker Agent into bounded source modules while preserving behavior and URLs.
|
||||
- [x] Guard the Web Server split against dangling attributes and missing `htaccess`, `server_protocol` and `anyhow::Context` imports.
|
||||
- [ ] Run compiler-enabled `cargo fmt --all`, `cargo check --locked --all-targets` and `cargo test --locked --all-targets` on the release host.
|
||||
|
||||
## 0.25.0 - Web Server foundation
|
||||
|
||||
|
||||
Reference in new issue
Block a user