Skip to content

feat: add bgpkit-parser v0.19 extended filters, remove unused deps - #148

Merged
digizeph merged 1 commit into
mainfrom
feat/v019-filters-and-deps-cleanup
Jul 28, 2026
Merged

feat: add bgpkit-parser v0.19 extended filters, remove unused deps#148
digizeph merged 1 commit into
mainfrom
feat/v019-filters-and-deps-cleanup

Conversation

@digizeph

Copy link
Copy Markdown
Member

Summary

  • Added nine bgpkit-parser v0.19 extended element filters to monocle search, monocle parse, and the SSE search API: --otc, --next-hop, --origin, --local-pref, --med, --atomic-aggregate, --aggr-asn, --aggr-ip, --peer-bgp-id. Optional-attribute filters support * (present) and !* (absent) presence wildcards.
  • Removed unused radar-rs dependency (Cloudflare Radar API support was removed during the lens refactor but the Cargo.toml entry survived).
  • Fixed bgpkit-parser dev-dependency version conflict: [dev-dependencies] pinned v0.18.0 while the main dependency uses v0.19.0, causing E0464: multiple candidates for rlib on cargo test --all-features.

Changes

File Change
Cargo.toml Remove radar-rs, remove dev-dep bgpkit-parser = "0.18.0"
src/lens/parse/mod.rs Add 9 new ParseFilters fields + validate_extended_filters() + 3 unit tests
src/server/search.rs Add new fields to SearchStreamFilters SSE DTO
src/lens/search/mod.rs Update test structs to ..Default::default()
src/lens/mod.rs Fix stale doc comment (radar-rs → ipnet, bgpkit-commons)
CHANGELOG.md Document all changes

Test plan

  • cargo build — clean
  • cargo clippy --all-features -- -D warnings — clean
  • cargo fmt --check — clean
  • cargo test --lib — 296 passed, 0 failed
  • cargo test --lib (filter tests) — 5/5 passed, including 3 new tests for extended filter validation and parser wiring
  • All 9 new CLI flags present in both monocle search --help and monocle parse --help
  • radar-rs absent from cargo tree
  • Single bgpkit-parser entry in Cargo.lock

Add nine extended element filters from bgpkit-parser v0.19 to
ParseFilters, monocle search, monocle parse, and the SSE search
API: --otc, --next-hop, --origin, --local-pref, --med,
--atomic-aggregate, --aggr-asn, --aggr-ip, --peer-bgp-id.
Optional-attribute filters support * (present) and !* (absent)
presence wildcards.

Remove unused radar-rs dependency (Cloudflare Radar API support
was removed during the lens refactor but the Cargo.toml entry
survived). Fix bgpkit-parser dev-dependency version conflict
([dev-dependencies] pinned v0.18.0 while main dep uses v0.19.0).
@digizeph
digizeph merged commit ecea8a0 into main Jul 28, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant