Commit graph

202 commits

Author SHA1 Message Date
Ilya Laktyushin
3e6363abf9 Various improvements 2026-05-28 16:50:05 +02:00
Ilya Laktyushin
91eb779ae2 Merge commit 'c64653ed37' 2026-05-14 12:45:26 +02:00
isaac
86d1456552 Postbox -> TelegramEngine waves 107-137 (squashed)
31 waves of consumer-side migration from `import Postbox` to TelegramEngine
typealiases. Net: 173 import drops + 39 BUILD-dep drops + 1 new typealias
(`EngineStoryId = StoryId`, wave 113).

Wave shapes used:
- Orphan-import sweeps (107, 108, 128): drop `import Postbox` from files
  whose only Postbox-symbol reference was the import line itself, then
  resolve build failures. Methodology requires token-level (`grep -oE`)
  filtering, not line-level, to avoid masking real Postbox usage on lines
  that also contain `Namespaces.X` references.
- Identifier-swap mini-waves (109-127, 129-134, 136-137): rename
  Postbox-typealiased identifiers to engine equivalents
  (PeerId -> EnginePeer.Id, MessageId -> EngineMessage.Id,
  MediaId -> EngineMedia.Id, MessageIndex -> EngineMessage.Index,
  StoryId -> EngineStoryId, ItemCollectionId -> EngineItemCollectionId,
  PreferencesEntry -> EnginePreferencesEntry,
  FetchResourceSourceType/Error -> EngineFetchResourceSourceType/Error,
  MemoryBuffer -> EngineMemoryBuffer, MessageTags -> EngineMessage.Tags,
  MessageAttribute -> EngineMessage.Attribute,
  TempBox -> EngineTempBox).
- Asset-string FP-only orphans (124).
- Typealias addition + drain (113): added `EngineStoryId` typealias to
  TelegramCore, then drained 3+11 consumer sites.

Hard blockers identified during these waves (must restore `import Postbox`
when present): MediaResource[A-Za-z]* (any suffix -- the literal
`MediaResource` matches don't catch MediaResourceData/MediaResourceId/etc.),
Postbox/MediaBox/MediaResource raw types, PostboxCoding/PostboxEncoder/
PostboxDecoder, TempBoxFile, ValueBoxKey, PostboxView, combinedView,
HashFunctions, postboxLog, openPostbox, declareEncodable, PeerView,
MessageHistoryView, MessageHistoryThreadData, CachedPeerData, RenderedPeer,
SelectivePrivacyPeer, SimpleDictionary, ItemCollectionInfosView,
ItemCollectionItem, ItemCollectionItemIndex, ItemCollectionViewEntryIndex,
ChatListIndex, ChatListEntrySummaryComponents, CodableEntry,
MessageHistoryThread, MessageHistoryAnchorIndex,
MessageHistoryEntryLocation, PeerStoryStats, PeerNameIndex,
PeerSummaryCounterTags, ChatListTotalUnreadStateCategory/Stats,
arePeersEqual. Protocol-shape blockers: bare `Peer`/`Message`/`Media`
in function signatures, generic args, enum-case payloads, or dict value
types (e.g., `[PeerId: Peer]`, `case messages([Message])`,
`Signal<(Peer?, ...), NoError>`).

`replace_all PeerId -> EnginePeer.Id` is dangerous: mangles compound
names like `failedPeerId`, `ContactListPeerId`, `nextRemoteMediaId`,
`replyToMessageId`. Pre-flight grep `\b[a-z][a-zA-Z]*PeerId\b` and only
replace_all if 0 matches.

Also removes unneeded design/plan docs from a separate (link-highlighting)
feature branch:
- docs/superpowers/plans/2026-05-02-link-highlighting-modern-path-fixes.md
- docs/superpowers/specs/2026-05-02-link-highlighting-modern-path-fixes-design.md

Squashed commits: 6d82c2980d..e6de5d53a3 (59 commits, including
per-wave content commits and per-wave CLAUDE.md bumps).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 10:28:50 +02:00
isaac
511a58e51a Sticker pack improvements 2026-04-28 16:56:02 +04:00
Isaac
7b2b74e79b Postbox -> TelegramEngine wave 6: unused import Postbox batch sweep
First build-verified unused-import sweep: speculatively dropped
import Postbox from 782 consumer files (plain ^import Postbox$ lines,
excluding TelegramCore/Postbox/TelegramApi paths), iterated 18 full
project builds with --continueOnError, restored the import on every
file that failed to compile. 183 drops survived; 189 consumer modules
newly Postbox-free.

Bundled: spec + plan + C1 atomic batch drop + C2 CLAUDE.md outcome and
permanent methodology guidance under Wave-selection. The methodology
subsection captures the reusable playbook (--continueOnError is
essential, dependency graphs are deep so expect many iterations,
pattern-based preemptive restores accelerate convergence, and
CLAUDE.md's engine typealias cheat sheet arrows are migration targets
rather than typealiases in TelegramCore).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-19 23:46:13 +02:00
Isaac
16c630b946 Refactoring 2026-04-03 15:50:39 +08:00
Ilya Laktyushin
433237d1e9 [WIP] Polls 2026-03-20 10:15:00 +01:00
Ilya Laktyushin
8def1683b9 Merge branch 'master' of gitlab.com:peter-iakovlev/telegram-ios 2026-02-21 13:45:36 +04:00
Ilya Laktyushin
d9d1210c1d Various improvements 2026-02-19 21:53:26 +04:00
Ilya Laktyushin
142d59cf8f Various improvements 2026-01-27 22:24:31 +04:00
Ilya Laktyushin
8be8491b84 Various improvements 2026-01-26 02:16:22 +04:00
Ilya Laktyushin
0d12dd29ad Various improvements 2026-01-25 22:17:49 +04:00
Isaac
2db08cde89 Glass 2026-01-13 19:21:49 +04:00
Ilya Laktyushin
f89ad5cd72 Fix emoji packs display on error 2026-01-07 15:10:05 +04:00
Ilya Laktyushin
c014d0b333 Various improvements 2025-10-22 21:12:38 +04:00
Isaac
04765e0c36 Update 2025-09-17 11:18:26 +04:00
Isaac
faa765b601 Various optimizations 2025-03-04 14:13:07 +01:00
Isaac
6c4070eb52 Serialization update 2025-02-14 19:11:58 +04:00
Ilya Laktyushin
b0511f146e Various improvements 2025-01-10 05:15:00 +04:00
Ilya Laktyushin
cdc82e4235 Update API 2025-01-06 16:00:43 +04:00
Ilya Laktyushin
d9e35e7882 Various fixes 2025-01-02 14:57:21 +04:00
Ilya Laktyushin
5451053195 Various improvements 2024-12-22 17:16:14 +04:00
Ilya Laktyushin
ad9f0d6847 Various fixes 2024-12-12 20:41:33 +04:00
Isaac
931e34e1bd Temp 2024-11-27 17:37:21 +04:00
Isaac
9a038722d3 Various improvements 2024-11-20 22:09:16 +04:00
Ilya Laktyushin
bd1cbdae5a Various improvements 2024-10-29 13:46:22 +04:00
Isaac
7c0216b907 Effect improvements 2024-05-20 18:51:35 +04:00
Isaac
16faaa4575 [WIP] Send message effects 2024-05-03 22:56:50 +04:00
Ilya Laktyushin
2b6a8e202e Various fixes 2024-04-30 12:58:20 +04:00
Ilya Laktyushin
cf49acb4aa Various fixes 2024-04-29 17:45:32 +04:00
Ilya Laktyushin
d9f010a806 [WIP] Stickers editor 2024-04-11 20:35:25 +04:00
Ilya Laktyushin
2d357afd12 [WIP] Stickers editor 2024-04-11 14:15:37 +04:00
Ilya Laktyushin
a4accf138a [WIP] Stickers editor 2024-04-09 07:23:03 +04:00
Ilya Laktyushin
70eef8ecac [WIP] Stickers editor 2024-04-09 00:50:37 +04:00
Ilya Laktyushin
1e155f3243 [WIP] Stickers editor 2024-04-07 20:24:02 +04:00
Ilya Laktyushin
a6b5f0f96e [WIP] Stickers editor 2024-04-06 23:08:44 +04:00
Ilya Laktyushin
ee2b7be5e2 [WIP] Stickers editor 2024-04-06 19:53:19 +04:00
Ilya Laktyushin
0598c49a89 Various improvements 2024-04-06 15:01:03 +04:00
Isaac
efae3b90a7 Support Xcode 15.3 2024-04-02 19:16:00 +04:00
Ilya Laktyushin
df7e0fadc1 Fix 2024-03-28 21:52:58 +04:00
Ilya Laktyushin
a7caa2fab9 Various improvements 2024-03-28 21:46:01 +04:00
Ilya Laktyushin
f81856351a Various improvements 2024-03-28 13:23:23 +04:00
Ilya Laktyushin
ac2733985a Various improvements 2024-03-27 19:48:03 +04:00
Ilya Laktyushin
cb7560a34e [WIP] Birthdays 2024-03-22 12:08:27 +04:00
Ilya Laktyushin
7772e257b2 Various improvements 2024-03-20 17:21:16 +04:00
Ilya Laktyushin
a79644bf51 Various fixes 2024-03-18 21:45:36 +04:00
Ilya Laktyushin
bb1b425217 [WIP] Stickers 2024-03-16 15:36:51 +04:00
Ilya Laktyushin
6906df0243 [WIP] Stickers editor 2024-03-15 10:55:40 +04:00
Ilya Laktyushin
daa9347ef6 [WIP] Stickers editor 2024-03-14 18:03:12 +04:00
Ilya Laktyushin
8b1bd1dec0 Various improvements 2024-03-12 17:43:21 +04:00