From c8a63a123a3d20d39d214d7b5dabf689cb462bbc Mon Sep 17 00:00:00 2001 From: fylorn <249551762+fylorn@users.noreply.github.com> Date: Fri, 25 Sep 2026 19:39:17 +0800 Subject: [PATCH] chore: v0.49.1 Co-Authored-By: Claude Opus 5.5 --- Cargo.lock | 34 +++++++++++++++++----------------- Cargo.toml | 2 +- release-notes/0.49.1.md | 11 +++++++++++ 3 files changed, 29 insertions(+), 18 deletions(-) create mode 100644 release-notes/0.49.1.md diff --git a/Cargo.lock b/Cargo.lock index ac604a8..e74f5bb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2492,7 +2492,7 @@ dependencies = [ [[package]] name = "tw-api" -version = "0.49.0" +version = "0.49.1" dependencies = [ "serde", "serde_json", @@ -2502,7 +2502,7 @@ dependencies = [ [[package]] name = "tw-breaker" -version = "0.49.0" +version = "0.49.1" dependencies = [ "serde", "serde_json", @@ -2510,7 +2510,7 @@ dependencies = [ [[package]] name = "tw-config" -version = "0.49.0" +version = "0.49.1" dependencies = [ "blake3", "libc", @@ -2534,7 +2534,7 @@ dependencies = [ [[package]] name = "tw-control" -version = "0.49.0" +version = "0.49.1" dependencies = [ "axum", "base64", @@ -2573,7 +2573,7 @@ dependencies = [ [[package]] name = "tw-dialect" -version = "0.49.0" +version = "0.49.1" dependencies = [ "serde", "serde_json", @@ -2581,7 +2581,7 @@ dependencies = [ [[package]] name = "tw-engine" -version = "0.49.0" +version = "0.49.1" dependencies = [ "serde", "serde_json", @@ -2594,7 +2594,7 @@ dependencies = [ [[package]] name = "tw-gateway" -version = "0.49.0" +version = "0.49.1" dependencies = [ "arc-swap", "async-stream", @@ -2638,7 +2638,7 @@ dependencies = [ [[package]] name = "tw-guard" -version = "0.49.0" +version = "0.49.1" dependencies = [ "base64", "regex", @@ -2651,7 +2651,7 @@ dependencies = [ [[package]] name = "tw-link" -version = "0.49.0" +version = "0.49.1" dependencies = [ "serde", "serde_json", @@ -2665,7 +2665,7 @@ dependencies = [ [[package]] name = "tw-observe" -version = "0.49.0" +version = "0.49.1" dependencies = [ "tokio", "tracing", @@ -2674,7 +2674,7 @@ dependencies = [ [[package]] name = "tw-pricing" -version = "0.49.0" +version = "0.49.1" dependencies = [ "arc-swap", "flate2", @@ -2687,14 +2687,14 @@ dependencies = [ [[package]] name = "tw-secret" -version = "0.49.0" +version = "0.49.1" dependencies = [ "thiserror", ] [[package]] name = "tw-store" -version = "0.49.0" +version = "0.49.1" dependencies = [ "bytes", "rusqlite", @@ -2711,7 +2711,7 @@ dependencies = [ [[package]] name = "tw-types" -version = "0.49.0" +version = "0.49.1" dependencies = [ "serde", "serde_json", @@ -2720,7 +2720,7 @@ dependencies = [ [[package]] name = "tw-watch" -version = "0.49.0" +version = "0.49.1" dependencies = [ "notify", "tempfile", @@ -2730,7 +2730,7 @@ dependencies = [ [[package]] name = "tw-yaml" -version = "0.49.0" +version = "0.49.1" dependencies = [ "saphyr-parser", "serde_yaml_ng", @@ -2740,7 +2740,7 @@ dependencies = [ [[package]] name = "twcore" -version = "0.49.0" +version = "0.49.1" dependencies = [ "anyhow", "axum", diff --git a/Cargo.toml b/Cargo.toml index 56772a6..58018cb 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -48,7 +48,7 @@ categories = ["network-programming", "web-programming::http-server"] # 二进制走 CalVer,crate 走 SemVer —— 两者是两回事,卖给不同的人。 # 这里是 crate 的版本。 -version = "0.49.0" +version = "0.49.1" [workspace.dependencies] # ── 内部 crate ─────────────────────────────────────────── diff --git a/release-notes/0.49.1.md b/release-notes/0.49.1.md new file mode 100644 index 0000000..ad7e347 --- /dev/null +++ b/release-notes/0.49.1.md @@ -0,0 +1,11 @@ +This release changes only the server guide, [docs/server.md](https://github.com/ThinkWatchProject/ThinkWatch-Core/blob/main/docs/server.md) and its Chinese version, so that it describes the desktop app's side of a remote connection as the app behaves. The binaries behave as in 0.49.0. + +**Upgrade notes** + +- The control-plane protocol version is unchanged (22) and so is the request store's schema (20). A server on 0.49.0 does not need to upgrade, and ThinkWatch Lite 2026.9.17, which includes 0.49.0, connects to 0.49.0 and 0.49.1 alike. + +**Connecting from the desktop app.** The guide names the settings section Connection and the Add remote connection dialog, which also asks for a name. Test connection tests without saving, Save and switch tests before it saves and asks before it switches, and Save stores the connection untested; switching to a remote connection always tests it first and stays on the current connection if the test fails. + +**Which version a server runs.** The app connects only to a core that speaks its control-plane protocol version, which in practice means the core version the app includes, and the latest release can be newer than that. The guide therefore installs and switches with `--version `, notes that `twcore upgrade --version` also installs an older release, and says that recent versions of the app (2026.9.17 and later) show `sudo twcore upgrade --version --restart` with the version they need when the versions differ. It also says that `twcore upgrade` leaves the data alone, while a version whose request store has another schema starts with an empty request history. + +**While connected to a remote core.** The guide adds that the app signs ChatGPT accounts in with a device code only, next to the three things a remote connection cannot do.