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

supabase / supabase-flutter / 28160249676
85%

Build:
DEFAULT BRANCH: main
Ran 25 Jun 2026 09:24AM UTC
Jobs 8
Files 80
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

25 Jun 2026 09:22AM UTC coverage: 85.368% (+0.2%) from 85.174%
28160249676

push

github

web-flow
chore: align package README names, harden headers getter, simplify forEach loops (#1464)

## What

A small batch of cleanups in the same spirit as #1458 / the recent
`functions_client` simplifications.

- **README headings**: `gotrue`, `realtime_client`, `storage_client`,
and `supabase` still used the old `*-dart` repo slugs in their first
heading. Aligned them to the actual pub package name (matching the
earlier `functions-dart` → `functions_client` fix).
- **`SupabaseClient.headers`**: was `get headers { return _headers; }`,
returning the internal map directly. Now returns
`Map.unmodifiable(_headers)` with arrow syntax, mirroring
`functions_client`. This prevents callers from mutating the returned map
and silently desyncing from the internal state (header changes must go
through the `headers=` setter, which propagates to all sub-clients).
- **`forEach` closures → plain loops**:
- `postgrest_filter_builder.match()`: dropped the
reassign-inside-closure `query.forEach((k, v) => url = ...)` for a `for`
loop.
- `realtime_client` `transformers.convertChangeData`:
`record.forEach((key, value) {...})` had an unused `value` parameter →
`for (final key in record.keys)`.

## Why

Consistency across package READMEs, and closing a small footgun on the
public `headers` getter so external mutation can't quietly diverge from
what the sub-clients actually send.

## Verification

- `dart format --set-exit-if-changed`: clean
- `dart analyze lib` on postgrest, realtime_client, supabase: no issues
- Tests: supabase `client_test` (incl. Headers Management),
`utilities_test`, `mock_test`, and realtime `transformers_test` pass.
Pre-existing integration tests that require a local server are
unaffected.

## Note on the `headers` change

This is technically a behavior change on a public getter: external
`client.headers['x'] = y` previously no-op'd (the mutation was lost) and
now throws. The supported path to change headers remains the `headers=`
setter.

4 of 4 new or added lines in 3 files covered. (100.0%)

129 existing lines in 2 files now uncovered.

4090 of 4791 relevant lines covered (85.37%)

3.64 hits per line

Coverage Regressions

Lines Coverage ∆ File
119
72.52
1.36% packages/gotrue/lib/src/gotrue_client.dart
10
76.96
0.0% packages/postgrest/lib/src/postgrest_builder.dart
Jobs
ID Job ID Ran Files Coverage
3 supabase_flutter - 28160249676.3 25 Jun 2026 09:25AM UTC 11
77.52
GitHub Action Run
4 gotrue - 28160249676.4 25 Jun 2026 09:26AM UTC 26
84.05
GitHub Action Run
5 storage_client - 28160249676.5 25 Jun 2026 09:26AM UTC 5
92.97
GitHub Action Run
6 realtime_client - 28160249676.6 25 Jun 2026 09:26AM UTC 11
88.1
GitHub Action Run
7 postgrest - 28160249676.7 25 Jun 2026 09:26AM UTC 9
84.05
GitHub Action Run
8 supabase - 28160249676.8 25 Jun 2026 09:24AM UTC 15
81.99
GitHub Action Run
7 yet_another_json_isolate - 27986095786.7 22 Jun 2026 09:45PM UTC 1
79.03
GitHub Action Run
4 functions_client - 27986095786.4 22 Jun 2026 09:45PM UTC 2
97.14
GitHub Action Run
Source Files on build 28160249676
  • Tree
  • List 80
  • Changed 8
  • Source Changed 8
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #28160249676
  • ba67347d on github
  • Prev Build on main (#28103817248)
  • 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