V0.9.0 Major refactor, RFC9234
Overview
This release primarily focused on improving code quality and performance, with several essential refactorings made to the codebase, including:
- changing the repository to a monorepo (#77)
- replacing the ipnetwork library with ipnet (#78)
- removing custom
DataBytesstruct from the codebase (#80 and #86) - applying and enforcing
cargo fmt(#89)
In addition to these improvements, several new features were added, including:
- the addition of
only-to-customerattributes to elem (#93) - support for the new RFC9234 for route leak prevention BGP path attribute (#65)
Furthermore, new documentation was added for BGP extended and large communities (#98), and new benchmarks were written to improve cross-platform support (#90). Finally, extensive unit tests were added to enhance the reliability of the library (#97).
Details
New Features
- Support RFC9234 by @digizeph in #65
- Add only-to-customer attributes to elem; add example by @digizeph in #93
- Create cache reader for parser constructor by @digizeph in #99
Refactors
- Change repository to monorepo by @digizeph in #77
- Replace ipnetwork lib with ipnet by @digizeph in #78
- Fix #82 and lazily create header bytes by @jmeggitt in #83
- Make BgpkitParser Generic For Any Reader by @jmeggitt in #81
- Remote custom
DataBytesstruct, allow generic overReadfor parser constructor by @digizeph in #80 and #86 - Apply
cargo fmtchanges by @digizeph in #89 - Rewrite existing benchmarks to improve cross-platform support and cover additional tools by @jmeggitt in #90
- Check MD5 checksum after downloading new test data by @jmeggitt in #91
Tests
Documentation
- Add example to search for AS set messages by @digizeph in #94
- Document display formats for BGP extended and large communities by @digizeph in #98
New Contributor
@jmeggitt made significant code refactor and performance contributions to this release, including:
- Fix #82 and lazily create header bytes in #83
- Make BgpkitParser Generic For Any Reader in #81
- Rewrite existing benchmarks to improve cross-platform support and cover additional tools in #90
- Check MD5 checksum after downloading new test data in #91
Thank you @jmeggitt for your contribution!
Full Changelog: v0.8.1...v0.9.0