- Fix
pluckto correctly handle null values when an index or property exists but is null. #216 - Updated testing to work with PHP 8.3
- Add support for react/promise v3
- Small fixes for and test on PHP 8.2
- Suppress warnings from php 8.1
- ObservableFactoryWrapper should convert promise to observable (b24ec82)
- Promise should support low level Throwable (c48c168)
- Allow PHP 8
- Update PHPUnit
- Forward compatibility with react/event-loop 1.0 and 0.5 while still supporting 0.4 (5f91a62)
- Reroute exceptions in onNext to onError by default (b7ba556)
- Immediately complete if the iterator is no longer valid (af6765a)
- Dispose inner observable when promise is cancelled (4855812)
- Fixed issue where EventLoopScheduler did not cancel timers in certain circumstances (c915843)
- Added
singleInstanceoperator (4f77d38)
- Fixed order of subscriptions in
takeUntil(1838ede) - Fixed issue where disposed of scheduled item would not cancel timer in some instances (bb2c5a0)
- Removed throttle.expect to get rid of non-determinate test failures (97a980c)
- Updated PHPUnit to 5.7 (b1b37ab)
- Make scheduler optional for
ReplaySubject(a8d1c50) - EventLoop will only ever scheduler 1 timer now #167 #165 (bccbce9)
- Canceled items are now removed from
PriorityQueue#168 (6a4f9e7) - Fix memory leak and refactor
groupBy*operators (7e4dc3c)
- Added
withLatestFromoperator (273df81)
- Fix
concatto dispose of current observable (1eadb7b)
- Added global static
Schedulerclass that allows setting scheduler factory callables - Schedulers are now passed in during
Observableconstruction or into operators as needed - Static Observable constructors and operators will get scheduler from global static
Schedulerif not specified - PHP 7 is required
- HHVM support was removed
- All files now
declare(strict_types=1) ObserverInterface::onErrornow takes aThrowableparameter instead ofExceptionsubscribeCallbackhas been deprecated in favor ofsubscribewhich now takes callables or anObserverInterfaceimplementationdoOnNextanddoOnEachhave been deprecated in favor ofdoand follows the same syntax assubscribecatchErrorhas been deprecated in favor ofcatchjusthas been deprecated in favor ofofemptyObservablehas been deprecated in favor ofemptyswitchLatesthas been deprecated in favor ofswitchObservableis now abstract and requires subclasses to define_subscribe- Added
toPromiseandfromPromiseoperators - Marble tests are now supported
timeoutnow throwsTimeoutExceptionto allow detection of timeouts down stream- Parameter and return types have been added
- Added
composeoperator (140e21a) - Added plucking for multiple items at once (11b86c9)
- Added custom operators in nested namespace (897b747)
- Fix interface mismatch on subscribe type hints (b817619)
- Fix
IteratorObservableto check if the key is valid instead of null (dafb14b)
- Optimized
distinctoperator (462d433) - Added
finallyoperator (e2cfdb2) - Added
isEmptyoperator (2429fb7) - Added
forkJoinoperator (9fb9197) - Refactored
mergeAllto be consistent with RxJS andswitchLatest(7aeb8ce)
- Fixed non-strict search in CompositeDisposable (c17fb6c)
- Fixed missing array type hint on Observable::__call (1672dc1)
- Fixed throttle.php demo (cee42e2)
- Fixed Promise::fromObservable() to allow selecting the scheduler (de88548)
- Fixed VirtualTimeScheduler to use now() method (d5afdde)
- Fixed
deferswallowing errors (#85) - Fixed phpunit deprecation warnings (b7f754c)
- Fixed scheduler disposable on delay dispose (#87)
- Added custom operators (c7d351d)
- Added output values for failed demos in tests (c2b4a56)
- Added
throttleoperator (b93d296) - Added support for cancellable promises (a5602ab)
- Added
switchFirstoperator (620c70f) (a98c65f) (fc039fb) (b254d06) (1f13650) - Added
DoObserver(4807ab1) - Added coveralls (7ed1a86)
- Fixed EventLoopScheduler (f0302d2)
- Fixed doc block, demo updates (7090947) (306ead9) (8c4e9ab) (a21b8fd)
- Fixed
reduceoperator issue with falsy seed (#71) - Fixed skipped tests (26c2476)
- Fixed
retryWhen(#59)
- Added
flatMapTooperator (a8c6967) - Added
pluckoperator (ec1fce1) - Added
averageoperator (da591a6) - Added
sumoperator (2f44168) - Added CONTRIBUTING.md (e45210c)
- Added
minoperator (f458564) - Added
repeatWhenoperator (d0fc1f8) - Added
raceoperator (amb) (81b70e7) - Added
takeLastoperator (8759ca4)
- Fixed
combineLatestwhen using the EventLoopScheduler (12fce12) - Fixed argument ordering issue with
combineLatest(c5a8e5a) - Fixed
shareReplay, so arguments are optional (e38e8a4) - Fixed double subscription issue with
concatAll(4c64a82) - Fixed
delaynow usesmaterializeandtimestamp, so that it has consistent behavior between all supported schedulers (#51) - Fixed EventLoopScheduler, which is now based off of the VirtualTimeScheduler (#50)
- Added
materializeanddematerializeoperators (6d6bba4) - Added
timestampoperator (4109934) - Added
switchLatestoperator (58c95b0) - Added
partitionoperator (ca95144) - Added
flatMapLatestoperator (c0d15ff)
- Fixed uninitialized disposable in
skipUntil(2b5ea0b) - Fixed
asObservableoperator was not passing through the scheduler (d805cfd) - Fixed uninitialized disposable in
retry(ca4da7e) - Fixed #23 - changing yield behavior in hhvm (da2737c)
- Fixed #33 - For Rx\React\Promise::toObservable, wrap non-exceptions on reject (ed852de)
- Added ability to record and validate output of demo files (883ad4b)
- Added
catchErroroperator (cd4fc03) - Added
takeWhileandtakeWhileWithIndexoperators (177835e) - Added
startWithandstartWithArrayoperators (585f893) - Added
retryWhenoperator (19b36fc) - Added utility to generate documentation for reactivex.io (a62d46b)
- Added
concatAllandconcatMapoperators (c794cf3) - Added
skipWhileandskipWhileWithIndexoperators (80c997f) - Added
maxoperator (1a841fa)