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

supabase / supabase-flutter / 29081780486 / 4
87%
main: 87%

Build:
DEFAULT BRANCH: main
Ran 10 Jul 2026 09:09AM UTC
Files 1
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

10 Jul 2026 09:03AM UTC coverage: 77.778%. Remained the same
29081780486.4

push

github

web-flow
refactor: modernize dart syntax across client packages (#1574)

## What

Sweeps the client packages for code that can use syntax introduced in
Dart 3.9 or earlier (our minimum SDK floor), and adds lint rules so new
code keeps to the modern style.

All changes are behavior-preserving refactors.

### Switch expressions (replacing value-returning switch statements /
if-else chains)
- `postgrest`: `textSearch` type mapping
- `realtime_client`: `connectionState`,
`PostgresChangeFilterType.token`, `PostgresChangeEvent.fromString`,
`ChannelEventsExtended.eventName`, `_binaryDecode`
- `gotrue`: `JWK operator[]`, `fetch` HTTP method dispatch,
`PhoneEnrollment._fromJsonValue`
- `supabase`: `_getPostgrestData` filter dispatch

### Null-aware collection elements (`{'k': ?v}`) and spreads (`...?`)
- `storage_client`: `ToQueryParams`
- `gotrue`: `JWK.toJson`, `getOAuthSignInUrl` url params

### Collection-for / spread (replacing `fold` / `addAll`)
- `postgrest`: `_setColumnsSearchParam`
- `storage_client`: `download` query merge

### if-case pattern (replacing manual `is` + cast)
- `postgrest`: `_handleMaybeSingleError`

## Lint rules added to `supabase_lints`
- `use_enums` (core)
- `unnecessary_breaks` (core)
- `prefer-switch-expression` (DCM)

Enum switches are kept exhaustive (no `_` wildcard) so
`avoid-wildcard-cases-with-enums` stays satisfied.

## Testing
- `dart analyze` clean across all packages with the new rules.
- `dcm analyze` reports no new issues (one pre-existing
`avoid-inferrable-type-arguments` in `gotrue_oauth_api.dart` is
untouched).
- Package test suites pass; remaining failures are pre-existing
integration tests that require a running local Supabase instance.

Closes SDK-1283

49 of 63 relevant lines covered (77.78%)

1.27 hits per line

Source Files on job yet_another_json_isolate - 29081780486.4
  • Tree
  • List 1
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 29081780486
  • b74fdfee on github
  • Prev Job for on main (#29030706929.2)
  • Next Job for on main (#29084055776.8)
  • 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