From 1878401d3ac718df2493d5c0841929ba2ff94cad Mon Sep 17 00:00:00 2001 From: JianFeeeee Date: Fri, 23 Oct 2026 09:50:12 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20v0.2.0=20=E2=80=94=20=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E5=8F=B7=E6=94=B6=E6=8B=A2=EF=BC=886=20=E5=A4=84?= =?UTF-8?q?=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit internal/version/version.go(ldflags 示例 + 默认值)、scripts/release.sh(注释 + 默认值)、 scripts/build_installers.sh、packaging/rpm/webui4frpc.spec(Version + changelog)、README.md 与 packaging/windows/README.md 的安装示例。 按 v0.1.4 的 6 处清单逐个核对,无遗漏。rpm changelog 新增 0.2.0-1 条目,汇总本次 「配置文件启动 + 口令脱敏」与「frpc user / transport 渲染修复」两组改动。 --- README.md | 12 ++++++------ internal/version/version.go | 4 ++-- packaging/rpm/webui4frpc.spec | 11 ++++++++++- packaging/windows/README.md | 12 ++++++------ scripts/build_installers.sh | 2 +- scripts/release.sh | 4 ++-- 6 files changed, 27 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 9ca2f70..f4c4b73 100644 --- a/README.md +++ b/README.md @@ -87,7 +87,7 @@ cd web && npm run build && rm -rf internal/httpapi/dist && cp -r web/dist intern ### Linux (Debian / Ubuntu) ```bash -sudo dpkg -i webui4frpc-0.1.4-linux-amd64.deb # 或 linux-arm64.deb +sudo dpkg -i webui4frpc-0.2.0-linux-amd64.deb # 或 linux-arm64.deb sudo nano /etc/webui4frpc/config.json # 改掉默认密码(见「从配置文件启动」) sudo systemctl restart webui4frpc ``` @@ -95,7 +95,7 @@ sudo systemctl restart webui4frpc ### Linux (RHEL / Fedora / openEuler / 默认 / 龙蜥) ```bash -sudo rpm -i webui4frpc-0.1.4-linux-x86_64.rpm +sudo rpm -i webui4frpc-0.2.0-linux-x86_64.rpm sudo vi /etc/webui4frpc/config.json sudo systemctl enable --now webui4frpc ``` @@ -105,7 +105,7 @@ sudo systemctl enable --now webui4frpc ### Windows -双击 `webui4frpc-0.1.4-windows-amd64-setup.exe`(ARM 设备用 `windows-arm64-setup.exe`)。 +双击 `webui4frpc-0.2.0-windows-amd64-setup.exe`(ARM 设备用 `windows-arm64-setup.exe`)。 安装向导会询问监听地址与管理员凭据,完成后: - 程序装到 `C:\Program Files\webui4frpc` @@ -115,8 +115,8 @@ sudo systemctl enable --now webui4frpc ### macOS ```bash -sudo installer -pkg webui4frpc-0.1.4-darwin-arm64.pkg -target / # Apple Silicon -sudo installer -pkg webui4frpc-0.1.4-darwin-amd64.pkg -target / # Intel +sudo installer -pkg webui4frpc-0.2.0-darwin-arm64.pkg -target / # Apple Silicon +sudo installer -pkg webui4frpc-0.2.0-darwin-amd64.pkg -target / # Intel ``` 或直接双击 `.pkg` 走图形安装器。安装后 launchd 开机自启,配置在 @@ -134,7 +134,7 @@ sudo launchctl kickstart -k system/com.jianfeeeee.webui4frpc 不想装服务只想跑一下,用对应的 `.tar.gz` / `.zip`,解压即用: ```bash -tar xzf webui4frpc-0.1.4-linux-amd64.tar.gz +tar xzf webui4frpc-0.2.0-linux-amd64.tar.gz ./webui4frpc -addr 127.0.0.1:7500 -user admin -password 你的密码 -workdir ./data ``` diff --git a/internal/version/version.go b/internal/version/version.go index a43c2c7..0bcecf3 100644 --- a/internal/version/version.go +++ b/internal/version/version.go @@ -2,11 +2,11 @@ // // Value is overridable at build time so release artifacts carry the real tag: // -// go build -ldflags="-X webui4frpc/internal/version.Version=0.1.4" ./cmd/webui4frpc +// go build -ldflags="-X webui4frpc/internal/version.Version=0.2.0" ./cmd/webui4frpc // // Kept in its own package because both cmd/ and internal/httpapi report it // (main can't be imported, and httpapi must not depend on cmd). package version // Version is the running build's semantic version, without a leading "v". -var Version = "0.1.4" +var Version = "0.2.0" diff --git a/packaging/rpm/webui4frpc.spec b/packaging/rpm/webui4frpc.spec index bf20280..e213c97 100644 --- a/packaging/rpm/webui4frpc.spec +++ b/packaging/rpm/webui4frpc.spec @@ -1,5 +1,5 @@ Name: webui4frpc -Version: %{?_w4f_version}%{!?_w4f_version:0.1.4} +Version: %{?_w4f_version}%{!?_w4f_version:0.2.0} Release: 1%{?dist} Summary: Visual frpc controller with token-ring cluster License: MIT @@ -74,6 +74,15 @@ fi %doc %{_docdir}/webui4frpc/README.md %changelog +* Fri Oct 23 2026 JianFeeeee - 0.2.0-1 +- 从配置文件启动:新增 internal/appconfig,-config 指定配置文件(默认 /config.json,$W4F_CONFIG 兜底) +- 从配置文件启动:优先级 flag > 文件 > 内置默认,仅显式传入的 flag 参与覆盖 +- 从配置文件启动:支持 ${ENV} 与 file: 两种密钥引用,口令/join-key 在日志与启动摘要中固定脱敏 +- 从配置文件启动:未配口令保持旧行为并打 WARNING;文件 JSON 损坏或含未知键则报错退出(防口令拼错静默回落) +- 打包:systemd 单元与 deb/rpm/pkg/NSIS 全部改为 ExecStart=-config /etc/webui4frpc/config.json,命令行不再出现口令 +- 修复渲染:useEncryption/useCompression/bandwidthLimit 内嵌进 proxy 的 transport 对象(此前渲染在顶层,frpc --strict-config 拒载) +- 新增 frpc 全局 user 字段(store 列名 usr,自动加列迁移),支持面板型 frps 强制 user 登录 +- 前端:RemoteNode 画布与 StatusView 表单新增 user 输入,带「面板型 frps 必填」提示 * Mon Oct 06 2026 JianFeeeee - 0.1.4-1 - 负载均衡:改为每节点自主释放(持有数超过平摊份额且 >=2 时自撤销一条丢回环,由最闲节点认领),不再由 leader 统一调度 - 负载均衡:新增自限上界与下限(撤到平摊值即停、低于 2 条不撤),10 分钟冷却,默认不动作(dry-run) diff --git a/packaging/windows/README.md b/packaging/windows/README.md index 7fad758..9c9bfd2 100644 --- a/packaging/windows/README.md +++ b/packaging/windows/README.md @@ -79,7 +79,7 @@ cd web && npm run build && rm -rf internal/httpapi/dist && cp -r web/dist intern ### Linux (Debian / Ubuntu) ```bash -sudo dpkg -i webui4frpc-0.1.4-linux-amd64.deb # 或 linux-arm64.deb +sudo dpkg -i webui4frpc-0.2.0-linux-amd64.deb # 或 linux-arm64.deb sudo nano /etc/webui4frpc/webui4frpc.env # 改掉默认密码 sudo systemctl restart webui4frpc ``` @@ -87,7 +87,7 @@ sudo systemctl restart webui4frpc ### Linux (RHEL / Fedora / openEuler / 默认 / 龙蜥) ```bash -sudo rpm -i webui4frpc-0.1.4-linux-x86_64.rpm +sudo rpm -i webui4frpc-0.2.0-linux-x86_64.rpm sudo vi /etc/webui4frpc/webui4frpc.env sudo systemctl enable --now webui4frpc ``` @@ -97,7 +97,7 @@ sudo systemctl enable --now webui4frpc ### Windows -双击 `webui4frpc-0.1.4-windows-amd64-setup.exe`(ARM 设备用 `windows-arm64-setup.exe`)。 +双击 `webui4frpc-0.2.0-windows-amd64-setup.exe`(ARM 设备用 `windows-arm64-setup.exe`)。 安装向导会询问监听地址与管理员凭据,完成后: - 程序装到 `C:\Program Files\webui4frpc` @@ -107,8 +107,8 @@ sudo systemctl enable --now webui4frpc ### macOS ```bash -sudo installer -pkg webui4frpc-0.1.4-darwin-arm64.pkg -target / # Apple Silicon -sudo installer -pkg webui4frpc-0.1.4-darwin-amd64.pkg -target / # Intel +sudo installer -pkg webui4frpc-0.2.0-darwin-arm64.pkg -target / # Apple Silicon +sudo installer -pkg webui4frpc-0.2.0-darwin-amd64.pkg -target / # Intel ``` 或直接双击 `.pkg` 走图形安装器。安装后 launchd 开机自启,配置在 @@ -126,7 +126,7 @@ sudo launchctl kickstart -k system/com.jianfeeeee.webui4frpc 不想装服务只想跑一下,用对应的 `.tar.gz` / `.zip`,解压即用: ```bash -tar xzf webui4frpc-0.1.4-linux-amd64.tar.gz +tar xzf webui4frpc-0.2.0-linux-amd64.tar.gz ./webui4frpc -addr 127.0.0.1:7500 -user admin -password 你的密码 -workdir ./data ``` diff --git a/scripts/build_installers.sh b/scripts/build_installers.sh index c30a6d8..24aa343 100755 --- a/scripts/build_installers.sh +++ b/scripts/build_installers.sh @@ -12,7 +12,7 @@ # 在 release.sh 流程内被调用;依赖 dist/artifacts//bin/-/ 下的二进制。 set -euo pipefail -VERSION="${1:-0.1.4}" +VERSION="${1:-0.2.0}" VERSION="${VERSION#v}" ROOT="$(cd "$(dirname "$0")/.." && pwd)" OUT="$ROOT/dist/artifacts/$VERSION" diff --git a/scripts/release.sh b/scripts/release.sh index 4863a21..3ae5bcf 100755 --- a/scripts/release.sh +++ b/scripts/release.sh @@ -3,7 +3,7 @@ # webui4frpc 多平台发布脚本 # # 用法: -# ./scripts/release.sh [version] # 默认 version=0.1.4 +# ./scripts/release.sh [version] # 默认 version=0.2.0 # # 行为: # 1. 构建前端 (web/dist) 并同步到 internal/httpapi/dist (go:embed 用) @@ -19,7 +19,7 @@ # NO_BUILD_FRONTEND 设为 1 跳过前端构建 (用现有 dist) set -euo pipefail -VERSION="${1:-0.1.4}" +VERSION="${1:-0.2.0}" VERSION="${VERSION#v}" # 去掉可能的前导 v ROOT="$(cd "$(dirname "$0")/.." && pwd)" OUT="$ROOT/dist/artifacts/$VERSION"