PackageTrack
Sign in Get early access

better_internet_connectivity_checker

Pure-Dart internet connectivity checker. Distinguishes "interface up" from "can reach the public internet". Pluggable probes, policies, and triggers.

1.1.0 LahaLuhem/better_internet_connectivity_checker

What this package is like to depend on

Last release 2 days ago

21 Aug 2026

Too new to tell

only 2 release windows

Nearly every release is documented

notes for 5 of 5 stable releases

Nothing withdrawn

no release was ever pulled

3 months old

5 releases · first in 2026

5 releases in the last 12 months

see the full history below

Release timeline

5 releases · May 2026 to Aug 2026
Release Pre-release

Releases

latest 5
  1. 1.1.0 21 Aug 2026
    Release notes

    Changed

    • [#31] Add MinimumReachablePolicy and stop probes following redirects
    • [#34] Spread the default probe targets across three operators

    Fixed

    • [#30] Bound every probe at ProbeTarget.timeout, whatever the transport does
    Open source →
  2. 1.0.0 20 Aug 2026
    Release notes

    Added

    • [#4] Benchmarking framework + snapshotting library performance
    • [#5] sealed ConnectivityEvent hierarchy + public Stream<ConnectivityEvent> on InternetConnection.events for reactive lifecycle observation
    • [#5] attachObserver(events, observer) top-level helper to wire ConnectivityObserver onto the events stream
    • Add a debug-mode watchdog that warns when an observer callback blocks the event loop
    • [#24] Add a CheckSchedule seam with exponential backoff (Breaking: adds NextCheckScheduledEvent)
    • [#25] Add jitter to ExponentialBackoffSchedule, on by default at ±25 %

    Changed

    • [#26] Use new linter mega repo
    • Bumped up Dart SDK floor to ^3.12.0
    • [#0] Bumped SDK to ^3.13
    • [#26] Move existing classes to header-form primary constructors

    Fixed

    • post merge fix
    • Fix some performance regressions caused by the refactor

    Removed

    • [#5] Breaking: observer: constructor parameter on InternetConnection — migrate via attachObserver(connection.events, observer)
    Open source →
  3. 0.2.0 20 May 2026
    Release notes

    Added

    • Better CICD
    • setSlowThreshold to mutate slow-classification cutoff at runtime
    • [#1] Add a new logging module in the form of an ConnectivityObserver

    Changed

    • setCheckInterval and setSlowThreshold renamed to setters -> checkInterval and slowThreshold
    Open source →
  4. 0.1.0 18 May 2026
    Release notes

    Added

    • HttpProbe.get() issues GET against endpoints that reject HEAD (HTTP 405) or misbehave under it. The response body is drained but not buffered, so per-call memory cost matches HttpProbe.head().
    • HttpProbe.get for HTTP GET

    Changed

    • Breaking: unified the built-in HTTP probe into a single HttpProbe class with HttpProbe.head() / HttpProbe.get() named constructors. Replaces HttpHeadProbe; existing callers update via HttpHeadProbe()HttpProbe.head().
    • HttpProbe is split into .head(original) and .get
    Open source →
  5. 0.0.1 17 May 2026
    Release notes

    Added

    • InternetConnection scheduler with checkOnce() and a de-duped broadcast onStatusChange stream; sealed InternetStatus (Reachable with response time + ConnectionQuality, Unreachable with failed-probe diagnostics); slow-connection detection opt-in via slowThreshold.
    • Pluggable ConnectivityProbe interface with default HttpHeadProbe (HTTP HEAD, shared http.Client, per-target timeout); DNS / TCP / retry-decorator / mock transports drop in via constructor injection.
    • Pluggable ReachabilityPolicy interface with AnyReachablePolicy (default, any-of-N race) and AllReachablePolicy (strict, all-of-N); per-policy slow classification — winning probe under any-of-N, the slowest successful probe under all-of-N.
    • Sibling-probe cancellation via http.AbortableRequest: under any-of-N, in-flight probes abort at the transport layer the moment one succeeds, releasing sockets immediately instead of waiting out the per-target timeout.
    • an externalRecheckTrigger constructor hook forces an immediate recheck on any Stream<void> event (e.g. connectivity_plus.onConnectivityChanged.map(noopWithVal) on Flutter) without the package itself depending on Flutter.
    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