Skip to content

Conversation

HarshilShah
Copy link
Contributor

This PR undeprecates the inits and erase methods that allow for converting an AsyncSequence into an AsyncStream or AsyncThrowingStream. These methods and inits were depracated in favor of any AsyncSequence<Success, Error>. which can now be used in Swift 6. Dealing with such an async sequence introduces some complications, however. You can't just tack on operators like map or filter anymore like you can with an AsyncStream, and they require opening the underlying existential, which can be regarded as a pretty advanced and finicky area of the language.

As such, it would be useful to have these inits and erase methods to be made available again, just from the perspective of ease of use.

Copy link
Member

@stephencelis stephencelis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Given the ergonomics and fact that eraseToAnyPublisher still exists in Combine, we have to agree. Thanks for bringing this up and PRing!

@stephencelis stephencelis merged commit 829579f into pointfreeco:main Jul 28, 2025
6 checks passed
@HarshilShah HarshilShah deleted the asyncstream-inits branch July 29, 2025 11:54
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.

2 participants