PackageTrack
Sign in Get early access

better_future

Advanced asynchronous orchestration with named results, and automatic dependency management and cleanup.

2.0.3 d-markey/better_future

What this package is like to depend on

Last release 4 months ago

23 Apr 2026

Ships on a steady schedule

a new release about every 6 weeks

Nearly every release is documented

notes for 6 of 6 stable releases

Nothing withdrawn

no release was ever pulled

7 months old

6 releases · first in 2026

6 releases in the last 12 months

see the full history below

Release timeline

6 releases · Jan 2026 to Apr 2026
Release Pre-release

Releases

latest 6
  1. 2.0.3 23 Apr 2026
    Release notes
    • Handle edge case where a settler could complete with a Future<T> instead of a T.
    • Sync/async routes are now handled by completion methods (except for sync errors).
    Open source →
  2. 2.0.2 18 Apr 2026
    Release notes
    • Provide extension methods on Map<String, BetterOutcome<T>> for easier access to results and errors.
    • Swapped function signature detection to avoid optional argument functions being accepted as no-argument functions.
      • Functions with optional named arguments will be handled as no-argument functions.
      • Functions with required named arguments are not supported.
    Open source →
  3. 2.0.1 18 Feb 2026
    Release notes
    • Improved documentation.
    Open source →
  4. 2.0.0 24 Jan 2026
    Release notes
    • Implemented BetterFuture.settle: similar to BetterFuture.wait, but returns a map of BetterOutcome<T> instead of T. Each outcome contains either a computation result or an error. As a result, BetterFuture.settle never fails (though it may never complete).
    Open source →
  5. 1.0.1 21 Jan 2026
    Release notes
    • Changed BetterResults to an abstract interface class for better encapsulation and testing support.
    • Improved API documentation for BetterFuture.wait with detailed usage examples; also clarified return map behavior and dependency management.
    Open source →
  6. 1.0.0 21 Jan 2026
    Release notes
    • Initial release.
    • Features:
      • Parallel execution of asynchronous tasks with FutureOr support.
      • Automatic dependency management via the $ (BetterResults) object.
      • Elegant dynamic syntax for result access ($.key and $.key<T>()).
      • Robust built-in type casting for primitives, collections, and common core types.
      • Custom type registration for cross-platform type-safe dynamic access.
      • Automatic resource cleanup on orchestration failure via cleanUp callback.
      • Full compatibility with VM, Web (JavaScript), and WASM.
      • Optimized for Dart 3 Map destructuring patterns.
    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