whyour
0218404d9f
fix: 修复页面升级、ql update 与静态资源版本同步 ( #3086 )
...
* fix: validate panel upgrades and synchronize versioned static builds
* fix: add static-only mirror backfill workflow
* fix: avoid lifecycle self-kill and stop cancelled upgrade groups
* fix: build images when the shared upgrade engine changes
* fix: dispatch upgrade lifecycle through a fixed script
* fix: reclaim upgrade locks safely and normalize health probes
* fix: match backend base URL normalization exactly
2026-10-07 17:43:03 +08:00
whyour
24f7d1a46f
fix: resolve dev panel and CLI regressions
...
Synchronize scheduler concurrency across API and gRPC processes and restore persisted limits during recovery.
Serialize subscription mutations and preserve shared storage while cleaning Shell and CLI namespaces, historical references, and filesystem-specific naming candidates.
Handle CLI text responses correctly and include script history in backups. Add regression coverage for concurrency, cleanup ownership, long URLs, Unicode paths, and history exports.
2026-10-07 12:35:10 +08:00
whyour
fa8910b3d6
feat: add script version history ( #3085 )
...
* feat: add script version history
* fix: validate canonical save-as paths before backup
* fix: stack script history footer on small screens
2026-10-06 22:00:11 +08:00
whyour
2cab112391
fix: 加固安全输入边界并修复订阅兼容性 ( #3084 )
...
* fix: harden scoped API inputs and isolate login throttling
* fix: close script path gaps and harden security boundaries
* fix: preserve subscription aliases and avoid extension eval
* fix: allow cancelling invalid historical subscriptions
* fix: make script parent validation explicit for CodeQL
* fix: limit command execution and clarify trusted path branches
* fix: separate diff tool script access from config APIs
* fix: clean up obsolete subscription SSH credentials
2026-10-06 18:21:54 +08:00
whyour
2ab9c702e6
ci: skip Docker builds for CLI-only changes
2026-10-01 12:25:16 +08:00
whyour
6dd98a8565
fix(ci): isolate CLI release concurrency from validation
2026-10-01 12:17:26 +08:00
whyour
06c8d8b112
fix: report resource conflicts and accurate CLI API errors
2026-10-01 11:26:40 +08:00
whyour
a5406bedca
ci: allow verified CLI prereleases from develop
2026-10-01 00:26:42 +08:00
whyour
3d2b98a442
fix: scope file access restrictions and honor custom data directories
2026-09-30 21:21:35 +08:00
whyour
93d7ec69dc
fix: scope config file blacklist to config directory ( #3082 )
2026-09-30 20:31:20 +08:00
whyour
a303e33b4e
fix: invalidate queued cron revisions and enforce task process timeouts
2026-09-29 23:37:00 +08:00
whyour
44129ca088
fix: align CLI shell completion and cancellation semantics
2026-09-29 01:06:47 +08:00
whyour
def4917447
fix: finalize exited shell tasks and preserve command environments
2026-09-29 00:52:33 +08:00
whyour
bc0f35e3f7
fix: reduce task startup overhead and lazy-load notifications ( #3080 )
2026-09-28 23:41:31 +08:00
whyour
f168efcdae
refactor: migrate cron scheduling to node-cron ( #3079 )
...
* refactor: migrate cron scheduling to node-cron
* feat: support annually midnight and minutely cron macros
* fix: harden cron recovery and system scheduler compatibility
2026-09-27 22:18:39 +08:00
whyour
bf63425805
fix: isolate invalid cron rules during scheduler recovery
2026-09-27 16:45:09 +08:00
whyour
a8310e7d51
fix: restore legacy cron schedules and shell diagnostics ( #3078 )
2026-09-27 16:16:22 +08:00
whyour
a67d44cde5
fix: pin Debian Python 3.10 base for full release matrix
2026-09-26 01:40:39 +08:00
whyour
6c487018c2
fix: drain completed task logs and prepare 2.22.0 release ( #3076 )
2026-09-26 01:17:28 +08:00
whyour
801a71d740
feat(cli): cover OpenAPI with a remote npm CLI and internal panel tools ( #3074 )
...
* feat(cli): add unified Commander CLI for QingLong 2.x
* fix(cli): publish via npm and address security review feedback
* ci(cli): package npm artifacts and remove evaluation collateral
* test(cli): use a fixed shell fixture for log retention
* refactor(cli): separate remote npm client from panel tools
* feat(cli): cover active panel OpenAPI resources
* docs(cli): unify authentication and skill guidance
* refactor(cli): isolate internal commands and generate Commander help
* refactor(cli): organize remote and internal modules by responsibility
* ci(cli): publish verified npm archives from master
* fix(cli): publish under the whyour npm scope
* ci: use npm trusted publishing for both packages
* docs: introduce the published CLI on the project homepage
* fix(cli): preserve server log truncation and correct login hints
* fix(cli): accept dashboard record request bodies
* fix(cli): preserve stdin for local task execution
* fix(cli): resolve task executables after changing directory
* fix(cli): preserve shell function tasks and sanitize test failures
* fix(cli): preserve shell hook state and resolve workdir after hooks
* fix(cli): preserve cleanup across shared shell task timeouts
* fix(cli): isolate shell control descriptors and reap timed-out descendants
2026-09-25 23:24:41 +08:00
whyour
f051135fc4
fix: declare nullable subscription process id
2026-09-24 20:37:13 +08:00
whyour
2d6c2206b3
fix: verify task termination and preserve startup configuration
2026-09-22 22:23:18 +08:00
whyour
6acb665369
fix: prevent expired-token login refresh loop
2026-09-19 13:23:28 +08:00
whyour
d9833c17d5
perf: reduce resident dependencies and duplicate WebSocket authentication ( #3071 )
...
* perf: load HTTP dependencies only in the HTTP worker
* docs: record 30-minute idle resource comparison
* perf: isolate database initialization from the cluster primary
* docs: record isolated database startup resource comparison
* perf: avoid an extra shell child in Docker health probes
* perf: load notification dependencies only when needed
* perf: retain queue cleanup after notification loading comparison
* fix: stop page polling after unmount and avoid duplicate fetches
* perf: share WebSocket session polling across connections
* docs: measure real WebSocket container CPU and memory
* perf: reuse JWT validation within each WebSocket session check
* perf: bound login IP lookup allocations with an address cache
* refactor: limit resource optimization PR to three core changes
* docs: benchmark the three core optimizations against develop
* chore: remove documentation and benchmark artifacts from PR
2026-09-18 20:22:18 +08:00
whyour
a60ec5587a
feat: show today's successful tasks from dashboard ( #3072 )
2026-09-18 02:16:54 +08:00
whyour
4eb27427f8
fix: 修复 develop 调度锁、运行恢复与 Alpine 缓存并发 ( #3070 )
...
* fix: repair develop scheduler locks and runtime recovery
* test: wait for child reaping after verified termination
* fix: abort cron mutations when scheduler deletion fails
2026-09-13 13:44:44 +08:00
whyour
041a437453
fix: support WPUSH notifications over gRPC
2026-09-13 01:08:14 +08:00
whyour
a94e665054
fix: 修复任务生命周期与调度就绪,优化执行和构建开销 ( #3069 )
...
* fix: harden task lifecycle and scheduler readiness
* fix: confine log writes to the configured log directory
* fix: verify complete build artifacts and untracked inputs
* fix: reconcile scheduler state and make stop win startup races
* fix: isolate cron generations and serialize scheduler recovery
2026-09-13 00:32:41 +08:00
whyour
d62d8f3025
fix: support Chinese cron log names ( #3068 )
2026-09-12 03:03:25 +08:00
whyour
4df52094f2
fix: harden authentication and file access security
2026-09-05 18:19:01 +08:00
whyour
be2580d0e8
feat: show today's failed tasks from dashboard
...
Add a failure list with task names, commands, accumulated failure counts and latest log links. Keep recovered and deleted tasks visible in today's statistics.
Fixes #3065
2026-09-05 17:03:31 +08:00
whyour
5f6049d80a
fix: secure file routes and dependency management
2026-08-29 19:10:30 +08:00
whyour
0e975d1d6d
fix: show cron validation field errors
2026-08-22 01:20:04 +08:00
whyour
134cd8337c
fix: read ql runtime logs from syslog
2026-08-20 09:41:42 +08:00
whyour
88200f2805
feat: add ql service log command
2026-08-20 00:56:59 +08:00
whyour
decdab093f
perf: speed up large file tree listings
2026-08-19 01:05:18 +08:00
whyour
dfa73af104
fix: preserve container startup diagnostics
2026-08-18 00:40:40 +08:00
whyour
f71fd5ebd6
fix: propagate initialization errors and reduce request metrics
2026-08-17 08:55:53 +08:00
whyour
afe9b5702b
chore: remove internal performance triage report
2026-08-16 22:41:46 +08:00
whyour
02e02491c4
fix: avoid duplicate container stdout logging
2026-08-16 17:03:15 +08:00
whyour
276dfc2382
perf: bound runtime memory and storage usage
2026-08-16 16:29:06 +08:00
whyour
31f78e4d1f
feat: add client IP diagnostics and blocking
2026-08-16 13:57:33 +08:00
whyour
83e4490b57
fix: pin Python base for multi-arch builds
2026-08-11 00:12:47 +08:00
whyour
2ac4f07fca
fix: address dashboard scope and preview interactions
2026-08-10 23:40:53 +08:00
whyour
0bb41ebe96
新版本 v2.21.0
2026-07-25 13:28:44 +08:00
whyour
d67f33df39
fix: 防止 task_before 污染 Node.js 依赖路径
2026-07-24 22:33:48 +08:00
whyour
24d539fc05
fix: 使用 npm 包安装 sqlite3
2026-07-19 00:40:40 +08:00
whyour
214e23a63d
fix: 恢复 linux/s390x 镜像支持
2026-07-18 11:02:07 +08:00
whyour
ddb3ab7ac3
Add configurable browser tab title for multi-instance QingLong deployments ( #3041 )
2026-07-10 02:07:11 +08:00
whyour
da6dac8bf1
ts-node 异常,锁定 typescript 版本
2026-07-10 01:36:31 +08:00
whyour
9b17a41987
修复 dashboard 接口地址
2026-07-08 00:28:35 +08:00
whyour
cdfa6c3c3c
增加启动错误日志
2026-07-04 21:36:11 +08:00
whyour
1953022b99
修复识别系统默认语言
2026-07-04 01:13:59 +08:00
whyour
38d84f9f31
修复订阅链接正则判断
2026-07-02 00:08:39 +08:00
whyour
e92ddb0aed
修复添加任务有可能失败
2026-07-01 00:37:42 +08:00
whyour
d3016431ce
定时任务显示完整运行历史
2026-06-28 15:48:58 +08:00
whyour
5fbff0e1c8
修复 openapi 鉴权提示
2026-06-26 15:31:25 +08:00
whyour
3044f63f03
修复国际化文案
2026-06-21 23:53:32 +08:00
whyour
369dd13212
修复 deps 目录依赖逻辑
2026-06-21 12:12:29 +08:00
whyour
b5a5fb3be6
shell 增加国际化
2026-06-14 21:19:06 +08:00
whyour
0ee0b83207
延迟增加运行时间提示
2026-06-14 15:21:29 +08:00
whyour
5f2d5bb24a
修复 esm 依赖查询路径
2026-06-13 21:08:25 +08:00
whyour
949d956aef
grpc 服务增加证书校验
2026-06-13 20:16:49 +08:00
whyour
96b4c90398
增加 sudo 命令判断
2026-06-13 00:53:41 +08:00
whyour
7d8feadc78
修复获取定时任务参数
2026-06-13 00:09:31 +08:00
whyour
d1dfde3ca9
修复配置文件路径可能越权
2026-06-12 23:45:40 +08:00
whyour
6796068523
更新国际化文案
2026-06-11 23:18:45 +08:00
whyour
05f8fd3805
接口提示信息国际化
2026-06-11 02:19:04 +08:00
whyour
946731ac8d
增加运行实例
2026-06-10 01:53:10 +08:00
whyour
617cf7e5b4
更新 stop emoji
2026-06-09 00:48:03 +08:00
whyour
662adc0f9c
修复 dashboard title
2026-06-07 23:45:43 +08:00
whyour
23b41893a3
修复获取任务退出码
2026-06-07 23:28:21 +08:00
whyour
34d4526413
修复 work_dir 目录判断
2026-06-07 22:03:48 +08:00
whyour
ad92e0c2c0
修复任务统计日志
2026-06-07 15:15:12 +08:00
whyour
c14390cf41
修复 work_dir 验证
2026-06-07 13:56:06 +08:00
whyour
fd6b4e4cde
定时任务增加 work_dir 设置
2026-06-07 13:19:01 +08:00
whyour
865e3035b9
开机运行任务同时开始运行
2026-06-01 23:24:10 +08:00
whyour
d8d30c3619
修复 initFile
2026-06-01 19:07:15 +08:00
whyour
4e803df51e
修复内部服务 ip 地址
2026-06-01 18:28:54 +08:00
whyour
e8ac195c96
增加任务统计
2026-06-01 18:20:18 +08:00
whyour
c0b7527148
修复路径穿越
2026-06-01 13:49:32 +08:00
whyour
ca347c5854
修复非 root 用户更新时区和 linux 配置
2026-05-31 16:48:13 +08:00
whyour
4bee3fbdf4
修复 getCronById api status
2026-05-31 15:53:24 +08:00
whyour
b6537e27ef
update mirror action
2026-05-31 15:04:10 +08:00
whyour
c2eac8b8fd
移除未使用配置
2026-05-31 00:36:54 +08:00
whyour
2fe9470ff0
fix: gRPC extra_schedules 为空时序列化报错 not iterable
2026-05-31 00:14:22 +08:00
whyour
abad29cbf9
修复非 root debian dockerfile
2026-05-30 23:55:57 +08:00
whyour and dream10201
84d730d510
统一 Alpine/Debian 分支,QL_SCHEDULER 参数化调度
...
* 修改获取示例文件 api path
* 增加 debian-slim 基础镜像
* 修复 debian apt 命令,支持 qinglong 命令
* 更新 npm 版本 0.7.7
* 更新 npm v0.8.4
* 修复linux依赖检测 (#2082 )
* 修复拉取私有仓库
* 修复 shell check_server
* 修复 qinglong 命令
* 更新 npm 版本 v0.13.2
* 增加 debian 开发版本
* 修改切换 linux 镜像源
* 修复 qinglong 命令
* 移除 qinglong 命令 npm 默认镜像源
* 修复 workflow
* 更新 npm 版本 v0.14.5
* 增加 npx 命令
* 更新 workflow action 版本
* 更新 npm 版本 v0.16.0
* 修复 linux 镜像源
* 更新 npm 版本 v0.17.0
* 更新 npm 版本 v0.18.0
* 修改 npm 安装启动命令
* 更新 npm 版本 v0.19.9
* 修复 debian netcat 包名
* 更新 npm 版本 v0.20.4
* 安装 linux 依赖自动识别 alpine 和 debian
* 修改 apt 命令
* 更新 npm 版本 v0.21.2
* 修改 ts 文件执行依赖
* npm 启动增加 reload 逻辑
* 更新 npm 版本 v2.17.8
* 修复 qinglong 命令
* 更新 npm 版本 v2.17.9
* 更新 npm 版本 v2.17.10
* 更新 npm 版本 v2.17.11
* 修改 debian 版本为 12 bookworm
* 更新 npm 版本 v2.17.12
* 修改本地服务启动提示
* 更新 npm 版本 v2.17.13
* 写入文件增加文件锁
* 修复系统安装依赖提示
* 更新 npm 版本 v2.18.2-6
* 更新 nodejs 版本
* 更新 npm 版本 v2.18.3-3
* 修复 command 变量
* 移除自动清除 deb
* 修复 npm 启动脚本
* 修复发布 npm包依赖文件
* 修改 linux 启动文件逻辑
* 更新 npm 版本 v2.19.0-10
* 修复 apt 命令
* 更新 npm 版本 v2.19.1-0
* 更新 npm 版本 v2.19.2-2
* 增加 packageManager
* 增加用户 qinglong
* 更新 pipeline
* 移除 init_nginx
* 更新 npm 版本 v2.20.0
* 更新 npm 版本 2.20.1
* 更新 npm 版本 2.20.2
* fix: 修复非 root 用户启动
* chore: 合并 debian 和 alpine 逻辑
---------
Co-authored-by: dream10201 <xiuxiu10201@gmail.com >
2026-05-30 18:03:51 +08:00
whyour
57d58c871e
fix: isolate task node dependencies
2026-05-24 01:40:07 +08:00
whyour
bb6d436c19
fix: run scripts from their own directory
2026-05-24 00:15:24 +08:00
whyour
8bc0906949
feat: add environment variable labels
2026-05-23 23:21:38 +08:00
whyour
66f9457be8
ci: replace hub-mirror-action with direct git push for Gitee sync
...
Replace Yikun/hub-mirror-action with manual git push for Gitee mirrors. The action HTTPS API call to gitee.com timed out (60s). Use set +e with explicit notice/warning status. Also add .deepseek/ to .gitignore.
2026-05-18 01:05:46 +08:00
whyour
0c5e3b5d04
ci: update workflow actions
2026-05-18 00:12:22 +08:00
whyour
400e4770de
修复环境变量 position 数据类型可能异常
2026-05-17 23:53:43 +08:00
whyour
40d4de9017
增加 localhost 检测
2026-05-17 23:43:09 +08:00
whyour
3464c4da61
fix IPv6 connectivity
2026-05-06 01:29:01 +08:00
whyour
fd516977e3
chore: upgrade nodemailer
2026-03-07 22:35:18 +08:00
whyour
c39f4ef846
chore: 更新 multer,解决 cve 漏洞
2026-03-07 21:31:24 +08:00
whyour
275d8af4e2
更新版本 v2.20.2
2026-03-01 20:35:25 +08:00
whyour
544c432f49
修复 PATH 环境变量
2026-03-01 20:35:19 +08:00