Commit Graph
4907 Commits
Author SHA1 Message Date
Tunglies dc8a60d91b chore: sync updater changes into synchronization cleanup 2026-10-06 14:56:52 +08:00
Tunglies 82e78eb2e1 chore: sync updater changes into frontend contract flow 2026-10-06 14:54:36 +08:00
Tunglies 6b306a7962 chore: sync latest updater fixes from dev 2026-10-06 14:47:14 +08:00
Tunglies 1aca64d183 chore: sync frontend repairs into synchronization cleanup 2026-10-06 14:43:55 +08:00
Tunglies 1516fefc33 chore: sync backend repairs into frontend contract flow 2026-10-06 14:41:21 +08:00
Tunglies 40125d15bd docs(backend): focus guardrails on architecture ownership 2026-10-06 14:37:24 +08:00
Tunglies 7711a072ce docs(frontend): focus guardrails on architecture ownership 2026-10-06 14:37:24 +08:00
Tunglies ae679cad3f refactor(frontend): trim unused mutation and busy state APIs 2026-10-06 14:33:00 +08:00
Tunglies dfc729a170 refactor(backend): flatten refresh publication and retry policies 2026-10-06 14:32:59 +08:00
Tunglies c9a54ecd38 fix(frontend): preserve queued intents and fresh runtime snapshots 2026-10-06 14:27:36 +08:00
Tunglies 25e00792de fix(config): retain runtime after an applied core replacement 2026-10-06 14:24:56 +08:00
wonfen dba0f471bf fix(updater): retry slow update downloads from other sources and honour cancel 2026-10-06 14:21:09 +08:00
wonfen c341b9b238 fix(updater): install the already downloaded update instead of fetching it again 2026-10-06 14:21:09 +08:00
Tunglies b3e4c46914 chore: sync reviewed changes into synchronization cleanup 2026-10-06 14:00:13 +08:00
Tunglies 897d030cac chore: sync dev and trim redundant event tests 2026-10-06 13:57:55 +08:00
Tunglies f6fd3887d6 chore: sync dev and trim redundant backend tests 2026-10-06 13:53:56 +08:00
wonfen 6ec35c8195 fix(macos): restore system DNS reliably after TUN
Detached tasks spawned on every config generation set and restored the
placeholder DNS without ordering, so a set could back up the placeholder
itself and a later restore reported success while leaving it in place.

Reconcile from the applied config under the lifecycle lock, and restore
whenever the core stops. Keep one backup per network service, never back
up the placeholder, and restore only while the service still holds it.
Scripts verify every read and write and are killed after 5 s.

Refs #8070, #8168
2026-10-06 12:47:08 +08:00
wonfen 30f05a7a39 refactor(port): build the port dialog rows from one listener table 2026-10-05 22:00:54 +08:00
wonfen 7cc6c1ed95 fix(port): edit the saved mixed port, not the session fallback
Closes #8149
2026-10-05 22:00:54 +08:00
wangentongee-cmyk c7cee50fc1 docs: 补充中文 README 的系统支持说明 (#8158)
中文部分缺少支持的系统说明,已对照英文补充。
2026-10-05 13:31:19 +00:00
BadCat1428 4cae1ff132 fix a wrong in README.md(强迫症犯了) (#8176)
* Update README.md

* Update README.md
2026-10-05 13:12:38 +00:00
Tunglies 7c9d59c59e fix(backend): preserve synchronization ownership and failure updates 2026-10-05 14:17:02 +08:00
Tunglies 54e245b63f chore: sync backend review fixes into contract flow 2026-10-05 14:15:06 +08:00
Tunglies 36a8950129 fix(backend): preserve applied state across later failures 2026-10-05 14:14:37 +08:00
Tunglies ce195cb7ec chore: sync lock downgrade with frontend contract flow 2026-10-04 13:45:59 +08:00
Tunglies 967c8157f2 chore: sync frontend contract flow with declarative effects 2026-10-04 13:45:02 +08:00
Tunglies 045fb42b4d chore: sync declarative effects with dev 2026-10-04 13:42:31 +08:00
❤是纱雾酱哟~andrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com> 1a01844cb8 chore(deps): update npm dependencies (#8155)
* chore(deps): update npm dependencies

* build(deps): align tauri-related dependencies

- Tauri-related dependencies have to be aligned between Rust and Nodejs

Signed-off-by: ❤是纱雾酱哟~ <49941141+Dragon1573@users.noreply.github.com>

---------

Signed-off-by: ❤是纱雾酱哟~ <49941141+Dragon1573@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-10-03 17:09:11 +00:00
renovate[bot]renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>❤是纱雾酱哟~
1575f134e0 chore(deps): update cargo dependencies (#7961)
* chore(deps): update cargo dependencies

* build(deps): revert rfd from 0.17.2 to 0.16.0

- This also prevents Mend Renovate from auto rebase

Signed-off-by: ❤是纱雾酱哟~ <49941141+Dragon1573@users.noreply.github.com>

* fix(nsis): include missing Nullsoft headers

- Transitive macro named `RestartManager_StartSession` cannot be found
  during NSIS installer generation
- The macro comes from "RestartManager" plugin and should be explicitly
  included in the `installer.nsi` file

Signed-off-by: ❤是纱雾酱哟~ <49941141+Dragon1573@users.noreply.github.com>

---------

Signed-off-by: ❤是纱雾酱哟~ <49941141+Dragon1573@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: ❤是纱雾酱哟~ <49941141+Dragon1573@users.noreply.github.com>
2026-10-03 17:09:08 +00:00
wonfen a9a3cfa3a7 fix(proxy): resolve provider members within each group's providers
Same-name nodes from different proxy-providers were marked ambiguous and
greyed out. Resolve each group member against the group's own providers
(use / include-all, exclude-type) and bind the n-th occurrence of a name to
the n-th candidate, matching Mihomo.

Closes #8021
2026-10-03 22:49:39 +08:00
renovate[bot]renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>❤是纱雾酱哟~
14770df157 chore(deps): update rust toolchain to v1.99.0 (#8147)
* chore(deps): update rust toolchain to v1.99.0

* fix(rust): handle breaking changes introduced by compiler

- Trailing semicolon in macro should not be used in expression position
- A deprecated method was renamed for consistency
  - Before: `std::sync::atomic::Atomic::<u64>::fetch_update`
  - After: `std::sync::atomic::Atomic::<u64>::try_update`

Signed-off-by: ❤是纱雾酱哟~ <49941141+Dragon1573@users.noreply.github.com>

---------

Signed-off-by: ❤是纱雾酱哟~ <49941141+Dragon1573@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: ❤是纱雾酱哟~ <49941141+Dragon1573@users.noreply.github.com>
2026-10-03 12:31:08 +00:00
wonfen 57c5484080 fix(service): stop waiting on a service that no longer starts with Windows
When the service's start type was changed from automatic, startup waited
about two minutes for it before falling back to Sidecar. Detect this
immediately, skip the TUN readiness wait, and offer a reinstall that
restores automatic start.

Refs #8129
2026-10-03 20:40:51 +08:00
Tunglies e8cffb285d chore: merge frontend contract flow into sync downgrade 2026-10-03 18:46:08 +08:00
Tunglies 4cca0baf6e chore: merge declarative effects into frontend contract flow 2026-10-03 18:44:55 +08:00
Tunglies d63eca30d1 chore: merge dev into declarative effects 2026-10-03 18:41:32 +08:00
wonfen 4a0882fc18 fix(singleton): repair Windows lock file permissions in place 2026-10-03 15:59:39 +08:00
wonfen d87bb7b6a3 fix(singleton): acknowledge window restoration before UI work
Dispatch blocking window restoration outside HTTP workers to prevent notification timeouts and repeated window activation in #8118. Remove the misleading failure log, update the changelog, and remove server tests as requested.
2026-10-03 10:56:41 +08:00
wonfen a58cefdc31 fix(notice): keep code-based dismissal internal 2026-10-03 10:30:00 +08:00
wonfen f958dccb25 fix(service): explain sidecar failures and clear recovered notices 2026-10-03 10:21:54 +08:00
Christine. 8c1fb3ac56 feat: set Tun.stack to mips (#8144) 2026-10-03 01:53:52 +00:00
Tunglies 3607e66bb3 perf(traffic): reuse canvas pixels while scrolling 2026-10-03 06:58:54 +08:00
wonfen ea509b8236 chore(deps): pin clash-verge-service-ipc to v2.7.6 v2.5.7 2026-10-02 22:57:11 +08:00
Tunglies be872dff97 chore: merge frontend contract flow into sync downgrade 2026-10-02 16:24:39 +08:00
Tunglies 66dddc8622 chore: merge declarative effects into frontend contract flow 2026-10-02 16:24:07 +08:00
Tunglies b5d80df020 chore: merge dev into declarative effects 2026-10-02 16:20:25 +08:00
wonfen 52d616302c fix(service): explain a startup core rejection instead of the generic fallback
When the startup probe finds the service refusing the approved core, the
app falls back to Sidecar with only the generic "could not start the
core" notice. The reason and repair guide appeared only after a
reinstall, which cannot fix a writable volume root (#8045).

Carry the fallback reason to the window and show the same permission
notice as a rejected installation when the core was refused.

Refs #8045
2026-10-02 10:38:09 +08:00
Tunglies f17ccdc227 refactor(core): replace macOS network monitor slot with armed latch 2026-10-01 14:34:19 +08:00
Tunglies 92303ce60d refactor(port): store startup block reason in a OnceLock 2026-10-01 14:34:19 +08:00
Tunglies ecd60d317a refactor(service): drop redundant provider sync serial lock 2026-10-01 14:34:19 +08:00
Tunglies c2b6c0378e refactor(port): fold startup-core-blocked flag into reason slot 2026-10-01 14:34:19 +08:00