whyour
73c41eed22
fix(i18n): retain Python dependency and notification audit translations
2026-10-14 10:25:13 +08:00
whyour
e435f6e886
fix(notify): audit system and JS/Python script notification results
2026-10-13 02:20:59 +08:00
whyour
4cd6c6ad2e
fix(dependencies): quote and validate Python source installs
2026-10-12 00:23:48 +08:00
whyour
1503f07c75
fix(notification): bound audit logs without breaking delivery
2026-10-12 00:23:20 +08:00
whyour
89c6355635
fix: renew system tokens and serialize authentication cache updates
2026-10-11 01:56:50 +08:00
whyour
68ffa106f8
fix: resolve Debian regression findings ( #3087 )
...
* fix: resolve Debian regression findings
* fix: reject failed APT index refreshes and simplify SSH home lookup
2026-10-09 01:41:29 +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
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
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
2d6c2206b3
fix: verify task termination and preserve startup configuration
2026-09-22 22:23:18 +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
Alone88
841740f19a
feat: add WPUSH notification provider ( #3066 )
...
Add WPUSH as a notification channel for Qinglong panel settings and
sample notify scripts (Python/JS), using POST https://api.wpush.cn/api/v1/send
with success code === 0. Supports optional channel and topic_code.
2026-09-13 00:50:56 +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
4df52094f2
fix: harden authentication and file access security
2026-09-05 18:19:01 +08:00
whyour
5f6049d80a
fix: secure file routes and dependency management
2026-08-29 19:10:30 +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
ddb3ab7ac3
Add configurable browser tab title for multi-instance QingLong deployments ( #3041 )
2026-07-10 02:07:11 +08:00
whyour
38d84f9f31
修复订阅链接正则判断
2026-07-02 00:08:39 +08:00
whyour
e92ddb0aed
修复添加任务有可能失败
2026-07-01 00:37:42 +08:00
Martha Ramirez
a942a5686f
修复删除定时任务后 crontab.list 残留导致订阅更新无法重新注册 ( #3021 )
...
* 修复删除定时任务后 crontab.list 未同步导致订阅更新无法重新注册脚本
crontab.list 作为数据库的文件镜像,其同步 setCrontab() 此前串行在尽力而为
的 gRPC addCron/delCron 调用之后:当调度 worker 重启等导致 gRPC 短暂不可用、
addCron/delCron reject 时,setCrontab() 会被跳过,crontab.list 与数据库脱节。
而 shell/update.sh 的 gen_list_repo() 将 crontab.list 作为"已有任务"真源,
于是订阅更新误判脚本已存在、跳过新增注册(前端再也看不到这些脚本)。
将 create/update/remove/disabled/enabled/autosave_crontab 中的 gRPC 调用改为
尽力而为(try/catch + 告警日志),保证 setCrontab() 总是执行;autosave_crontab
额外将 setCrontab 提前到 addCron 之前,确保启动/调度器重启时文件总是同步,
并避免 gRPC 失败导致应用启动崩溃。
调度器内存中的任务注册与 crontab.list/系统 crontab 同步是两个相互独立的关注点:
gRPC 失败时内存调度可能在调度器重启后由 autosave_crontab 重新注册,但文件同步
不应因此被阻断。修复后既有的 crontab.list 残留会在下次重启或任意增删改时自愈。
可能与 #2422(订阅更新重复添加任务)同根因。
* 过滤 delCron 中 scheduleStacks 的 null job
nodeSchedule.scheduleJob() 对无效 cron 表达式(如 "0 * /6 * * *",
空格分开了 * /6)会返回 null,原代码原样存入 scheduleStacks 数组。
delCron 取消时对 null 调 cancel() 抛出 UNKNOWN 错误,导致 gRPC
handler 中断、HTTP 端 cronService.remove() 跳过 setCrontab(),
crontab.list 残留已删任务的记录,导致订阅更新时 gen_list_repo()
误判脚本已存在、不再重新注册。
过滤 null 并对每个 cancel 调用加 try/catch 容错。
2026-06-30 23:48:51 +08:00
zjiecode and zjiecode
327c3a317b
Add WxPusher simple push support,Enhance user experience and reduce configuration complexity ( #3023 )
...
* 新增对WxPusher极简推送的支持,减小用户使用成本
* 新增脚本对WxPusher极简推送的支持
* 修复通知配置的枚举定义
---------
Co-authored-by: zjiecode <zjiecode@gmail.com >
2026-06-30 14:30:31 +08:00
whyour
d3016431ce
定时任务显示完整运行历史
2026-06-28 15:48:58 +08:00
whyour
3044f63f03
修复国际化文案
2026-06-21 23:53:32 +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
fd6b4e4cde
定时任务增加 work_dir 设置
2026-06-07 13:19:01 +08:00
whyour
865e3035b9
开机运行任务同时开始运行
2026-06-01 23:24:10 +08:00
whyour
e8ac195c96
增加任务统计
2026-06-01 18:20:18 +08:00
jmclulu
3aab1233bb
fix: correct typos in source code and locales ( #3003 )
...
- Fix Countrys -> Countries in comment
- Fix Scrolldown -> ScrollDown in variable name
- Fix completeTowFactor -> completeTwoFactor (3x)
- Fix deactiveTowFactor -> deactivateTwoFactor (3x)
- Fix activeOrDeactiveTwoFactor -> activeOrDeactivateTwoFactor
- Fix API route /two-factor/deactive -> /two-factor/deactivate
- Fix elment -> element in function param
- Fix synolog -> synology in comment
- Fix Chinese comment 制定 -> 指定
- Fix swapped BARK English translations on lines 360-361
2026-05-31 00:32:04 +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
8bc0906949
feat: add environment variable labels
2026-05-23 23:21:38 +08:00
whyour
400e4770de
修复环境变量 position 数据类型可能异常
2026-05-17 23:53:43 +08:00
whyour
3464c4da61
fix IPv6 connectivity
2026-05-06 01:29:01 +08:00
Max
1315578878
支持自定义接收邮箱地址 ( #2973 )
...
* 支持自定义接收邮箱地址
* 新增支持多个接收邮箱,同步到node和系统内置版本
2026-05-06 00:34:26 +08:00
66700ebe1a
Add OpeniLink notification channel ( #2988 )
...
* Initial plan
* Add OpeniLink notification channel support
Agent-Logs-Url: https://github.com/whyour/qinglong/sessions/c80b4882-1bd7-4ffe-9180-cd3220da5986
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Add context_token and hub_url to OpeniLink notification channel
Agent-Logs-Url: https://github.com/whyour/qinglong/sessions/a5e66f5a-dab8-4a65-96ca-960d35fa9d50
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2026-04-25 16:01:36 +08:00
copilot-swe-agent[bot] and whyour
0d33d2321a
fix: address code review feedback - improve notifyType logic and typing
...
Agent-Logs-Url: https://github.com/whyour/qinglong/sessions/4c9f0ab1-8b0e-4b94-b295-39c90ed942c2
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2026-04-25 06:50:47 +00:00
copilot-swe-agent[bot] and whyour
79964f149c
feat: add notification audit log feature
...
Agent-Logs-Url: https://github.com/whyour/qinglong/sessions/4c9f0ab1-8b0e-4b94-b295-39c90ed942c2
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2026-04-25 06:49:18 +00:00
whyour
d526602d19
修复运行中任务停止操作
2025-12-26 01:07:08 +08:00
whyour
91b44914f6
修复环境变量排序
2025-12-26 00:41:32 +08:00