v0.35.1: performance, AGPL licensing and documentation overhaul

- Web Server reads static files inline; proxy middleware chain flattened
- About window with license summary and project links; AGPL-3.0-or-later
- Rewritten documentation: feature list, screenshots, performance guide
- Fix false spikes in per-Vhost request-rate charts
This commit is contained in:
gru committed 2026-11-05 18:29:56 +01:00
1 parent d3b492874b
commit eba9f89283
135 files changed
+1425 -1064

No files matched your search

+7 -7
View File
@@ -112,7 +112,7 @@ impl Pool {
}
fn affinity<'a>(&self, headers: &'a HeaderMap) -> Option<&'a str> {
let mut values = headers
.get_all("cookie")
.get_all(::http::header::COOKIE)
.iter()
.filter_map(|v| v.to_str().ok())
.flat_map(|v| v.split(';'))
@@ -131,7 +131,7 @@ impl Pool {
return;
}
let retained: Vec<_> = headers
.get_all("set-cookie")
.get_all(::http::header::SET_COOKIE)
.iter()
.filter(|value| {
value
@@ -142,9 +142,9 @@ impl Pool {
})
.cloned()
.collect();
headers.remove("set-cookie");
headers.remove(::http::header::SET_COOKIE);
for value in retained {
headers.append("set-cookie", value);
headers.append(::http::header::SET_COOKIE, value);
}
}
pub fn strip_affinity(&self, headers: &mut HeaderMap) {
@@ -152,7 +152,7 @@ impl Pool {
return;
}
let values: Vec<HeaderValue> = headers
.get_all("cookie")
.get_all(::http::header::COOKIE)
.iter()
.filter_map(|value| {
let Ok(text) = value.to_str() else {
@@ -175,9 +175,9 @@ impl Pool {
}
})
.collect();
headers.remove("cookie");
headers.remove(::http::header::COOKIE);
for value in values {
headers.append("cookie", value);
headers.append(::http::header::COOKIE, value);
}
}
pub fn select_member(&self, id: &str) -> Option<Selection> {