Repository navigation
ALS v2.2.0
前端全面重做,并重写浏览器测速。
主要变化
- 界面重设计:以 Tailwind CSS v4 + shadcn-vue(Reka UI)替换 naive-ui,采用双栏 looking-glass 布局,支持浅色 / 深色 / 跟随系统主题,并记住语言选择。
- 前端迁移到 TypeScript,lint 使用 typescript-eslint
recommendedTypeChecked,构建时运行 vue-tsc 类型检查。 - 诊断面板:工具与 IP 版本切换、Ping 汇总、按延迟和丢包着色、可折叠原始输出。
- 测速、流量及 iPerf3 / Speedtest.net 视图重建,图表随主题切换;工具在侧边抽屉中打开。
- Markdown 渲染器改为按需加载,并修正同时打包了 Vue 的 apexcharts 分块规则(主 chunk 1.6 MB → 337 KB)。
- 浏览器测速重写:用 TypeScript 测速引擎替换 LibreSpeed worker,报告空闲延迟与抖动、下载 / 上传负载下的延迟与抖动、持续吞吐量及实时趋势、传输数据量和阶段耗时。
- 单线程模式每个方向保持一个传输;多线程模式使用 4 个并发连接。
- 吞吐稳定后自适应结束(7–15 秒),结果取最后数秒的截尾均值,而非整轮平均。
修复
- 修正 zh-CN 上传 / 下载标签颠倒;翻译 iPerf3 / Speedtest.net 中硬编码的文字;修正流量历史裁剪。
升级须知
- 后端新增
HEAD/GET /session/:session/speedtest/ping;下载接口返回Content-Length及no-store头;上传请求体上限为 64 MiB。 - 移除
/speedtest_worker.js路由及ui/speedtestLibreSpeed 子模块。从源码构建时不再需要git submodule update。 - 页脚署名仅显示 “ALS”。
下载与部署
二进制附件支持 Linux amd64 / arm64,以及 macOS Intel / Apple Silicon。
docker run -d --name looking-glass \
--restart always --network host \
ghcr.io/indexyz/als:v2.2.0诊断功能需要对应网络套接字权限,其他部署要求见 诊断协议与部署文档。
源码与变更
- 发布源码:
90a0a88 - 完整变更:v2.1.1 → v2.2.0
- NTrace-core v1.7.5 源码及许可证(GPL-3.0;ALS 自有源码保留仓库中的 MIT 许可)。