v0.29.4
This commit is contained in:
1 parent
f87eec7287
commit
dd8c195600
38 files changed
+5491
-4682
No files matched your search
+56
-3
@@ -1,4 +1,50 @@
|
||||
# Verification report - RustProxy 0.29.3
|
||||
# Verification report - RustProxy 0.29.4
|
||||
|
||||
## 0.29.4 PHP-FPM profile toolbar shortcut (2026-10-09)
|
||||
|
||||
The Web Server list toolbar now contains a **PHP-FPM profiles** button
|
||||
immediately before **New Web Service**. Both this shortcut and the PHP tab's
|
||||
existing profile button open the same shared profile-management dialog;
|
||||
no API or configuration schema changes were required. English/Polish button
|
||||
translations and a UI regression covering placement, both entry paths and
|
||||
closing the dialog were added.
|
||||
|
||||
`node --check` on the changed Web Server script and its profile helper,
|
||||
`node tools/checks/web_service_ui_test.mjs`, and the focused version,
|
||||
language, Web Server architecture and documentation checks passed.
|
||||
`./dev.sh test` was attempted but exceeded the execution time limit during
|
||||
the Rust-independent verification phase, so it did not complete in this run.
|
||||
Rust compilation and runtime tests remain unverified without Cargo.
|
||||
|
||||
## 0.29.4 version bump (2026-10-09)
|
||||
|
||||
The PHP-FPM profiles, Web Server cache/transforms and `HTTP_HOST` fixes have
|
||||
been assigned to a new 0.29.4 release. The source version, root Cargo.lock
|
||||
package entry, OpenAPI metadata, release checks and documentation match 0.29.4.
|
||||
The 0.29.3 internal-fallback changes remain included. This is a source release;
|
||||
no compiled artifacts are included.
|
||||
|
||||
Release verification: `python3 tools/checks/version_contracts.py`,
|
||||
`python3 tools/checks/check_source.py`, `python3 tools/checks/docs_check.py`,
|
||||
`python3 tools/checks/release_smoke.py` and the Node Web Service profile
|
||||
UI regression checks passed. `./dev.sh test` completed its Rust-independent
|
||||
source, migration/upgrade, security, browser and documentation checks, then
|
||||
exited 127 because Rust/Cargo is not installed. Compilation, Rust unit tests
|
||||
and live HTTP/FastCGI/cache/transform verification remain unperformed.
|
||||
|
||||
## 0.29.4 feature verification (2026-10-09)
|
||||
|
||||
The operator-requested follow-up adds reusable PHP-FPM profiles, fixes the
|
||||
Web Server cache/transform bypass and supplies `HTTP_HOST` for authority-only
|
||||
HTTP/2 and HTTP/3 FastCGI requests. Changes include Config serialization,
|
||||
revisioned administration section and OpenAPI, Web Server browser modal,
|
||||
route cache/transform pipeline and FastCGI parameter encoding. New Rust unit
|
||||
tests cover profile resolution, detach, validation and HTTP_HOST; the Node UI
|
||||
test exercises opening/editing a profile and attaching it to a service.
|
||||
|
||||
Rust compilation, proxy/PHP-FPM integration tests and performance acceptance
|
||||
remain unverified without Rust/Cargo. Static contracts and browser tests are
|
||||
run separately and do not substitute for production acceptance.
|
||||
|
||||
## Changes
|
||||
|
||||
@@ -48,6 +94,13 @@ This source package is not certified for production deployment.
|
||||
|
||||
Installer/update now installs /etc/logrotate.d/rustproxy using the recorded service user/group. Updates repair /etc/profile.d/rustproxy-path.sh rather than warning. logrotate uses copytruncate because RustProxy holds open log descriptors; some log records may be lost during truncate. Rust build and live Debian/systemd acceptance remain unverified in this environment.
|
||||
|
||||
## Version identity (0.29.3 source release)
|
||||
## Version identity (0.29.4 source release)
|
||||
|
||||
`Cargo.toml` package version is the canonical release identity (now 0.29.3). Rust uses `CARGO_PKG_VERSION` at build time; `build.rs` substitutes the admin HTML placeholder. Packaging, upgrade and dev scripts read the manifest with `scripts/version.py`. Run `python3 tools/checks/version_contracts.py` to check that executable paths do not hardcode a version. Historical documentation and external dashboards may retain manually managed versions. Rust compilation/runtime verification is still pending.
|
||||
`Cargo.toml` package version is the canonical release identity (now 0.29.4). Rust uses `CARGO_PKG_VERSION` at build time; `build.rs` substitutes the admin HTML placeholder. Packaging, upgrade and dev scripts read the manifest with `scripts/version.py`. Run `python3 tools/checks/version_contracts.py` to check that executable paths do not hardcode a version. Historical documentation and external dashboards may retain manually managed versions. Rust compilation/runtime verification is still pending.
|
||||
|
||||
## Shared PHP-FPM profiles and Web Server cache/transform/Host patch (0.29.4)
|
||||
|
||||
- Added a revisioned `php_fpm_profiles` collection with per-Web-Service `php_profile_id`, preserving the local PHP configuration when a shared profile is attached/detached. Added profile editor modal, schema, Polish/English messages and browser regression test.
|
||||
- Web Server vhost/location responses now pass the configured RustProxy cache, vhost response rules and transforms. Cache skips ineligible/private/`Set-Cookie` responses and handles cache hits, conditional requests and range requests. Filesystem/PHP requests are refreshed synchronously rather than using the reverse-proxy background revalidator.
|
||||
- FastCGI always supplies `HTTP_HOST` when HTTP/2 or HTTP/3 omitted the ordinary `Host` header; existing explicit Host with port is retained. Added Rust regression tests for both paths.
|
||||
- `bash ./dev.sh test`: all Rust-independent release, source, security, browser UI, documentation, migration and dependency checks passed; stopped at absent Rust/Cargo (exit 127). `bash ./dev.sh check` also stopped at absent Cargo (exit 127). Rust compilation, new Rust tests and live PHP-FPM/HTTP2/HTTP3 cache/transform verification remain unverified in this environment.
|
||||
Reference in new issue
Block a user