All Versions
131
Latest Version
Avg Release Cycle
33 days
Latest Release
1445 days ago
Changelog History
Page 7
Changelog History
Page 7
-
v6.0.0-beta.3 Changes
March 27, 2018 -
v6.0.0-beta.2 Changes
March 24, 2018 -
v6.0.0-beta.1 Changes
March 21, 2018๐ Bug Fixes
- โ remove duplicate Subscribable interface declaration (#3450) (ac78d89)
- compat: add package.json for internal-compatibility package (#3455) (3b306ed)
- ๐ config.useDeprecatedSynchronousErrorThrowing: reentrant error throwing no longer trapped (#3449) (0892a2d), closes #3161
๐ Features
-
v6.0.0-beta.0 Changes
March 16, 2018๐ Bug Fixes
- AjaxObservable: 1xx,2xx,3xx requests shouldn't error, only 4xx,5xx (#3438) (2128932)
- compat: adjustments to get rxjs-compat to build correctly (dea6964)
- config: expose configuration via rxjs exports (#3441) (4287424)
- config: make sure that Promise config is undefined initially (#3440) (469afe8)
- ESM: Add [operators|ajax|websocket|testing]/package.json for ESM support, fixes #3227 (#3356) (725dcb4)
- forkJoin: fix forkJoin typings for forkJoin(Observable[]) (#3436) (17c7f8f)
- fromEvent: Defines toString to fix Closure compilations (#3417) (1558b43)
- fromEvent: pass options in unsubscribe (f1872b0), closes #3349
- publishReplay: type inference improved (#3437) (dd7c9f1), closes #3260
- rxjs: add exports for symbols/interfaces that were missing (#3380) (1622ee0)
- rxjs: make sure esm imports from index.js by default, not Rx.js (#3316) (c2b00f4), closes #3315
- rxjs: once again exports custom error types (#3371) (4465a9f)
- rxjs: remove types.ts importing from itself. (#3383) (8fd50ad)
- spec: get tests running using compatibility package (916e968)
- correct internal module paths to be systemjs compatible (#3412) (35abc9d)
- Symbol.iterator: correctly handle case where Symbol constructor itself is not defined (#3394) (6725be1)
- typings: fixed some cases where multicast and publish would not return a ConnectableObservable (#3320) (ddffecc)
- reexport Symbol.observable typings patch (4c4d7b0)
- โ remove the root operators.ts because it overshadows operators/package.json (184b6d4)
๐จ Code Refactoring
- Observable.if: remove ts hacks from Observable (f46f261)
- Rx.ts: move Rx.ts to internal (#3400) (7ad2119)
๐ Features
- ajax: default to opting into CORS (#3442) (aa3bf57), closes #3273
- bindCallback: remove result selector (2535641)
- bindNodeCallback: remove resultSelector (26e6e5c)
- compat: add compatability package definition (40aca82)
- compat: add concat operator to compatibility layer (6e84e78)
- compat: add legacy reexport compat layer for 'rxjs/Observable' and other top-level symbols (70e562b)
- compat: add Rx.ts to rxjs-compat (df25de1)
- compat: combatability mode for combineLatest (fd86df5)
- compat: compatibility mode for merge operator (ffce980)
- compat: compatibility mode for zip operator (9f131d0)
- compat: make Rx.ts for compatability layer work as the default for rxjs-compat (d43a4c2)
- compat: set up correct imports & get build working for rxjs-comapt (1a0dc97)
- ๐ deprecated-error-handling-warning: add console warning when code sets the flag to bad mode (49be56a)
- error-handling: add deprecated sync error handling behind a flag (583cd1d)
- exhaustMap: simplify interface (42589d0)
- first: simplify interface (a011338)
- forkJoin: simplify interface (4d2338b)
- fromEvent: remove resultSelector (197f449)
- fromEvent: will now emit an array when event emits multiple arguments (51b37fd)
- fromEventPattern: removed resultSelector (6b34f9f)
- last: simplify interface (3240419)
- ๐ mergeMap|concatMap|concatMapTo: simplified the signatures (d293245)
- ๐ mergeMapTo: simplify interface (582c7be)
- never: no longer export
neverfunction (#3386) (53debc8) - switchMap|switchMapTo: simplify interface (959fb6a)
- Symbol.iterator: no longer polyfilled (#3389) (6319f3c)
- Symbol.observable: is no longer polyfilled (#3387) (4a5aaaf)
- throwIfEmpty: adds throwIfEmpty operator (#3368) (9b21458)
- typings: updated typings for combineAll, mergeAll, concatAll, switch, exhaust, zipAll (#3321) (f7e4c02)
- umd: UMD now mirrors export schema for ESM and CJS (#3426) (556c904)
๐ฅ BREAKING CHANGES
- ajax: will no longer execute a CORS request by default, you must opt-in with the
crossDomainflag in the config. - ๐ mergeMap|concatMap|concatMapTo: mergeMap, concatMap and concatMapTo no longer support a result selector, if you need to use a result selector, use the following pattern:
source.mergeMap(x => of(x + x).pipe(map(y => y + x))(the pattern would be the same forconcatMap). - never: no longer exported. Use the
NEVERconstant instead. - bindCallback: removes result selector, use
mapinstead:bindCallback(fn1, fn2)()becomesbindCallback(fn1)().pipe(map(fn2)) - Rx.ts: importing from
rxjs/Rxis no longer available. Upcoming backwards compat solution will allow that - Symbol.iterator: We are no longer polyfilling
Symbol.iterator. That would be done by a proper polyfilling library - Observable.if: TypeScript users using
Observable.ifwill have to castObservableas any to get toif. It is a better idae to just useiifdirectly viaimport { iif } from 'rxjs'; - bindNodeCallback: resultSelector removed, use
mapinstead:bindNodeCallback(fn1, fn2)()becomesbindNodeCallback(fn1)().pipe(map(fn2)) - Symbol.observable: RxJS will no longer be polyfilling Symbol.observable. That should be done by an actual polyfill library. This is to prevent duplication of code, and also to prevent having modules with side-effects in rxjs.
- fromEvent: result selector removed, use
mapinstead:fromEvent(target, 'click', fn)becomesfromEvent(target, 'click').pipe(map(fn)) - last: no longer accepts
resultSelectorargument. To get this same functionality, usemap. - first: no longer supports
resultSelectorargument. The same functionality can be achieved by simply mapping either before or afterfirstdepending on your use case. - exhaustMap:
resultSelectorno longer supported, to get this functionality use:source.pipe(exhaustMap(x => of(x + x).pipe(map(y => x + y)))) - switchMap|switchMapTo:
switchMapandswitchMapTono longer takeresultSelectorarguments, to get the same functionality useswitchMapandmapin combination:source.pipe(switchMap(x => of(x + x).pipe(y => x + y))). - ๐ mergeMapTo:
mergeMapTono longer accepts a resultSelector, to get this functionality, you'll want to usemergeMapandmaptogether:source.pipe(mergeMap(() => inner).pipe(map(y => x + y))) - fromEventPattern: no longer supports a result selector, use
mapinstead:fromEventPattern(fn1, fn2, fn3)becomesfromEventPattern(fn1, fn2).pipe(map(fn3))
-
v6.0.0-alpha.4 Changes
March 13, 2018๐ Bug Fixes
- ESM: Add [operators|ajax|websocket|testing]/package.json for ESM support, fixes #3227 (#3356) (725dcb4)
- fromEvent: Defines toString to fix Closure compilations (#3417) (1558b43)
- fromEvent: pass options in unsubscribe (f1872b0), closes #3349
- rxjs: add exports for symbols/interfaces that were missing (#3380) (1622ee0)
- rxjs: make sure esm imports from index.js by default, not Rx.js (#3316) (c2b00f4), closes #3315
- rxjs: once again exports custom error types (#3371) (4465a9f)
- rxjs: remove types.ts importing from itself. (#3383) (8fd50ad)
- correct internal module paths to be systemjs compatible (#3412) (35abc9d)
- Symbol.iterator: correctly handle case where Symbol constructor itself is not defined (#3394) (6725be1)
- typings: fixed some cases where multicast and publish would not return a ConnectableObservable (#3320) (ddffecc)
- reexport Symbol.observable typings patch (4c4d7b0)
- โ remove the root operators.ts because it overshadows operators/package.json (184b6d4)
๐จ Code Refactoring
- Observable.if: remove ts hacks from Observable (f46f261)
- Rx.ts: move Rx.ts to internal (#3400) (7ad2119)
๐ Features
- bindCallback: remove result selector (2535641)
- bindNodeCallback: remove resultSelector (26e6e5c)
- exhaustMap: simplify interface (42589d0)
- first: simplify interface (a011338)
- forkJoin: simplify interface (4d2338b)
- fromEvent: remove resultSelector (197f449)
- fromEvent: will now emit an array when event emits multiple arguments (51b37fd)
- fromEventPattern: removed resultSelector (6b34f9f)
- last: simplify interface (3240419)
- ๐ mergeMap|concatMap|concatMapTo: simplified the signatures (d293245)
- ๐ mergeMapTo: simplify interface (582c7be)
- never: no longer export
neverfunction (#3386) (53debc8) - switchMap|switchMapTo: simplify interface (959fb6a)
- Symbol.iterator: no longer polyfilled (#3389) (6319f3c)
- Symbol.observable: is no longer polyfilled (#3387) (4a5aaaf)
- throwIfEmpty: adds throwIfEmpty operator (#3368) (9b21458)
- typings: updated typings for combineAll, mergeAll, concatAll, switch, exhaust, zipAll (#3321) (f7e4c02)
- umd: UMD now mirrors export schema for ESM and CJS (#3426) (556c904)
๐ฅ BREAKING CHANGES
- Symbol.observable: RxJS will no longer be polyfilling Symbol.observable. That should be done by an actual polyfill library. This is to prevent duplication of code, and also to prevent having modules with side-effects in rxjs.
- ๐ mergeMap|concatMap|concatMapTo: mergeMap, concatMap and concatMapTo no longer support a result selector, if you need to use a result selector, use the following pattern:
source.mergeMap(x => of(x + x).pipe(map(y => y + x))(the pattern would be the same forconcatMap). - bindCallback: removes result selector, use
mapinstead:bindCallback(fn1, fn2)()becomesbindCallback(fn1)().pipe(map(fn2)) - Rx.ts: importing from
rxjs/Rxis no longer available. Upcoming backwards compat solution will allow that - Symbol.iterator: We are no longer polyfilling
Symbol.iterator. That would be done by a proper polyfilling library - Observable.if: TypeScript users using
Observable.ifwill have to castObservableas any to get toif. It is a better idae to just useiifdirectly viaimport { iif } from 'rxjs'; - bindNodeCallback: resultSelector removed, use
mapinstead:bindNodeCallback(fn1, fn2)()becomesbindNodeCallback(fn1)().pipe(map(fn2)) - never: no longer exported. Use the
NEVERconstant instead. - fromEvent: result selector removed, use
mapinstead:fromEvent(target, 'click', fn)becomesfromEvent(target, 'click').pipe(map(fn)) - last: no longer accepts
resultSelectorargument. To get this same functionality, usemap. - first: no longer supports
resultSelectorargument. The same functionality can be achieved by simply mapping either before or afterfirstdepending on your use case. - exhaustMap:
resultSelectorno longer supported, to get this functionality use:source.pipe(exhaustMap(x => of(x + x).pipe(map(y => x + y)))) - switchMap|switchMapTo:
switchMapandswitchMapTono longer takeresultSelectorarguments, to get the same functionality useswitchMapandmapin combination:source.pipe(switchMap(x => of(x + x).pipe(y => x + y))). - ๐ mergeMapTo:
mergeMapTono longer accepts a resultSelector, to get this functionality, you'll want to usemergeMapandmaptogether:source.pipe(mergeMap(() => inner).pipe(map(y => x + y))) - fromEventPattern: no longer supports a result selector, use
mapinstead:fromEventPattern(fn1, fn2, fn3)becomesfromEventPattern(fn1, fn2).pipe(map(fn3))
-
v6.0.0-alpha.3 Changes
February 06, 2018๐ Bug Fixes
- animationFrame.spec: spec description fix (#3140) (ab6c325)
- debounce: support scalar selectors (#3236) (1548393), closes #3232
- forkJoin: catch and forward selector errors (#3261) (e57bbb7), closes #3216
- Observable: expose pipe rest parameter overload (#3292) (7ff5bc3)
- onErrorResumeNext: no longer holds onto subscriptions too long (abbbdad), closes #3178
- โฑ scheduler: prevent unwanted clearInterval (#3226) (d7cfb42), closes #3042
- timer: multiple subscriptions to timer(Date) behaves correctly (aafa7ff), closes #3252
- typings: correct compilation warnings from missing types in tests (3aad6bc)
- typings: relax debounce selector type (c419ab4), closes #3164
- typings: relax throttle selector type (#3205) (e83fda7), closes #3204
- typings: the return type of factory of defer should be ObservableInput (#3211) (dc41a5e)
๐ Features
- empty: empty() returns the same instance (5c7c749)
- EMPTY: observable constant EMPTY now exported (08fb074)
- never: always return the same instance (#3249) (d57fa52)
- rxjs: move rxjs/create into rxjs (#3299) (6711fe2)
- throwError: functional version of throwError (639236e)
๐ฅ BREAKING CHANGES
- rxjs:
rxjs/createitems are now exported fromrxjs - throwError: Observable.throw no longer available in TypeScript without a cast
- empty:
empty()without a scheduler will return the same instance every time. - empty: In TypeScript,
empty()no longer accepts a generic argument, as it returnsObservable<never> - never:
never()always returns the same instance - never: TypeScript typing for
never()is nowObservable<never>and the function no longer requires a generic type.
-
v6.0.0-alpha.2 Changes
January 14, 2018๐ Bug Fixes
- ๐ build: properly outputs subdirectories like
rxjs/operators(34fe560)
- ๐ build: properly outputs subdirectories like
-
v6.0.0-alpha.1 Changes
January 12, 2018๐ Bug Fixes
- โฑ Revert "fix(scheduler): prevent unwanted clearInterval (#3044)" (ad5c7c6)
- โฑ Revert "fix(scheduler): prevent unwanted clearInterval (#3044)" (64f9285)
- debounceTime: synchronous reentrancy of debounceTime no longer swallows the second value (#3218) (598e9ce), closes #2748
- dependency: move symbol-observable into devdependency (4400628)
- IteratorObservable: get new iterator for each subscription (#2497) (1bd0a58), closes #2496
- Observable.toArray: Fix toArray with multiple subscriptions. (#3134) (3390926)
- SystemJS: avoid node module resolution of pipeable operators (#3025) (0f3cf71), closes #2971 #2996 #3011
- tap: make next optional (#3073) (e659f0c), closes #2534
- TSC: Fixing TSC errors. Fixes #3020 (01d1575)
- typings: the return type of project of mergeScan should be ObservableInput (23fe17d)
Chores
๐จ Code Refactoring
- asap: Remove setImmediate polyfill (5eb6af7)
- distinct: Remove Set polyfill (68ee499)
- groupBy: Remove Map polyfill (74b5b1a)
๐ Features
- Observable: unhandled errors are now reported to HostReportErrors (#3062) (cd9626a)
- reorganize: move ./interfaces.ts to internal/types.ts (cfbfaac)
- reorganize: internal utils hidden (70058cd)
- reorganize: add
rxjs/createexports (c9963bd) - reorganize: ajax observable creator now exported from
rxjs/ajax(e971c93) - reorganize: all patch operators moved to
internaldirectory (7342401) - reorganize: export
noopandidentityfromrxjs(810c4d0) - reorganize: export
Notificationfromrxjs(8809b48) - reorganize: export schedulers from
rxjs(abd3b61) - reorganize: export Subject, ReplaySubject, BehaviorSubject from rxjs (bd683ca)
- reorganize: export the
pipeutility function fromrxjs(4574310) - reorganize: hid testing implementation details (b981666)
- reorganize: move observable implementations under internal directory (2d5c3f8)
- reorganize: move operator impls under internal directory (207976f)
- reorganize: move top-level impls under internal directory (c3bb705)
- reorganize: moved symbols to be internal (80783ab)
- reorganize: operators all exported from
rxjs/operators(b1f8bfe) - reorganize: websocket subject creator now exported from
rxjs/websocket(5ac62c0)
๐ฅ BREAKING CHANGES
- webSocket:
webSocketcreator function now exported fromrxjs/websocketaswebsocket. - IteratorObservable: IteratorObservable no longer share iterator between subscription
- utils: Many internal use utilities like
isArrayare now hidden underrxjs/internal, they are implementation details and should not be used. - โ
testing observables:
HotObservableandColdObservable, and other testing support types are no longer exported directly. - creation functions: All create functions such as
of,from,combineLatestandfromEventshould now be imported fromrxjs/create. - types and interfaces: Can no longer explicitly import types from
rxjs/interfaces, import them fromrxjsinstead - symbols: Symbols are no longer exported directly from modules such as
rxjs/symbol/observableplease useSymbol.observableandSymbol.iterator(polyfills may be required) - deep imports: Can no longer deep import top-level types such as
rxjs/Observable,rxjs/Subject,rxjs/ReplaySubject, et al. All imports should be done directly fromrxjs, for example:import \{ Observable, Subject \} from 'rxjs'; - โฑ schedulers: Scheduler instances have changed names to be suffixed with
Scheduler, (e.g.asap->asapScheduler) - operators: Pipeable operators must now be imported from
rxjslike so:import { map, filter, switchMap } from 'rxjs/operators';. No deep imports. - ajax: Ajax observable should be imported from
rxjs/ajax. - Observable: You should no longer deep import custom Observable
implementations such as
ArrayObservableorForkJoinObservable. - _throw:
_throwis now exported asthrowError - if:
ifis now exported asiif - operators: Deep imports to
rxjs/operator/*will no longer work. Again, pipe operators are still where they were. - error handling: Unhandled errors are no longer caught and rethrown, rather they are caught and scheduled to be thrown, which causes them to be reported to window.onerror or process.on('error'), depending on the environment. Consequently, teardown after a synchronous, unhandled, error will no longer occur, as the teardown would not exist, and producer interference cannot occur
- distinct: Using
distinctrequires aSetimplementation and must be polyfilled in older runtimes - asap: Old runtimes must polyfill Promise in order to use ASAP scheduling.
- groupBy: Older runtimes will require Map to be polyfilled to use
groupBy - TypeScript: IE10 and lower will need to polyfill
Object.setPrototypeOf - ๐ operators removed: Operator versions of static observable creators such as
merge,concat,zip,onErrorResumeNext, andracehave been removed. Please use the static versions of those operations. e.g.a.pipe(concat(b, c))becomesconcat(a, b, c).
-
v5.5.6 Changes
December 21, 2017 -
v5.5.5 Changes
December 06, 2017๐ Support Added
- Bazel: Add files to support users that want Bazel builds with RxJS (12dac3b)