oomeow
f6440175d8
fix(signal): use default runtime ( #7495 )
2026-07-16 12:19:35 +00:00
renovate[bot] and renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
1d3a7107d9
chore(deps): update cargo dependencies ( #7332 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-28 11:52:25 +00:00
wonfen
1e44bafa79
fix(service): notify users about macOS App Translocation
...
Show a delayed localized error notice when Clash Verge is running from a
translocated temporary path and no stable core path can be resolved.
2026-06-28 03:48:13 +08:00
renovate[bot] and renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
462d9f536d
chore(deps): update cargo dependencies ( #7141 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-02 13:46:05 +00:00
Tunglies
fa27d3eae5
Revert "feat(cvd): add device-bound subscription protocol"
...
This reverts commit 2cb9c13ab6 .
2026-06-02 21:02:19 +08:00
wonfen
2cb9c13ab6
feat(cvd): add device-bound subscription protocol
2026-06-02 13:43:54 +08:00
Tunglies
232be33754
fix(draft): serialize async updates
2026-05-30 13:31:10 +08:00
Siyuan Liang and Tunglies
22c516f550
feat(sysinfo): return structured system info ( #7122 )
...
* feat(sysinfo): return structured system info
* refactor: simplify SystemInfo conversion and enhance Platform struct
---------
Co-authored-by: Tunglies <77394545+Tunglies@users.noreply.github.com >
2026-05-26 08:40:42 +00:00
631c9d1b61
chore(deps): update cargo dependencies ( #6932 )
...
* chore(deps): update cargo dependencies
* MSRV 1.95.0
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Tunglies <77394545+Tunglies@users.noreply.github.com >
Co-authored-by: Tunglies <tunglies.dev@outlook.com >
2026-05-20 13:11:02 +00:00
Tunglies
762f9a96fd
refactor media unlock task collection
2026-04-24 20:20:50 +08:00
a4c537541e
chore(deps): update rust crate rust-i18n to v4 ( #6784 )
...
* chore(deps): update rust crate rust-i18n to v4
* fix: migrate rust-i18n to v4 with Cow-first zero-copy approach
- Adapt to v4 breaking changes: available_locales!() returns Vec<Cow<'static, str>>
- Cache locales in LazyLock<Vec<Cow<'static, str>>> to avoid repeated Vec alloc + sort
- Propagate Cow<'static, str> through resolve/current/system_language APIs
- Fix t! macro args branch: into_owned() + Cow::Owned for type correctness
- Eliminate double resolve in sync_locale (skip redundant set_locale indirection)
- Replace .to_string() with .into_owned() / Cow passthrough in updater.rs
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Tunglies <77394545+Tunglies@users.noreply.github.com >
2026-04-12 11:11:16 +00:00
wonfen
b7ae5f0ac9
fix: handle edge cases and add missing i18n
2026-04-03 06:26:24 +08:00
wysha-object and Tunglies
b7230967b4
feat: show detailed results in hotkey notifications ( #6639 )
...
* feat: show detailed results in hotkey notifications
* fix: Japanese locale appears to have a truncated translation key label
* fix: variable naming
* Update documentation to English
* Remove unnecessary mut
* feat: enhance system proxy notifications with toggle state
* chore: update changelog to include new shortcut notification feature
* fix: remove unnecessary quotes from system proxy toggle messages in localization files
* fix: tun mode toggled hotkey notifications
* fix: correct toggle_tun_mode logic to handle current state and errors
---------
Co-authored-by: Tunglies <77394545+Tunglies@users.noreply.github.com >
2026-03-30 17:06:45 +00:00
7c487fea2a
chore(deps): lock file maintenance ( #6523 )
...
* chore(deps): lock file maintenance
* chore: update Cargo.toml
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Slinetrac <realakayuki@gmail.com >
2026-03-16 06:21:57 +00:00
Slinetrac
c672a6fef3
refactor: lint ( #6511 )
...
* refactor: lint
* chore: remove eslint-plugin/config-prettier
2026-03-15 07:40:11 +00:00
acab77a1b4
chore(deps): lock file maintenance ( #6347 )
...
* chore(deps): lock file maintenance
* chore(deps): update Cargo.toml
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Slinetrac <realakayuki@gmail.com >
2026-02-23 01:52:27 +00:00
Tunglies
c3f7ff7aa2
feat: add debug-release profile and limit signal runtime thread to one
2026-02-05 13:53:58 +08:00
Tunglies
ae5d3c478a
fix: resolve issue with tray operations after system resume ( #6216 )
...
* feat(limiter): add Limiter struct with clock interface and tests
* feat(limiter): integrate Limiter into tray and window management for rate limiting
* fix(tray, window_manager): update debounce timing for tray click and window operations
* refactor(limiter): change time representation from u64 to u128 for improved precision
* fix: resolve issue with tray operations after system resume
* Revert "refactor(limiter): change time representation from u64 to u128 for improved precision"
This reverts commit 2198f40f7f .
2026-01-31 09:23:20 +00:00
Tunglies
5103868119
perf: separate Clone implementation for Draft struct and remove trait bound from struct definition
...
Improve around 2% - 16% CPU performance
2026-01-28 10:28:26 +08:00
425096e8af
chore(deps): lock file maintenance cargo dependencies ( #6167 )
...
* chore(deps): lock file maintenance cargo dependencies
* chore: run cargo upgrade and cargo update
* chore: fix clippy
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Slinetrac <realakayuki@gmail.com >
2026-01-26 07:45:36 +00:00
Tunglies
5e976c2fe1
chore: inline crate clash-verge-types to module for better maintenance ( #6142 )
2026-01-23 14:00:51 +00:00
Tunglies
d1649e3017
fix: update service to 2.1.0 and improve service installation for Unix systems ( #6114 )
...
* fix: update service to 2.1.0 and improve service installation for Unix systems
* fix: set GID environment variable during service installation on Linux
* Revert "fix: set GID environment variable during service installation on Linux"
This reverts commit 373aec579b .
2026-01-19 14:02:25 +08:00
Slinetrac
2869a35f1e
chore(i18n): update backend i18n keys
...
translated by GPT-5.2.
2026-01-19 12:35:30 +08:00
f451a26f8c
chore(deps): lock file maintenance ( #6063 )
...
* chore(deps): lock file maintenance
* chore(deps): update Cargo.toml
* chore(deps): use git repo until the next release
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Slinetrac <realakayuki@gmail.com >
2026-01-12 14:45:33 +08:00
Slinetrac
256a3f697b
chore(deps): update Cargo.toml
2026-01-05 13:26:28 +08:00
oomeow
421bbd090e
feat: reconfig log dynamically ( #5724 )
2026-01-04 16:56:16 +08:00
Tunglies and KaguraNaku
cceb0a6eb4
fix(permissions): manage umask for sidecar process in CoreManager on Unix
...
Co-authored-by: KaguraNaku <97681505+KaguraNaku@users.noreply.github.com >
2025-12-31 21:05:05 +08:00
Tunglies
9ce343fb45
perf(i18n): update translate function to use Cow to aovid allocate
2025-12-30 18:32:19 +08:00
Tunglies
cf08628200
fix(config): update home_cards reference to use as_ref() for improved handling
2025-12-30 18:09:10 +08:00
Tunglies
c06c15450f
perf(draft): update with_data_modify to use T instead of Box<T> for better performance
...
Performance improved around 11.7%, avoid to allocate stack and copy to heap.
2025-12-30 17:51:50 +08:00
Tunglies
c41db51f81
feat: add governor crate for rate limiting and improve window/tray operation handling
2025-12-27 20:27:49 +08:00
Sline and Tunglies
c8aeae3f83
crate(i18n): add clash-verge-i18n crate and integrate localization support ( #5961 )
...
* crate(i18n): add clash-verge-i18n crate and integrate localization support
* refactor(service): remove redundant reinstall_service functions for Windows, Linux, and macOS
* chore(i18n): align i18n key
* feat(i18n): unify scan roots and add backend Rust/YAML support to cleanup script
* chore(i18n): add scripts to package.json
* fix(tray): initialize i18n locale before setup
* refactor(i18n): move locale initialization into Config::init_config
* fix(i18n): refresh systray tooltip on language change and correct docs reference
* fix(tray): remove unnecessary locale synchronization to improve performance
---------
Co-authored-by: Tunglies <77394545+Tunglies@users.noreply.github.com >
2025-12-27 15:03:19 +08:00
Slinetrac
5aba848741
Revert "crate(i18n): add clash-verge-i18n crate and integrate localization support ( #5959 )"
...
This reverts commit 593751eda2 .
2025-12-27 12:07:56 +08:00
Tunglies and Slinetrac
593751eda2
crate(i18n): add clash-verge-i18n crate and integrate localization support ( #5959 )
...
* crate(i18n): add clash-verge-i18n crate and integrate localization support
* refactor(service): remove redundant reinstall_service functions for Windows, Linux, and macOS
* chore(i18n): align i18n key
* feat(i18n): unify scan roots and add backend Rust/YAML support to cleanup script
* chore(i18n): add scripts to package.json
---------
Co-authored-by: Slinetrac <realakayuki@gmail.com >
2025-12-27 11:33:58 +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
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
5b63f350ed
fix: update edition and rust-version fields in Cargo.toml files
2025-12-15 14:17:56 +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
d28075221c
refactor(signal): migrate signal to handling async in unix and remove signal-hook dependency
2025-12-06 06:41:47 +08:00
renovate[bot] and renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
76eb063f7d
chore(deps): update cargo dependencies ( #5699 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-03 12:18:43 +08:00
Tunglies
6897ead070
perf: change patch_config parameter from Mapping to &Mapping for efficiency
2025-11-30 20:44:21 +08:00
Tunglies
ecc272aa20
feat: integrate tauri-plugin-clipboard-manager and add system info commands ( #5593 )
2025-11-25 16:58:25 +08:00
oomeow and Tunglies
cbab199f80
fix: failed to receive shutdown signal on windows ( #5533 )
...
* fix: receive shutdown signal failed on windows
* docs: update Changelog.md
* chore: update
* fix: use tokio runtime to handle shutdown signal
* docs: update Changelog.md
* fix: move tauri dependency to the correct section in Cargo.toml
* fix: remove unused exit handling code in run function
* fix(clash-verge-signal): use global runtime to avoid tokio runtime panic on unix
* chore: update tauri-plugin-mihomo deps
* fix: handle macOS exit event to ensure proper application termination
---------
Co-authored-by: Tunglies <77394545+Tunglies@users.noreply.github.com >
2025-11-22 22:36:00 +08:00
Tunglies
a271ba6ce5
feat: add update_proxy_chain_config method with detailed documentation for proxy and proxy-group configuration
2025-11-22 16:30:25 +08:00
Tunglies
82bed4910e
perf: refactor IRuntime to use HashSet for exists_keys and improve related functions performance
2025-11-22 16:25:50 +08:00
Tunglies
c82cefe80e
feat: add clash-verge-types crate and integrate IRuntime struct
2025-11-22 15:33:24 +08:00
Tunglies
ba3cd9b006
refactor: simplify IVerge struct by deriving Default and removing manual implementation
2025-11-19 18:40:53 +08:00
Tunglies
8339fabb17
feat(sysinfo): add tauri-plugin-clash-verge-sysinfo for system information retrieval ( #5510 )
...
* feat(sysinfo): add tauri-plugin-clash-verge-sysinfo for system information retrieval
* feat(sysinfo): add tauri-plugin-clash-verge-sysinfo for system information retrieval
* fix(service): import Manager trait for app handle in linux_running_as_root function
2025-11-18 15:48:48 +08:00
Tunglies
e672d19622
feat(signal): add clash-verge-signal crate and integrate signal handling ( #5500 )
...
* feat(signal): add clash-verge-signal crate and integrate signal handling
* fix: clippy error on type complexity
2025-11-18 10:04:21 +08:00