mirror of
https://github.com/TelegramMessenger/Telegram-iOS.git
synced 2026-07-06 03:33:41 +02:00
Squash of 63 commits spanning waves 46-93 (plus interspersed docs commits) of the gradual Postbox->TelegramEngine consumer-side migration. Scope: 139 files changed, 2123 insertions(+), 452 deletions(-). ## Themes by wave-block **Waves 46-58 — Peer field migrations + facade additions** Foundational EnginePeer convenience init additions (PeerReference, RenderedPeer, SelectivePrivacyPeer). Multiple `peer: Peer` field migrations across PeerInfo, ChatList, and SettingsUI components. **Waves 59-73 — peer field cascade + EnginePeer wrap drops** Series of single- to two-file peer-field migrations; consumer-side wrap removal (`EnginePeer(peer)` -> direct EnginePeer use); `as? TelegramUser` cast conversion to `case let .user(...)` enum match. Wave 64: RenderedPeer convenience init. Wave 68: SelectivePrivacyPeer convenience init. **Waves 74-83 — controller-Node bridge cleanup + small migrations** Wave-71 shadow-pattern cleanup at controller->Node bridges. Migrations of ChatRecentActionsController.peer (74), PeerInfoMember (75), MentionChatInputPanelItem (76), PassportUI SecureIdAuthController (77), AccountWithInfo + ShareController (78), peerInputActivitiesPromise (79), InactiveChannel (80), BlockedPeers (81), openHashtag resolveSignal (82), NotificationExceptionsList (83). **Waves 84-90 — TelegramEngine.Resources facade migrations** Per-method Shape-A/B sweeps converting `<ctx>.account.postbox.mediaBox.X(...)` to `<ctx>.engine.resources.X(...)`. Wave 90 was a single-commit big sweep: 40 fetchedMediaResource sites in 25 files migrated to engine.resources.fetch facade in one atomic pass with first-pass-clean build. Methods covered: storeResourceData, completedResourcePath, cancelInteractiveResourceFetch, resourceRangesStatus, resourceStatus, fetch (fetchedMediaResource). **Waves 91-92 — additional type migrations** Wave 91: ItemListWebsiteItem.peer + RecentSessionsController enum-case payload + openWebSession callback Peer? -> EnginePeer?. Wave 92: ChatListController StateHolder.EntryContext status type MediaResourceStatus -> EngineMediaResource.FetchStatus. **Wave 93 — speculative `import Postbox` drop sweep** Drop import from 7 wave-touched files where it became unused; restore in 5 files where bare PeerId/Message/MediaId/StoryId references escaped the pre-flight regex. Includes one MediaId(...) -> EngineMedia.Id(...) swap in InAppPurchaseManager to unlock its import drop. ## Build state Final state at squash: clean Telegram/Telegram build at debug_sim_arm64. ## Persistent-state notes - Pre-existing WIP unchanged across the squashed range: - build-system/bazel-rules/sourcekit-bazel-bsp submodule marker - Untracked: build-system/tulsi/, submodules/TgVoip/, third-party/libx264/ Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| AccessoryPanelNode | ||
| ChatAgeRestrictionAlertController | ||
| ChatAvatarNavigationNode | ||
| ChatBotInfoItem | ||
| ChatButtonKeyboardInputNode | ||
| ChatChannelSubscriberInputPanelNode | ||
| ChatContextResultPeekContent | ||
| ChatEmptyNode | ||
| ChatHistoryEntry | ||
| ChatHistorySearchContainerNode | ||
| ChatInlineSearchResultsListComponent | ||
| ChatInputAccessoryPanel | ||
| ChatInputAutocompletePanel | ||
| ChatInputContextPanelNode | ||
| ChatInputMessageAccessoryPanel | ||
| ChatInputPanelNode | ||
| ChatInputTextNode | ||
| ChatInstantVideoMessageDurationNode | ||
| ChatLoadingNode | ||
| ChatMediaInputStickerGridItem | ||
| ChatMessageActionBubbleContentNode | ||
| ChatMessageActionButtonsNode | ||
| ChatMessageAnimatedStickerItemNode | ||
| ChatMessageAttachedContentButtonNode | ||
| ChatMessageAttachedContentNode | ||
| ChatMessageBirthdateSuggestionContentNode | ||
| ChatMessageBubbleContentNode | ||
| ChatMessageBubbleItemNode | ||
| ChatMessageCallBubbleContentNode | ||
| ChatMessageCommentFooterContentNode | ||
| ChatMessageContactBubbleContentNode | ||
| ChatMessageDateAndStatusNode | ||
| ChatMessageDeliveryFailedNode | ||
| ChatMessageDisableCopyProtectionBubbleContentNode | ||
| ChatMessageEventLogPreviousDescriptionContentNode | ||
| ChatMessageEventLogPreviousLinkContentNode | ||
| ChatMessageEventLogPreviousMessageContentNode | ||
| ChatMessageFactCheckBubbleContentNode | ||
| ChatMessageFileBubbleContentNode | ||
| ChatMessageForwardInfoNode | ||
| ChatMessageGameBubbleContentNode | ||
| ChatMessageGiftBubbleContentNode | ||
| ChatMessageGiftOfferBubbleContentNode | ||
| ChatMessageGiveawayBubbleContentNode | ||
| ChatMessageInstantVideoBubbleContentNode | ||
| ChatMessageInstantVideoItemNode | ||
| ChatMessageInteractiveFileNode | ||
| ChatMessageInteractiveInstantVideoNode | ||
| ChatMessageInteractiveMediaNode | ||
| ChatMessageInvoiceBubbleContentNode | ||
| ChatMessageItem | ||
| ChatMessageItemCommon | ||
| ChatMessageItemImpl | ||
| ChatMessageItemView | ||
| ChatMessageJoinedChannelBubbleContentNode | ||
| ChatMessageMapBubbleContentNode | ||
| ChatMessageMediaBubbleContentNode | ||
| ChatMessageNotificationItem | ||
| ChatMessagePaymentAlertController | ||
| ChatMessagePollBubbleContentNode | ||
| ChatMessageProfilePhotoSuggestionContentNode | ||
| ChatMessageReactionsFooterContentNode | ||
| ChatMessageReplyInfoNode | ||
| ChatMessageRestrictedBubbleContentNode | ||
| ChatMessageSelectionInputPanelNode | ||
| ChatMessageSelectionNode | ||
| ChatMessageShareButton | ||
| ChatMessageStarsMediaInfoNode | ||
| ChatMessageStickerItemNode | ||
| ChatMessageStoryMentionContentNode | ||
| ChatMessageSuggestedPostInfoNode | ||
| ChatMessageSwipeToReplyNode | ||
| ChatMessageTextBubbleContentNode | ||
| ChatMessageThreadInfoNode | ||
| ChatMessageTodoBubbleContentNode | ||
| ChatMessageTransitionNode | ||
| ChatMessageUnlockMediaNode | ||
| ChatMessageUnsupportedBubbleContentNode | ||
| ChatMessageWallpaperBubbleContentNode | ||
| ChatMessageWebpageBubbleContentNode | ||
| ChatNavigationButton | ||
| ChatNewThreadInfoItem | ||
| ChatOverscrollControl | ||
| ChatPanelsComponent | ||
| ChatQrCodeScreen | ||
| ChatRankInfoScreen | ||
| ChatRecentActionsController | ||
| ChatRecordingPreviewInputPanelNode | ||
| ChatRecordingViewOnceButtonNode | ||
| ChatSearchNavigationContentNode | ||
| ChatSendAsContextMenu | ||
| ChatSendAudioMessageContextPreview | ||
| ChatSendStarsScreen | ||
| ChatShareMessageTagView | ||
| ChatSideTopicsPanel | ||
| ChatSwipeToReplyRecognizer | ||
| ChatTextInputActionButtonsNode | ||
| ChatTextInputAudioRecordingCancelIndicator | ||
| ChatTextInputAudioRecordingTimeNode | ||
| ChatTextInputPanelNode | ||
| ChatTextInputSlowmodePlaceholderNode | ||
| ChatUserInfoItem | ||
| EditableTokenListNode | ||
| FactCheckAlertController | ||
| ForwardAccessoryPanelNode | ||
| InstantVideoRadialStatusNode | ||
| ManagedDiceAnimationNode | ||
| MergedAvatarsNode | ||
| MessageHaptics | ||
| MessageInlineBlockBackgroundView | ||
| MessageQuoteComponent | ||
| PollBubbleTimerNode | ||
| QuickShareScreen | ||
| ReplyAccessoryPanelNode | ||
| SavedTagNameAlertController | ||
| ShimmeringLinkNode | ||
| SuggestPostAccessoryPanelNode | ||
| TopMessageReactions | ||