Skip to content

v1.2.0 — 在线升级系统 + 版本管理重构 + Linux脚本

Latest

Choose a tag to compare

@Antruly Antruly released this 17 Jun 20:29
· 6 commits to master since this release

🚀 版本自动更新系统

  • Launcher 守护进程: 管理 server.js worker 生命周期,崩溃自动重启,升级时杀旧 fork 新实现零停机重启
  • 在线升级: 维护模式中间件 → 请求排空 → 备份项目 → 下载解压 → npm install → 自动重启
  • 版本管理 Tab 切换: App 版本 / 后台版本分别管理,支持 GitHub Release 检查 + 下载进度 + 手动上传
  • WebSocket 实时推送: 下载进度通过 WebSocket 实时推送到前端,替代轮询
  • 浏览器 UA 伪装: 模拟 Chrome 请求头避免被 GitHub 当作爬虫拦截
  • 升级配置: 自动下载开关 + 定时自动升级(可设时间) + 数据库备份勾选
  • 定时检查: 每日 01:00 自动检查 GitHub 更新 + 启动时版本检查(10s 超时保护)
  • APK 自动入库: GitHub 下载的 APK 自动解析 version.json 并注册到版本列表
  • 磁盘扫描回退: 服务重启后自动扫描 data/tmp 找已下载的升级包

📝 文本编辑器(Monaco Editor)

  • Monaco Editor 本地托管: VS Code 内核,100+ 语言语法高亮,亮色/暗色主题自适应
  • 70+ 文件类型支持: SQL/INI/CONF/LOG/CPP/C/H/JSON/YAML/XML/Dockerfile 等全部可预览编辑
  • 编码选择器: UTF-8 / GBK / GB2312 / BIG5 / Shift_JIS / EUC-KR / ASCII / Latin1
  • 新建文件: 个人目录(V1 加密空文件)+ 公共目录(管理员专属)
  • 编辑时屏蔽快捷键: t/g/l/Backspace 不会触发换肤/视图切换/目录返回

🎨 文件图标

  • 分类 emoji 图标:SQL/INI/CONF/LOG/CPP/C/H 等常用后缀
  • 无后缀名文件支持:Dockerfile / Makefile / .editorconfig / .htaccess / README / LICENSE

🔧 修复

  • 端口占用导致 PM2 重启死循环(reuseAddr + EADDRINUSE 处理)
  • 编辑器保存 413 Request Entity Too Large(body limit → 10MB)
  • 个人加密文件保存 db is not defined(V1/V0 加密流 + 临时文件替换)
  • 编码切换后内容为空(apiGet vs axios 数据层级不一致)
  • 编码下拉框暗色模式不可读
  • Monaco 主题联动暗色模式
  • PDF 预览被 Chrome 屏蔽
  • SSL 配置移至 .env 统一管理

📦 构建

  • start.bat 改用 launcher.js 启动
  • 新增 Linux 脚本: start.sh / stop.sh
  • package.json scripts.start → node launcher.js
  • build_all.bat 已包含 launcher.js 复制