Commit Graph
100 Commits
Author SHA1 Message Date
Tunglies c40c1960ed feat: add window-state management and recovery functionality (#3792)
* feat: add window-state management and recovery functionality

* fix: correct file name reference for window-state.json in uninstall section

* fix: remove unused tauri_plugin_window_state import
2025-06-18 02:21:00 +08:00
Tunglies a8257e8cb2 fix: unexpected behavior while pulling resources (#3789)
fix: unexpected behavior while pulling resources

在 commit 25cfd162f6 中引入新的 pnpm prepare 执行脚本指令,而 prepare 关键字与包管理器的生命周期脚本冲突。导致在运行 Workflow 的时候被执行两次资源拉取,并且被当做生命周期脚本的时候没有携带预期的 \`${{ matrix.target }}\`。这一行为进一步影响 macOS Intel X86 平台上的构建。

所影响的 issues: #3753, #3771
2025-06-18 01:11:33 +08:00
Tunglies 032e5bf32e fix: add macOS specific activation policy handling for silent start (#3740)
* fix: add macOS specific activation policy handling for silent start

* fix: resolve abnormal Dock icon launch during macOS silent startup
2025-06-15 05:10:15 +08:00
Tunglies 0432cad112 fix: disable node and pnpm auto update to prevent breaks build 2025-06-13 14:22:21 +08:00
Tunglies 689042df60 refactor: use Box to store large config objects and add memory usage tests
- Refactored config-related structs to use Box for storing large objects (e.g., IRuntime, IProfiles, PrfItem) to reduce stack memory usage and improve performance.
- Updated related methods and assignments to handle Boxed types correctly.
- Added and improved unit tests to compare memory usage between Boxed and non-Boxed config objects, demonstrating the memory efficiency of Box.
- Test output now shows the size difference between stack-allocated and heap-allocated (Box) config objects.
2025-06-06 14:54:48 +08:00
Tunglies 564fe15df2 refactor(tests): update format_bytes_speed test cases for consistent output 2025-06-06 14:13:48 +08:00
Tunglies 30015dfd67 refactor(state/proxy): use Box<Value> for providers_proxies to reduce struct size
- Changed providers_proxies from Value to Box<Value> in CmdProxyState
- Reduces struct size from 32 bytes to 8 bytes, optimizing memory usage
2025-06-06 12:46:58 +08:00
Tunglies 698c47da69 Refactor workflow triggers in alpha.yml to clarify usage of git tags and remove commented-out sections 2025-06-06 11:58:58 +08:00
Tunglies 46b7a520cd Add I18N issue template for translation and internationalization requests
Fix I18N issue template description and update labels and type
2025-06-06 11:58:58 +08:00
Tunglies cadd6c3497 Add Node.js and pnpm installation steps to cross-check workflow 2025-06-06 11:58:58 +08:00
Tunglies 59594855b8 chore: add cross-platform cargo check workflow and remove debug features 2025-06-06 11:27:15 +08:00
Tunglies 44b7af0c6e chore: publish tag alpha support
chore: update alpha and release workflows to include version consistency checks
2025-06-06 11:27:13 +08:00
Tunglies 80f550d67e refactor(proxy): enhance proxy state management and refresh logic 2025-06-05 20:10:28 +08:00
Tunglies bf868e0ae2 fix: update serde_yaml to deprecated version and adjust range strategy in renovate configuration 2025-06-05 19:34:28 +08:00
Tunglies 4a345fdd41 feat: add initial renovate configuration for dependency management
chore: update renovate configuration for improved dependency management

Revert "chore: update renovate configuration for improved dependency management"

This reverts commit dcfd5f95a5.

feat: add support for grouping cargo and npm dependencies into single PRs
2025-06-05 19:34:26 +08:00
Tunglies fee6a586d7 feat: implement CmdProxyState for managing proxy refresh state and add state management module
refactor: remove unnecessary macOS conditional compilation directive
2025-06-05 19:34:24 +08:00
Tunglies 7c738483b7 feat: add desktop-windows capabilities configuration and permissions
feat: add identifier, description, and windows properties to desktop-windows capabilities

fix: correct desktop-windows capability name in configuration
2025-06-05 19:34:23 +08:00
Tunglies c3d8ed28a2 fix: update fallback language to English in i18n configuration 2025-06-05 19:34:22 +08:00
Tunglies f47b4b961b fix: update alpha and release workflows to trigger builds via git tags only
feat: update release workflow to trigger builds via git tags and add publish version script
2025-06-05 19:34:20 +08:00
Tunglies 7763abf6c2 Revert TCP concurrency
Revert "Added controller translation for TCP concurrency"

This reverts commit c9589fc75d.

Revert "add:tcp concurrency"

This reverts commit 6440f856a2.
2025-06-02 21:44:43 +08:00
Tunglies 9d9d078346 feat: enhance workflow configurations for alpha and autobuild processes 2025-06-02 18:51:58 +08:00
Tunglies 76cec7aa54 feat: add localization for "Already Using Latest Core Version" in English and Chinese 2025-06-02 16:09:05 +08:00
Tunglies 2223a99ed1 fix: remove old asset deletion step from autobuild workflow 2025-06-02 15:03:05 +08:00
Tunglies 4926d33849 fix: enable scheduled builds and improve asset deletion logic in autobuild workflow 2025-06-02 14:58:32 +08:00
Tunglies 9978182cae chore: update version to 2.3.0 and revise release notes 2025-06-02 14:24:02 +08:00
Tunglies 1d77bc57df feat: rename job and update release tag for autobuild process 2025-06-02 14:16:43 +08:00
Tunglies 1bcb6646c4 fix: unify default latency test URL and update workflows/backend logic
- All delay test logic, Rust MihomoManager, API, cmds, delay.ts, settings, and group editor now use the Cloudflare 204 test URL
- Fixed outdated URLs in docs and comments
- Fix Github Actions workflow: unexpected neeeds run
2025-06-02 14:07:54 +08:00
Tunglies 06130b95d2 chore: remove unused i18n-check workflow and comment out schedule in autobuild 2025-06-02 13:59:42 +08:00
Tunglies 0536a45959 feat: add autobuild version support and unify version update scripts
- Support autobuild version with timestamp (e.g. 2.3.0+autobuild.2506021530) via `pnpm release-version autobuild`
- Sync version to package.json, Cargo.toml, tauri.conf.json
- Improve version regex to support build metadata
- Remove old release_version.mjs and release-alpha_version.mjs, use release-version.mjs for all
- Fix script path issues
2025-06-02 13:57:18 +08:00
Tunglies b150eb7e64 chore: update CHANGELOG formatting and improve clarity of known issues, fixes, features, optimizations, and removals 2025-06-02 12:50:03 +08:00
Tunglies d5c0b09a2f fix: update default latency test URL to use HTTPS 2025-06-02 12:41:41 +08:00
Tunglies 929abb3c04 feat: add "Update via proxy" translation to English and Chinese locales 2025-06-01 19:40:50 +08:00
Tunglies a96678caea fix: update Mihomo(Meta) kernel version to 1.19.10 and remove default window size setting 2025-05-31 17:05:55 +08:00
Tunglies 2d59177256 fix: update default window width to 940 pixels 2025-05-31 17:05:53 +08:00
Tunglies 62b743fa20 fix: add missing token parameter for create-pull-request action in i18n-check workflow 2025-05-31 00:12:42 +08:00
Tunglies b85aaa816e feat: add workflow to check for missing i18n keys in translation files 2025-05-31 00:05:28 +08:00
Tunglies 74fc3dea33 fix: refine descriptions for Rule, Global, and Direct modes in Chinese locale 2025-05-31 00:00:37 +08:00
Tunglies 55167e75af feat: add mode descriptions for Rule, Global, and Direct modes in English and Chinese locales 2025-05-30 23:59:42 +08:00
Tunglies 63d39c24dc feat: add theme translation keys for light, dark, and system modes in multiple locales 2025-05-30 23:44:12 +08:00
Tunglies 1d4d8aeb2b chore: update UPDATELOG 2025-05-30 20:57:02 +08:00
Tunglies 1e3566ed7d fix: optimize asynchronous handling to prevent UI blocking in various components
fix: add missing showNotice error handling and improve async UI feedback

- Add showNotice error notifications to unlock page async error branches
- Restore showNotice for YAML serialization errors in rules/groups/proxies editor
- Ensure all user-facing async errors are surfaced via showNotice
- Add fade-in animation to layout for smoother theme transition and reduce white screen
- Use requestIdleCallback/setTimeout for heavy UI state updates to avoid UI blocking
- Minor: remove window.showNotice usage, use direct import instead
2025-05-30 17:53:40 +08:00
Tunglies 756d303f6a Remove unused translations from multiple locale files 2025-05-30 17:20:51 +08:00
Tunglies a5b948a41c fix(locales): update success message translation for clarity 2025-05-30 16:32:04 +08:00
Tunglies 25acb8121f docs: contributing for ubuntu 2025-05-29 16:07:55 +08:00
Tunglies c05bd31f6b fix(sysinfo): update verge_version retrieval to use package_info instead of config 2025-05-28 18:50:03 +08:00
Tunglies 9416de6442 fix(config): auto complete and patch secret field when loading config
- Ensure the 'secret' field is present and non-empty during config loading
- Auto-fill with default value if missing to improve compatibility and security
- Update config guard logic for robustness
2025-05-28 17:26:26 +08:00
Tunglies c507c483fb refactor: update tauri-plugin-autostart source to use git repository and set macos launchagent name 2025-05-26 22:26:52 +08:00
Tunglies 32ee1b36d2 refactor: replace isServiceAvailable with getRunningMode for service status checks 2025-05-26 16:08:16 +08:00
Tunglies 2b89f07fe5 refactor: remove old window state file deletion and add compatibility for legacy shortcuts 2025-05-25 22:39:28 +08:00
Tunglies 10479b0936 chore: update UPDATELOG 2025-05-25 10:34:30 +08:00
Tunglies 7466139320 fix(ControllerViewer): remove isRestarting condition from button and input disabled states 2025-05-24 17:04:32 +08:00
Tunglies 7a5bcf67c5 refactor(ControllerViewer): replace manual core restart logic with service call to restartCore 2025-05-24 17:00:25 +08:00
Tunglies 10e3010324 feat(config): add new allowed origins for CORS in clash.rs (#3569)
Include "https://yacd.metacubex.one", "https://metacubex.github.io",
and "https://board.zash.run.place" to the list of allowed origins for
both HTTP and WebSocket configurations.
2025-05-24 16:56:35 +08:00
Tunglies 464f8095ab fix: update CORS allow-origins to support tauri local development
- Replaced 'http://localhost' and 'http://127.0.0.1' with 'tauri://localhost' and 'http://tauri.localhost' for enhanced compatibility with Tauri development environment.
- Ensures proper CORS configuration for local testing.
2025-05-22 19:18:48 +08:00
Tunglies 8b800f679b optimize and enforce external-controller-cors config for all users
- Refactored config guard logic to always inject secure defaults for external-controller-cors (allow-origins: ['http://localhost', 'http://127.0.0.1'], allow-private-network: true).
- Ensures both new and existing user configs are automatically upgraded for enhanced CORS security.
- Improves configuration migration and future maintainability.

fix: add http://localhost:3000 to CORS allow-origins for tauri dev server compatibility
2025-05-22 14:36:21 +08:00
Tunglies 5b2f946828 feat: restrict proxy group selection to Selector type in home node card
- Only Selector-type groups are available for selection in the group dropdown on the home page node card.
- Node (proxy) selection remains unrestricted.
- Improves user experience and avoids confusion with non-selector groups.
2025-05-22 11:38:26 +08:00
Tunglies b1c31f7a6f Revert "fix: ensure app state is saved on exit and window events for better state management"
This reverts commit 9af0803e9b.

chore: update UPDATELOG
2025-05-22 11:19:38 +08:00
Tunglies d49618786e chore: temporarily deprecate tauri-plugin-window-state integration
- Remove or disable usage of tauri-plugin-window-state due to compatibility or stability concerns.
- Will revisit and re-enable after further evaluation or upstream fixes.
2025-05-22 10:22:16 +08:00
Tunglies 866ec2720d Revert "feat: integrate window state management for improved window restoration and logging"
This reverts commit c9a9e934f4.
2025-05-22 10:17:42 +08:00
Tunglies b4595d7886 fix: add fallback to first proxy in group if 'now' is missing and prioritize selector-type groups
- When the current group or its 'now' field is missing, fallback to the first proxy in the group's list to ensure a valid active node is always selected.
- When no current group is found, prioritize groups of type 'Selector' for selection, improving compatibility with custom or extended proxy groups.
2025-05-22 10:10:26 +08:00
Tunglies 9af0803e9b fix: ensure app state is saved on exit and window events for better state management 2025-05-22 09:54:25 +08:00
Tunglies ebecabc0cc rm: deno.lock 2025-05-22 03:04:33 +08:00
Tunglies c9a9e934f4 feat: integrate window state management for improved window restoration and logging 2025-05-22 03:02:02 +08:00
Tunglies 998ded5e0b refactor: remove unused imports and adjust button height in logs and rules pages 2025-05-21 10:25:50 +08:00
Tunglies d60c3b4d64 feat: improve initialization logic to prevent duplicated initialization and improve logging in Layout component 2025-05-21 00:22:47 +08:00
Tunglies b6db209670 docs: update CONTRIBUTING.md to include guidelines for Rust code formatting and quality checks 2025-05-20 23:09:50 +08:00
Tunglies 32ebc8d174 refactor: simplify event handling in CoreManager by removing unnecessary match statement 2025-05-20 23:01:32 +08:00
Tunglies 420b0a254a feat: add formatting command to package.json and update pre-commit hook for cargo fmt 2025-05-20 22:58:25 +08:00
Tunglies 4024b72954 feat: enhance auto log cleaning options with 1-day retention and update related configurations 2025-05-20 22:34:02 +08:00
Tunglies 00e3f13bc9 fix: profile-view wrong type of http request timeout value 2025-05-18 00:52:59 +08:00
Tunglies 7556758284 refactor: remove macOS window decoration setting during window creation 2025-05-17 14:28:34 +08:00
Tunglies 4d56a5cd8c Revert "feat: add application name and icon to macOS entitlements plist"
This reverts commit 6fe7aabe14.
2025-05-17 01:42:11 +08:00
Tunglies d554679ee2 feat: remove system-in name plist 2025-05-17 01:21:08 +08:00
Tunglies 6fe7aabe14 feat: add application name and icon to macOS entitlements plist 2025-05-17 01:05:21 +08:00
Tunglies 53a46d0dc6 refactor: simplify proxy type handling and improve error handling in network commands 2025-05-16 00:09:47 +08:00
Tunglies 92ae277e3a chore: remove incorrect type comment 2025-05-15 22:34:09 +08:00
Tunglies c100b9c54d feat: log levels to 'warn' in mihomo default settings and verge default settings; 2025-05-14 16:06:02 +08:00
Tunglies 1ddbe7c2cc feat: add service uninstall functionality and improve service operation flow 2025-05-13 01:56:19 +08:00
Tunglies 6578cd8c51 fix: TUN switch button logical bug 2025-05-13 01:11:20 +08:00
Tunglies c2c46d1cae chore: update UPDATELOG 2025-05-13 00:27:13 +08:00
Tunglies 5b6c9be99f feat: better service status and TUN mode usable checks in Setting Page 2025-05-12 19:04:21 +08:00
Tunglies 3ce5d3bf2d fix: update required service version to 1.0.6 2025-04-28 06:16:14 +08:00
Tunglies f6023dc618 fix: macOS-specific TUN device name on macOS 2025-04-27 16:33:15 +08:00
Tunglies 9d9dd73790 chore: remove fast-dev profile and enhance dev profile settings 2025-04-27 15:13:34 +08:00
Tunglies 65ed9cb5b2 chore: update UPDATELOG 2025-04-24 01:14:41 +08:00
Tunglies a0b70f9c34 2.2.4-alpha.2 2025-04-22 08:04:24 +08:00
Tunglies 824ad9fa29 feat: add tray menu indicator for lightweight mode #3386 2025-04-21 04:34:25 +08:00
Tunglies abe5cf1b84 2.2.4-alpha.1 2025-04-21 00:12:14 +08:00
Tunglies 07b424cb09 fix: cargo clippy errors 2025-04-21 00:06:37 +08:00
Tunglies c7494de0a7 chore: update UPDATELOG 2025-04-20 23:51:05 +08:00
Tunglies 1a9a2ff9e0 fix: unexpected global hotkey regestion for windows 'Ctrl+Q' #3389 2025-04-20 23:49:06 +08:00
Tunglies f6ea01238a chore: update UPDATELOG 2025-04-17 17:14:18 +08:00
Tunglies 41a662f784 chore: fix ci for alpha-for-linux-arm 2025-04-17 16:47:21 +08:00
Tunglies 1df9fff0a7 2.2.4-alpha.0 2025-04-17 16:47:21 +08:00
Tunglies 40de99e65d fix: wrong pnpm package version of plugin-window-state 2025-04-17 16:47:21 +08:00
Tunglies 76227770a4 chore: update UPDATELOG 2025-04-17 16:47:21 +08:00
Tunglies 6e6462742c fix: resolve unexpected behavior during silent startup #3320, #3187 2025-04-12 18:09:27 +08:00
Tunglies 16381d1895 chore: patch alpha hash version 2025-04-12 17:54:58 +08:00
Tunglies 1970155c51 fix: macos use hotkey closing window can not entry auto-lightweight-mode #3326 2025-04-12 03:29:57 +08:00
Tunglies 51ef1329be Refactor async runtime usage with AsyncHandler wrapper 2025-04-11 18:00:35 +08:00