Commit Graph

223 Commits

Author SHA1 Message Date
ddidderr 8f35a197a9 refactor(peer): extract peer startup task spawning
The peer runtime used to spawn each long-running service inline inside
run_peer. That made the startup path harder to scan because service names,
clone setup, and task error handling were interleaved with the command loop.

Move the task wrappers into a startup module and leave run_peer as the
lifecycle overview: create shared context, start services, handle commands,
then send shutdown goodbyes. The spawned services and their error handling are
unchanged; only the ownership plumbing moved into named helpers.

Test Plan:
- cargo clippy
- cargo clippy --benches
- cargo clippy --tests
- cargo +nightly fmt

Refs: none
2026-05-02 16:02:37 +02:00
ddidderr 3fb516af2b refactor(tauri): use default managed runtime state
LanSpreadState now owns its empty initialization through Default. This keeps
the root runtime state construction in one place instead of building each
Arc<RwLock<_>> value inline before registering it with Tauri.

The setup hook now retrieves peer_game_db from the managed state and clones the
Arc before spawning async peer initialization. That preserves the existing
lifetime boundary while removing the separate outer peer_game_db binding.

There is no user-visible behavior change. The peer database, game list,
download tracking, games folder, and peer control channel still start empty and
are populated through the same setup and command paths.

Test Plan:
- cargo clippy
- cargo clippy --benches
- cargo clippy --tests
- cargo +nightly fmt

Refs: none
2026-05-02 15:48:11 +02:00
ddidderr 047cb72905 deno update --latest 2026-05-02 15:33:14 +02:00
ddidderr b4585b663a ChatGPT Codex 5.5 xhigh refactored even more 2026-05-02 15:31:37 +02:00
ddidderr 86d0f93ede asd 2026-02-26 20:12:25 +01:00
ddidderr 4318927060 deps: deno update --latest 2026-01-14 08:57:30 +01:00
ddidderr b60dcef471 ChatGPT Codex 5.2 xhigh refactored > 45min 2026-01-13 18:59:12 +01:00
ddidderr f76d59265c Plan to cleanup everything by Codex 5.2 (xhigh) 2026-01-03 22:21:29 +01:00
ddidderr 0ba4ff3acb deno update, cargo update 2026-01-03 22:20:59 +01:00
ddidderr feee9229fa claude: updated CLAUDE.md 2025-12-07 08:18:25 +01:00
ddidderr 05411ce8b8 CLAUDE.md: --workspace instead of --all 2025-11-30 10:50:53 +01:00
ddidderr 53c7fe10ba refactor (Opus 4.5): modularize and split 2025-11-28 21:10:42 +01:00
ddidderr df01131f8d refactor: Centralize local game database updates and announcements, and add retry logic for requesting games from peers. 2025-11-18 21:42:47 +01:00
ddidderr f9923bd61e feat: Implement length-delimited framing for QUIC stream communication using tokio-util and futures. 2025-11-18 20:39:38 +01:00
ddidderr 68594740a5 Tauri app identifier 2025-11-18 19:52:04 +01:00
ddidderr ddbdb33cd6 Merge remote-tracking branch 'gh/p2p' into p2p 2025-11-18 19:49:21 +01:00
ddidderr 84eeebb633 feat: Exclude .sync, .softlan_first_start_done, and local directories from root size calculation. 2025-11-18 19:47:41 +01:00
ddidderr 04fe2bfcbe clippy 2025-11-18 19:26:05 +01:00
ddidderr e2f0dfa792 feat: Enable peers to announce and synchronize local game libraries. 2025-11-18 19:08:29 +01:00
ddidderr 25bac734e2 unsafe 2025-11-14 11:32:56 +01:00
ddidderr 293ede96ed ugly 2025-11-14 11:28:55 +01:00
ddidderr f88fa5794c skip descending into local 2025-11-14 11:08:37 +01:00
ddidderr 75be55d255 remember game dir 2025-11-14 10:44:02 +01:00
ddidderr 86cf3e87f7 skip .sync and .softlan_game_installed 2025-11-14 10:34:45 +01:00
ddidderr 67f99f4a0a dont do heavy size calc 2025-11-14 10:28:55 +01:00
ddidderr ec2a2ef44d windows paths 2025-11-14 10:11:11 +01:00
ddidderr e435be4d94 unsafe for the win 2025-11-14 09:39:59 +01:00
ddidderr cc42bc6f4b Reapply "build system windows"
This reverts commit d9dc040927.
2025-11-14 09:33:38 +01:00
ddidderr d9dc040927 Revert "build system windows"
This reverts commit da758d770a.
2025-11-14 09:32:22 +01:00
ddidderr da758d770a build system windows 2025-11-14 09:30:47 +01:00
ddidderr 5fc6505474 update 2025-11-14 09:28:47 +01:00
ddidderr b53f249512 minor clippy 2025-11-14 09:05:53 +01:00
ddidderr 833c8afedf game thumbnails 2025-11-14 09:03:05 +01:00
ddidderr 567d293455 game sizes? 2025-11-14 08:12:09 +01:00
ddidderr 6eec74f0f6 unavailable games red button 2025-11-14 02:24:18 +01:00
ddidderr 2952b596e2 peers gone... 2025-11-14 02:16:53 +01:00
ddidderr fe7444be4f wip 2025-11-14 01:59:07 +01:00
ddidderr da8457edfc wip 2025-11-14 01:44:39 +01:00
ddidderr f209653842 dead peer discovery and available games updates 2025-11-14 01:24:42 +01:00
ddidderr 8432030292 detect if a game is deleted, added, modified locally 2025-11-14 01:12:01 +01:00
ddidderr 4764bb9fd3 log chunks 2025-11-14 01:02:49 +01:00
ddidderr 1b2b2cf8c0 file transfer: improve / fix 2025-11-14 00:47:02 +01:00
ddidderr 4e9707dd51 mdns improved peer discovery 2025-11-14 00:24:04 +01:00
ddidderr b9e3e760d9 peer count in UI 2025-11-14 00:03:32 +01:00
ddidderr 32e909448f wip 2025-11-13 23:58:04 +01:00
ddidderr a1dfc5cc89 wip 2025-11-13 23:42:12 +01:00
ddidderr e19eda7919 installed + downloaded 2025-11-13 23:26:07 +01:00
ddidderr c1d20189c3 game files list: filter out local 2025-11-13 21:59:05 +01:00
ddidderr d785fcc93a Play game: first start done marker, local dir check 2025-11-13 21:53:00 +01:00
ddidderr 8fe68f9574 wip 2025-11-13 21:43:20 +01:00