Skip to content

DeferredSignerSender must be in a stable crate #3370

@jdisanti

Description

@jdisanti

Currently, DeferredSignerSender is in aws-smithy-eventstream, which is an unstable crate. This type gets added to the ConfigBag, so it must be in a stable crate to avoid potential semver compatibility issues. For example, if we release a new minor version of aws-smithy-eventstream and refer to it in a patch version of aws-runtime, and the generated code in the last SDK release placed it into or pulled it out of a config bag, then event streams would break for these previous SDK versions. This is just generally a subtle hazard that can cause severe issues, as it did for the endpoint prefix (fixed in #3318).

One solution to this would be to make the aws-smithy-eventstream crate a stable crate, which will require some trickery to get working without breaking the current unstable version of aws-smithy-eventstream. The unstable aws-smithy-eventstream will need to depend on its stable counterpart and re-export the DeferredSignerSender from there.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingevent-streamrefactoringChanges that do not affect our users, mostly focused on maintainability

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions