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 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MMsgSXoK4Bph2vU6fSBkAH
This commit is contained in:
135 files changed
+1425
-1064
No files matched your search
@@ -99,9 +99,7 @@ def structural_inventory(paths: list[Path]) -> dict:
|
||||
families = [tuple(sorted({family for selector in entry['selectors']
|
||||
for family in VENDOR_SELECTOR.findall(selector)}))
|
||||
for entry in entries]
|
||||
# A browser can reject an entire comma-separated selector list when it
|
||||
# contains another engine's pseudo-element. Keep one body per compatible
|
||||
# family, while still rejecting copies within the same family.
|
||||
# Vendor pseudo-element families legitimately repeat one rule body.
|
||||
vendor_only = (any(families) and all(len(family) <= 1 for family in families)
|
||||
and len(families) == len(set(families)))
|
||||
repeated_bodies.append({'scope': list(scope), 'rules': entries,
|
||||
|
||||
Reference in new issue
Block a user