The Wire ยท Showcase
FLUTTER REALTIME FIX STOPS SILENT RLS FAILURES, TYPESCRIPT 7 CUTS TYPECHECK TIME 66%
By RepoJournal ยท Filed ยท About Supabase
Supabase Flutter just patched a critical realtime bug where async access tokens never made it into join payloads, leaving RLS unable to evaluate permissions on incoming subscriptions.
The fix [1] buffers the phx_join until the token resolves, then patches it into the payload before flush - a one-line change with major implications for React Native and Expo apps relying on async storage. On the supabase-js side, v2.110.2 [7] landed with a fix for session state leaking on signout failures [8], so auth state doesn't ghost your next sign-in. The Flutter SDK also closed parity gaps: `mfa.challenge()` now accepts a `channel` parameter [2] for phone-based MFA (SMS/WhatsApp), matching supabase-js, and OAuth signin is now fully documented with the URL-without-launch path [3]. Over in the monorepo, TypeScript 7 [5] shipped with the native Go compiler, cutting full turbo typecheck from 56s to 19s locally - a 66% win that pays off on every type-check cycle. Sentry error reporting on the TanStack build [4] was a silent no-op because `Sentry.init` never ran; that's fixed. ETL streaming to Snowflake now uses deferred durability [6] with proper channel lifecycle handling and replay filtering, so your pipelines survive restarts cleanly.
Action items
- โ Upgrade supabase-flutter to patch async token handling in realtime subscriptions supabase/supabase-flutter [immediate]
- โ Upgrade supabase-js to 2.110.2 to fix signout state leakage supabase/supabase-js [plan]
- โ Plan TypeScript 7 upgrade - turbo typecheck is 3x faster with native compiler supabase/supabase [plan]
- โ Review Snowflake ETL streaming durability model if you run pipelines supabase/etl [monitor]
References
- [1] fix(realtime): patch channel join payloads with access token before flushing (#1553) supabase/supabase-flutter
- [2] feat(gotrue): add channel parameter to mfa.challenge() (#1547) supabase/supabase-flutter
- [3] docs(auth): document getOAuthSignInUrl for URL-without-launch, mark oauth parity implemented (#1548) supabase/supabase-flutter
- [4] fix(studio): initialize Sentry on the TanStack build (captures were silent no-ops) (#47666) supabase/supabase
- [5] chore(deps): upgrade to TypeScript 7 (native compiler) (#47757) supabase/supabase
- [6] fix(destinations): streaming uses deferred durability in Snowflake โ supabase/etl
- [7] v2.110.2 โ supabase/supabase-js
- [8] chore(release): version 2.110.2 changelogs (#2506) supabase/supabase-js