Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
👋🏼 I stumbled into this bugfix by only partially reading the documentation 😅
I was playing with
Async::LimitedQueue
, but called#pop
on it (which is technically not documented), and it completely hung. Reason being that the@full
notification doesn't fire on#pop
because it's referring to the implementation onAsync::Queue
rather than usingAsync::LimitedQueue#dequeue
, which correctly signals@full
.As a fix, I redefined the aliases in
Async::LimitedQueue
so they pick up the redefinitions. Without the changes, the updated tests will completely hang in the#pop
case.I also noticed the original test for this wasn't actually working because
#contain_exactly
wasn't defined, and so the async block containing the assertions was being completely ignored. I couldn't get the structure of what was there prior to work (even with switching to#have_value
), so I asserted based on the dequeued values instead. No strong opinion on this :)Types of Changes
Contribution