whyour
e8b6a30bd9
feat: ship verified platform upgrades with channel bundle releases
...
Package production dependencies per architecture for online and offline upgrades.
Validate dependencies and isolated backend startup before readiness, repair once
when permitted, and preserve service/data through failed preparation or rollback.
Publish release bundles with master images and expose an opt-in develop build
sharing the development index across Alpine and Debian images.
2026-10-18 22:19:49 +08:00
whyour
6532775a25
feat(python): support isolated venv environments for native deployment
2026-10-14 10:19:50 +08:00
whyour
db88d037db
fix(python): integrate latest develop and support older venv pip
2026-10-13 02:20:59 +08:00
whyour
a0c09046c6
fix(deps): keep security updates within compatible dependency lines
2026-10-13 02:17:55 +08:00
dependabot[bot]
5a9e53c771
chore(deps): bump the npm_and_yarn group across 1 directory with 2 updates
...
Bumps the npm_and_yarn group with 2 updates in the / directory: [moment](https://github.com/moment/moment ) and [brace-expansion](https://github.com/juliangruber/brace-expansion ).
Updates `moment` from 2.30.1 to 2.31.0
- [Release notes](https://github.com/moment/moment/releases )
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md )
- [Commits](https://github.com/moment/moment/compare/2.30.1...2.31.0 )
Updates `brace-expansion` from 1.1.12 to 1.1.21
- [Release notes](https://github.com/juliangruber/brace-expansion/releases )
- [Commits](https://github.com/juliangruber/brace-expansion/compare/v1.1.12...v1.1.21 )
---
updated-dependencies:
- dependency-name: moment
dependency-version: 2.31.0
dependency-type: direct:development
dependency-group: npm_and_yarn
- dependency-name: brace-expansion
dependency-version: 1.1.21
dependency-type: indirect
dependency-group: npm_and_yarn
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-10-12 17:28:13 +00:00
3c61e933a1
chore(deps): bump the npm_and_yarn group across 1 directory with 8 updates ( #3075 )
...
* chore(deps): bump the npm_and_yarn group across 1 directory with 8 updates
Bumps the npm_and_yarn group with 8 updates in the / directory:
| Package | From | To |
| --- | --- | --- |
| [body-parser](https://github.com/expressjs/body-parser ) | `1.20.3` | `1.20.6` |
| [http-proxy-middleware](https://github.com/chimurai/http-proxy-middleware ) | `3.0.3` | `3.0.7` |
| [js-yaml](https://github.com/nodeca/js-yaml ) | `4.1.0` | `4.3.2` |
| [multer](https://github.com/expressjs/multer ) | `2.3.0` | `2.4.0` |
| [nodemailer](https://github.com/nodemailer/nodemailer ) | `8.0.1` | `10.0.9` |
| [undici](https://github.com/nodejs/undici ) | `7.9.0` | `7.29.1` |
| [axios](https://github.com/axios/axios ) | `1.7.8` | `1.20.0` |
| [brace-expansion](https://github.com/juliangruber/brace-expansion ) | `1.1.12` | `1.1.21` |
Updates `body-parser` from 1.20.3 to 1.20.6
- [Release notes](https://github.com/expressjs/body-parser/releases )
- [Changelog](https://github.com/expressjs/body-parser/blob/master/HISTORY.md )
- [Commits](https://github.com/expressjs/body-parser/compare/1.20.3...1.20.6 )
Updates `http-proxy-middleware` from 3.0.3 to 3.0.7
- [Release notes](https://github.com/chimurai/http-proxy-middleware/releases )
- [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v3.0.7/CHANGELOG.md )
- [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v3.0.3...v3.0.7 )
Updates `js-yaml` from 4.1.0 to 4.3.2
- [Changelog](https://github.com/nodeca/js-yaml/blob/4.3.2/CHANGELOG.md )
- [Commits](https://github.com/nodeca/js-yaml/compare/4.1.0...4.3.2 )
Updates `multer` from 2.3.0 to 2.4.0
- [Release notes](https://github.com/expressjs/multer/releases )
- [Changelog](https://github.com/expressjs/multer/blob/main/CHANGELOG.md )
- [Commits](https://github.com/expressjs/multer/compare/v2.3.0...v2.4.0 )
Updates `nodemailer` from 8.0.1 to 10.0.9
- [Release notes](https://github.com/nodemailer/nodemailer/releases )
- [Changelog](https://github.com/nodemailer/nodemailer/blob/master/CHANGELOG.md )
- [Commits](https://github.com/nodemailer/nodemailer/compare/v8.0.1...v10.0.9 )
Updates `undici` from 7.9.0 to 7.29.1
- [Release notes](https://github.com/nodejs/undici/releases )
- [Commits](https://github.com/nodejs/undici/compare/v7.9.0...v7.29.1 )
Updates `axios` from 1.7.8 to 1.20.0
- [Release notes](https://github.com/axios/axios/releases )
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md )
- [Commits](https://github.com/axios/axios/compare/v1.7.8...v1.20.0 )
Updates `brace-expansion` from 1.1.12 to 1.1.21
- [Release notes](https://github.com/juliangruber/brace-expansion/releases )
- [Commits](https://github.com/juliangruber/brace-expansion/compare/v1.1.12...v1.1.21 )
---
updated-dependencies:
- dependency-name: axios
dependency-version: 1.18.0
dependency-type: direct:development
- dependency-name: body-parser
dependency-version: 1.20.6
dependency-type: direct:production
- dependency-name: brace-expansion
dependency-version: 1.1.21
dependency-type: indirect
- dependency-name: http-proxy-middleware
dependency-version: 3.0.7
dependency-type: direct:production
- dependency-name: js-yaml
dependency-version: 4.3.2
dependency-type: direct:production
- dependency-name: multer
dependency-version: 2.3.0
dependency-type: direct:production
- dependency-name: nodemailer
dependency-version: 9.1.1
dependency-type: direct:production
- dependency-name: undici
dependency-version: 7.29.0
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
* fix(ci): verify the updated multer runtime version
---------
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: whyour <imwhyour@gmail.com >
2026-10-13 01:06:29 +08:00
whyour
81a60254a2
fix(python): share safe startup and honor explicit virtual environments
2026-10-12 00:23:20 +08:00
whyour
331f4f9138
Prepare Qinglong 2.23.0 and CLI 0.1.2 release ( #3090 )
...
* fix: patch reachable release-blocking dependencies
* docs: keep release risk notes in PR description
* chore: prepare Qinglong 2.23.0 and CLI 0.1.2 release metadata
2026-10-11 12:24:50 +08:00
whyour
b06cb72334
fix: apply minimal production dependency security patches
2026-10-11 02:09: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
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
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
5f6049d80a
fix: secure file routes and dependency management
2026-08-29 19:10:30 +08:00
whyour
0bb41ebe96
新版本 v2.21.0
2026-07-25 13:28:44 +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
jiandanc
0af546cd1d
feat: 支持 Python venv 隔离环境,适配 Node.js 原生部署
...
## 背景
原方案使用系统 Python + pip --prefix 安装依赖到 data/dep_cache/python3,
系统 Python 环境被污染,且无法隔离不同项目的依赖。
## 改动内容
### 核心:Python venv 支持
- shell/start.sh: 使用 python3 -m venv 创建虚拟环境,替代 --prefix 模式
- 从 .env 文件读取 PYTHON_VENV_DIR 配置
- 首次启动自动创建 .venv,已存在则跳过
- 仅将 .venv/bin 加入 PATH 优先级,不设置 PYTHONHOME/PYTHONPATH(避免破坏 venv 机制)
- .env 不再强制覆盖,仅首次从 .env.example 复制
- 启动时自动修复 task/ql 软链接指向当前部署目录
### 后端适配
- back/config/const.ts: 新增 PYTHON_VENV_DIR 常量
- back/config/util.ts: venv 模式下跳过 pip --prefix,直接使用 venv 的 pip3
### 开发模式支持
- shell/dev-env.sh: pnpm start 时自动 source,将 .venv/bin 加入 PATH
- package.json: start:back 加入 source dev-env.sh
### 新增文件
- shell/start-simplify.sh: 精简版启动脚本(跳过系统依赖安装,适用于已预装环境的服务器)
- README-NODE.md: Node.js 原生部署完整文档
### 配置
- .env.example: 新增 PYTHON_VENV_DIR=./.venv 配置项(默认注释状态)
## 兼容性
- Docker 模式不受影响(使用独立的 docker-entrypoint.sh,走原有 --prefix 逻辑)
- 未配置 PYTHON_VENV_DIR 时默认使用系统 Python(向后兼容)
2026-06-07 21:03:51 +08:00
whyour
e8ac195c96
增加任务统计
2026-06-01 18:20:18 +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
7a8917f8e4
Fix CodeMirror "multiple instances of @codemirror/state" crash on page navigation ( #2969 )
...
* Initial plan
* Fix CodeMirror multiple instances error by pinning to single versions
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-05-23 20:48:10 +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
58f5fe763f
Add cron task management to QLAPI ( #2826 )
...
* Initial plan
* Add cron management capabilities to QLAPI
- Added GetCrons, GetCronById, EnableCrons, DisableCrons, RunCrons to proto
- Implemented gRPC handlers for new cron operations
- Updated client.js to expose new methods to scripts
- Updated sample to demonstrate new API usage
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Add documentation for QLAPI cron management features
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Specify pnpm version 8.3.1 in package.json
Add packageManager field to enforce pnpm@8.3.1 as requested
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Revert pnpm-lock.yaml to original state
The lockfile was inadvertently updated during dependency installation
for proto generation. Reverting to maintain consistency with pnpm@8.3.1.
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Regenerate proto files with correct tool versions
Regenerated using protoc v3.17.3 and protoc-gen-ts_proto v2.6.1
to match the original project configuration.
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 >
2025-11-14 23:20:56 +08:00
whyour
1deb264913
升级 cron-parser
2025-11-11 00:37:03 +08:00
whyour
18f27a9a69
移除 nginx
2025-11-02 19:29:59 +08:00
whyour
07951964a1
修复模块注入
2025-10-26 22:32:03 +08:00
涛之雨
e4f733320d
Enable debug backend ( #2776 )
2025-08-19 11:13:33 +08:00
whyour
c3072e7712
got 替换为 uudici
2025-05-15 01:01:39 +08:00
whyour
d871585eee
修改服务启动逻辑
2025-05-07 09:30:00 +08:00
whyour
6df651aa63
更新 ts-proto 版本
2025-01-29 23:29:45 +08:00
whyour
f1ca2134b7
移除 nedb 和 sentry
2025-01-14 00:24:25 +08:00
whyour
647ed3b66c
QLAPI 支持操作环境变量和系统通知
2025-01-11 01:59:46 +08:00
whyour
05f8bbd26e
写入文件增加文件锁,避免竞争条件引起文件内容异常
2025-01-04 01:22:29 +08:00
whyour
678e3e2dc6
修改认证信息存储方式,避免认证信息异常
2024-12-30 14:23:04 +08:00
whyour
ab27a4c908
更新 node 依赖
2024-12-12 00:26:11 +08:00
whyour
20c6a1e8bf
移除任务执行前后的脚本参数
2024-10-26 14:12:58 +08:00
whyour
f4cb3eacf8
系统日志增加时间筛选和清空
2024-08-22 00:47:24 +08:00
whyour
8218d4ba94
修复 Dockerfile
2024-08-18 17:26:33 +08:00
whyour
af5de8372c
修复 shell 变量初始化检查,更新 sentry 版本
2024-08-18 14:19:45 +08:00
whyour
a2812d9c03
移除 ts-node dependence
2024-07-13 00:49:23 +08:00
whyour
e191aca41f
修改环境变量加载逻辑
2024-07-10 23:29:44 +08:00
whyour
07541569c5
修复定时任务 real_time 参数,升级 protobufjs
2024-06-02 11:08:35 +08:00
whyour
417f91207f
更新 tsx 版本
2024-04-26 20:58:48 +08:00
whyour
3f54048127
修改压缩解压文件命令
2024-03-22 22:23:49 +08:00
whyour
68ad01e0e8
增加 update 服务
2024-03-10 22:07:06 +08:00
whyour
49c441117a
修改 sqlite 版本
2024-01-28 20:22:55 +08:00
whyour
b79d10b452
修改获取登录 ip 和 ip 地址方式
2024-01-08 19:05:12 +08:00
whyour
3dc3ece993
修改日志脚本文件大小展示
2024-01-07 16:54:05 +08:00