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

supabase / supabase-flutter / 29030706929 / 5
87%
main: 87%

Build:
DEFAULT BRANCH: main
Ran 09 Jul 2026 03:49PM UTC
Files 6
Run time 0s
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 03:44PM UTC coverage: 93.709% (+1.0%) from 92.713%
29030706929.5

push

github

web-flow
refactor: extract shared code into supabase_common package (#1573)

## What

Introduces a new published `supabase_common` package and moves the
**non-breaking** shared/duplicated code from #1572 into it.

**Stacked:** `main` ← #1569 (drop rxdart) ← #1571 (drop retry, in-house
helper) ← **this PR**.

> [!NOTE]
> Review/merge in stack order. Retarget this PR's base as each parent
merges (→ `refactor/inline-retry`, then `refactor/supabase-drop-rxdart`,
then `main`).

## Moved into `supabase_common`

| Item | Was |
|------|-----|
| `ToSnakeCase` enum extension | duplicated (byte-for-byte) in `gotrue`
+ `storage_client` |
| Platform detection (`platform_io`/`platform_stub`) | duplicated in
`supabase` + `supabase_flutter` (kept the extra
`isRunningInFlutterTest`) |
| `buildClientInfoHeader` (`X-Client-Info`) | built in all 7 client
packages (simple + platform-aware forms) |
| `isSuccessStatusCode` (2xx) | inlined/duplicated in `gotrue`,
`storage_client`, `postgrest`, `functions_client` |
| `FetchOptions` | duplicated internally in `gotrue` + `storage_client`
|
| `Base64Url` / PKCE / uuid helpers | `gotrue`-only; also fixes an
intra-`gotrue` duplication in `jwt.dart` |
| `ReplaySubject` | unifies gotrue's `_ReplaySubject` and supabase's
`_BehaviorSubject` |
| `retry` / `RetryOptions` helper | the in-house copy #1571 added to
`gotrue` + `storage_client` (identical); `@internal` dropped since it is
now used across packages |

## Not included

- **Tier 3** (shared exception base, HTTP fetch wrappers, `RetryTimer`)
— breaking, tracked under v3 (#1278).

## Notes

- `supabase_common` is an internal, published package (client packages
cannot depend on an unpublished local package). Its README flags it as
internal with breaking changes expected.
- Registered in the workspace, `test.yml` (`DART_PACKAGES` + Coveralls
carryforward), and `release-pana.yml`.
- No public API changes: every moved symbol was either internal or
re-exported so consumers importing from the cl... (continued)

432 of 461 relevant lines covered (93.71%)

2.66 hits per line

Source Files on job storage_client - 29030706929.5
  • Tree
  • List 6
  • Changed 4
  • Source Changed 4
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 29030706929
  • 46601bbb on github
  • Prev Job for on main (#29023496087.1)
  • Next Job for on main (#29031762837.9)
  • 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