NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #351 most downloaded on npm
Reactive Extensions for modern JavaScript
Last release 1 months ago
04 Aug 2026
Ships unpredictably
gaps range from 2 weeks to 1.4 years
Some releases are documented
notes for 17 of the last 60 stable releases
3 versions withdrawn
withdrawn after publishing
11 years old
167 releases · first in 2015
Nothing published for this version
build: CJS sourceMaps now inlined into sourcesContent (39b4af5), closes #2934
One column per quarter.
(Due to a publish snafu, there is no 5.5.0-beta.6) (womp womp 👎)
(Due to a publish snafu, there is no 5.5.0-beta.6) (womp womp 👎)
lift (#2924) (3d9cf87), closes #2921<a name="5.5.0-beta.5"></a>
toPromise: remove lettable version of toPromise (031edca), closes #2868
publish: fix selector typings (#2891) (9ee234d), closes #2889
build: revert to 5.4.x build output for CJS & add configurable support for ESM
build: make CJS references to import X from '../operators' work correctly with SystemJS
package: published from a Linux machine to prevent a strange issue where the Observable directory was not showing up when installed on some Linux envi
<a name="5.5.0-beta.0"></a>
Important! Checkout the explanation of the new [lettable operators features here](doc/lettable-operators.md)
Important! Checkout the explanation of the new lettable operators features here
catch (408a2af)<a name="5.4.3"></a>
<a name="5.4.2"></a>
this from static methods. (9f8e375)<a name="5.4.1"></a>
catch after fromPromise. (#2552) (cf88a20)<a name="5.4.0"></a>
Nothing published for this version
Nothing published for this version
Nothing published for this version
shareReplay: adds shareReplay variant of publishReplay
shareReplay variant of publishReplay (#2443) (5a2266a)<a name="5.3.3"></a>
(NOTE: 5.3.2 was a broken release and was removed)
<a name="5.3.1"></a>
<a name="5.3.0"></a>
Nothing published for this version
Nothing published for this version
catch: return type is now the union of input types
$$ prefix to work with Babel UMD exporting (#2435) (747bef6), closes #2415smooth() was never really a thing. Sorry, folks. :D<a name="5.2.0"></a>
Nothing published for this version
ajax: will set withCredentials after open on XHR for IE10
withCredentials after open on XHR for IE10 (#2332) (0ab1d3b)<a name="5.1.1"></a>
<a name="5.1.0"></a>
Nothing published for this version
catch: update the catch operator to dispose inner subscriptions if the catch subscription is di
HotObservable and ColdObservable instead of Observable (#2305) (758aae9)<a name="5.0.3"></a>
add will return Subscription that removes itself when unsubscribed (375d4a5)Scheduler now accept IScheduler interface (a0d28a8)<a name="5.0.2"></a>
<a name="5.0.1"></a>
<a name="5.0.0"></a>
Nothing published for this version
Nothing published for this version
Nothing published for this version
race: unsubscribe raced observables with immediate scheduler
AjaxObservable: catch XHR send failures to observer
distinctKey (9fd8096), closes #2161Object.prototype.toString.call on objects (#2143) (e036e79)last, first, find and filter. (5f2e849)timeout no longer accepts the errorToSend argumentrelated #2141
<a name="5.0.0-rc.4"></a>
partition: handles thisArg as expected
typings: You no longer have to install the type definition for chai
<a name="5.0.0-rc.2"></a>
AjaxObservable: remove needless type param R from AjaxObservable.getJSON()
startBufferEvery is less than bufferSize (#2076) (d13dbb4), closes #2062from generators will now finalize when subscription ends (22d286a), closes #1938materialize output will now match Rx4 (#2106) (c83bab9), closes #2105undefined itself as a valid seed (#2050) (fee7585), closes #2047distinctKey, distinct signature change and perf improvements (#2049) (89612b2), closes #2009Notification.prototype.exception is now Notification.prototype.error to match Rx4 semanticsSymbol.iterator if Symbol does not exist. This may break code that inadvertently relies on this behaviorObject.assign. It does
not require Object.assign to function, however, your code may be
inadvertently relying on this polyfill.getJSON<T>(url: string, headers?: Object): Observable<T>.
The extra type parameter it accepted previously was superfluous.distinctKey has been removed. Use distinctdistinct operator has changed, first argument is an
optional keySelector. The custom compare function is no longer
supported.<a name="5.0.0-rc.1"></a>
AjaxObservable: Fix for #1921 exposed AjaxObservable unsubscription error calling xhr.abort().
cache operator (1b23ace)rxjs-es, ES2015 output no longer included in @reactivex/rxjs package under /dist/es6 (6be9968), closes #1671rxjs-es is no longer being published@reactivex/rxjs no longer has /dist/es6 outputrelated #2016 related #1992
Even if we use getter for class, they are marked with readonly properties
in d.ts.
<a name="5.0.0-beta.12"></a>
ajaxObservable: remove implicit dependency to map operator patch (1744ae9), closes #1874
<a name="5.0.0-beta.11"></a>
ajaxObservable: only set default Content-Type header when no body is sent
any to access to private field in source (54f342f)map instead<a name="5.0.0-beta.10"></a>
AjaxObservable: ignore content-type for formdata
Scheduler.async (#1807) (12c5c74), closes [(#1807](https://github.com/(/issues/1807) #1806<a name="5.0.0-beta.9"></a>
cache: get correct caching behavior (#1765) (cb0b806), closes #1628
<a name="5.0.0-beta.8"></a>
Subject: Subjects no longer automatically unsubscribe when completed or errored BREAKING CHANGE: Minor scheduling changes to groupBy to ensure proper…
maxBufferSize optional argument (cf45540), closes #1295Rx.kitchenSink and Rx.DOM are removed, Rx
export everything.<a name="5.0.0-beta.7"></a>
race: handle observables completes immediately (abac3d1), closes #1615
AjaxObservable: support json responseType on IE (bba13d8), closes #1381
<a name="5.0.0-beta.5"></a>
take: make 'take' unsubscribe when it reaches the total
Operator.prototype.call has been refactored to include both the destination Subscriber, and the source Observable
the Operator is now responsible for describing it's own subscription process. (26423f4)<a name="5.0.0-beta.4"></a>
Observable: Observable.fromArray was removed since it's deprecated on RxJS 4. You should use Observable.from instead.
add() now returns a Subscription reference (a3f4552)Observable.fromArray was removed since it's deprecated on RxJS 4. You should use Observable.from instead.<a name="5.0.0-beta.3"></a>
AjaxObservable: update type definition for AjaxObservable (3f5c269), closes #1382
<a name="5.0.0-beta.2"></a>
ajax: fixes error in Chrome accessing responseText when responseType isn't text.
Subject.create(observable, observer) is now Subject.create(observer, observable)of and from can now be found in rxjs/add/observable/of, rxjs/add/observable/from, etc.PromiseObservable, ArrayObservable are now in appropriately named files like rxjs/observable/PromiseObservable and rxjs/observable/ArrayObservable
as opposed to rxjs/observable/fromPromise and rxjs/observable/fromArray, since they're not patching, they simply house the Observable implementations.<a name="5.0.0-beta.1"></a>
ajax: ensure post sending values
inspect and inspectTime were removed. Use withLatestFrom instead.<a name="5.0.0-beta.0"></a>
micro-perf: rename immediate to queue scheduler (fe56b28), closes #1040
sample operator (e93bffc)sampleTime with RxJS 4 behavior (6b77e69)sampleTime now has the same behavior sample(number, scheduler) did in RxJS 4sample behavior returned to RxJS 4 behaviorsampleTime is now inspectTimesample behavior is now inspectimport "rxjs/add/operator/extended/min" is now import "rxjs/add/operator/min"<a name="5.0.0-alpha.14"></a>
every: handle thisArg for scalar and array observables
<a name="5.0.0-alpha.13"></a>
Observable: fix circular dependency issue.
Rx.Scheduler.nextTick (Rx 4's "default" scheduler) is now Rx.Scheduler.asapRx.Scheduler.immediate (Rx 4's "currentThread" scheduler) is now Rx.Scheduler.queue
related #838switchMapFirst is now switchFirstMap<a name="5.0.0-alpha.12"></a>
AsyncSubject: emit value when it's subscribed after complete
<a name="5.0.0-alpha.11"></a>
catch: fix catch to dispose old subscriptions (280f7ed), closes #763
<a name="5.0.0-alpha.10"></a>
Immediate: set immediate should no longer throw in Chrome (a3de7d9), closes #690
Your coding agent can read these notes before it upgrades. Set up the MCP server →