Skip to content

Feature Request: Re-export core and crypto crates behind unstable feature flag #2894

@BiagioFesta

Description

@BiagioFesta

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 :)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions