RxJS Ninja Blog
[20201-02-08] - Upcoming Major releases and Package Changes
There are some important changes coming up in RxJS Ninja. The next release of the libraries will all be major, and will
be the last versions published under their current names - with the package names being shortened - removing the
rxjs from each package name.
@rxjs-ninja/rxjs-arraywill now become
@rxjs-ninja/rxjs-booleanwill now become
@rxjs-ninja/rxjs-numberwill now become
@rxjs-ninja/rxjs-stringwill now become
@rxjs-ninja/rxjs-utilitywill now become
Each version will be published as a major version bump and marked with a deprecation warning - the new names will be
published from the same version number (i.e. these are not reverting to
Also, these major versions will have new
peerDependency ranges -
rxjs will enforce support only for
>=6.5.0 < 7.0.0
and will also now enforce a minimum TypeScript version of
>= 4.1 to use, due
to Template Literal Types
used in these libraries.
If you have any feedback on this, please comment here
[2021-01-26] - First entry
Welcome to the first update of the RxJS Ninja blog - this is where you'll find more details on existing and upcoming changes.
RxJS Ninja has been something I've been working on for the past few months - mostly starting out as a learning exercise to scratch an itch, it's turned into a much larger collection of functions that I imagined.
The original goal was to work with your primitive data in Observable sources, like modifying, filtering and querying strings, numbers and arrays.
Documentation has been very important, and the library now has a custom TypeDoc theme (also available open source) which will also continue to be improved.
User feedback is also important I'd love to hear from you with any comments, concerns or ideas!
Recently there have been a lot of API and under-the-hood changes as I've been building the library, with a few major releases of modules.
As it stands I expect the APIs to become more stable by the end of this month - the library itself is also being used for my own projects and as I use the code, I find bugs (turns out 99% test coverge still isn't enough 😃) or issues that require breaking changes, or find better ways to handle the APIs.
There is one known major release today for the Utility module, reverting to earlier code for
tapOnSubscribe, and simplifying
tapIf as using them together has revealed some issues with the newer code.
All releases are semantic versioning, meaning if you're happy with the current version you shouldn't need to upgrade, but all releases come with a full changelog to explain the changes.
The libraries will continue to get new operators - these tend to be release on minor version
One major area missing are operators for Math methods which will be added to the Number module
Distribution operators for Arrays that return actual values rather than calculated ones, and can work with non-numerical values
More string operators for operations such as
I'm considering a
rxjs-nodemodule which will provide similar stream interop functions as the Utility module, but for the NodeJS API.
Soon RxJS will be releasing version
7.0.0 - currently in
beta (Changelog) - initial tests with upgrading have not
been successful but are most likely due to the testing libraries for Jest not yet being updated.
In the worst-case scenario, all current tests will need to be refactored to remove these additional libraries. I'll most likely hold off until closer to release until I begin the process of supporting 7.
At that point there will be a new release branch created to support operators that still support version 6, and new versions of the library will support 7 going forward - all modules will receive a major bump.
Generated using TypeDoc, the 08/02/2021 at 13:47:36