Repository navigation
Blockinator Web v1.19.2
Highlights
- Polished management interface with scalable artwork, responsive layouts, and light/dark theme improvements.
- Expanded the Settings timezone selector to all available IANA time zones.
- Improved policy consistency, authentication security, admin responsiveness, and operational diagnostics.
Fixes and improvements
- Serialize policy rebuilds and use consistent database snapshots while keeping policy reads lock-free.
- Make list creation/replacement atomic and invalidate refresh caches when source settings or content change.
- Correct mixed DNS requests so non-ignored questions still receive policy evaluation.
- Preserve secure session-cookie settings, add bounded login rate limiting, and keep newly generated API keys out of redirect URLs.
- Reject insecure bootstrap credentials on fresh installations and strengthen request/upload validation.
- Validate blocklist download destinations at connection time, including redirects; private sources require the BLOCKLIST_PRIVATE_HOSTS allowlist.
- Move blocking admin work into a bounded worker pool, cache/coalesce statistics queries, and refresh query-log rows without full-page rendering.
- Improve logging failure handling, shutdown draining, statistics refresh reliability, and refresher error reporting.
- Add readiness checks and authenticated runtime diagnostics.
Upgrade notes
- Fresh installations must supply non-example bootstrap credentials. Existing database credentials retain precedence.
- Private/local blocklist sources must be explicitly allowlisted.
- The experimental automatic-update feature was reverted and is not included in this release.
Validation
- 155 local tests passed; 7 environment-dependent tests skipped.
- Python compilation, JavaScript syntax, and whitespace checks passed.
- GitHub CI passed for the release commit.
Release snapshot: f0586e7eb14a0f25b2b268d536cb9b4d8bbd0c3d
Branch: release/v1.19.2