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

supabase / supabase-swift / 29042686516
83%

Build:
DEFAULT BRANCH: main
Ran 09 Jul 2026 07:11PM UTC
Jobs 1
Files 94
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 06:59PM UTC coverage: 83.498% (-0.1%) from 83.63%
29042686516

push

github

web-flow
refactor(realtime): inject clock explicitly, remove global _clock (#1106)

withTimeout, ChannelStateManager, RealtimeClientV2, and ConnectionManager
all read the DEBUG-settable global _clock directly or defaulted to it,
letting one test's clock mutation leak into a concurrently-running client
created by another test. Thread an explicit clock through each instead:

- withTimeout(interval:clock:operation:) takes a clock defaulting to
  ContinuousClock() (package-visibility, not public API).
- ChannelStateManager now requires a clock through its initializer,
  threaded from RealtimeChannelV2's socket.
- RealtimeClientV2.init and ConnectionManager.init no longer default
  clock to the global; RealtimeClientV2 gains a package-visibility
  init(url:options:clock:) so SupabaseClient can inject a test clock
  without exposing it publicly.
- SupabaseClient gains the same package-visibility clock-accepting
  init, threaded into the RealtimeClientV2 it constructs.
- Sources/Helpers/_Clock.swift is deleted entirely now that nothing
  reads the global.

Tests inject a TestClock (or ContinuousClock() where real timing is
required) directly into the client under test instead of mutating
_clock in setUp/tearDown, fixing missing-teardown-reset bugs in
RealtimeTests.swift, RealtimeLifecycleTests.swift, and
RealtimeIntegrationTests.swift along the way.

This is PR 2 of 2 for SDK-1227, stacked on the PostgREST clock DI PR
(#1103) since PostgrestBuilder was the last other reader of the global.

Linear: SDK-1227

32 of 32 new or added lines in 6 files covered. (100.0%)

21 existing lines in 1 file now uncovered.

7934 of 9502 relevant lines covered (83.5%)

37.71 hits per line

Coverage Regressions

Lines Coverage ∆ File
21
25.55
-11.68% Sources/Auth/Internal/Keychain.swift
Jobs
ID Job ID Ran Files Coverage
1 29042686516.1 09 Jul 2026 07:11PM UTC 94
83.5
GitHub Action Run
Source Files on build 29042686516
  • Tree
  • List 94
  • Changed 9
  • Source Changed 7
  • Coverage Changed 9
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #29042686516
  • 45d0fbfd on github
  • Prev Build on main (#29041486584)
  • Next Build on main (#29045190329)
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