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

supabase / supabase-swift / 29035534361
83%

Build:
DEFAULT BRANCH: main
Ran 09 Jul 2026 05:09PM UTC
Jobs 1
Files 95
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 05:01PM UTC coverage: 83.279% (+0.2%) from 83.062%
29035534361

push

github

web-flow
feat(supabase): add W3C trace context propagation via OpenTelemetry trait (#1101)

* feat(supabase): add W3C trace context propagation via OpenTelemetry trait

Adds an OpenTelemetry SPM trait that pulls in opentelemetry-swift-core
directly and gates a new tracePropagation option on SupabaseClientOptions.
When enabled, the active OTel span's traceparent header is injected into
every outgoing PostgREST/Storage/Functions/Auth/Realtime request. Compiles
to a no-op when the trait is disabled, so the option is always safe to set.

Supersedes the protocol-injection approach from #1010, closed in favor of
waiting for the Swift 6.1 trait migration (SDK-1043).

Linear: SDK-1043

* fix: address code review findings for OTel trace propagation

- CI now also builds/tests with the OpenTelemetry trait enabled, so the
  trait-on code path (previously untested by any automated gate) gets
  real coverage.
- Document the two-step opt-in (dependency trait + tracePropagation)
  directly on the option, since it's the first SPM trait in this package.
- Note the pre-existing _invokeWithStreamedResponse exception so it's a
  documented gap rather than a rediscovered surprise.

* refactor: trim redundant CI step and duplicate tracing tests

- Drop the standalone "Build (OpenTelemetry trait)" CI step: the
  following test step builds the same target anyway.
- Drop injectLeavesRequestUnchangedWhenNoActiveSpan and
  activeSpanProducesMatchingTraceParentHeader: each duplicated
  coverage already provided by a sibling test at a different layer.

* refactor(supabase): drop tracePropagation flag, trait is the sole toggle

The OpenTelemetry trait already gates whether OTel is even linked, so a
separate runtime Bool was redundant dual-gating — and the exact source
of the "flag true but trait off" silent no-op a reviewer flagged
earlier. TraceContext.inject(into:) is now applied unconditionally by
SupabaseClient; it no-ops on its own whenever there's no active span
or the trait is disab... (continued)

7 of 12 new or added lines in 2 files covered. (58.33%)

7894 of 9479 relevant lines covered (83.28%)

37.66 hits per line

Uncovered Changes

Lines Coverage ∆ File
3
66.67
Sources/Supabase/Tracing.swift
2
75.68
8.49% Sources/Supabase/SupabaseClient.swift
Jobs
ID Job ID Ran Files Coverage
1 29035534361.1 09 Jul 2026 05:09PM UTC 95
83.28
GitHub Action Run
Source Files on build 29035534361
  • Tree
  • List 95
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #29035534361
  • 8f147ecc on github
  • Prev Build on main (#28982172872)
  • Next Build on main (#29037463054)
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