better_internet_connectivity_checker 0.2.0
better_internet_connectivity_checker: ^0.2.0 copied to clipboard
Pure-Dart internet connectivity checker. Distinguishes "interface up" from "can reach the public internet". Pluggable probes, policies, and triggers.
0.2.0 - 2026-05-20 #
0.1.0 - 2026-05-18 #
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 matchesHttpProbe.head().- HttpProbe.get for HTTP GET
Changed #
- Breaking: unified the built-in HTTP probe into a single
HttpProbeclass withHttpProbe.head()/HttpProbe.get()named constructors. ReplacesHttpHeadProbe; existing callers update viaHttpHeadProbe()→HttpProbe.head(). - HttpProbe is split into .head(original) and .get
0.0.1 - 2026-05-17 #
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
externalRecheckTriggerconstructor hook forces an immediate recheck on any Stream
