Releases: Awuqing/BackupX
V1.3.5 - 上传操作级重试
修复自动备份因 Google Drive 等远端临时故障(502/timeout)连续失败的问题。在 provider.Upload 外层增加操作级重试(最多 3 次,指数退避 10s/40s/90s),每次重试重新打开文件并重建 reader 链。
What's Changed
Full Changelog: v1.3.4...v1.3.5
What's Changed
Full Changelog: v1.3.4...v1.3.5
V1.3.4 - 全后端适配 + Cron 编辑器重设计
新功能
全部 rclone 后端注册为一级存储类型 (#28)
70+ rclone 后端(SFTP、Azure Blob、Dropbox、OneDrive、B2、SMB 等)自动注册为独立存储类型,与 S3/FTP 完全平级。前端统一可搜索下拉框直接选择,选中后自动展示该后端的配置字段。
Cron 编辑器重设计 (#27)
去掉技术感强的五 Tab 编辑器,改为三层交互:预设按钮(一键)→ 自定义选择器(每天/每周/每月/间隔 + 时间选择)→ 手动输入。中文描述改为自然语言。
What's Changed
Full Changelog: v1.3.2...v1.3.4
V1.3.2 - Bug 修复与体验优化
Bug 修复
存储目标关键修复 (#24)
- 修复
oneof白名单仅含 4 种类型,阿里云 OSS/腾讯云 COS/七牛 Kodo/FTP/Rclone 类型的存储目标无法创建 - 修复本地磁盘 TestConnection 报 "directory not found",在 List 前先 Mkdir 确保目录存在
- 前端存储类型选项明确标注 Rclone 支持 SFTP/Azure/Dropbox 等
审计日志与版本号 (#25)
- 所有 handler 审计日志补充有意义的 detail(创建/更新记录类型,删除记录 ID,设置变更记录修改的 key)
- Makefile 的
run和build都通过 ldflags 注入 git 版本号,开发模式不再显示 "dev"
体验优化
Cron 表达式编辑器 (#26)
- 新增 8 个常用预设按钮(每天 02:00、每 6 小时、每周日 03:00、每月 1 日等),一键设置
- 新增中文可读描述(如 "02 时 00 分 执行"),实时显示在表达式下方
What's Changed
- 修复: 存储目标创建/连接测试/类型选择三个关键问题 by @Awuqing in #24
- 修复: 审计日志补充操作详情 + 版本号注入修复 by @Awuqing in #25
- 优化: Cron 表达式编辑器增加预设和中文描述 by @Awuqing in #26
Full Changelog: v1.3.1...v1.3.2
What's Changed
- 修复: 存储目标创建/连接测试/类型选择三个关键问题 by @Awuqing in #24
- 修复: 审计日志补充操作详情 + 版本号注入修复 by @Awuqing in #25
- 优化: Cron 表达式编辑器增加预设和中文描述 by @Awuqing in #26
Full Changelog: v1.3.1...v1.3.2
V1.3.1 - rclone 高级传输特性 + 全后端支持
新特性
在 V1.3.0 rclone 底层替换基础上,解锁高级传输能力并支持全部 70+ 存储后端。
失败自动重试
rclone Pacer 指数退避,默认 10 次底层 HTTP 重试。配置项 backup.retries。
带宽限制
配置文件 backup.bandwidth_limit(如 10M),运行时可通过 Settings 动态调整。
上传实时进度
progressReader 包装器通过 LogHub SSE 推送字节级进度、百分比和传输速率,前端日志流自动展示。
存储空间查询
StorageAbout 可选接口,GetUsage API 增加远端真实 Total/Used/Free(local、Google Drive、WebDAV 支持)。
全 rclone 后端支持
backend/all 引入 70+ 存储后端(SFTP、Azure Blob、Dropbox、OneDrive、B2、SMB 等),新增 rclone 存储类型 + GET /api/storage-targets/rclone/backends API,前端提供可搜索下拉选择器 + 动态配置表单。
兼容性
- 现有 8 种存储类型零改动
- StorageProvider 接口零改动
- 数据库模型零改动
- 生产构建 65MB
What's Changed
Full Changelog: v1.3.0...v1.3.1
What's Changed
Full Changelog: v1.3.0...v1.3.1
V1.3.0 - 存储传输层 rclone 集成
重大重构:底层存储传输迁移至 rclone
BackupX 的差异化价值在管理层(调度、保留策略、多节点、通知、数据库 dump),传输层应站在 rclone 肩膀上。本版本将底层存储从 4 个独立 SDK 自研实现替换为 rclone fs 接口统一驱动。
变更
- 8 种存储后端(本地磁盘、S3、WebDAV、Google Drive、FTP、阿里云 OSS、腾讯云 COS、七牛 Kodo)全部由 rclone 驱动
- 新建
storage/rclone/包(~410 行胶水代码),包含通用 Provider + 8 种配置映射 Factory - 删除 10 个旧 provider 包,净减少约 400 行代码
兼容性
- StorageProvider 接口 — 零改动
- 前端 UI — 零改动
- 数据库模型 — 零改动
- HTTP API — 零改动
- 现有配置和数据完全兼容,无需迁移
收益
- 获得 rclone 工业级传输能力(分片上传、断点续传、自动重试、带宽限制)
- 底层可扩展至 70+ 存储后端
- 代码量减半,直接依赖从 4 个 SDK 收敛为 1 个 rclone
- 保持单二进制部署(生产构建 36MB)
What's Changed
Full Changelog: v1.2.2...v1.3.0
What's Changed
Full Changelog: v1.2.2...v1.3.0
v1.2.2
What's Changed
Full Changelog: V1.2.1...v1.2.2
V1.2.1
What's Changed
- Feat/community enhancements by @Awuqing in #18
- fix: directory picker cannot navigate into subdirectories (#19) by @Awuqing in #20
Full Changelog: V1.2.0...V1.2.1
What's Changed
- Feat/community enhancements by @Awuqing in #18
- fix: directory picker cannot navigate into subdirectories (#19) by @Awuqing in #20
Full Changelog: V1.2.0...V1.2.1
V1.2.0
What's Changed
- docs: 更新 README 文档,添加 SAP HANA 和 FTP 支持说明 by @Awuqing in #10
- feat(saphana): refactor backup from SQL export to BACKUP DATA USING FILE by @Awuqing in #11
- Update SAP HANA tool description in README by @Awuqing in #12
- feat: add Docker deployment support by @Awuqing in #15
- feat: community enhancements — password reset, audit logs, multi-source backup by @Awuqing in #16
- ci: add automated release pipeline with Docker Hub push and China mir… by @Awuqing in #17
Full Changelog: V1.1.0...V1.2.0
V1.1.0
What's Changed
- Bump golang.org/x/crypto from 0.33.0 to 0.45.0 in /server in the go_modules group across 1 directory by @dependabot[bot] in #2
- docs: 为README添加界面截图展示 by @Awuqing in #7
- feat: 新增 SAP HANA 数据库备份支持和 FTP 存储后端 by @Awuqing in #9
New Contributors
- @dependabot[bot] made their first contribution in #2
- @Awuqing made their first contribution in #7
Full Changelog: V1.0.0...V1.1.0