RxJs v7.0.0-beta.9 Release Notes

Release Date: 2020-12-07 // over 3 years ago
  • ๐Ÿ› Bug Fixes

    • audit: don't signal on complete (54cb428)
    • bufferToggle: don't signal on complete (65686ff)
    • bufferWhen: don't signal on complete (a2ba364)
    • debounce: don't signal on complete (c919c68)
    • delayWhen: no longer emits if duration selector is empty (#5769) (0872341), closes #3665
    • forkJoin: ensure readonly array argument forkJoin([a$, b$, c$] as const) result is correct (6baec53)
    • iif: No longer allow accidental undefined arguments (#5829) (23b98b4)
    • sample: don't signal on complete (95e0b70)
    • Symbol.observable: properly defined as a unique symbol. (#5874) (374138e), closes #5861 #4415
    • throttle: don't signal on complete (4af0227)
    • windowToggle: don't signal on complete (9cb56c4), closes #5838
    • โœ… use empty object type in combineLatest/forkJoin sigs (#5832) (22aaaa2)
    • โœ… withLatestFrom: allow synchronous source (#5828) (adbe65e)

    ๐Ÿ”‹ Features

    ๐Ÿ’ฅ BREAKING CHANGES

    • windowToggle: the observable returned by the windowToggle operator's closing selector must emit a next notification to close the window. Complete notifications no longer close the window.
    • bufferToggle: the observable returned by the bufferToggle operator's closing selector must emit a next notification to close the buffer. Complete notifications no longer close the buffer.
    • bufferWhen: the observable returned by the bufferWhen operator's closing selector must emit a next notification to close the buffer. Complete notifications no longer close the buffer.
    • debounce: the observable returned by the debounce operator's duration selector must emit a next notification to end the duration. Complete notifications no longer end the duration.
    • throttle: the observable returned by the throttle operator's duration selector must emit a next notification to end the duration. Complete notifications no longer end the duration.
    • sample: the sample operator's notifier observable must emit a next notification to effect a sample. Complete notifications no longer effect a sample.
    • audit: the observable returned by the audit operator's duration selector must emit a next notification to end the duration. Complete notifications no longer end the duration.
    • Symbol.observable: rxjs@7 is only compatible with @types/[email protected] or higher and [email protected] and heigher. Older versions of @types/node incorrectly defined Symbol.observable and will be in conflict with rxjs and [email protected].
    • delayWhen: delayWhen will no longer emit if the duration selector simply completes without a value. Notifiers must notify with a value, not a completion.
    • iif: iif will no longer allow result arguments that are undefined. This was a bad call pattern that was likely an error in most cases. If for some reason you are relying on this behavior, simply substitute EMPTY in place of the undefined argument. This ensures that the behavior was intentional and desired, rather than the result of an accidental undefined argument.