Skip to content

fsprojects/FSharp.Control.AsyncSeq

Repository files navigation

FSharp.Control.AsyncSeq NuGet Status

FSharp.Control.AsyncSeq is a collection of asynchronous programming utilities for F#.

See the home page for details. The home page can be edited, forked or cloned Please contribute to this project. Don't ask for permission, just fork the repository and send pull requests.

Contributing

Contributions are warmly welcomed! To get started, fork the repository and create a branch from main. Keep pull requests small and focused on a single concern, and make sure all existing tests pass before submitting (dotnet test). For bug reports, please include a minimal reproduction. For significant new features or breaking changes, consider opening an issue first to discuss the approach with the maintainers. All contributors are expected to follow the F# Software Foundation Code of Conduct.

Version 4.0 — BCL IAsyncEnumerable Compatibility

As of v4.0, AsyncSeq<'T> is a type alias for System.Collections.Generic.IAsyncEnumerable<'T> (the BCL type). This means:

  • AsyncSeq<'T> values are directly usable anywhere IAsyncEnumerable<'T> is expected (e.g. await foreach in C#, IAsyncEnumerable<T> APIs).
  • IAsyncEnumerable<'T> values (from EF Core, ASP.NET Core streaming endpoints, etc.) can be used directly wherever AsyncSeq<'T> is expected — no conversion needed.
  • The AsyncSeq.ofAsyncEnum and AsyncSeq.toAsyncEnum helpers are now no-ops and have been marked [<Obsolete>]. Remove any calls to them.

Migrating from v3.x

If you called .GetEnumerator() / .MoveNext() directly on an AsyncSeq<'T>, update to .GetAsyncEnumerator(ct) / .MoveNextAsync() (the IAsyncEnumerator<'T> BCL contract). All other AsyncSeq module combinators are unchanged.

Maintainer(s)

The default maintainer account for projects under "fsprojects" is @fsprojectsgit - F# Community Project Incubation Space (repo management)

About

Asynchronous sequences for F#

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 40

Languages