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

supabase / supabase-flutter / 29030706929
87%

Build:
DEFAULT BRANCH: main
Ran 09 Jul 2026 03:46PM UTC
Jobs 9
Files 93
Run time 1min
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: 86.537% (-0.08%) from 86.615%
29030706929

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)

109 of 117 new or added lines in 21 files covered. (93.16%)

4551 of 5259 relevant lines covered (86.54%)

3.97 hits per line

Uncovered Changes

Lines Coverage ∆ File
6
84.21
packages/supabase_common/lib/src/replay_subject.dart
1
81.36
-1.11% packages/supabase/lib/src/supabase_stream_builder.dart
1
0.0
packages/supabase_common/lib/src/fetch_options.dart
Jobs
ID Job ID Ran Files Coverage
1 postgrest - 29030706929.1 09 Jul 2026 03:48PM UTC 10
84.92
GitHub Action Run
2 yet_another_json_isolate - 29030706929.2 09 Jul 2026 03:46PM UTC 1
77.78
GitHub Action Run
3 functions_client - 29030706929.3 09 Jul 2026 03:46PM UTC 3
98.81
GitHub Action Run
4 supabase_flutter - 29030706929.4 09 Jul 2026 03:46PM UTC 10
79.31
GitHub Action Run
5 storage_client - 29030706929.5 09 Jul 2026 03:48PM UTC 6
93.71
GitHub Action Run
6 realtime_client - 29030706929.6 09 Jul 2026 03:48PM UTC 11
89.44
GitHub Action Run
7 gotrue - 29030706929.7 09 Jul 2026 03:48PM UTC 28
85.77
GitHub Action Run
8 supabase - 29030706929.8 09 Jul 2026 03:46PM UTC 14
80.33
GitHub Action Run
9 supabase_common - 29030706929.9 09 Jul 2026 03:46PM UTC 10
87.85
GitHub Action Run
Source Files on build 29030706929
  • Tree
  • List 93
  • Changed 22
  • Source Changed 21
  • Coverage Changed 19
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #29030706929
  • 46601bbb on github
  • Prev Build on main (#29023496087)
  • Next Build on main (#29031762837)
  • 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