Revision history for Perl extension RxPerl

v6.29.8 2024-08-27T23:01:33Z

    - fixed memory leak of rx_subject, which was affecting many operators

v6.29.7 2024-08-24T05:43:43Z

    - fixed op_exhaust_map to behave like rxjs (not execute its callback until previous observable
        has been completed)
    - updated documentation on op_catch_error (regarding $_)

v6.29.6 2024-08-20T08:48:53Z

    - fixed a bug in op_catch_error where its callback wasn't allowed to return an error-emitting observable
    - removed a possibility of memory leaks

v6.29.5 2024-08-18T09:47:21Z

    - fixed a bug in op_concat_map which made it behave differently that rxjs
    - tests can now contain promises
    - slight performance increase
    - updated Mojolicious version in tests to avoid a bug in old versions of Mojo::Promise

v6.29.4 2024-08-06T08:55:33Z

    - fixed issue #2 on gitlab (https://gitlab.com/karjala/rxperl/-/issues/2)

v6.29.3 2024-08-04T04:12:04Z

    - fixed tests

v6.29.2 2024-07-25T14:49:00Z

    - no changes

v6.29.1 2024-07-25T14:43:03Z

    - tests pass on perl v5.40 (Promise::ES6 can't install on v5.40)
    - added gitlab pipeline tests for perl versions 5.40, 5.38 and 5.20
    - updated documentation on op_merge_map and op_switch_map about the ability to use $_ in their callback
    - corrected the documentation on op_every and op_is_empty

v6.29.0 2024-07-16T22:09:44Z

    - op_every and op_is_empty emit true or false instead of 1 and 0

v6.28.0 2023-09-28T18:45:00Z

    - removed op_group_by operator, because it was too buggy.
        (If anyone has a good grasp of how it works/what it should do, feel free to contact me)
    - removed EXPERIMENTAL status of the two promise functions, since rxjs v7 has been released

v6.27.1 2023-03-13T15:18:32Z

    - fixed bug on rx_from_event and rx_from_event_array

v6.27.0 2023-03-01T15:00:57Z

    - op_audit, op_debounce, op_every, op_first, op_take_while, op_throttle allow $_ in their callbacks
    - BREAKING CHANGE: op_take_while's callback accepts also $index as second parameter

v6.26.3 2023-03-01T13:08:40Z

    - wrote CreatingPipeableOperators pod page

v6.26.2 2023-02-19T12:10:11Z

    - fixed two examples in the documentation

v6.26.1 2023-02-18T13:44:41Z

    - fixed bug on op_buffer_time, where last remaining values were not emitted

v6.26.0 2023-02-10T09:12:01Z

    - added op_timeout
    - fixed example in documentation of op_skip_last

v6.25.0 2023-02-09T21:09:18Z

    - added op_delay_when, op_distinct, op_skip_last, op_time_interval,
      and op_timestamp

v6.24.0 2023-02-09T13:13:54Z

    - added op_single
    - BUGFIX: fixed op_merge_all($n)

v6.23.0 2023-02-08T15:57:28Z

    - added op_audit, op_debounce, op_sample and op_throttle
    - fixed behavior of op_audit_time slightly, according to rxjs

v6.22.2 2023-02-07T14:55:04Z

    - updated documentation
    - simplified some operator functions

v6.22.1 2023-02-02T16:23:23Z

    - updated documentation, with warning for op_group_by

v6.22.0 2023-02-02T15:04:14Z

    - added op_group_by

v6.21.0 2023-02-02T09:49:06Z

    - added op_to_array and op_throw_if_empty

v6.20.0 2023-02-01T21:43:10Z

    - added op_last, op_max, op_min, op_race_with and op_take_last

v6.19.0 2023-02-01T14:48:40Z

    - added op_find, op_find_index, rx_iif and op_is_empty

v6.18.0 2023-02-01T13:05:04Z

    - BREAKING CHANGE: op_switch_map, op_merge_map, op_concat_map and op_exhaust_map accept
        a second index argument in their callbacks.
    - added op_switch_all, op_merge_all, op_concat_all and op_exhaust_all

v6.17.0 2023-02-01T00:29:42Z

    - added op_zip_with, rx_generate, is_observable, op_merge_with and op_skip_while
    - added rx_on_error_resume_next and op_on_error_resume_next_with

v6.16.0 2023-01-31T21:08:48Z

    - added op_reduce, rx_zip, op_every and op_element_at

v6.15.0 2023-01-31T17:14:35Z

    - added op_buffer_time, op_concat_with, op_count and op_default_if_empty
    - added rx_range

v6.14.0 2023-01-23T18:19:03Z

    - added op_buffer
    - fixed bugs in op_map and op_filter

v6.13.1 2023-01-04T17:14:49Z

    - Started the CreatingObservables Guide

v6.13.0 2023-01-03T20:19:42Z

    - BREAKING CHANGE: modified op_delay to work like rxjs 7's.
      So don't do this: rx_EMPTY->pipe( op_delay($n) )
      Instead, do this: rx_timer($n)->pipe( op_ignore_elements() )

v6.12.0 2021-12-26T11:03:24Z

    - added op_ignore_elements
    - added dependency to 'parent' module for perl v5.10

v6.11.0 2021-12-26T07:15:10Z

    - switched license back to the license of Perl
    - you can use $_ in map and filter's callbacks
    - added op_combine_latest_with

v6.10.1 2021-12-16T08:14:39Z

    - changed wording in POD (code of conduct)

v6.10.0 2021-12-16T07:46:56Z

    - added community code of conduct
    - switched license to GPLv3

v6.9.0 2021-12-10T12:37:30Z

    - added get_value method to behavior subjects

v6.8.1 2021-09-10T04:54:47Z

    - improved documentation of rx_partition
    - FIXED: op_distinct_until_key_changed supports undef values w/o warning

v6.8.0 2021-08-02T05:38:17Z

    - added rx_partition
    - FIXED: op_finalize to work like in rxjs v7
    - renamed internal $subscription->add_dependents method to just 'add'

v6.7.2 2021-08-01T13:50:59Z

    - multiple op_finalize operators placed together will have their
      callbacks executed in the rxjs v7 order

v6.7.1 2021-07-31T09:47:43Z

    - added $VERSION strings to all modules
    - FIXED: op_finalize now calls its callback also on unsubscription

v6.7.0 2021-03-08T00:09:20Z

    - support for Futures in first_event_from and last_event_from
    - support for Futures in rx_from

v6.6.1 2021-03-03T21:32:07Z

    - FIXED: allow perl v5.10 to run RxPerl again

v6.6.0 2021-03-03T21:21:37Z

    - added first_value_from, last_values_from exportable functions

v6.5.0 2021-01-27T08:53:33Z

    - added op_skip_until
    - FIXED: subjects emit to subscribers in the right order

v6.4.2 2021-01-16T06:59:54Z

    - removed the ability to call pipeable operators as observable methods

v6.4.1 2021-01-13T09:36:31Z

    - fixed Changes file

v6.4.0 2021-01-13T09:31:25Z

    - EXPERIMENTAL: use pipeable operators as observable methods directly

v6.3.0 2020-12-15T13:51:24Z

    - added a video to the Learning Resources section
    - added op_buffer_count

v6.2.1 2020-11-24T15:33:09Z

    - introduce gitlab CI/CD pipeline testing

v6.2.0 2020-11-20T09:26:22Z

    - added rx_replay_subject
    - fixed memory leak in rx_behavior_subject

v6.1.2 2020-11-20T08:06:15Z

    - fixed bug in Behavior Subject class

v6.1.1 2020-11-14T18:20:39Z

    - included behavior subjects in documentation

v6.1.0 2020-11-14T18:14:57Z

    - added rx_behavior_subject

v6.0.3 2020-11-07T07:14:05Z

    - fixed documentation

v6.0.2 2020-10-22T08:28:16Z

    - minor bugfix

v6.0.1 2020-09-28T06:03:10Z

    - added rx_repeat, rx_retry and rx_skip
    - added error symbol to marble tests (#)

v6.0.0 2020-09-24T17:18:32Z

    - no changes, release v6.0

v0.28.4 2020-09-24T14:39:23Z

    - fixed documentation

v0.28.0 2020-09-22T18:59:20Z

    - removed the three adapter modules from this distribution
    - more marble tests

v0.27.1 2020-09-19T12:17:37Z

    - introduce ability to write tests using marble diagrams
    - fixed documentation

v0.27.0 2020-09-15T04:38:54Z

    - added op_audit_time

v0.26.0 2020-09-14T16:59:24Z

    - added op_throttle_time and op_sample_time
    - op_map & op_filter now also pass $index to their sub
    - fixed documentation
    - fixed module's dependencies a bit

v0.25.1 2020-09-13T15:21:13Z

    - fixed ordering of sources in rx_fork_join
    - fixed documentation

v0.25.0 2020-09-13T12:59:43Z

    - added op_catch_error, op_finalize, rx_fork_join

v0.24.0 2020-09-12T15:55:26Z

    - added op_with_latest_from
    - optimized rx_combine_latest
    - fixed documentation

v0.23.1 2020-09-12T08:10:09Z

    - fixed two bugs in rx_combine_latest

v0.23.0 2020-09-12T06:43:28Z

    - added op_debounce_time, op_pluck, op_end_with and rx_combine_latest

v0.22.0 2020-09-11T15:35:32Z

    - added op_concat_map and op_exhaust_map
    - refactored rx_concat

v0.21.4 2020-09-11T08:45:20Z

    - tests depend on a version of Mojolicious that implements Promises

v0.21.3 2020-09-10T17:16:30Z

    - depend on Sub::Util and Test2::V0

v0.21.2 2020-09-10T17:07:35Z

    - removed debugging code

v0.21.1 2020-09-10T14:44:30Z

    - op_distinct_util_changed now accepts an optional comparison function
    - added op_distinct_until_key_changed

v0.21.0 2020-09-10T13:26:42Z

    - added op_first and op_take_while
    - added links to egghead.io & ultimate courses

v0.20.0 2020-09-10T10:10:30Z

    - added op_distinct_until_changed
    - added code sample to op_scan's documentation

v0.19.1 2020-09-10T06:18:14Z

    - removed stray debugging code
    - added documentation for op_merge_map

v0.19.0 2020-09-10T06:03:41Z

    - added op_merge_map
    - rx_from now accepts strings
    - improved op_switch_map
    - fixed documentation
    - minor changes

v0.18.1 2020-09-08T07:56:05Z

    - fixed bug in op_switch_map

v0.18.0 2020-09-08T07:29:51Z

    - added op_start_with and op_switch_map
    - fixed errors in POD

v0.17.0 2020-09-06T07:16:41Z

    - added documentation for rx_from

v0.16.2 2020-09-06T05:04:16Z

    - fixed minor bug

v0.16.1 2020-09-06T04:42:39Z

    - removed FATAL warnings
    - added rx_from (accepts arrays, promises and observables)

v0.16.0 2020-09-04T13:32:59Z

    - unhandled error events throw an exception
    - wrote the first point in the guide to create your own operators

v0.15.1 2020-09-04T11:39:54Z

    - rx_from_event and rx_from_event_array now hold weakref to emitter
    - op_delay now does not delay error events (as in rxjs)
    - subscribers' next & error methods now accept at most 1 argument

v0.15.0 2020-09-03T16:55:09Z

    - Wrote documentation
    - Fixed timer warnings issue with Mojo and IO::Async

v0.14.0 2020-06-10T18:33:29Z

    - Support for Mojo::IOLoop, AnyEvent and IO::Async

v0.0.1 2020-05-08T22:42:52Z

    - initial version