Mikhail Kilin
43960332d9
refactor: restructure MessageInfo with logical field grouping (P2.6)
...
Сгруппированы 16 плоских полей MessageInfo в 4 логические структуры
для улучшения организации кода и maintainability.
Новые структуры:
- MessageMetadata: id, sender_name, date, edit_date
- MessageContent: text, entities
- MessageState: is_outgoing, is_read, can_be_edited, can_be_deleted_*
- MessageInteractions: reply_to, forward_from, reactions
Изменения:
- Добавлены 4 новые структуры в tdlib/types.rs
- Обновлена MessageInfo для использования новых структур
- Добавлен конструктор MessageInfo::new() для удобного создания
- Добавлены getter методы (id(), text(), sender_name() и др.) для удобного доступа
- Обновлены все места создания MessageInfo (convert_message)
- Обновлены все места использования (~200+ обращений):
* ui/messages.rs: рендеринг сообщений
* app/mod.rs: логика приложения
* input/main_input.rs: обработка ввода и копирование
* tdlib/client.rs: обработка updates
* Все тестовые файлы (14 файлов)
Преимущества:
- Логическая группировка данных
- Проще понимать структуру сообщения
- Легче добавлять новые поля в будущем
- Улучшенная читаемость кода
Статус: Priority 2 теперь 80% (4/5 задач)
- ✅ Error enum
- ✅ Config validation
- ✅ Newtype для ID
- ✅ MessageInfo реструктуризация
- ⏳ MessageBuilder pattern
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com >
2026-01-31 01:45:54 +03:00
Mikhail Kilin
7081a886ad
refactor: implement newtype pattern for IDs (P2.4)
...
Добавлены типобезопасные обёртки ChatId, MessageId, UserId для предотвращения
смешивания разных типов идентификаторов на этапе компиляции.
Изменения:
- Создан src/types.rs с тремя newtype структурами
- Реализованы методы: new(), as_i64(), From<i64>, Display
- Добавлены traits: Hash, Eq, Serialize, Deserialize
- Обновлены 15+ модулей для использования новых типов:
* tdlib: types.rs, chats.rs, messages.rs, users.rs, reactions.rs, client.rs
* app: mod.rs, chat_state.rs
* input: main_input.rs
* tests: app_builder.rs, test_data.rs
- Исправлены 53 ошибки компиляции связанные с type conversions
Преимущества:
- Компилятор предотвращает смешивание разных типов ID
- Улучшенная читаемость кода (явные типы вместо i64)
- Самодокументирующиеся типы
Статус: Priority 2 теперь 60% (3/5 задач)
- ✅ Error enum
- ✅ Config validation
- ✅ Newtype для ID
- ⏳ MessageInfo реструктуризация
- ⏳ MessageBuilder pattern
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com >
2026-01-31 01:33:18 +03:00
Mikhail Kilin
38e73befc1
fixes
2026-01-31 01:00:43 +03:00
Mikhail Kilin
bba5cbd22d
fixes
2026-01-30 23:55:01 +03:00
Mikhail Kilin
433233d766
commit
2026-01-30 17:26:21 +03:00
Mikhail Kilin
a4cf6bac72
fixes
2026-01-30 16:18:16 +03:00
Mikhail Kilin
4deb0fbe00
commit
2026-01-30 15:07:13 +03:00
c2ddb0a449
Merge pull request 'add_tests' ( #11 ) from add_tests into main
...
CI / Check (push) Has been cancelled
CI / Format (push) Has been cancelled
CI / Clippy (push) Has been cancelled
CI / Build (macos-latest) (push) Has been cancelled
CI / Build (ubuntu-latest) (push) Has been cancelled
CI / Build (windows-latest) (push) Has been cancelled
Reviewed-on: #11
2026-01-28 22:23:58 +00:00
Mikhail Kilin
126c7482af
fixes
CI / Check (pull_request) Has been cancelled
CI / Format (pull_request) Has been cancelled
CI / Clippy (pull_request) Has been cancelled
CI / Build (macos-latest) (pull_request) Has been cancelled
CI / Build (ubuntu-latest) (pull_request) Has been cancelled
CI / Build (windows-latest) (pull_request) Has been cancelled
2026-01-29 01:22:57 +03:00
Mikhail Kilin
68a2b7a982
fixes
2026-01-28 11:39:21 +03:00
72a8f3e6b1
Merge pull request 'yet-another-changes' ( #10 ) from yet-another-changes into main
...
CI / Check (push) Has been cancelled
CI / Format (push) Has been cancelled
CI / Clippy (push) Has been cancelled
CI / Build (macos-latest) (push) Has been cancelled
CI / Build (ubuntu-latest) (push) Has been cancelled
CI / Build (windows-latest) (push) Has been cancelled
Reviewed-on: #10
2026-01-27 22:43:12 +00:00
Mikhail Kilin
051c4a0265
fixes
CI / Check (pull_request) Has been cancelled
CI / Format (pull_request) Has been cancelled
CI / Clippy (pull_request) Has been cancelled
CI / Build (macos-latest) (pull_request) Has been cancelled
CI / Build (ubuntu-latest) (pull_request) Has been cancelled
CI / Build (windows-latest) (pull_request) Has been cancelled
2026-01-28 01:29:03 +03:00
Mikhail Kilin
f291191577
fixes
2026-01-27 23:29:00 +03:00
Mikhail Kilin
356d2d3064
add account profile
2026-01-27 13:41:29 +03:00
Mikhail Kilin
ac684da820
add draft messages
2026-01-27 12:31:31 +03:00
61dc09fd50
Merge pull request 'yet-another-changes' ( #9 ) from yet-another-changes into main
...
Reviewed-on: #9
2026-01-27 09:12:57 +00:00
Mikhail Kilin
dc76e01f3c
add find messages
2026-01-27 12:09:05 +03:00
Mikhail Kilin
81dc5b9007
add pinned messages
2026-01-27 04:38:29 +03:00
Mikhail Kilin
4d5625f950
add typings in/out
...
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-27 03:59:49 +03:00
Mikhail Kilin
46720b3584
fixes
2026-01-25 21:21:07 +03:00
86e2b4c804
Merge pull request 'yet-another-changes' ( #8 ) from yet-another-changes into main
...
Reviewed-on: #8
2026-01-24 22:49:27 +00:00
Mikhail Kilin
e4dabbe3ac
fixes
2026-01-25 01:47:38 +03:00
Mikhail Kilin
fa749d24c5
fixes
2026-01-24 18:53:35 +03:00
6c297758a0
Merge pull request 'fixes' ( #5 ) from yet-another-changes into main
...
Reviewed-on: #5
2026-01-23 23:23:49 +00:00
Mikhail Kilin
22c4e17377
fixes
2026-01-24 02:22:47 +03:00
65a73f35de
Merge pull request 'yet-another-changes' ( #4 ) from yet-another-changes into main
...
Reviewed-on: #4
2026-01-22 12:27:08 +00:00
Mikhail Kilin
c18f43664e
fixes
2026-01-22 15:26:15 +03:00
Mikhail Kilin
1ef341d907
commit
2026-01-21 21:20:18 +03:00
0f379dc240
Merge pull request 'fixes' ( #3 ) from yet-another-changes into main
...
Reviewed-on: #3
2026-01-20 23:59:28 +00:00
Mikhail Kilin
0a9ae8b448
fixes
2026-01-21 02:49:28 +03:00
b81eec55d6
Merge pull request 'fixes' ( #2 ) from yet-another-changes into main
...
Reviewed-on: #2
2026-01-20 23:29:12 +00:00
Mikhail Kilin
32ab1df1fa
fixes
2026-01-21 02:27:08 +03:00
652b101571
Merge pull request 'yet-another-changes' ( #1 ) from yet-another-changes into main
...
Reviewed-on: #1
2026-01-20 11:55:25 +00:00
Mikhail Kilin
9912ac11bd
fixes
2026-01-20 14:54:30 +03:00
Mikhail Kilin
699f50a59c
fixes
2026-01-20 13:37:02 +03:00
Mikhail Kilin
b6d9291864
fixes
2026-01-20 01:00:12 +03:00
Mikhail Kilin
d701464fde
init
2026-01-18 11:49:41 +03:00