Skip to content

Conversation

@Stream-SDK-Bot
Copy link
Collaborator

StreamChat

βœ… Added

  • Add hideHistoryBefore to add members for configuring the history visibility #3892

StreamChatUI

🐞 Fixed

  • Fix reading messages from muted users #3896

@Stream-SDK-Bot Stream-SDK-Bot requested a review from a team as a code owner December 18, 2025 11:17
@coderabbitai
Copy link

coderabbitai bot commented Dec 18, 2025

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

✨ Finishing touches
πŸ§ͺ Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch release/4.95.0

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❀️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link

1 Warning
⚠️ Big PR

Generated by 🚫 Danger

@github-actions
Copy link

Public Interface

 public class Chat  
-   public func addMembers(_ members: [MemberInfo],systemMessage: String? = nil,hideHistory: Bool = false)async throws 
+   public func addMembers(_ members: [MemberInfo],systemMessage: String? = nil,hideHistory: Bool = false,hideHistoryBefore: Date? = nil)async throws 
-   public func addMembers(_ members: [UserId],systemMessage: String? = nil,hideHistory: Bool = false)async throws 
+   public func addMembers(_ members: [UserId],systemMessage: String? = nil,hideHistory: Bool = false,hideHistoryBefore: Date? = nil)async throws 

 public class ChatChannelController: DataController, DelegateCallable, DataStoreProvider  
-   public func addMembers(_ members: [MemberInfo],hideHistory: Bool = false,message: String? = nil,completion: ((Error?) -> Void)? = nil)
+   public func addMembers(_ members: [MemberInfo],hideHistory: Bool = false,hideHistoryBefore: Date? = nil,message: String? = nil,completion: ((Error?) -> Void)? = nil)
-   public func addMembers(userIds: Set<UserId>,hideHistory: Bool = false,message: String? = nil,completion: ((Error?) -> Void)? = nil)
+   public func addMembers(userIds: Set<UserId>,hideHistory: Bool = false,hideHistoryBefore: Date? = nil,message: String? = nil,completion: ((Error?) -> Void)? = nil)

@Stream-SDK-Bot
Copy link
Collaborator Author

SDK Performance

target metric benchmark branch performance status
MessageList Hitches total duration 10 ms 3.34 ms 66.6% πŸ”Ό 🟒
Duration 2.6 s 2.49 s 4.23% πŸ”Ό 🟒
Hitch time ratio 4 ms per s 1.39 ms per s 65.25% πŸ”Ό 🟒
Frame rate 75 fps 78.41 fps 4.55% πŸ”Ό 🟒
Number of hitches 1 0.4 60.0% πŸ”Ό 🟒

@Stream-SDK-Bot
Copy link
Collaborator Author

SDK Size

title previous release current release diff status
StreamChat 7.28 MB 6.76 MB -539 KB πŸš€
StreamChatUI 4.89 MB 4.91 MB +16 KB 🟒

@Stream-SDK-Bot
Copy link
Collaborator Author

StreamChat XCSize

Object Diff (bytes)
RequestEncoder.o -149972
ChannelController.o -121402
Controller.o +105294
OfflineRequestsRepository.o -85178
ChatMessage.o -75908
Show 368 more objects
Object Diff (bytes)
Logger.o -65490
MessageController.o -65461
CDNClient.o -60238
ChatClient+ChannelController.o +41413
MessageDTO.o -41234
ChannelEditDetailPayload.o -38059
Chat.o -37019
SyncOperations.o -35885
ChatClient.o +31288
MessageEditor.o -28829
MessagePayloads.o -27954
MessageUpdater.o -23218
QueryOptions.o +22700
ChannelListPayload.o +20338
CurrentUserController.o -17621
APIClient.o +16657
MessageSearchQuery.o -16439
ChatRemoteNotificationHandler.o -14449
AttachmentQueueUploader.o -14433
Sequence+CompactMapLoggingError.o +14193
NotificationEvents.o -13368
ChannelListController+Combine.o +12912
ChannelUpdater.o -12062
ChannelListLinker.o -11144
MemberController.o -11142
IdentifiablePayload.o -11112
ErrorPayload.o -10767
EndpointPath.o -10740
ChatChannelWatcherListController.o -10729
EventsController.o -10470
UserController.o +9500
Filter+predicate.o -7910
AttachmentTypes.o +7826
ChatMessageGiphyAttachment.o +7716
Channel.o -7480
ConnectionController.o +7431
PollController.o -7333
ChannelListController.o -7177
Atomic.o +7062
UserDTO.o -7001
ReadStateHandler.o -6938
MessageTranslationsPayload.o +6493
ThreadListController.o -6152
UnknownUserEvent.o +6000
MemberListController.o -5804
ChannelEvents.o -5768
MessageEvents.o -5744
ThreadQuery.o -5560
UnknownChannelEvent.o +5296
MessageReminderListController.o -5180
ChatMessageVideoAttachment.o -5154
LivestreamChannelController.o +5152
MessageRepository.o -4906
PollVoteListController.o -4668
User.o +4356
AudioAnalysing.o -4284
ChatState.o -3942
ReactionListController.o -3736
PollVoteDTO.o -3654
PollsRepository.o -3568
MemberModelDTO.o -3522
MessageSender.o -3496
UserUpdater.o -3350
CurrentUserUpdater.o -3290
ChannelListQuery.o -3158
WebSocketClient.o -3149
LivestreamChannelController+Combine.o -3002
ChannelEventsController.o -2888
RemindersRepository.o -2864
PollsPayloads.o -2862
AudioPlaying.o -2843
MessageSearchController.o -2831
AnyAttachmentUpdater.o -2830
AppSettings.o -2812
ChatState+Observer.o -2659
ThreadListPayload.o -2650
ManualEventHandler.o -2638
ChatClient+Factory.o -2636
MulticastDelegate.o +2632
ConnectionRepository.o +2572
UserPayloads.o -2556
EventType.o -2554
AudioRecording.o -2552
EventPayload.o -2528
CurrentUserDTO.o -2520
ChannelController+Combine.o -2476
AuthenticationRepository.o +2444
MessagesPaginationStateHandling.o -2372
UserSearchController.o +2343
AppStateObserving.o -2341
QueuedRequestDTO.o +2338
MessageReactionGroupDTO.o +2216
ChatMessageAttachment.o -2200
MemberEventMiddleware.o -2172
ReactionEvents.o -2168
MemberEvents.o -2124
Thread.o -2040
DatabaseContainer.o -2022
MessageSearch.o -2017
PollsEvents.o -2008
UserListController.o -2006
PollVoteListController+Combine.o -1974
ChannelDTO.o +1918
Poll.o -1887
MessageController+Combine.o -1852
ChannelListUpdater.o +1768
ChannelReadDTO.o -1756
CurrentUserController+Combine.o -1754
URLRequest+cURL.o -1709
ChatClient+Environment.o -1698
ChannelList.o -1684
MessageReminder.o -1664
AnyAttachmentPayload.o -1624
DatabaseSession.o -1612
ThreadDTO.o -1568
Codable+Extensions.o +1568
ChannelReadUpdaterMiddleware.o -1540
DraftMessagesRepository.o -1506
BlockedUserPayload.o -1500
AudioSamplesProcessor.o +1492
ChatMessageVoiceRecordingAttachment.o -1484
ReminderEvents.o -1416
DataController.o -1398
PollController+Combine.o -1396
LocationPayloads.o -1379
ChannelConfigDTO.o -1378
ChatClientConfig.o -1303
ReminderPayloads.o -1292
UserController+Combine.o -1286
ReactionListController+Combine.o -1276
MemberController+Combine.o -1276
MessageReminderListController+Combine.o -1252
ChannelType.o -1240
ChannelMemberListQuery.o -1224
ChatMessageImageAttachment.o -1216
PushPreferencePayloads.o +1216
ConnectionRecoveryHandler.o -1168
MessageReminderDTO.o -1160
ChatMessageLinkAttachment.o -1160
MemberListController+Combine.o -1145
MessageSearchController+Combine.o -1145
ChatChannelWatcherListController+Combine.o -1145
AttachmentDTO.o -1118
UserSearch.o -1084
Pagination.o -1082
UserSearchState.o -1074
MessageReminderListQuery.o -1070
CurrentUserController+SwiftUI.o -1066
ChannelQuery.o -1060
UserListState+Observer.o -1058
MessageReactionRequestPayload.o -1058
TextLinkDetector.o -1048
ListChange.o -1048
PollVoteListController+SwiftUI.o -1048
MessageState+Observer.o -1047
ThreadEvents.o -1044
BackgroundTaskScheduler.o -1013
ThreadReadDTO.o -1012
PollDTO.o -1001
PushDevice.o -1000
ReactionListState+Observer.o -988
Array+Sampling.o +960
MemberListState+Observer.o -951
PinnedMessagesQuery.o -912
ChannelId.o -896
ChatMessageAudioAttachment.o -888
ChatMessageFileAttachment.o -884
UserListController+Combine.o -856
UpdatePartialRequestBody.o -806
ConnectedUser.o -804
DraftEvents.o -792
ActiveLiveLocationsEndTimeTracker.o -792
MessageController+SwiftUI.o -790
MemberPayload.o -784
Device.o +768
MarkdownParser.o -752
CastPollVoteRequestBody.o -744
UserEvents.o -740
TypingEvent.o -740
RawJSON.o -704
InternetConnection.o +700
ChannelController+SwiftUI.o -660
WebSocketConnectPayload.o +656
PollVoteListQuery.o -644
UserChannelBanEventsMiddleware.o -637
ChannelMemberListQueryDTO.o -628
ChannelTruncateRequestPayload.o -616
AttachmentActionRequestBody.o -610
ChannelListSortingKey.o -608
UserListSortingKey.o -600
CreatePollOptionRequestBody.o -594
NSManagedObject+Extensions.o -586
MutedChannelPayload.o -585
DraftMessage.o -568
ChannelMemberListSortingKey.o -564
IdentifiableModel.o +552
SendMessageInterceptor.o -552
MultipartFormData.o +532
CountdownTracker.o -504
SharedLocationDTO.o -492
AudioAnalysisEngine.o -489
CreatePollRequestBody.o -489
URLSessionWebSocketEngine.o +482
Deprecations.o -480
UserWatchingEventMiddleware.o -468
StreamCollection.o -466
FlagRequestBody.o -464
ConnectionStatus.o -460
NSManagedObject+Validation.o +447
TypingEventsSender.o -444
ThreadsRepository.o -442
TypingStartCleanupMiddleware.o -434
MessagePayload+asModel.o +424
ThreadUpdaterMiddleware.o -424
MessageEndpoints.o -422
PinnedMessagesPagination.o -420
Endpoint.o -420
DraftPayloads.o +416
LazyCachedMapCollection.o +416
EventBatcher.o +416
AttachmentId.o -416
CurrentUserPayloads.o -414
UserListQuery.o -400
WebSocketPingController.o +399
ChannelWatcherHandler.o -396
ChannelMemberUpdater.o +392
ThreadParticipantDTO.o -392
ChannelPayload+asModel.o -388
ThreadEndpoints.o +380
CommandDTO.o +379
ThreadListController+SwiftUI.o -377
Bundle+Extensions.o +374
ChatChannelWatcherListController+SwiftUI.o -366
AttachmentDownloader.o +366
ClientError.o +364
BaseLogDestination.o -352
EventNotificationCenter.o -348
MessageReactionType.o -344
MessageSearchController+SwiftUI.o -342
ChannelListState+Observer.o -341
RetryStrategy.o -340
MessageSearchState.o -336
Member.o -336
MemberListController+SwiftUI.o -334
ChannelListController+SwiftUI.o -334
AssetPropertyLoading.o -332
AudioValuePercentageNormaliser.o +324
MarkUnreadPayload.o -322
ChannelCodingKeys.o -318
Filter.o -315
AVAsset+TotalAudioSamples.o -312
MessageModerationDetailsPayload.o -311
MessageReactionDTO.o +304
GuestUserTokenRequestPayload.o -292
AppSettingsPayload.o -286
ChannelDeliveryTracker.o +286
PollController+SwiftUI.o -282
AudioQueuePlayer.o -276
AudioSamplesExtractor.o +272
KeyedDecodingContainer+Array.o -272
MessageReaction.o -268
MessageReactionPayload.o -268
AudioRecordingContext.o -268
ChannelRepository.o -264
SyncRepository.o -264
PollVoteListQueryDTO.o -260
UnreadMessageLookup.o -256
HTTPHeader.o -256
ChannelVisibilityEventMiddleware.o -248
ReminderUpdaterMiddleware.o -248
MessageState.o -248
GuestUserTokenPayload.o -244
ChatClientFactory.o +236
DevicePayloads.o +236
PollOptionDTO.o +235
FlagUserPayload.o -228
UserListState.o +228
SharedLocation.o -224
UserListQueryDTO.o +224
UserList.o -222
ChannelMemberUnbanRequestPayload.o -222
ThreadListQuery.o -220
TranslationLanguage.o -216
ChannelMemberListPayload.o +210
UserListController+SwiftUI.o -210
ReactionListController+SwiftUI.o -210
UserListPayload.o +210
MessageReactionGroupPayload.o +206
FlagMessagePayload.o -202
CurrentUser.o -196
AudioPlaybackContext.o -192
PollVote.o -184
UserController+SwiftUI.o -182
AsyncOperation.o +180
MessageAttachmentPayload.o -178
FileUploadPayload.o -176
ConnectionController+SwiftUI.o -174
ChannelListQueryDTO.o -172
ChannelTruncatedEventMiddleware.o -172
BaseURL.o -172
MessageSearchState+Observer.o -170
MemberUpdatePayload.o -170
EventsController+Combine.o +168
MemberController+SwiftUI.o -166
MissingEventsRequestBody.o -166
ConnectionController+Combine.o -164
ChannelListState.o -164
ScheduledStreamTimer.o -160
MissingEventsPayload.o +160
AudioPlayerObserving.o +157
ChannelDeliveredPayload.o -156
PinnedMessagesSortingKey.o -152
AudioRecordingContextAccessor.o +152
LogDestination.o +152
DraftListQuery.o +150
UserListUpdater.o +150
AudioSessionConfiguring.o -149
EventDecoder.o -148
CustomEventRequestBody.o -134
DeviceDTO.o -132
AudioPlaybackState.o -132
ChannelMemberBanRequestPayload.o -132
MessagePinning.o -132
UnreadCount.o -128
AudioSessionProtocol.o +124
ChannelArchivingScope.o +120
ReactionListQueryDTO.o +116
UserInfo.o +116
ChannelEndpoints.o -114
AttachmentUploader.o -114
AITypingEvents.o +112
ChannelDeliveredMiddleware.o -108
PushPreferenceDTO.o -104
BackgroundEntityDatabaseObserver.o +103
MessageReactionGroup.o -100
Timers.o +96
ChannelMuteDTO.o +93
MessageSearchQueryDTO.o -92
AudioPlaybackContextAccessor.o +86
DeliveredMessageInfo.o -84
BlockedUserDetails.o +80
UploadedAttachment.o -76
OptionalDecodable.o -76
Sorting.o +76
UserTypingStateUpdaterMiddleware.o -72
MessageDeliveryCriteriaValidator.o -68
AudioRecordingState.o +68
ChannelMemberListUpdater.o +66
ReactionList.o +64
ConnectionEvents.o -64
EntityChange.o -60
ThreadParticipant.o -60
EventsController+SwiftUI.o -60
ConnectedUserState.o -56
StringInterpolation+Extensions.o -56
ChatClient+ReactionListController.o -52
Error+InternetNotAvailable.o -52
DraftUpdaterMiddleware.o -52
MemberEventObserver.o +48
EventSender.o +48
ConnectedUserState+Observer.o +48
ThreadRead.o -48
ConsoleLogDestination.o +48
MessageModerationDetailsDTO.o +48
PushPreference.o -48
SystemEnvironment.o +44
Reachability_Vendor.o +44
Token.o +43

@Stream-SDK-Bot
Copy link
Collaborator Author

StreamChatUI XCSize

Object Diff (bytes)
Appearance+Images.o -35613
ContainerStackView.o +26186
ChatMessageReactionAuthorsFlowLayout.o -20353
AppearanceProvider.o +16996
ComponentsProvider.o +14380
Show 185 more objects
Object Diff (bytes)
SwipeToReplyGestureHandler.o -10908
ChatMessageListView.o +7297
ChatMessageContentView.o -7011
ChatThreadListVC.o -4986
ImagePipeline.o +4892
ChatChannelListItemView.o +4860
QuotedChatMessageView.o +4420
ChatThreadListItemView.o +4148
InputChatMessageView.o +4012
UnsupportedAttachmentViewInjector.o -3894
TaskLoadImage.o -3780
ChatMessageGiphyView.o +3577
ChatMessageHeaderDecoratorView.o +3196
ChatMessageDeliveryStatusView.o +3116
ComposerVC.o +3112
ChatMessageSearchVC.o +2750
UIImageView+SwiftyGif.o -2544
MarkdownFormatter.o +2538
ChatChannelVC.o -2532
ViewContainerBuilder.o -2184
MessageActionsTransitionController.o -1956
ImageProcessing.o +1950
GalleryVC.o +1901
UITextView+Extensions.o +1779
AttachmentsPreviewVC.o -1660
ChatMessageGalleryView.o -1620
ImageCache.o -1460
ResumableData.o +1284
ChatMessage+Extensions.o -1240
NukeImageLoader.o +1084
DataLoader.o -1075
UploadingOverlayView.o -1072
ChatChannelAvatarView.o -1040
TaskFetchOriginalImageData.o +1036
InputTextView.o -976
ChatMessageReactionsPickerVC.o -972
ImagePipelineCache.o +948
ImageResultsMapper.o +948
ChatFileAttachmentListView+ItemView.o +944
ChatMessageLayoutOptionsResolver.o -940
ChatMessageListView+DiffKit.o -907
ChatMessageListVC.o -896
WaveformView.o +892
ImagePublisher.o +882
ChatSuggestionsVC.o -876
ChatMessageReactionsView.o +866
VoiceRecordingVC.o +848
ChatMessageActionsVC.o +836
ChatMessagePopupVC.o -832
TextViewMentionedUsersHandler.o +772
Changeset.o -706
ChatMessageVoiceRecordingAttachmentListView+ItemView.o +700
VideoAttachmentGalleryPreview.o +684
PollAttachmentView.o +664
PollAttachmentOptionListItemView.o +636
PollCommentListSectionFooterView.o +616
VideoPlaybackControlView.o -596
ChatMessageVoiceRecordingAttachmentListView+ItemViewPresenter.o +592
StagedChangeset.o -590
StackedUserAvatarsView.o -588
Task.o -568
DifferenceKit+Stream.o -537
ChatMessageImageGallery+ImagePreview.o +536
StreamCDN.o -496
ChatChannelNamer.o -464
PollResultsSectionHeaderView.o +444
ChatMessageCell.o +432
Deprecations.o -428
PollResultsTableHeaderView.o +424
DataCache.o -416
TaskFetchDecodedImage.o -401
ChatMessageLayoutOptions.o -400
PollResultsVC.o -380
ClampedView.o -376
ChatMessageReactionAuthorViewCell.o +352
BaseViews.o +352
ChatMessageReactionAuthorsVC.o -340
UIImage+SwiftyGif.o -340
PollCreationMultipleVotesFeatureCell.o +327
PollResultsSectionFooterView.o +314
ListCollectionViewLayout.o -312
PollAttachmentOptionListView.o +308
NukeImageProcessor.o +305
GalleryAttachmentViewInjector.o +303
PollCreationFeatureCell.o +296
ImageRequestKeys.o -282
ComposerKeyboardHandler.o +276
ImageResponse.o -272
MixedAttachmentViewInjector.o -260
LiveRecordingView.o -252
ImageViewExtensions.o -240
Algorithm.o -236
ImagePipelineConfiguration.o -236
ComposerLinkPreviewView.o +224
ImageRequest.o +212
ChatMessageReactionItemView.o +212
PollCreationNameCell.o +212
GiphyAttachmentViewInjector.o +208
SwiftyGifManager.o +208
PollCommentListSectionHeaderView.o +200
AttachmentPreviewProvider.o +200
BannerView.o +200
TaskLoadData.o +198
GradientView.o -184
ChatMessageReactions+Types.o +180
VoiceRecordingAttachmentComposerPreview.o +168
PollAttachmentViewInjector.o +168
ComposerView.o +164
PollCommentListVC.o +164
FetchImage.o +164
PollAllOptionsListVC.o +162
String+Extensions.o -160
ChatChannelHeaderView.o -160
UIViewController+Extensions.o +156
PollResultsVoteItemCell.o +156
PlayPauseButton.o +152
LinkAttachmentViewInjector.o +148
Appearance+ColorPalette.o -144
AlertsRouter.o +144
StreamChat.tbd +140
PollResultsVoteItemView.o +140
TypingIndicatorView.o +140
ImagePrefetcher.o -134
ImageAttachmentGalleryCell.o +132
ChatMessageListRouter.o -130
PollCreationOptionCell.o +128
CommandLabelView.o +124
ChatMentionSuggestionView.o +124
ChatChannelListLoadingViewCellContentView.o -120
RecordButton.o +120
ChatMessageActionControl.o +116
DateUtils.o -116
PollCommentListItemView.o +116
ZoomTransitionController.o +116
ChatMessageInteractiveAttachmentView.o -112
ImagePipelineTask.o -112
UIView+Extensions.o +108
AttachmentViewCatalog.o -108
PollCommentListItemCell.o +108
InvertedScrollViewPaginationHandler.o +104
ImageLoading.o +104
ChatChannelListVC.o +100
StatefulScrollViewPaginationHandler.o -96
MediaButton.o -92
VoiceRecordingAttachmentQuotedPreview.o +92
CheckboxControl.o +88
ImageDecoding.o -84
SwipeableView.o +84
PollResultsVoteListVC.o -84
AudioVisualizationView.o -84
GalleryCollectionViewCell.o +80
Calendar+StreamCalendar.o +80
PollCreationVC.o +76
ZoomDismissalInteractionController.o +76
ChannelListSearchStrategy.o +76
FileAttachmentViewInjector.o +76
ChatChannelListSearchVC.o -72
PollCreationTextFieldView.o +72
ChatMessageInteractiveAttachmentView+ActionButton.o -72
VideoAttachmentComposerPreview.o -72
CurrentChatUserAvatarView.o -72
ChatThreadHeaderView.o +72
ChatChannelListRouter.o -72
ImageMerger.o -72
ImageLoaderOptions.o +72
PollAllOptionsListItemCell.o +64
ChatMessageGiphyView+GiphyBadge.o +64
AudioQueuePlayerNextItemProvider.o +64
VideoLoading.o +62
ZoomAnimator.o +60
ChatAvatarView.o +60
JumpToUnreadMessagesButton.o -60
ChatThreadRepliesCountDecorationView.o +60
ChatUserAvatarView.o -60
VideoAttachmentGalleryCell.o -60
ChatReactionPickerBubbleView.o -56
ChatPresenceAvatarView.o +56
ChatReactionsBubbleView.o -56
StreamModalTransitioningDelegate.o -52
ImageEncoding.o -48
TextFieldView.o +48
ChatMessageActionItem.o +48
ChatChannelListVC+SwiftUI.o +48
Components+SwiftUI.o +44
ScrollViewPaginationHandler.o -44

@sonarqubecloud
Copy link

@github-actions
Copy link

Build for regression testing β„–123457111 has been uploaded to TestFlight 🎁

@nuno-vieira
Copy link
Member

/merge release

@testableapple
Copy link
Contributor

Publication of the release has been launched πŸ‘

@github-actions github-actions bot merged commit e1d4af1 into main Dec 18, 2025
16 of 17 checks passed
@github-actions github-actions bot deleted the release/4.95.0 branch December 18, 2025 15:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants