Abel Braaksma
Abel Braaksma
This turns out to be much harder to support than I thought. But one of the soon-to-be-made changes is going to be a move to static methods, so we can...
That likely wouldn't help. It is a `struct` for a reason. While it keeps a reference to the `IAsyncEnumerable` internally, it makes the overhead of making your enumerable cancelable really...
I could've sworn I answered this a while ago, while I was still out sailing. Anyway, I am back now and I will pick this up again after some housekeeping...
Note that your example is currently not using a cancellation check. While we are working on better support for cancellation tokens (see, for instance, #78, #133 and #184 for some...
> approach with `ConfiguredCancelableAsyncEnumerable` This is in the pipeline, see #167. > Or maybe merge with IcedTasks, as I have seen suggested elsewhere. Merge, no, these libraries support _very_ different...
Isn't `Async.head` the same as `Async.first`, which already exists? Well, `firstOrDefault` exists, which is close enough, no? https://fsprojects.github.io/FSharp.Control.AsyncSeq/reference/fsharp-control-asyncseq.html#firstOrDefault Though there's no `tail`. There should probably be a `tail` and `tryTail`...
FWIW, `TaskSeq`, which uses a resumable state machine and `task` from F# 6 under the hood, and implements `IAsyncEnumerable` similar to `async foreach` in C#, has those functions: https://github.com/fsprojects/FSharp.Control.TaskSeq
Yes, before I wrote this extension, I wasn't aware of the issues with `Async.AwaitTask`. This can clearly be improved. I'll probably need a test that showcases how this goes off...
Thanks for all the input, some work is cut out for me :). > But I think I am saying I'm voting for *.ignore and Async.toTask to go in a...
Just FYI: the `StartAsTask` and `StartImmediateAsTask` points that you brought up here escaped my attention somehow. They're now separately under the umbrella of #135. This thread can then solely focus...