Commit Graph

1969 Commits

Author SHA1 Message Date
Tunglies
dbf82fb7d3 refactor(server): simplify command handlers in embedded server and improve async handling 2025-12-25 18:13:48 +08:00
Tunglies
509a45bd1e fix(server): spawn embedded server commands using AsyncHandler on Linux to prevent new app instance creation 2025-12-25 17:01:30 +08:00
Tunglies
4a9a4ab6e1 fix(tauri): reduce Tokio task stack usage for embedded Warp server 2025-12-25 16:48:19 +08:00
Tunglies
f9b8a658a1 perf(draft): optimize memory layout by removing double indirection & implemented optimistic locking via Arc::ptr_eq for with_data_modify (#5942)
* perf(draft): optimize memory layout by removing double indirection

- Replace `Arc<Box<T>>` with `Arc<T>` to reduce pointer chasing and memory overhead.
- Leverage `Arc::from(Box<T>)` in async modify path for efficient ownership transfer.
- Fix race conditions in `edit_draft` by ensuring atomicity under write lock.
- Performance improved by ~16-24% across all operations (based on Criterion bench).

Benchmarks:
- latest_arc:     41.1ns (-24.2%)
- edit_draft:     92.2ns (-17.6%)
- apply:          89.8ns (-17.7%)
- async_modify:   66.0ns (-16.6%)

* perf(draft): implemented optimistic locking via Arc::ptr_eq for with_data_modify

Benchmarks confirm only a negligible ~2% (1.3ns) overhead for async operations, ensuring total data integrity during concurrent updates.
2025-12-25 16:44:23 +08:00
Slinetrac
1c044f053f fix(theme/windows): switch to dark-light based theme detection 2025-12-25 14:43:27 +08:00
Slinetrac
712b8ff19b refactor(linux): move Linux-specific mime.rs and workarounds.rs to utils/linux 2025-12-25 13:18:55 +08:00
Slinetrac
4ab2720ac4 refactor(tray): remove --no-tray code path and env-based tray bypass 2025-12-25 10:42:03 +08:00
Slinetrac
af0e72d119 feat(linux): disable WebKit DMABUF renderer on NVIDIA GPUs at startup #5921 2025-12-25 10:34:27 +08:00
Slinetrac
bd62a4ecc0 refactor(utils): extract freedesktop mimeapps handling into utils/mime 2025-12-25 10:02:07 +08:00
Slinetrac
f26abcd2a9 fix(backup): reload config.yaml and profiles.yaml after restore to avoid stale memory overwrite #5909
Closes #5909
2025-12-23 10:56:31 +08:00
oomeow
19accbd538 chore: rust related config for workspace (#5912)
* chore: move rust related config to workspace

* chore: cargo fmt
2025-12-22 15:28:55 +08:00
Tunglies
af094bfcd7 refactor: remove port_scanner dependency and simplify port checking logic 2025-12-21 16:51:55 +08:00
Slinetrac
23e551e384 feat(tray): add optional inline outbound modes in tray menu #5881
Closes #5881
2025-12-21 10:33:19 +08:00
Tunglies
16c3dcc616 fix(proxy): check if proxy port is in use #5891 2025-12-20 19:11:27 +08:00
renovate[bot]
6f61759a39 chore(deps): update rust crate zip to v7 (#5886)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-20 13:54:25 +08:00
Cactus
57b17ab8d3 feat: add navigation collapse functionality to layout (#5815)
* feat(layout): add collapsible navbar toggle in UI settings

* refactor(layout): adjust collapsed navbar styles

* docs: Changelog.md

---------

Co-authored-by: Slinetrac <realakayuki@gmail.com>
2025-12-19 18:15:20 +08:00
Sline
fc84dc561c feat(notice): persist toast position preference (#5621)
* feat(notice): persist toast position preference

* docs: Changelog.md
2025-12-19 18:04:23 +08:00
Sline
bd8eccdcea feat(backup): add local backup import flow (#5669)
* feat(backup): add local backup import flow

* refactor(backup): robustify history listing and propagate import error details

* docs: Changelog.md
2025-12-19 17:46:31 +08:00
Tunglies
f0ae631cb0 chore: update version to 2.4.5 and enhance changelog management scripts 2025-12-19 16:51:11 +08:00
Tunglies
787463a226 chore: bump version to 2.4.4 2025-12-19 16:25:24 +08:00
oomeow
a1286ad057 fix: always occupies hotkey globally when app launch silently (#5866)
* fix: always occupies hotkey when app launch silently

* docs: update Changelog.md

* chore: update
2025-12-18 22:21:15 +08:00
oomeow
9713343323 refactor: use sysproxy-rs to set system proxy on windows (#5846)
* refactor: use sysproxy-rs to set system proxy on windows

* fix: remove download sysproxy.exe task

* chore: unified processing system proxy reset

* docs: update Changelog.md
2025-12-18 20:23:29 +08:00
Tunglies
bcb8e831c5 fix(runtime): aovid force re-reresh runtime after create proxy chain 2025-12-17 12:52:25 +08:00
Tunglies
b35d0ac16f chore: prerelease 2.4.4-rc.1 2025-12-16 16:05:48 +08:00
Tunglies
5b63f350ed fix: update edition and rust-version fields in Cargo.toml files 2025-12-15 14:17:56 +08:00
Tunglies
5f885bbe32 fix: update clash_verge_service_ipc to version 2.0.26 and kode-bridge to version 0.3.5 2025-12-15 14:09:33 +08:00
oomeow
da7faf815f Revert "perf: improve check tun mode available when update tray menu"
This reverts commit af7b33d35b.
Closes: https://github.com/clash-verge-rev/clash-verge-rev/issues/5806
2025-12-13 18:26:27 +08:00
oomeow
af9b67186e perf: handle tray icon event to reduce always spawn thread 2025-12-13 16:49:55 +08:00
oomeow
c5fa64a213 perf: use blocking recv method reduce unnecessary polling overhead. 2025-12-13 16:10:15 +08:00
oomeow
5c42658a2e fix: init work config and resources twice 2025-12-13 15:21:22 +08:00
oomeow
3c1bcd7d72 fix: macOS tray icon color flickers during app launch 2025-12-13 13:46:49 +08:00
Tunglies
e56a989944 fix: improve service availability checks #5788 2025-12-12 16:07:36 +08:00
Tunglies
cea78289c1 Revert "fix: service unexpected status after restart app in unix (#5768)"
This reverts commit 2995f61087.
2025-12-12 12:46:51 +08:00
hank
2995f61087 fix: service unexpected status after restart app in unix (#5768)
* fix: 修复macos重启应用后需要重设服务器模式问题

* chore: remove package-lock.json (using pnpm)

* Delete test.sh

* refactor(lifecycle): remove unnecessary conditional compilation for macOS and Windows

* refactor(timing): remove conditional compilation for service wait durations on Windows and macOS

---------

Co-authored-by: Tunglies <77394545+Tunglies@users.noreply.github.com>
2025-12-11 20:09:27 +08:00
Tunglies
623ed69a37 fix(logging): adjust conditional compilation for NoModuleFilter based on tracing-full feature 2025-12-11 08:03:32 +08:00
Tunglies
7838fa1e75 refactor(tray): remove timer for updating tray in plan, use update manually to prevent needless refresh to cause visuual flash 2025-12-10 23:40:17 +08:00
Tunglies
dd34ced070 fix(service): await for service operations, prevent too early to check service available 2025-12-10 23:29:11 +08:00
oomeow
af7b33d35b perf: improve check tun mode available when update tray menu 2025-12-09 19:06:57 +08:00
wonfen
494e888b52 fix: typo 2025-12-08 11:26:20 +08:00
Sline
9286e921a6 chore(linux): remove WebKit DMABUF env setup logic (#5758) 2025-12-07 16:06:54 +08:00
oomeow
3ab985aacc fix: failed to restart core (#5754)
* fix: failed to restart core after install service

* chore: update tauri-plugin-mihomo deps

* fix: update dependencies for tauri-plugin-mihomo and related packages

---------

Co-authored-by: Tunglies <77394545+Tunglies@users.noreply.github.com>
2025-12-07 12:42:32 +08:00
oomeow
86936d5322 fix: wrong service status when handle service status error 2025-12-06 20:34:41 +08:00
oomeow
c1489647d1 fix: update service status when service is ready 2025-12-06 20:22:45 +08:00
oomeow
d0917dae73 fix: core always run by sidecar mode after reinstall service 2025-12-06 13:27:24 +08:00
Tunglies
4e34eb156b chore: update version to 2.4.4-rc 2025-12-06 11:52:04 +08:00
Tunglies
90b1c6e153 refactor(signal): migrate signal to handling async in windows and remove windows_sys dependency (#5741)
* refactor(signal): migrate signal to handling async in windows and remove signal-hook dependency

* refactor(signal): enhance Windows signal handling with improved cleanup logic

* refactor(signal): improve exit handling in run function for async compatibility
2025-12-06 11:33:49 +08:00
Tunglies
2ca8e6716d style: adjust rustfmt max_width to 120 2025-12-06 10:31:31 +08:00
Tunglies
c888703b05 fix(service): enhance version check error handling for compatibility with older service versions 2025-12-06 10:26:03 +08:00
Slinetrac
28f8bb9199 fix(tray): remove checkmark from proxy group entries 2025-12-05 13:46:22 +08:00
Tunglies
a0fd24bb90 refactor(sysopt): replace Mutex with RwLock for inner_proxy management 2025-12-04 23:47:34 +08:00