Changelog
Security
- 88e4378: security: replace gorilla/csrf with net/http.CrossOriginProtection (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
Features
- 82e181f: feat(ci): wire CODECOV_TOKEN and add coverage badge to README (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- cf50bb9: feat(docs): custom design — GitHub-dark palette, IBM Plex Sans, cyan accent (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 79ce73a: feat: add JSON Schema validation for TOML config files (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 9a0760d: feat: add easywall logo — flame silhouette with brick wall pattern (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- fbc40d6: feat: roll out logo to all surfaces (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 1b9a913: feat: v2.0.0 complete rewrite in Go with nftables backend (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
Bug Fixes
- 04445da: fix(ci): add id-token: write permission for Codecov OIDC auth (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- d4a0d4c: fix(ci): build golangci-lint from source to support go1.25 (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 95de072: fix(ci): move .deb to dist/ before upload — relative paths not allowed (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 323d200: fix(ci): skip Debian build dep check and tests in CI (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- cfbfcd5: fix(ci): upgrade Go to 1.25 in all workflows (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 036e76a: fix(ci): use actions/deploy-pages for GitHub Pages (workflow build type) (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- f2ba15d: fix(ci): use golangci-lint v1 config format (remove version: 2 key) (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 6fd1e9c: fix(core): guard nftables nil-conn, fix docker CIDR masking, recover apply panics (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 4d32a2b: fix(docs): correct header visibility in light and dark mode (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 4457767: fix(docs): respect system dark mode preference in MkDocs Material (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 13bf786: fix(lint): gofmt formatting and remove unused currentUser method (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 94ec62c: fix(lint): resolve all golangci-lint errors (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 8e7b306: fix(release): add QEMU and Buildx for arm64 Docker cross-build (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- c85e2b5: fix(release): add source files to GoReleaser docker extra_files (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- fe41d40: fix(release): correct dockers_v2 schema fields (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 903551b: fix(release): remove stale MkDocs deploy job (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 522dced: fix: add missing cmd/ source dirs to git, fix lint and formatting (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
Other
- 7260aee: chore(release): v2.0.0 (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 303f357: chore: fix FUNDING.yml with correct ko-fi and add GitHub Sponsors/PayPal (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- c3f397b: chore: migrate GoReleaser docker config to dockers_v2 (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 1de4ba9: chore: rename GitHub username jpylypiw → jp1337 across entire codebase (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 618a673: chore: update web templates and documentation (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 4c1b136: ci: add integration test job, build workflow, update Go to 1.25 (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- cebea9e: refactor: make internal functions overridable for test isolation (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 195ba62: test(core): add comprehensive unit and integration test suite (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- ebe73ec: test(shared): extend version check tests (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 3e0ab1e: test(web): add comprehensive handler and server test suite (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 484b717: test: cover SaveRules marshal error and CSRF deny handler (jpylypiw 12394156+jpylypiw@users.noreply.github.com)
- 6412de5: test: cover Server.Start/Stop lifecycle and NewDaemon integration (jpylypiw 12394156+jpylypiw@users.noreply.github.com)