Skip to content

Bookdock v0.4.3

Choose a tag to compare

@github-actions github-actions released this 04 Oct 09:01
· 74 commits to main since this release

[0.4.3] - 2026-10-04

Highlights

  • Old library storage cleaned up behind the scenes: books, progress, and notes stay as-is, with a one-time automatic carry-over first.
  • Rules become importable: text replacements and TOC presets support JSON import/export plus batch delete.
  • Book details become editable in place: fix one field at a time, restore values from the source file, and change the cover without opening the large edit dialog.
  • Dangerous actions ask for the name: deleting or transferring a library, and transferring the instance, now require typing the exact name.
  • Notifications reworked: queued past three, repeats merged, and toasts clear of bottom bars; dialog save errors now show inline.
  • Library navigation rewritten: sidebar rebuilt around the current library, plus a searchable right-side directory with batch actions; shared categories go two levels with subtree counts.

Added

  • JSON import/export for replacement rules and TOC presets, with a preview step, duplicate-name suggestions, and disabled-by-default imports for review.
  • Batch delete for both rule lists, with a selected-count and select-all.
  • Drag-to-reorder for TOC presets; the order you see is the order applied.
  • Single-field edit in book details: right-click a row (title, author, series, publisher, date, language, ISBN, subjects, synopsis) to fix just that field.
  • Per-field and whole-form "restore from source", showing whether each value came from inside the file, from the file name, or from the shared version.
  • Inline cover editing in book details: right-click the cover to replace or remove it.
  • GIF avatars, with still images used where animation doesn't fit (e.g. share cards) and clear errors for oversized or broken GIFs.
  • Currently-reading rows show an inline progress bar with percentage.
  • Directory view for shelves, categories and tags: grouped browsing, independent search, the same select mode, and manager batch actions (pin, hide, delete) with counts.
  • Two-level shared categories with flat personal shelves: both levels hold works, parent rows show subtree counts, and the view menu offers an include-subcategories switch (on by default).
  • Category plus one tag can combine as filters; publishing uses the two-level target picker, and rename-plus-move saves atomically.

Changed

  • Replacement rules are now listed in the order they take effect, with position numbers; grouping is display-only.
  • Library deletion, library transfer, and instance transfer require typing the exact name, stay open and retryable on failure, and no longer confuse libraries when switching.
  • Read-status and shelf labels in book details: click to filter, right-click to change the value.
  • Sidebar rewritten around the current library: fixed brand, library switcher and all-books on top, shelves-or-tags panels in the middle with a directory shortcut, stats/settings/account at the bottom; panel state, expansion and scroll position are kept per library.
  • Home gains a context bar listing only individually removable extra filters (keyword, format, read status, author, series).
  • Toasts show at most three at once with the rest queuing; identical repeats update in place instead of stacking, and hover or keyboard focus pauses each independently.
  • Toasts float above bottom action bars (batch bar, uploads, dialog footers, reader controls) and clear when switching accounts.
  • Book-detail and append dialogs report save failures inline, flagging partial saves, instead of toasting.
  • Toast copy names the outcome across more actions: catalog visibility per work and version, trash-empty counts, already-in-sync pushes, restored rule counts, pinning, version deletion, annotation batch delete, font uploads and settings sync.
  • Scrollbars are thin and theme-aware app-wide, including the reader.
  • Placeholder covers redrawn with spine lighting and a matte sheen, retuned dark-mode palettes, and a compact card size for list rows.

Fixed

  • Restoring default AI prompts no longer brings your old edits back afterward.
  • Reading stats no longer double-count the same version across libraries and handle deleted books gracefully.
  • Class-based dark mode (.dark) works again.

Upgrade notes

  • Back up the complete DATA_DIR before upgrading. Migrations 0038-0039 apply automatically.
  • The old-storage cleanup cannot be undone in place: to go back, restore the database plus files/ snapshot together.

中文

[0.4.3] - 2026-10-04

主要更新

  • 旧书库存储在后台清理:书籍、进度、笔记原样保留,先自动搬运一次,无需操作。
  • 规则可导入导出:替换规则与目录预设支持 JSON 导入导出与批量删除。
  • 书籍详情可就地改:一次只改一个字段,可从来源恢复,封面不用进大编辑框。
  • 高危操作需输入名称:删库、转让书库、转让实例需输入准确名称。
  • 通知重做:超过三条排队,重复合并,不再遮挡底部操作栏;弹窗保存失败改为行内报错。
  • 书库导航重写:侧栏围绕当前书库重建,右侧目录支持搜索与批量操作;共享分类支持两级并显示子树数量。

新增

  • 两类规则的 JSON 导入导出:导入前预览,重名自动建议新名,导入项默认禁用,确认后再启用。
  • 两类规则的批量删除:支持全选与已选计数。
  • 目录预设支持拖拽排序,所见顺序即生效顺序。
  • 详情单字段快编:右键标题、作者、丛书、出版社、日期、语言、ISBN、主题、简介等行,只改该字段。
  • 逐字段与整单“从来源恢复”,恢复前说明值来自文件内、文件名推断还是共享版本。
  • 详情封面内联编辑:右键封面直接换图/删图。
  • GIF 头像:动图不合适的地方(如分享卡)用静态图;超大或损坏的 GIF 明确报错。
  • 在读行显示带百分比的行内进度条。
  • 书架/分类/标签的右侧目录:分组浏览、独立搜索、同样的选择模式,管理员可批量置顶/隐藏/删除并显示数量。
  • 共享分类支持两级、私人书架保持平级:两级都可放作品,父级显示子树数量,视图菜单可开关“包含子分类”(默认开)。
  • 分类可与一个标签组合筛选;发布改用两级目标选择器,改名加移动一次原子保存。

变更

  • 替换规则按生效顺序展示并带序号,分组只做展示标签。
  • 删库、转让书库、转让实例需输入准确名称;失败留在框内可重试;中途切换书库不会串确认框。
  • 详情里的阅读状态与书架标签:左键筛选,右键改值。
  • 侧栏围绕当前书库重写:顶部固定品牌、书库切换与全部书籍,中部书架或分类面板加目录入口,底部统计/设置/账户;面板状态、展开与滚动位置按书库记住。
  • 首页新增条件栏,只列出可单独移除的附加筛选(关键词、格式、阅读状态、作者、系列)。
  • 通知最多同时显示三条,多余排队;重复通知原位更新不再堆叠,悬停或键盘聚焦可暂停。
  • 通知浮于底部操作栏之上(批量操作栏、上传面板、弹窗底部、阅读器控件),切换账号清空通知。
  • 书籍详情与追写弹窗的保存失败改为行内报错,部分保存明确标出,不再弹通知。
  • 通知文案点名结果:目录显隐、回收站数量、已一致推送、补回规则数,以及置顶、版本删除、标注批量删除、字体上传、设置同步。
  • 滚动条全应用变细并跟随主题,阅读器也一致。
  • 占位封面重绘(书脊高光、哑光质感),深色配色重调,列表行用紧凑卡片尺寸。

修复

  • 恢复默认 AI 快捷指令后,不再把旧草稿写回去。
  • 阅读统计不再跨馆重复计数,遇到已删书也能正常显示。
  • .dark 深色切换恢复生效。

升级说明

  • 升级前请完整备份 DATA_DIR。迁移 0038–0039 自动执行。
  • 旧存储清理不可原地撤销:回退需把数据库与 files/ 快照一起恢复。