0.46.3 (2026-10-26)
Bug Fixes
- apply the proxy configuration after CrowdSec starts (1c3924f)
- apply the proxy configuration after CrowdSec stops (b400695)
- apply the proxy configuration when CrowdSec starts or stops and use the right security settings row (#1737) (9250fdb)
- choose the saved CrowdSec key first and write the key file safely (#1728) (034d318)
- ci: improve Grype installation script with checksum verification (fb8cd62)
- count .yml CrowdSec hub items and keep refused starts from changing the CrowdSec setting (#1717) (5112458)
- create and update the default security settings under the name the proxy reads (97e7b0e)
- deliver stop signals to Charon in the container entrypoint (#1705) (88ca4ca)
- deliver stop signals to the Charon process in the container entrypoint (cf5c3b4)
- deps: correct Chi module path and version in Caddy build patch (c5973a6)
- deps: correct Chi module path and version in Caddy build patch (3fa2204)
- deps: patch Chi in Caddy build to address CVE-2026-114437 (a591b7e)
- deps: patch Chi in Caddy build to address CVE-2026-114437 (3c4b8ed)
- describe CrowdSec key save and registration failures accurately (2f398bc)
- detect the SQLite conversion temp file regardless of its name (e6209b2)
- exit non-zero when a child dies, stop promptly during startup, and allow a longer stop grace period (6552494)
- explain CrowdSec acquisition file permission errors (f44c00d)
- fetch the CrowdSec hub index from the current official hub address (93634e9)
- fetch the CrowdSec hub index from the current official hub address (#1740) (cbe2c76)
- give Caddy a bounded shutdown grace period so the container stops cleanly (8a001f8)
- give Caddy a bounded shutdown grace period so the container stops cleanly (#1710) (e53ab06)
- give the Playwright container access to the runner's Docker daemon (e69d7ff)
- keep CrowdSec backups after a failed restore and make the acquisition file save safer (#1709) (56d6649)
- keep CrowdSec backups that a failed rollback left for recovery (f1d9421)
- keep hub addresses out of CrowdSec hub errors and API responses (735584f)
- keep the CrowdSec busy refusal out of the whitelist IP field error (f988aba)
- keep the duplicate entry message for whitelist add and limit the inline error to field errors (c6ab8cb)
- keep the owner of the CrowdSec acquisition file, clean up stale temp files and sync the folder after saving (60de670)
- leave CrowdSec out of the proxy config while no bouncer key exists (65b6074)
- limit kept CrowdSec snapshots once they are a week old (e460f85)
- make the CrowdSec key notice describe how the key is chosen (037a192)
- make the CrowdSec status and the proxy agree on an empty mode and tidy the setting reads (24b9222)
- make the CrowdSec tiny-row heap test independent of package-wide heap size (f3ff4ab)
- name the hub address that was actually requested in CrowdSec hub logs (99499e9)
- name the right reason when CrowdSec refuses a change (428890f)
- pass the CrowdSec configuration to the startup bouncer commands (e0ab646)
- pin Alpine multi-arch index digest instead of 386 child manifest (9b15f69)
- raise Testing Library async timeout to stop slow-runner flakes (6cfcd55)
- read the CrowdSec key environment variables in the same order everywhere (358d824)
- recognise .yml CrowdSec hub items when scanning installed items (67887e5)
- recognise .yml hub data files in the entrypoint and persistence check (b3ac034)
- refresh settings and translate the remaining messages on the Security CrowdSec toggle (15398e4)
- save edited CrowdSec files that are mounted on their own or owned by another user (d4a90f0)
- save the CrowdSec acquisition file whenever its owner cannot be kept, and cover the retention edge cases (451919f)
- say that an unmarked CrowdSec snapshot becomes eligible for cleanup, and test the cap edge cases (45ce235)
- security: harden verification of downloaded hub content (168043d)
- security: harden verification of downloaded hub content (#1704) (6c16090)
- security: keep CrowdSec protection consistent after recovery actions (b63825b)
- security: keep security settings consistent when CrowdSec is toggled (595783c)
- show the add-failed fallback for non-validation whitelist add errors (5b11acc)
- show the CrowdSec busy message everywhere an install can refuse an action (#1714) (7839209)
- show the CrowdSec busy message for whitelist, console enrolment and hub item restore (06b5aeb)
- show the CrowdSec busy message on the standalone import page (ea31703)
- show the hub-updating message when a preset download is refused (0862bee)
- skip the proxy reload when a new CrowdSec key could not be saved (1f9cfee)
- stop a CrowdSec preset install from starting in the middle of another change (4dc6751)
- stop CrowdSec persistence test aborting silently on a closed pipe (b3483e4)
- stop the CrowdSec integration script failing on a long preset list (9c07220)
- stop the Security page flipping the CrowdSec setting before a refused start or stop (0ffbc82)
- tidy CrowdSec backup retention, acquisition errors, whitelist writing and the busy guard (#1744) (a950b3f)
- tidy hub download check logs, tests and docs (07e5421)
- translate the security setting toasts (16759cc)
- try the next CrowdSec hub address when one cannot be reached (3f34f5a)
- update react-i18next to version 17.1.9 (f0b68c2)
- update the CrowdSec hub integration test for the current hub and API (26eadc5)
- use a single-connection test DB to stop backup job flake (b0e3e49)
- use a single-connection test DB to stop backup job flake (9b79041)
- use the in-place acquisition write only when the owner must be kept (9faabdf)
- use the removal fallback message for non-busy whitelist remove failures (d174ae3)
- use the saved CrowdSec key first everywhere the key is checked (6016c8a)
- write the CrowdSec bouncer key file safely (413252a)
- write the CrowdSec whitelist file safely and keep it in step with the list (7cec118)