Tunglies
3bbcdbe5ca
fix(service): update update clash_verge_service_ipc to 2.0.27
...
chore(changelog): add IPC permission restrictions for macOS and Linux
refactor(service): remove outdated service version check logic
2025-12-31 21:35:34 +08:00
Slinetrac
ca50e35435
chore(deps): bump deps
2025-12-28 17:55:58 +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
Tunglies
2c1303c2bd
feat: add bitflags crate and refactor UpdateFlags implementation
2025-12-27 17:09:08 +08:00
Sline
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
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
Sline
65b4d8713d
refactor: windows autostart ( #5941 )
...
* refactor(windows-autostart): switch to scheduled tasks with user/admin split
* fix(schtasks): decode stdout/stderr using Windows OEM/ANSI code pages
* refactor(ui): remove admin auto-launch warning and clean i18n
* feat(windows): user-level auto-launch via task XML
* docs: Changelog.md
2025-12-26 14:42:21 +08:00
Tunglies
af094bfcd7
refactor: remove port_scanner dependency and simplify port checking logic
2025-12-21 16:51:55 +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
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
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
Tunglies
e56a989944
fix: improve service availability checks #5788
2025-12-12 16:07:36 +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
4e34eb156b
chore: update version to 2.4.4-rc
2025-12-06 11:52:04 +08:00
Tunglies
f2ad62e446
chore: update clash_verge_service_ipc to version 2.0.24 , improve service prompts and improve service need reinstall process
2025-12-04 23:04:03 +08:00
Tunglies
357069505a
chore(deps): bump clash_verge_service_ipc version to 2.0.23
2025-12-04 00:04:27 +08:00
oomeow
9388b73c1f
fix: upgrade mihomo core failed ( #5646 )
...
* fix: upgrade mihomo core failed
* fix: upgrade core failed when run core by service
* fix: app freeze when restart core on windows
* deps: bump clash-verge-rev-ipc version lock
---------
Co-authored-by: Tunglies <77394545+Tunglies@users.noreply.github.com >
2025-12-03 21:48:30 +08:00
Tunglies
a611f7d8a7
fix: switch reqwest client to use rustls-tls for improved security #5559
2025-12-01 22:22:26 +08:00
renovate[bot]
ae8c302bf4
chore(deps): update cargo dependencies ( #5670 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-11-30 19:48:44 +08:00
Sline
683667f8ae
fix(ui): prevent light flash on dark startup ( #5637 )
...
* fix(ui): prevent light flash on dark startup
* fix(window): apply initial dark/light theme to prevent white flash
* refactor(boot): optimize config fetch and theme fallback
* fix: system theme detection
* fix(window): remove black flash before loader by aligning initial paint with theme
2025-11-28 15:15:17 +08:00
Tunglies
ecc272aa20
feat: integrate tauri-plugin-clipboard-manager and add system info commands ( #5593 )
2025-11-25 16:58:25 +08:00
AetherWing
6b3f5eea16
fix: correct flag emoji for ISO alpha-3 region code ( #5557 )
...
* fix: correct flag emoji for ISO alpha-3 region code
* fix: use rust_iso3166 to convert ISO3 region code
* fix: validate ISO country code when generating flag emoji
* fix: correct icon encoding for unlock test in specific regions
---------
Co-authored-by: Tunglies <77394545+Tunglies@users.noreply.github.com >
2025-11-24 20:40:32 +08:00
Tunglies
cbd1fa44d7
fix(reqwest): add native-tls feature to reqwest dependency #5559
2025-11-24 13:25:00 +08:00
Tunglies
c82cefe80e
feat: add clash-verge-types crate and integrate IRuntime struct
2025-11-22 15:33:24 +08:00
Slinetrac
614a2cf00b
style: prettier
2025-11-20 15:27:42 +08:00
Tunglies
b3dc48d07e
fix(tests): suppress clippy expect warnings in enhance function
...
fix(timer): improve task removal logic in add_task method
refactor(notification): drop binding after emitting event
chore(Cargo): add lints section to Cargo.toml
2025-11-20 14:59:49 +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
renovate[bot]
92d3a59d0d
chore(deps): update rust crate open to 5.3.3 ( #5501 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-11-18 13:32:18 +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
Tunglies
056af768e5
feat: initialize workspace with clash-verge-draft and clash-verge-logging crates ( #5489 )
...
- Add Cargo.toml for workspace management, including dependencies and profiles.
- Create clash-verge-draft crate with basic structure, including a benchmark for Draft functionality.
- Implement Draft management with shared state and asynchronous modifications.
- Add tests for Draft functionality to ensure correctness.
- Create clash-verge-logging crate for logging utilities with structured log types and macros.
- Update src-tauri to use new crates and remove unnecessary configurations.
- Refactor existing code to utilize the new Draft and logging functionalities.
2025-11-17 11:51:50 +08:00
Tunglies
0866b93175
feat(logging): introduce clash-verge-logging crate for management ( #5486 )
...
* feat(logging): introduce clash-verge-logging crate for management
- Added a new crate `clash-verge-logging` with dependencies on `log`, `tokio`, `compact_str`, and `flexi_logger`.
- Implemented logging types and macros for structured logging across the application.
- Replaced existing logging imports with the new `clash_verge_logging` crate in various modules.
- Updated logging functionality to support different logging types and error handling.
- Refactored code to improve logging consistency and maintainability.
* fix(logging): update import paths for clash_verge_logging in linux.rs and dns.rs
* fix(logging): update import statement for clash_verge_logging in windows.rs
2025-11-17 10:42:57 +08:00
Tunglies
dbb4877be6
refactor(Draft): management as crate ( #5470 )
...
* feat: implement draft functionality with apply and discard methods, and add benchmarks and tests
* Refactor Draft management and integrate Tokio for asynchronous operations
- Introduced a new `IVerge` struct for configuration management.
- Updated `Draft` struct to use `Arc<RwLock>` for better concurrency handling.
- Added asynchronous editing capabilities to `Draft` using Tokio.
- Replaced synchronous editing methods with asynchronous counterparts.
- Updated benchmark tests to reflect changes in the `Draft` API.
- Removed redundant draft utility module and integrated its functionality into the main `Draft` implementation.
- Adjusted tests to validate new behavior and ensure correctness of the `Draft` management flow.
2025-11-16 00:33:21 +08:00
Tunglies
8654bad6b0
refactor: migrate proxy setting guard to sysproxy-rs crate ( #5287 )
...
* Refactor proxy management: Remove EventDrivenProxyManager and async_proxy_query
- Removed the EventDrivenProxyManager and its related event-driven proxy management logic.
- Replaced usages of AsyncProxyQuery with direct calls to sysproxy for fetching system and auto proxy configurations.
- Cleaned up constants by removing unused default proxy host.
- Updated sysopt to eliminate calls to the removed EventDrivenProxyManager.
- Adjusted logging and proxy state management to reflect the removal of event-driven architecture.
- Simplified the core module structure by removing unnecessary module imports.
* refactor: remove bypass module for cleaner network configuration
* feat: update sysproxy to version 0.4.0 and add guard feature; refactor sysopt for improved proxy management
* feat(windows/sysproxy): unify guard-type handling and auto-restore drift
* refactor(config): remove commented-out code for SysProxy update flag
---------
Co-authored-by: Slinetrac <realakayuki@gmail.com >
2025-11-15 20:51:36 +08:00
Tunglies
a6cb903fe6
refactor: simplify function return types and remove unnecessary wraps
2025-11-15 08:56:58 +08:00
wonfen
c4e558d377
refactor: replace isahc with reqwest ( #5463 )
2025-11-14 23:10:56 +08:00
renovate[bot]
f1bd56ea13
chore(deps): update cargo dependencies ( #5453 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-11-13 23:17:55 +08:00
Tunglies
e66a4f6aca
perf: some inline magic for Draft
...
This would improve 8-14% CPU for all API
2025-11-10 07:18:50 +08:00
Tunglies
4eeb883464
refactor: update imports to use as _ for unused identifiers across multiple files
2025-11-09 22:15:37 +08:00
Tunglies
e6c8f762db
refactor: replace cloned() with clone() for improved performance in multiple files
2025-11-09 22:07:12 +08:00
Tunglies
f644036e08
chore: update Rust toolchain to version 1.91 and adjust edition in rustfmt configuration
2025-11-09 16:31:37 +08:00
Tunglies
02ff2d3c2e
chore: update dependencies in Cargo.toml and Cargo.lock for improved performance and features
2025-11-09 15:35:22 +08:00
Sline
c8aa72186e
chore: i18n ( #5276 )
...
* chore: notice i18n
* feat: add script to clean up unused i18n keys
* chore: cleanup i18n keys
* refactor(i18n/proxies): migrate proxies UI to structured locale keys
* chore: i18n for rule module
* chore: i18n for profile module
* chore: i18n for connections module
* chore: i18n for settings module
* chore: i18n for verge settings
* chore: i18n for theme settings
* chore: i18n for theme
* chore(i18n): components.home.*
* chore(i18n): remove unused i18n keys
* chore(i18n): components.profile.*
* chore(i18n): components.connection
* chore(i18n): pages.logs.*
* chore(i18n): pages.*.provider
* chore(i18n): components.settings.externalCors.*
* chore(i18n): components.settings.clash.*
* chore(i18n): components.settings.liteMode.*
* chore(i18n): components.settings.backup.*
* chore(i18n): components.settings.clash.port.*
* chore(i18n): components.settings.misc.*
* chore(i18n): components.settings.update.*
* chore(i18n): components.settings.sysproxy.*
* chore(i18n): components.settings.sysproxy.*
* chore(i18n): pages.profiles.notices/components.providers.notices
* refactor(notice): unify showNotice usage
* refactor(notice): add typed showNotice shortcuts, centralize defaults, and simplify subscriptions
* refactor: unify showNotice usage
* refactor(notice): unify showNotice API
* refactor(notice): unify showNotice usage
* chore(i18n): components.test.*
* chore(i18n): components.settings.dns.*
* chore(i18n): components.home.clashInfo.*
* chore(i18n): components.home.systemInfo.*
* chore(i18n): components.home.ipInfo/traffic.*
* chore(i18n): navigation.*
* refactor(i18n): remove pages.* namespace and migrate route texts under module-level page keys
* chore(i18n): common.*
* chore(i18n): common.*
* fix: change error handling in patch_profiles_config to return false when a switch is in progress
* fix: improve error handling in patch_profiles_config to prevent requests during profile switching
* fix: change error handling in patch_profiles_config to return false when a switch is in progress
fix: ensure CURRENT_SWITCHING_PROFILE is reset after config updates in perform_config_update and patch_profiles_config
* chore(i18n): restructure root-level locale keys into namespaces
* chore(i18n): add missing i18n keys
* docs: i18n guide
* chore: adjust i18n
* refactor(i18n): align UI actions and status labels with common keys
* refactor(i18n): unify two-name locale namespaces
* refactor(i18n/components): unify locale keys and update component references
* chore(i18n): add shared and entities namespaces to all locale files
* refactor(i18n): consolidate shared and entity namespaces across features
* chore(deps): update npm dependencies to ^7.3.5 (#5310 )
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* refactor(i18n): migrate shared editor modes and consolidate entities namespaces
* tmp
* refactor(i18n): flatten locales and move theme/validation strings
* docs: CONTRIBUTING_i18n.md
* refactor(i18n): restructure feedback and profile namespaces for better organization
* refactor(i18n): unify settings locale structure and update references
* refactor(i18n): reorganize locale keys for home, proxies, rules, connections, logs, unlock, and tests
* refactor(i18n/feedback/layout): unify shared toasts & normalize layout namespace
* refactor(i18n): centralize common UI strings in shared
* refactor(i18n): flatten headers and unify locale schema
* refactor(i18n): consolidate duplicate per-feature translations into shared namespace
* refactor(i18n): split locales into per-namespace files
* style: lint
* refactor(i18n): unify unlock UI translations under tests namespace
* feat(i18n): add type-checked translation keys
* style: eslint import order
* feat(i18n): replace ad-hoc loader with rust-i18n backend bundles
* chore(prebuild): remove locale-copy step
* fix(i18n, notice): propagate runtime params and update cleanup script path
* fix(i18n,notice): make locale formatting idempotent and guard early notice translations
* fix(i18n): resolve locale aliases and match OS codes correctly
* fix(unlock): use i18next-compatible double-brace interpolation in failure notice
* fix(i18n): route unlock error notices through translation keys
* fix(i18n): i18n types
* feat(i18n): localize upgrade notice for Clash core viewer
* fix(notice): ensure runtime overrides apply to prefix translations
* chore(i18n): replace literal notices with translation keys
* chore(i18n): types
* chore(i18n): regen typings before formatting to keep keys in sync
* chore(i18n): simply labels
* chore(i18n): adjust translation
* chore: remove eslint-plugin-i18next
* chore(i18n): add/refine Korean translations across frontend scopes and Rust backend (#5341 )
* chore(i18n): translate settings.json (missed in previous pass) (#5343 )
* chore(i18n): add/refine Korean translations across frontend scopes and Rust backend
* chore(i18n): add/refine Korean translations across frontend scopes and Rust backend
* fix(i18n-tauri): quote placeholder-leading value in ko.yml to prevent rust_i18n parse panic
* chore(i18n): translate settings.json (forgot to include previously)
---------
Co-authored-by: rozan <34974262+thelojan@users.noreply.github.com >
2025-11-08 19:40:38 +08:00
Tunglies
9d874e5c6f
chore: update version to 2.4.4 in package.json, Cargo.toml, Cargo.lock, tauri.conf.json, and add new changelog section
2025-11-08 19:16:51 +08:00
Tunglies
fa74e79f40
fix: update version from 2.4.3-rc to 2.4.3 in package.json, Cargo.toml, Cargo.lock, and tauri.conf.json
2025-11-08 19:10:29 +08:00
Tunglies
6017423a49
chore: update version to 2.4.3-rc and enhance release notes
2025-11-08 18:31:22 +08:00
Slinetrac
5759bed687
refactor(linux): replace users crate with libc::geteuid for root detection
...
Closes #5333
2025-11-07 18:58:13 +08:00