• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

supabase / supabase-flutter / 29023496087 / 1
87%
main: 87%

Build:
DEFAULT BRANCH: main
Ran 09 Jul 2026 02:04PM UTC
Files 6
Run time 1s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

09 Jul 2026 01:58PM UTC coverage: 92.713% (-0.6%) from 93.263%
29023496087.1

push

github

web-flow
refactor: drop retry dependency in favor of an in-house helper (#1571)

## What

Removes the `retry` package from both `gotrue` and `storage_client`,
replacing it with a small self-contained `RetryOptions`/`retry` helper
(`lib/src/retry.dart`) in each package.

- `gotrue` used the top-level `retry()` (token refresh).
- `storage_client` used `RetryOptions(...).retry(...)` (request
retries).

## Why

Both packages pulled in `retry` for the same narrow use: exponential
backoff gated by a `retryIf` predicate. The helper is ~40 lines and
mirrors the package's behavior exactly:

- 200 ms delay factor, `2^attempt` backoff
- 25% jitter (`randomizationFactor`)
- 30 s max delay
- 8 max attempts by default

`gotrue`'s time-budget `retryIf` depends on these exact defaults, so
they are preserved.

## Testing

- New `retry_test.dart` in `gotrue` covers success-after-retries,
`maxAttempts` cutoff, `retryIf` short-circuit, `RetryOptions.retry` (the
storage usage shape), and exponential/capped delay math — all pass.
- `dart analyze` clean for both packages.

Note: the helper is duplicated in each package because they are
published independently and there is no shared internal utility package.

458 of 494 relevant lines covered (92.71%)

2.64 hits per line

Source Files on job storage_client - 29023496087.1
  • Tree
  • List 6
  • Changed 1
  • Source Changed 1
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 29023496087
  • b81d2121 on github
  • Prev Job for on main (#29022880549.8)
  • Next Job for on main (#29030706929.4)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc