fix(debounceTime): synchronous reentrancy of debounceTime no longer swallows the second value #3218
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.
Currently the second value is swallowed because
hasValue
is set tofalse
in between the scheduling of the second and its execution.fixes #2748
@kwonoj you had mentioned in #2748 that rxjs doesn't guarantee reentrancy, though I think in this case the fix is simple. Are there reasons to explicitly not do it in this case?
FWIW the regular
debounce
operator already supports reentrancy, so I added a test for it too. This all seems so familiar so perhaps we discussed this years ago and fixed only debounce lol