Skip to content

v1.7.0-alpha.1

Pre-release
Pre-release

Choose a tag to compare

@tsosunchiatsosunchia released this 22 May 07:05
· 42 commits to main since this release

What's Changed

  • 新增 NextTrace API v4 HTTP GeoIP provider:当数据源为 LeoMoeAPI 且配置了 NEXTTRACE_API_V4_TOKEN 时,GeoIP 查询会改用 GET https://api.nxtrace.org/v4/ipGeo?ip=<ip>,并通过 X-NextTrace-Token 请求头传 token
  • 新增 -x / --setup-api-v4-token:可在当前 shell 会话中粘贴并保存 NextTrace API v4 token,后续从该 shell 启动的 nexttrace 会自动加载
  • nexttrace -x 使用临时 token 文件,不写 shell profile、永久环境变量或 nt_config.yaml;同时提供 parent-PID session 文件和 same-user fallback 文件,兼容 go run 等 wrapper 启动方式
  • 没有可用 v4 token 时,LeoMoeAPI 默认仍走旧 v3 WebSocket / PoW 流程;配置 v4 token 后会跳过 v3 WebSocket 初始化
  • 加固 v4 token 文件处理:使用临时文件原子写入,校验 token 目录 owner、权限、symlink 和文件类型,Unix 下要求同用户拥有且目录权限为 0700
  • 加固 v4 GeoIP 请求:补齐最小超时、总耗时限制、网络/超时/5xx 重试、响应体大小限制、错误响应解析和 token 脱敏
  • 解析 NextTrace API v4 quota headers:支持读取 X-NextTrace-Quota-RemainingX-NextTrace-Quota-Expires-AtX-NextTrace-Quota-CostX-NextTrace-Quota-Source,但不改变默认输出格式
  • 修复 MTR TCP / UDP GeoIP 补全:按 GeoIP / RDNS 配置决定是否标记 pending metadata 与启动异步补全,避免关闭 metadata 时留下无意义的 Geo 占位
  • 新增 MTR TUI 历史视图:交互式 MTR 中按 d / D 可在经典指标表与 History 视图间切换,默认仍保持经典表格
  • 新增 History 图表模式切换:历史视图下按 g / G 可在 heatmap、bars、sparkline 三种图表间循环
  • History 视图会保留最近 3 分钟、按探测时间戳归窗的延迟与超时样本,并显示 HostLastAvgLossHistory
  • 优化 MTR 历史视图布局:宽终端下扩展 Host / History 显示空间,窄终端下给出提示并保持 TUI 输出稳定
  • 修复 MTR history 取样与配色:未来时间戳会被钳制到当前时间,超时样本、无色输出和延迟档位显示更稳定
  • 优化 MTR history 渲染性能,减少历史图表绘制时的临时指针分配
  • 更新依赖:modelcontextprotocol/go-sdk 1.6.0、golang.org/x/net 0.54.0、tidwall/gjson 1.19.0 等

额外的:
历史视图只在 TTY 交互式 MTR 下启用;非 TTY / report / raw 输出保持原有行为。
d 只切换显示方式,历史样本会在经典表格显示期间同步收集;按 r 重置 MTR 统计时也会清空 history。
History 列使用固定 100ms 延迟刻度;启用 --no-color 时使用 ASCII,并以 x 表示超时样本。

Full Changelog: v1.6.5...v1.7.0-alpha.1