This is the 0.3.0 release of Quilkin.
This release contains several breaking changes, including Rust API changes, individual Filter updates, and the filter
naming convention has been updated. This release also includes additional requirements for creating Filters to
support auto-generation of filter documentation.
There are also several new Filters:
Match
,Drop
andPass
to provide a mechanism to change behaviour based on dynamic metadata,Firewall
to allow or block traffic depending on if the incoming traffic's IP and port matches the rules set on
the Firewall filter.
As well as enhancements to many of the existing Filters and accompanying documentation.
Check the documentation for details on features, installation and usage.
Security fixes:
- Upgrade Tokio for RUSTSEC-2021-0124 #439 (markmandel)
Breaking changes:
- Remove
extensions
from filter identifiers #484 (XAMPPRocky) - Add auto-generation of JSON schema. #478 (XAMPPRocky)
- Add regex capture and rename capture_bytes to capture #458 (XAMPPRocky)
- Add matches filter #447 (XAMPPRocky)
- Add
metadata::Value
#436 (XAMPPRocky) - Add a ttl map and support ratelimiting per IP address #406 (iffyio)
Implemented enhancements:
- Upgrade to Tokio 1.16.0 #475
- Changing dynamic metadata from
Any
. #433 - Provide stack traces for runtime errors. #418
- Accept Docker service hostnames in addition to IP addresses in configuration. #415
- Limit LocalRateLimit per IP #405
- Add support for version based packet processing #401
- Add abstraction for filter state lookup #375
- CI: link checking on documentation #367
- Allowlist filter #343
- Metric: Total Packet Processing time #292
- Add an ID field to filters #174
- Blocklist Filter #158
- Implement a control plane #131
- Filter Idea: Rate limiting #5
- Benchmark comparing read and write throughput #479 (markmandel)
- Update Rust to 1.58.1 #473 (XAMPPRocky)
- Add Pass & Drop filters, Refactor
Match
config #472 (XAMPPRocky) - CI: Documentation test gen, links, images, etc. #449 (markmandel)
- Metric: Total Packet processing time #441 (markmandel)
- xds-server updates #437 (iffyio)
- Add "Rust Doc" link to each Filter #434 (markmandel)
- Documentation for Firewall filter #432 (markmandel)
- Code: Firewall filter #416 (markmandel)
- Support clear bot history on new build #390 (devharis)
- replace slog with tracing in Filter #385 (rezvaneh)
- XDS Management Server #360 (iffyio)
See CHANGELOG for more details on changes.
Images available with this release: