PackageTrack
Sign in Get early access

functional_listener

An rx like extension methods on ValueListenable type, that lets you work with ValueNotifiers almost like with Streams

4.1.0 19K downloads/mo #2252 most downloaded on pub.dev escamoteur/functional_listener

What this package is like to depend on

Last release 2 years ago

no release in 18 months

Release timing varies

gaps range from 2 months to 1.4 years

Nearly every release is documented

notes for 14 of 15 stable releases

Nothing withdrawn

no release was ever pulled

6 years old

16 releases · first in 2020

0 releases in the last 12 months

see the full history below

Release timeline

16 releases · Jul 2020 to Oct 2024
2021 2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 16
  1. 4.1.0 02 Oct 2024
    Release notes
    • adding debounce as extenstion method on Listenable
    Open source →
  2. 4.0.0 29 Sep 2024
    Release notes
    • Following the findings of https://github.com/escamoteur/functional_listener/issues/13 we no longer destroy the listener chain when the last listener is removed. Because this might change the behavior of your app this is seen as a breaking change and therefore the change to 4.0.0. Please observe if this leads to increasing memory usage
    Open source →
  3. 3.0.0 19 Jul 2024
    Release notes
    • added optional error handler for CustomValueNotifier in case one of the listeners throws an Exception
    • added listen() extension method for normal Listenable
    Open source →
  4. 2.3.1 28 Feb 2023
    Release notes
    • stupid bug fix
    Open source →
  5. 2.3.0 28 Feb 2023
    Release notes
    • added async() extension method
    
      /// ValueListenable are inherently synchronous. In most cases this is what you
      /// want. But if for example your ValueListenable gets updated inside a build
      /// method of a widget which would trigger a rebuild because your widgets is
      /// listening to the ValueListenable you get an exception that you called setState
      /// inside a build method.
      /// By using [async] you push the update of the ValueListenable to the next
      /// frame. This way you can update the ValueListenable inside a build method
      /// without getting an exception.
      ValueListenable<T> async();
    
    • CustomValueNotifier got a new property asyncNotification which if set to true postpones the notifications of listeners to the end of the frame which can be helpful if you run into Exceptions about 'calling setState inside a build function' e.g. if you monitor the CustomValueNotifier with the get_it_mixin and you update it inside the build function. Default is false.
    Open source →
  6. 2.2.0 24 Feb 2023
    Release notes
    • added listenerCount to CustomValueNotfier

    [2.1.0] - 29.01.2022

    • merged several PRs with bugfixes
    • adds the select() method see the readme
    • adds more combineLates() variants up to 6 input Listenables
    Open source →
  7. 2.1.0 29 Jan 2022

    Nothing published for this version

  8. 2.0.2 07 May 2021
    Release notes
    • Bugfix: If you resubscribed to one of the Listenables that are returned from the extension functions in this package and then resubscribed it did not rebuild the subcription to it's previous in chain.
    Open source →
  9. 2.0.1 05 May 2021
    Release notes
    • Added public notifyListeners to CustomValueNotfier
    Open source →
  10. 2.0.0 15 Feb 2021
    Release notes
    • Added CustomValueNotfier
    Open source →
  11. 2.0.0-nullsafety.1 03 Dec 2020 pre-release

    Nothing published for this version

  12. 1.1.1 30 Nov 2020
    Release notes
    • Fixes in documentation and tests
    Open source →
  13. 1.1.0 05 Oct 2020
    Release notes
    • Added mergeWith() function
    Open source →
  14. 1.0.1 03 Aug 2020
    Release notes
    • Added package description
    Open source →
  15. 1.0.0 03 Aug 2020
    Release notes
    • Added Example and some bug fixes
    Open source →
  16. 0.8.0 30 Jul 2020
    Release notes
    • Initial release
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive