Skip to content

Releases: wpy030414/erolib

EroLib v26.8.25+1650

Choose a tag to compare

@github-actions github-actions released this 25 Aug 08:46
f0ab027

feat: F11 全屏切换 + 版本号更新至 26.8.25+1650

EroLib v26.8.23+2120

Choose a tag to compare

@github-actions github-actions released this 23 Aug 14:57
16381e1

docs: 同步 EPUB/PDF 导入导出、单页删除、智能重下的文档

  • DECISIONS 新增 D-019(三格式导出 + 元信息 round-trip)、
    D-020(按实际页数对比的智能重新下载)
  • ARCHITECTURE 命令数 68→70(book 14 / tasks 13),services 树
    补 export.rs / import.rs,依赖表补 printpdf / lopdf,i18n 键数
  • specs module-library 补导出/导入读回/单页删除契约与约束;
    module-task 补 task_redownload 判定矩阵与 source_url 约束;
    module-reader / module-home 补删页菜单与 BookExportDialog
  • PRD / README / AGENTS 功能清单、边界表与常见陷阱同步

EroLib v26.8.16+1900

Choose a tag to compare

@github-actions github-actions released this 16 Aug 11:21
8ba30ec

chore: 构建脚本切换 pnpm + 版本升级 26.8.16+1900

  • package.json 精简 scripts,移除冗余 alias(dev/build 直接指向 tauri)
  • tauri.conf.json beforeDevCommand/beforeBuildCommand 改用 pnpm exec vite
  • 移除 pnpm-workspace.yaml 中 esbuild 构建白名单
  • 版本号 bump 至 26.8.16+1900

EroLib v26.8.14+0015

Choose a tag to compare

@github-actions github-actions released this 15 Aug 03:25
26.8.14+0015
e4d1f97

refactor: 代码审计清理与包体积优化

死代码清理

  • 提取 BookMetaDialog 组件(消除 Home/Library 重复代码)
  • 提取 useBookMenu composable(统一菜单状态管理)
  • 移除未使用的函数、导入、CSS 类和设计令牌
  • 统一 store 模式(tasks.ts 改用 defineStore)
  • 修复 async/await 不一致问题
  • 用命名常量替换魔法数字(Reader.vue)

包体积优化

  • 添加 manualChunks 实现代码分割(6个供应商包)
  • 路由全部改为懒加载
  • Material Web 组件按需注册(从集中注册改为每视图独立注册)
  • 首次加载体积从 620 kB 降至 ~180 kB

构建优化

  • Vite 8 配置优化(manualChunks 函数式配置)
  • 移除 16 个未使用的 md3-* 排版类
  • 移除 11 个未使用的工具类
  • 移除 16 个未使用的设计令牌

EroLib v26.7.28+0110

Choose a tag to compare

@github-actions github-actions released this 28 Jul 06:33

fix: Windows EHentai/Pixiv 登录窗口白屏 & cookie 抓取

EHentai/Pixiv 在 Windows 上登录窗口白屏的根本原因及修复:

  1. capabilities/default.json: 添加 "ehentai-login" 到 Tauri v2 权限列表
  2. main.rs: WKWebView warmup 窗口用 #[cfg(macos)] 保护,
    避免在 Windows 上从后台线程创建 1x1 WebView2 破坏环境
  3. ehentai.rs: 轮询循环跳过整个 forums.e-hentai.org 域名
    (原 path.contains("act=Login") 只检查路径不查 query)
  4. cookies.rs: capture_all_cookies 优先使用 Tauri cookies() API
    替代 JS eval 重定向 (读不到 HttpOnly),包含 HttpOnly cookie
  5. 修复所有编译警告 (unused import, unused mut, dead code)

EroLib v26.7.20+2050

Choose a tag to compare

@github-actions github-actions released this 20 Jul 13:03
2516db5

feat: 标签数据库转译(1000词条+模糊匹配) + 软件自动更新 + vite 8

  • 标签转译层:tag_translations 对照表(1014连续词条/3850形式) + 按应用语言SQL直出
    (chip/详情/RSS/OPDS 统一,未命中保持原名) + SIMILARITY UDF 编辑距离模糊匹配
    (精确优先+最优唯一,物化tag_resolved避开查询热路径,种子指纹自动刷新派生缓存)
  • 软件更新:check→download→install,读releases Atom feed + aria2下载 + 启动安装器
    (update.rs + UpdateDialog + Settings更新区)
  • vite 5→8(plugin-vue 6.0.8/vitest 4,minify→oxc,移除tsconfig baseUrl)

Co-Authored-By: Claude Code noreply@anthropic.com

EroLib v26.7.20+1235

Choose a tag to compare

@github-actions github-actions released this 20 Jul 05:04
4e8fdd1

feat: 阅读器右键菜单 + 自定义主题 + 单页导出 + 批量重试 + ASMHentai兼容修复

  • 阅读器右键新增「设为主题」:HCT色彩提取 → 自定义MD3种子色 + 全分辨率图背景叠加覆盖(App.vue + theme store);上限3个FIFO淘汰
  • 阅读器右键新增「保存图片」:save_book_page 命令直读CB7归档逐页写出,走系统保存对话框
  • 主题引擎重构:applyArgbTheme(ARGB int) 直出token支持custom:种子;非reader页半透明背景图叠加+mask渐变
  • ASMHentai CDN路径兼容:load_dir丢失时回退last3digits拼接 images.asmhentai.com/{dir}/{gid}/{page}.jpg
  • macOS代理检测修复:忽略scutil HTTPEnable标记,Clash Verge关闭「设为系统代理」时仍能检测到daemon端口
  • 任务系统新增「重试全部」FAB批量retry+pause→resume;右键日志区复制到剪贴板(tauri-plugin-clipboard-manager前后端)
  • 三语i18n补全上述功能翻译,中文zh.ts去猫言猫语(喵~/喵!等句尾语气词移除)
  • 新增依赖:tauri-plugin-clipboard-manager前后端;api.ts NiceCat WebView注释更正为纯HTTP
  • 版本号 26.7.19+2330 → 26.7.20+1235

Co-Authored-By: Claude Code noreply@anthropic.com

EroLib v26.7.19+2330

Choose a tag to compare

@github-actions github-actions released this 19 Jul 15:59
bac4047

feat: 阅读列表重设计 + 分批下载 + 统一任务日志

阅读列表 (CollectionDialog):

  • 右键列表名直接内联重命名,input 与文字同款外观仅光标提示
  • 重命名期间底部 + 变为红色垃圾桶按钮,点击 md-dialog 确认删除
  • 重命名时列表加半透明遮罩,当前行浮于上方
  • 创建列表自动去重命名 (新的阅读列表 1/2/...),上限 100
  • 选中列表后书库标题联动显示列表名
  • 创建/删除列表有 toast 提示
  • 全部行右侧显示置顶图标,用户列表仅高亮无对号

首页 (Home.vue):

  • 删除书籍后重新拉取 12 本补位,新书立刻载入缩略图
  • 删除成功/失败有 toast 提示

下载系统 (task_manager.rs):

  • download_pages_concurrent 改为全量 JoinSet 一次性 spawn,aria2/reqwest
    自动从 8 并发信号量消费
  • 每页完成一条日志: 📥 第 i/n 页 完成
  • 四个模块下载日志完全统一

统一任务日志 (task_manager.rs):

  • 📋 创建任务 / 🔍 抓取 / ⬇ 开始下载 / 📥 页级进度
  • ❌ 页错误 / 📦 打包 / 📚 注册 / ✅ 完成
  • ⏸ 暂停 / ▶ 恢复 / ⏹ 取消 / 🔄 重试

标签写入修复:

  • 修复残留触发器 trg_tags_type_to_tag_type 引用不存在的 NEW.type
    导致每次 INSERT INTO tags 报错回滚 (no such column: NEW.type)
  • schema.sql 添加 DROP TRIGGER IF EXISTS 防御
  • upsert_tag_and_link 错误处理改为 map_err 不再吞错
  • 从 ComicInfo.xml 回填所有旧书标签

AGENTS.md 更新:

  • SQLite collections 表从预留更新为阅读列表说明
  • Pinia Store 新增 collections store
  • 书库节新增阅读列表管理说明
  • 首页节补充删除后补位 + 缩略图载入 + toast
  • 下载后端统一描述分批并发下载

README.md 更新:

  • 本地书库特性新增阅读列表
  • 路线图移除已完成的收藏夹管理
  • 截图更新 (首页替换书库、保留阅读器/Pixiv/EHentai/任务/设置)

Co-Authored-By: Claude Code noreply@anthropic.com

EroLib v26.7.15+1500

Choose a tag to compare

@github-actions github-actions released this 15 Jul 07:44
18d3d94

feat: NiceCat 下载源 + 首页 + RSS/OPDS 直出图片 + aria2 自动代理

NiceCat 下载源(新增):

  • 浏览式(stores/nicecat-browse.ts / views/NiceCat.vue):首页话题板块横向滚动
    • 关键词搜索(两阶段:关键词→最优标签→结果页,searchId 游标翻页)。
  • 下载(services/nicecat.rs):全程纯 HTTP,无 WebView——RC4 动态令牌直连
    gxxa.fun API(ComicInfo/info + ComicOrder/getComicOrder,当日 dateKey 破解),
    8 路并发 reqwest 下 vurm.fun CDN,打包 cb7。TaskSource::Nicecat / NicecatGallery。

首页(新增):

  • views/Home.vue:本周阅读时长 Hero + 库封面旋转墙(WallCover 21 本)+ 最近阅读书架。
  • components/WallCover.vue / FeedLoading.vue。

阅读时长追踪:

  • reading_sessions 表(schema.sql)+ open_book / record_reading / get_weekly_reading_ms /
    list_recent_books / get_recent_favorite_book(commands/book.rs / library.rs / models)。
  • Reader.vue 计时上报(仅前台累计)。

RSS/OPDS 直出图片与富摘要:

  • 新增 /pages/:id/:n(单页图,复用 cb7 归档缓存 + guess_image_mime)与
    /article/:id(整本 HTML 画廊)路由,注册进 OPDS + RSS router;ServerState 重构
    为共享已配置 service。
  • services/feed.rs 抽出共享 book_metadata_blurb(作者|页数·格式·大小|标签|来源
    |发布日期|阅读记录),RSS description/content:encoded 与 OPDS summary 复用;标题 EroLib。

修复阅读时长统计(曾恒为 0):

  • open_book 改 INSERT … RETURNING id:last_insert_rowid() 在 sqlx 连接池跨连接会返回
    错误 session id,record_reading 永不命中,duration_ms 恒 0。
  • Reader 改上报本次会话增量(baseline 快照,非历史累计)。
  • user_version=1 一次性清零被污染的历史 duration_ms。

aria2 自动捕捉 HTTP 代理:

  • services/proxy.rs:env(ALL_PROXY/HTTPS_PROXY/HTTP_PROXY) + macOS scutil --proxy,
    60s 缓存,跳过 aria2 不支持的 SOCKS;add_uri 注入 all-proxy,翻墙下载零配置。

其他:

  • DB 文件名 manga-manager.db → erolib.db(启动时旧文件含 -wal/-shm 原子重命名迁移)。
  • AGENTS.md / README.md 文档同步;i18n(zh/en/ja)、路由、AppShell、capabilities 与依赖更新。

Co-Authored-By: Claude Code noreply@anthropic.com

EroLib v26.7.12+1520

Choose a tag to compare

@github-actions github-actions released this 12 Jul 08:00
b109bce

feat: ASMHentai 浏览式下载 + CI 自动发布 + BrandIcon 修复

ASMHentai (asmhentai.com) 浏览板块

  • 新增 AhentaiClient scraper:首页/搜索列表解析、详情页元信息抓取、
    tag 名末尾计数后缀清洗 (strip_tag_count)
  • 新增 AhentaiBrowseStore + AHentai.vue 浏览视图:搜索、48条/页无限滚动、
    IndexedDB 封面缓存、卡片两态(无页码badge/无作者副标题)
  • 新增 process_ahentai 下载管线:JoinSet+Semaphore(8) 并发、
    add_bytes+set_speed 实时追踪、下载时补全标签/作者/页数
  • 侧边栏自定义 AHentai favicon SVG 图标 (BrandIcon)

BrandIcon inset 修复

  • BrandIcon 新增 brand prop,仅品牌图标做 75% scale inset,
    MDI 原生图标不受影响
  • AppShell Pixiv/EHentai/AHentai 标记 brand: true;
    Settings 哔哩哔哩图标同步标记

CI/CD

  • 新增 release job:等待全平台构建完成 → 读 tauri.conf.json 版本号 →
    以 "EroLib {version}" 为标题、commit message 为正文自动发布 GitHub Release
  • actions/checkout@v5、setup-node@v5、upload-artifact@v6、
    download-artifact@v7 全链路 Node 24 原生,消除弃用警告
  • Windows 构建后自動去除 MSI 文件名 _en-US 后缀
  • bundle.targets: all → [dmg, msi],仅构建需要的包格式

其他

  • Windows release 构建 #![windows_subsystem = "windows"] 隐藏后台命令行窗口
  • cookies.rs 消除 3 个编译警告(非 macOS stub 模块 + webview 变量)
  • SourceCard 页码 badge 为 0 时隐藏
  • 版本号 26.7.12+0240 → 26.7.12+1520
  • README/AGENTS 文档更新

Co-Authored-By: Claude Code noreply@anthropic.com