Mikhail Kilin
|
8bd08318bb
|
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-02-14 17:57:37 +03:00 |
|
Mikhail Kilin
|
ffd52d2384
|
refactor: complete Phase 13 deep architecture refactoring (etaps 3-7)
Split monolithic files into modular architecture:
- ui/messages.rs (893→365 lines): extract modals/, compose_bar.rs
- tdlib/messages.rs (836→3 files): split into messages/mod, convert, operations
- config/mod.rs (642→3 files): extract validation.rs, loader.rs
- Code duplication cleanup: shared components, ~220 lines removed
- Documentation: PROJECT_STRUCTURE.md rewrite, 16 files got //! docs
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-02-06 15:28:11 +03:00 |
|
Mikhail Kilin
|
8e48d076de
|
refactor: implement trait-based DI for TdClient and fix stack overflow
Implement complete trait-based dependency injection pattern for TdClient
to enable testing with FakeTdClient mock. Fix critical stack overflow bugs
caused by infinite recursion in trait implementations.
Breaking Changes:
- App is now generic: App<T: TdClientTrait = TdClient>
- All UI and input handlers are generic over TdClientTrait
- TdClient methods now accessed through trait interface
New Files:
- src/tdlib/trait.rs: TdClientTrait definition with 40+ methods
- src/tdlib/client_impl.rs: TdClientTrait impl for TdClient
- tests/helpers/fake_tdclient_impl.rs: TdClientTrait impl for FakeTdClient
Critical Fixes:
- Fix stack overflow in send_message, edit_message, delete_messages
- Fix stack overflow in forward_messages, current_chat_messages
- Fix stack overflow in current_pinned_message
- All methods now call message_manager directly to avoid recursion
Testing:
- FakeTdClient supports configurable auth_state for auth screen tests
- Added pinned message support in FakeTdClient
- All 196+ tests passing (188 tests + 8 benchmarks)
Dependencies:
- Added async-trait = "0.1"
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
|
2026-02-02 05:42:19 +03:00 |
|
Mikhail Kilin
|
644e36597d
|
fixes
|
2026-01-31 03:48:50 +03:00 |
|
Mikhail Kilin
|
4deb0fbe00
|
commit
|
2026-01-30 15:07:13 +03: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 |
|
Mikhail Kilin
|
356d2d3064
|
add account profile
|
2026-01-27 13:41:29 +03:00 |
|
Mikhail Kilin
|
22c4e17377
|
fixes
|
2026-01-24 02:22:47 +03:00 |
|
Mikhail Kilin
|
c18f43664e
|
fixes
|
2026-01-22 15:26:15 +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 |
|