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

supabase / supabase-swift / 30998461998
84%

Build:
DEFAULT BRANCH: main
Ran 05 Aug 2026 10:52AM UTC
Jobs 1
Files 99
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

05 Aug 2026 10:41AM UTC coverage: 83.888% (-0.2%) from 84.04%
30998461998

push

github

web-flow
fix: flaky CI in AuthTests and RealtimeTests (#1164)

* fix(realtime): buffer early push ack to avoid lost-ack timeout

An ack arriving before send() registered its continuation was silently
dropped, forcing the push to wait out the full timeout. Under CI load
this lost race often enough to flake pushWithAck().

* test(auth): stop mutating the shared jsonEncoder singleton

Several suites grabbed AuthClient.Configuration.jsonEncoder (a
process-wide singleton) and mutated its outputFormatting in place, an
unsynchronized data race under Swift Testing's default parallel
execution. Each makeSUT() now builds its own encoder instead.

* fix(test): retry transient storage-api 500s in StorageFileIntegrationTests

storage-api occasionally returns a transient 500 ("Internal Server Error" /
"No such file or directory") on an operation immediately following an
upload() in CI — an eventual-consistency race in the backend, not an SDK
bug. Confirmed recurring across different operations (moveObjectToDifferentPath,
signURL_withCustomFilenameForDownload) in prior CI runs on main.

* fix(test): serialize withMainSerialExecutor across suites and targets

withMainSerialExecutor (ConcurrencyExtras) mutates a process-global
scheduling flag with no scoping guarantee if it changes mid-operation
(their own doc warns of this). `.serialized` only serializes a suite's
own tests, not against other suites running concurrently, so any two
suites calling withMainSerialExecutor at the same time can stomp each
other's save/restore — this caused a cascade of ~19 spurious failures
(sessionMissing, MockNotFound, 78s hangs) across AuthClientTests,
AuthOAuthServerTests, RequestsTests, and SessionManagerTests in one CI run.

Add a MainSerialExecutorGate (mirrors the existing MockerGate/
.mockerSerialized pattern) and apply .mainSerialExecutorSerialized to
every suite that calls withMainSerialExecutor.

* Revert "fix(test): retry transient storage-api 500s in StorageFileIntegrationTests"

Thi... (continued)

12 of 14 new or added lines in 1 file covered. (85.71%)

21 existing lines in 1 file now uncovered.

8440 of 10061 relevant lines covered (83.89%)

1067271.25 hits per line

Uncovered Changes

Lines Coverage ∆ File
2
83.33
-0.45% Sources/RealtimeV2/PushV2.swift

Coverage Regressions

Lines Coverage ∆ File
21
25.55
-11.68% Sources/Auth/Internal/Keychain.swift
Jobs
ID Job ID Ran Files Coverage
1 30998461998.1 05 Aug 2026 10:52AM UTC 99
83.89
GitHub Action Run
Source Files on build 30998461998
  • Tree
  • List 99
  • Changed 3
  • Source Changed 1
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #30998461998
  • 35856885 on github
  • Prev Build on main (#30860565810)
  • Next Build on main (#31011736834)
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