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

supabase / supabase-flutter / 29826021481
86%

Build:
DEFAULT BRANCH: main
Ran 21 Jul 2026 11:27AM UTC
Jobs 9
Files 103
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

21 Jul 2026 11:25AM UTC coverage: 86.865% (+0.008%) from 86.857%
29826021481

push

github

web-flow
fix(realtime): UTF-8 encode broadcast header fields in serializer (#1618)

## Summary

The binary broadcast serializer measured header field lengths with
`String.length` (UTF-16 code units) and wrote one byte per code unit.
Any multi-byte character (accents, emoji, non-Latin scripts) in the
topic, ref, join-ref, event name, or metadata corrupted the length
prefixes and desynchronized the binary frame. Each header field is now
encoded to UTF-8 bytes first, and the byte length is used for both the
length prefixes and the write offsets, matching the `utf8.decode` on the
decode side.

**Outcome:** implemented (bug fix)

## Changes
- `packages/realtime_client/lib/src/serializer.dart` — UTF-8 encode
`topic`, `ref`, `joinRef`, `userEvent`, and `metadata` before
measuring/writing; replaced the code-unit `_writeString` helper with a
byte-copying `_writeBytes`.
- `packages/realtime_client/test/serializer_test.dart` — added a test
covering multi-byte header fields (accented text and emoji)
round-tripping correctly.

## Reference
supabase-js PR #2516 / commit `b4ddbd5` (fix(realtime): encode broadcast
header fields as UTF-8)

## Compliance matrix
`realtime.configuration.binary_protocol` remains `implemented` (no new
public symbols; the change is internal to the non-exported serializer).

Closes SDK-1322

5575 of 6418 relevant lines covered (86.87%)

3.92 hits per line

Coverage Regressions

Lines Coverage ∆ File
14
92.51
0.06% packages/realtime_client/lib/src/realtime_channel.dart
Jobs
ID Job ID Ran Files Coverage
7 supabase - 29826021481.7 21 Jul 2026 11:27AM UTC 17
83.2
GitHub Action Run
8 realtime_client - 29826021481.8 21 Jul 2026 11:29AM UTC 11
90.14
GitHub Action Run
9 supabase_flutter - 29826021481.9 21 Jul 2026 11:27AM UTC 10
79.31
GitHub Action Run
5 postgrest - 29727256785.5 20 Jul 2026 08:19AM UTC 10
85.33
GitHub Action Run
8 supabase_common - 29727256785.8 20 Jul 2026 08:17AM UTC 10
100.0
GitHub Action Run
1 functions_client - 29727256785.1 20 Jul 2026 08:17AM UTC 3
98.85
GitHub Action Run
9 yet_another_json_isolate - 29727256785.9 20 Jul 2026 08:17AM UTC 1
93.65
GitHub Action Run
7 storage_client - 29727256785.7 20 Jul 2026 08:19AM UTC 13
84.63
GitHub Action Run
3 gotrue - 29727256785.3 20 Jul 2026 08:20AM UTC 28
87.6
GitHub Action Run
Source Files on build 29826021481
  • Tree
  • List 103
  • Changed 4
  • Source Changed 4
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #29826021481
  • 86afeb2c on github
  • Prev Build on main (#29727256785)
  • Next Build on main (#29829394030)
  • Delete
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