-
Notifications
You must be signed in to change notification settings - Fork 151
Description
I'm using s2n-quic in a project where I also need to implement a small low-level QUIC networking probe.
This requires access to low-level APIs to forge INITIAL QUIC packets, which necessitates adding both s2n-quic-core and s2n-quic-crypto as direct dependencies:
s2n-quic = "1.xx.0"
s2n-quic-core = "0.xx.0"
s2n-quic-crypto = "0.xx.0"Problem
Due to semver compatibility rules, when a new version of s2n-quic is released, Cargo updates the main crate but keeps the old versions of core and crypto. While this hasn't caused actual issues in my use case (as the low-level code is isolated), it creates unnecessary version mismatches in the dependency tree (it's a nit).
Proposed Solution
Consider re-exporting s2n-quic-core as core and s2n-quic-crypto as crypto from the main s2n-quic crate (and others if make sense).
As this would break semver stability these re-export might be behind an "unstable" feature flag (similar to what have been done for datagrams).
Still, this is more like a nit, so feel free to close this issue right away :)