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

supabase / supabase-swift / 35222124927
89%

Build:
DEFAULT BRANCH: main
Ran 17 Sep 2026 12:40PM UTC
Jobs 1
Files 134
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

17 Sep 2026 12:36PM UTC coverage: 89.171% (+0.03%) from 89.146%
35222124927

push

github

web-flow
test: guard default-MainActor consumers and cover the trap contracts with exit tests (#1364)

* test: guard default-MainActor consumers and cover the trap contracts with exit tests

Evaluation pass for the Swift 6.2 language features unlocked by the
6.2 toolchain floor. Decisions are recorded on SDK-1865; the short
version:

- NonisolatedNonsendingByDefault: not adopted. It moves decode and
  encode work onto the caller's actor unless every public async entry
  point is audited for `@concurrent`, and a consumer that enables it
  already compiles clean against the SDK.
- InferIsolatedConformances: already on.
- StrictMemorySafety, Task.immediate, Span/InlineArray: skipped.

What lands:

- DefaultIsolationTests: a compile-only test target built with
  `.defaultIsolation(MainActor.self)` (SE-0466) that calls into every
  module, so a change that stops working from a main-actor-isolated
  app fails CI. Registered in the shared Supabase scheme.
- Swift Testing exit tests for the documented trap contracts of
  `SupabaseClient.init` (URL without host) and `StorageApi` (invalid
  URL with `useNewHostname`). macOS and Linux only, where exit tests
  can run.
- AGENTS.md no longer cites `RetryRequestInterceptor` as a trap
  example: SDK-1791 replaced its backoff parameters with `RetryPolicy`
  and removed that precondition.

Refs SDK-1865

Co-Authored-By: Claude <noreply@anthropic.com>

* test: pass explicit auth storage so the new tests build on Linux

`SupabaseClient.init(supabaseURL:supabaseKey:)` only exists where a
default `AuthLocalStorage` does, which excludes Linux and Android. Both
new call sites used it. The exit test now passes the same mock storage
its sibling test uses, and the default-isolation target declares a
`nonisolated` no-op storage, which is also what a consumer under
default `@MainActor` isolation has to write because `AuthLocalStorage`
refines `Sendable`.

Verified in a `swift:6.2-noble` container: `swift build --build-tests`
exits 0 and ... (continued)

10631 of 11922 relevant lines covered (89.17%)

900746.79 hits per line

Coverage Regressions

Lines Coverage ∆ File
1
0.0
0.0% Sources/Helpers/TaskLocalHelpers.swift
Jobs
ID Job ID Ran Files Coverage
1 35222124927.1 17 Sep 2026 12:40PM UTC 134
89.17
GitHub Action Run
Source Files on build 35222124927
  • Tree
  • List 134
  • Changed 3
  • Source Changed 2
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #35222124927
  • 93e552c9 on github
  • Prev Build on main (#35221295927)
  • Next Build on main (#35230994445)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc