Bug
Which library version?
6.0.0-alpha.18
What is the use case or problem?
When the source for GroupByUntil calls OnCompleted, if there are any unexpired groups still active the GroupByUntil operator ends up calling OnCompleted twice, which violates the Rx observer grammar.
This happens because there are two different code paths that call OnCompletedAsync on a group, but only one of them records the fact that has already completed the group, enabling the double call.
What is the expected outcome?
Each group should call OnCompleted exactly once on each observer.
What is the actual outcome?
Some groups call OnCompleted twice on their observers.