Commit Graph

284 Commits

Author SHA1 Message Date
chen08209 c5c7606b2f chore: bump version to 0.9.1+2026101601 v0.9.1-pre.2 2026-10-16 16:46:10 +08:00
chen08209 c78dee6051 docs(agents): document surfaces, typography and the lib/ui layer 2026-10-16 16:44:42 +08:00
chen08209 c8465639c2 fix(network): trust the core's CA bundle in app requests
Changelog: Downloads no longer fail on missing root certificates
2026-10-16 16:44:42 +08:00
chen08209 2796db5e27 feat(l10n): add French, Spanish and Korean
Changelog: French, Spanish and Korean translations
2026-10-16 16:44:42 +08:00
chen08209 c25f48fe76 feat(network)!: set desktop TUN key by key over each profile's own
BREAKING CHANGE: Desktop TUN keys follow the profile unless picked; changed values carry over
Changelog: Per-key desktop TUN settings
2026-10-16 16:44:42 +08:00
chen08209 92c522ceb4 feat(theme): redesign theme colors with an iOS-style picker
Changelog: Redesigned theme colors and color styles
2026-10-16 16:44:42 +08:00
chen08209 1cd3ec78d7 fix(desktop): fix the system proxy, tray icon and TUN
Changelog: System proxy, tray and TUN fixes
2026-10-16 16:44:41 +08:00
chen08209 9ef6a0945b feat(dashboard): redesign the dashboard around the current exit
Changelog: A redesigned dashboard around the current exit
2026-10-16 16:44:41 +08:00
chen08209 42dd5c1deb feat(profiles): manage external resources from the profile details
Changelog: Manage external resources from profile details
2026-10-16 16:44:41 +08:00
chen08209 430c2f6d1b feat(proxies): show groups as cards and group tabs as chips
Changelog: Proxy groups as cards, group tabs as chips
2026-10-16 16:44:41 +08:00
chen08209 750d772334 feat(views): show connections, requests and DNS as tables
Changelog: Sortable tables for connections, requests and DNS
2026-10-16 16:44:41 +08:00
chen08209 23f956a0e3 feat(ui): add Liquid Glass and slide-to-pick popup menus
Changelog: Optional Liquid Glass and slide-to-pick menus
2026-10-16 16:44:41 +08:00
chen08209 67957e74a4 feat(ui): polish Android TV remote focus and typing
Changelog: Clearer focus and typing on Android TV
2026-10-16 16:44:41 +08:00
chen08209 7fe3f21aa4 feat(ui): present dialogs as iOS alerts and forms as sheets
Changelog: iOS-style alerts and form sheets
2026-10-16 16:44:41 +08:00
chen08209 f5a5f0074b feat(ui): layer surfaces with fills and follow the iOS type scale
Changelog: Fill-based surfaces and iOS-style text sizes
2026-10-16 16:44:41 +08:00
chen08209 c93f591186 perf(android): keep Core calls and events off the main thread
Changelog: Smoother Android UI while the proxy is busy
2026-10-16 16:44:41 +08:00
chen08209 47a47f8daf fix(core): keep very large profiles from crashing the app
Changelog: Very large profiles no longer crash the app
2026-10-16 16:44:41 +08:00
chen08209 f151824614 test: run the suite from a few shared entrypoints 2026-10-16 16:44:41 +08:00
chen08209 03f9553824 chore(release): v0.9.0 v0.9.0 2026-10-14 09:16:30 +08:00
chen08209 8d93268de5 docs(agents): document custom profiles and setting changes 2026-10-12 10:34:14 +08:00
chen08209 491fae10f5 feat(views)!: set DNS, NTP, sniffer and TUN key by key
BREAKING CHANGE: DNS and NTP override toggles are removed; picked keys apply to every profile
Changelog: Per-key DNS, NTP, sniffer and TUN settings
2026-10-12 10:34:14 +08:00
chen08209 3abda78af4 feat(profiles): add a custom profile editor
Changelog: Custom profiles
2026-10-12 10:17:54 +08:00
chen08209 8c43053951 feat(ui): stack bottom sheets and add context menus
Changelog: Stacked sheets, context menus and a sort mode
2026-10-12 10:17:54 +08:00
chen08209 532ebf07e9 feat(providers): assemble custom profiles and import configs
Changelog: DNS, Hosts and ports apply without a restart
2026-10-11 12:28:52 +08:00
chen08209 16770249f1 feat(database)!: store custom profiles and their settings
BREAKING CHANGE: Custom overwrites are removed; rebuild them as custom profiles
Changelog: Unreadable settings no longer block startup or restores
Changelog-Type: fix
2026-10-11 12:28:52 +08:00
chen08209 d3fa2252b0 feat(android): add launcher shortcuts and one-step on-demand access
Changelog: Launcher shortcuts and one-step on-demand access
2026-10-11 12:28:52 +08:00
chen08209 94a25f4827 fix(desktop): fix the system proxy, tray and Helper on Windows and Linux
Changelog: Windows and Linux desktop fixes
2026-10-11 12:28:52 +08:00
chen08209 2fa2f7f816 feat(core): bind the Android Core with gomobile
Changelog: Share link import and mrs rule sets
2026-10-11 12:28:52 +08:00
chen08209 6c661f662e build: move to Flutter 3.47.6, Go 1.27 and Rust 1.99.0 2026-10-11 12:28:52 +08:00
chen08209 d780cb863d fix(core,helper): only let the owner drive the elevated Core
Changelog: The elevated Core only answers its owner
2026-10-11 12:28:52 +08:00
chen08209 4b59eca853 docs(site): drive the scroll effects from script and drop the trailing slash from links
CSS scroll-driven animations made touch scrolling drop frames in Android
WebView on a 120 Hz phone, so the progress bar and the preview tilt now
follow the scroll position from script. The release pulse animates a
transform instead of `left` and `right`, which ran layout on every frame.

GitHub Pages redirects the slashless project URL, so the links still resolve.
2026-10-03 20:54:21 +08:00
chen08209 68c71b8ef9 chore(release): v0.8.99 v0.8.99 2026-10-03 19:03:12 +08:00
chen08209 ff23f30c31 fix(core): send changed geo resource URLs to the Core without a full apply
The Core only learned geox-url from a full config apply, so after a link
was edited on the resources page both a manual sync and the auto updater
kept downloading from the previous link until the profile was applied
again. The URLs now travel with the update params, which are pushed
whenever the patch config changes. Only a link that changed is written,
because mihomo's updaters read these links without a lock.

Changelog: A changed resource link is now used by the next sync and by auto update
2026-10-02 21:10:36 +08:00
chen08209 e55f6d1004 fix(core): keep the system resolver fallback when no DNS servers are reported
An Android service with no DNS servers sends an empty list, which split into
a single empty address that mihomo builds into a "udp://:" nameserver. The
system resolver then counted it as configured and never fell back to its
default nameservers, so lookups through it failed while the preferred network
reported no DNS.

Changelog: DNS lookups no longer fail on networks that report no DNS servers
2026-10-02 21:10:36 +08:00
chen08209 65176f6019 docs(readme): rewrite the README in both languages
Open with the project links and a feature list checked against the app,
list the downloads per platform, document link imports and Android
automation, and describe what a source build needs today. The Linux
note now names the runtime tray library and applies only to the
AppImage and .rpm, since the .deb declares its dependencies, and the
Android build no longer asks for an ANDROID_NDK variable.

The preview mockups keep their frames and now show the current UI: the
sidebar, the reworked dashboard and the floating dock.
2026-10-02 21:10:36 +08:00
chen08209 6041cd9289 docs(site): add a GitHub Pages site with a download guide and changelog
The page picks the build for the visitor's platform and architecture,
lists each release file with its size and SHA-256 digest, and renders
CHANGELOG.md with search. tool/build_site.sh assembles it from the
repository and the latest release, and the pages workflow deploys it
after every stable release build and on site changes to main.
2026-10-02 21:10:36 +08:00
chen08209 91e524c354 chore: exempt generated code from git whitespace checks
freezed emits lines of trailing spaces into the .freezed.dart files, which must not be edited by hand, so git diff --check failed on every change that regenerated them.
2026-10-02 20:32:42 +08:00
chen08209 786a6abca9 fix(proxies): shrink the plain group icon so it no longer fills the header
Changelog: Smaller icons in icon-only group headers
2026-10-02 20:32:42 +08:00
chen08209 1e9955dec6 fix(core,android): stop suspending the Core in Doze
The suspended tunnel rejected the traffic Doze still lets through, which
kept FCM from reconnecting, and the re-probe on resume tested every node,
select groups included.

Changelog: Push notifications reconnect in Doze
2026-10-02 20:32:42 +08:00
chen08209 e131675bdf feat(editor): move code_forge into the repository and add snippets
Changelog: Editor word wrap and snippets
2026-10-02 20:32:42 +08:00
chen08209 e62afb784a feat(dashboard): add cards and an animated, editable grid
Changelog: More dashboard cards
2026-10-02 20:32:42 +08:00
chen08209 8378c7081c feat(views): rework the proxies and scan pages, lay out records by their parts and unify search
A queued delay test shows a static clock until the task pool runs it, so
only the running tests animate while the list scrolls.

Changelog: Hide timed-out nodes and search every list
2026-10-02 20:32:42 +08:00
chen08209 841d6035d5 feat(ui): add a sidebar, floating dock, snap sheets and drag to go back
Changelog: Sidebar, floating dock and drag to go back
2026-10-02 20:32:41 +08:00
chen08209 ee6a49713a feat(ui): draw the app's own glyphs and redraw the theme page
Drops the Material compatibility bridge and the icon font.

Changelog: New app glyphs, empty states and theme page
2026-10-02 02:51:32 +08:00
chen08209 46fb7fee04 feat(overwrite): add app-level providers, scripts and validated custom proxies
Providers and custom proxies stay behind feature flags.

Changelog: Invalid override warnings and rule presets
2026-10-02 02:51:32 +08:00
chen08209 a390a42032 feat(config): log DNS queries, override only picked keys and rework settings
TUN now defaults to the mips stack.

Changelog: DNS query log and per-key DNS/NTP overrides
2026-10-02 02:51:32 +08:00
chen08209 bee8f24269 fix(backup,database): stage restores and enforce foreign keys
Changelog: Restores never apply halfway
2026-10-02 02:51:32 +08:00
chen08209 8068e686a3 feat(core): check services and the outbound IP through the Core
Changelog: Proxied service checks and outbound IP risk
2026-10-02 02:51:32 +08:00
chen08209 1e97716636 feat(platform): move desktop windows to plugins/window and rework the tray
plugins/window replaces the window_manager fork on every desktop.

Changelog: Tray hotkeys, node delays and a delay test
2026-09-30 11:39:58 +08:00
chen08209 2a2522bbc6 docs(agents): correct stale facts and sharpen skill triggers 2026-09-30 11:39:58 +08:00