# Roadmap & Changelog

## Changelog

### August 2026

- iOS, Flutter and the JavaScript client: search debouncing now adapts to query length, and the JavaScript client also cancels superseded search requests (iOS 5.9.0, Flutter v10.3.0, `stream-chat` v9.51.0)
- iOS: added `ChannelSearch` and `ChatChannelSearchController`, plus `ChatMessage.member` exposing the author's channel role, notification mute state and member extra data (5.9.0)
- iOS: system message support on `addMembers`, `removeMembers` and `truncateChannel`; vendored Nuke image loading replaced by a built-in `StreamImageDownloader` (5.8.0)
- Android: local unread counts for channels with read events disabled; channel `truncatedAt`, `disabled` and `blocked` exposed as properties; image attachments resized by default with a 2MP cap (v7.8.0)
- React: localized unread count, icons available through `ComponentContext`, and a context for custom message composers (v14.11.0)
- React Native: offline database encryption (v9.8.0), plus an offline sync event limit and graceful database recovery on errors (v9.7.5, v9.7.6)
- Flutter: local unread counts, configurable message list auto-scroll, a channel list and message preview accessibility pass, and correct null ordering for `pinned_at` / `last_message_at` channel sorts (v10.3.0, v9.28.0)

### July 2026

- iOS + Android: enhanced mentions — highlighting and autocomplete for `@here`, `@channel`, role and group mentions (iOS 5.6.0, Android v7.5.0)
- iOS: new `all_mentions` and `direct_mentions` push notification preference levels, user groups support and role search, plus an extensive VoiceOver and Dynamic Type pass across the channel list, message list, composer and polls in the SwiftUI SDK (5.6.0)
- iOS: configurable attachment download location via `ChatClientConfig.localAttachmentDownloadsFolderURL`, and a disk cache for video attachments in the SwiftUI SDK via `MessageListConfig.videoAttachmentCachingPolicy` (5.7.0)
- Android: added `GroupedQueryChannels` with grouped unread counts, plus an opt-in ExoPlayer video disk cache (v7.5.0, v7.7.0)
- React: internal contexts and composer components exposed in the public API, `extractDisplayInfo` for `Avatar` and `AvatarStack`, and a keyboard and screen-reader accessibility pass across the composer, lists, search and dialogs (v14.7.0–v14.10.0)
- React Native: compatibility with React Native 0.86 and Expo 57, custom icon support, localized unread count, and message list recycling performance work (v9.5.2–v9.7.1)
- Flutter: new indexes for faster offline channel list reads (v10.2.0); the 9.x line picked up `PredefinedFilters` on `QueryChannels` and the SQL pagination work (v9.27.0)
- JavaScript client: localized unread count, and `AppIdentifier` for reporting app and app version in the user agent (v9.49.0, v9.50.0)

### June 2026

Flutter design refresh released

- Full visual refresh across messages, polls, the media viewer and channel info, plus live and static location sharing and "Delete message for me" (v10.0.1)

Mentions, user groups and predefined filters

- React and React Native: enhanced mentions; React Native also added channel info and channel details screens and a pinned channels design (v14.5.0, v9.4.0)
- Android: `ChatClient` endpoints for user groups, roles and chat preferences (v7.4.0)
- iOS, Android and Flutter: `PredefinedFilters` support on `QueryChannels`, completing the rollout that began on the JavaScript client and React Native in May (iOS 5.5.0, Android v7.3.0, Flutter v10.1.0)
- Flutter: thread and pinned message pagination moved to SQL (v10.1.0)

Accessibility and reliability improvements across SDKs

- iOS: VoiceOver support for the message reactions and actions overlay, and a fix for group channel avatars changing in the channel list (5.5.1)
- React Native: accessibility improvements for actionable items and rendering performance work, plus a members search bar in channel details and gallery virtualization (v9.3.1, v9.5.0)
- React: message timestamps localized across all locales (v14.5.0)

### May 2026

- iOS: added `LivestreamChat`, the state-layer counterpart of `LivestreamChannelController`, and typing indicator support in `LivestreamChannelController` (5.2.0, 5.3.0)
- iOS: brand and chrome color ramps exposed on the appearance palette, and layout tokens made customizable in `Appearance.tokens` (5.2.0, 5.4.0)
- Android: scroll-to-first-unread pill (v7.2.0) and non-destructive command mode (v7.1.0); on the UI Components line, `MessageBufferingConfig` for back-pressure on `message.new` events and poll option suggestions from voters (v6.38.0), plus poll comments from voters (v6.39.0)
- React: accessibility pass across dialogs, forms and focus flows, snackbar notifications, and predefined filters reflected in channel list ordering (v14.1.0–v14.3.0)
- React Native: foundational accessibility support, snackbar notifications, Arabic (`ar`) language support and SVG-aware image rendering (v9.2.0–v9.3.0)
- Flutter: faster channel state ingestion with less UI-thread work on heavy message lists, and coalesced `queryChannels` calls on flaky-network reconnects (v9.24.0)

### April 2026

Chat redesign released across iOS, Android, React and React Native

- Complete visual and architectural refresh with a redesigned component system (iOS 5.0.0, Android v7.0.0, React v14.0.0, React Native v9.0.0). Flutter shipped its refresh in June.
- Android: new `StreamDesign` design system consolidating `StreamColors`, `StreamTypography` and `StreamShapes`, with a redesigned channel list, message list, composer, attachment picker, reactions, polls, thread list and channel info
- React: component renames — `MessageInput` → `MessageComposer`, `ChannelPreview` → `ChannelListItem`, `Modal` → `GlobalModal` — and CSS import paths moved from `stream-chat-react/dist/css/v2/*` to `stream-chat-react/dist/css/*` (breaking change)
- React Native: new token-based theming system built around primitives, foundations, components and semantics; the v9 line supports React Native's New Architecture exclusively

Component and media improvements

- Android: support for intercepting CDN file requests (v6.37.0); added `ThreadsScreen` and `ThreadListHeader`, and fixed offline drafts not being cleared on logout (v7.0.1)
- iOS: voice recording and swipe-to-reply gesture fixes, and `CDNRequester` moved from `Components` to the `StreamMediaLoader` constructor (5.1.0)

### March 2026

Beta Chat Redesign released across iOS, Android, React, React Native and Flutter

- Major cross-platform UI/UX overhaul now in beta.

Livestream & media enhancements

- Freeze/unfreeze channel support (livestream control)
- Video attachments now include dimensions + duration for custom CDN uploads

Performance & reliability improvements across SDKs

- Fixes for threads, pagination, offline behavior, and reconnection stability.

### February 2026

- All SDKs: Server-defined defaults for `message_limit` and `member_limit`; `QueryChannels` defaults set to `null` to use server configuration; `ChannelListQuery` now uses backend defaults
- All SDKs: Broad documentation improvements across all Chat SDKs
- Android: Added method for clearing SDK cache and temporary files
- Android + iOS: `team` field added/exposed in `MessageReadEvent`

### January 2026

- Android: Added method for clearing cache and temporary files, plus a `team` property to `MessageReadEvent`
- iOS: Fixed a rare deadlock when reconnecting to the web-socket and a crash when querying Channel List by `.filterTags`

### December 2025

- Moving the changelog docs here
- Reminders
- Live location sharing
- Campaign stats
- Restricted visibility messaging
- Team-level permissions
- Push V3
- Multi-User device support
- Average response time API
- Message count per channel
- Delivery receipts
- Delete for me

---

For the most recent version of this documentation, visit [https://getstream.io/chat/docs/dotnet-csharp/roadmap-and-changelog/](https://getstream.io/chat/docs/dotnet-csharp/roadmap-and-changelog/).