Skip to content

v0.14.0

Latest

Choose a tag to compare

@github-actions github-actions released this 25 Jun 17:29
b60e0b5
TidGi-Desktop v0.14.0-1 发布报告

发布日期:2026-06-26
基于标签:v0.13.1-fix(GitHub Release v0.13.1) → v0.14.0-1
改动范围:102 个文件变更,新增 3,787 行,删除 2,009 行


目录

  1. 新功能:HTML Wiki 工作区编辑
  2. Git 算法重构与本地 IP 展示
  3. 历史记录与深度链接修复
  4. 依赖与工程改进
  5. 杂项

1. 新功能:HTML Wiki 工作区编辑 (#726)

本版本最大的功能更新:支持将单文件 HTML Wiki 作为 TidGi 工作区打开、编辑并保存。

方面 变更
工作区类型 新增 WorkspaceType.html,支持直接打开 .html 单文件 Wiki
策略模式 引入 folderWikiStrategyhtmlWikiStrategy,隔离文件夹 Wiki 与单文件 HTML 的启动、HTTP 路由、Git 作用域逻辑
保存机制 向 HTML 注入 TiddlyFox 风格的 saver bootstrap,并通过下载拦截将保存请求桥接到 IPC,避免触发浏览器下载
HTTP 服务 新增 HtmlWikiService,为 HTML 工作区提供本地 HTTP 服务;新增认证 GET/PUT 端点,方便移动端整文件同步
Git 作用域 Git 操作限定到单个 HTML 文件;GitLog 支持按工作区文件路径过滤
UI/UX 添加工作区添加向导的「打开 HTML 文件」表单、按工作区类型过滤设置项、i18n 中英翻译
测试 新增单元测试与 Cucumber E2E 场景,覆盖 HTML 工作区导入、保存、重开、GitLog 作用域隔离

2. Git 算法重构与本地 IP 展示 (#725)

  • HTTP 服务器改为监听 0.0.0.0,不再依赖网关匹配到的单一 IP
  • 新增 getAllLocalIpV4(),注入所有本地网卡 IP 到 $:/info/url/localIP/ tiddler
  • 工作区设置页展示所有本地 IP(适配多网卡环境)
  • 移除 default-gatewayipaddr.js 依赖
  • 清理 mergeUtilitiesgitServer 中的旧合并算法代码
  • 升级 tw-mobile-sync 插件到 v2.1.6 (此发布最终升级到了 v2.3.3)

3. 历史记录与深度链接修复 (#729)

修复 #728 等历史记录与深度链接相关问题:

  • 恢复工作区配置中缺失的 rememberLastPageVisited 开关;仅开启时显示上次访问 URL 文本框
  • 三层拦截 tidgi:// 深度链接:
    • WebView will-navigate 事件
    • window.open() 处理器
    • 协议处理器回退
  • 支持新 URL 格式 tidgi://<workspaceId>/preferences/<sectionId>,直接打开指定工作区的偏好设置页
  • 修复 protocol.ts 在渲染进程中的安全性:
    • 统一使用 TIDGI_PROTOCOL_SCHEME 常量
    • 渲染进程通过 window.service.context.get('isTest') 获取测试模式状态
  • 恢复测试模式下偏好设置页面一次性渲染的行为

4. 依赖与工程改进

🔼 esbuild 0.28.0 → 0.28.1 (#724)

  • 由 Dependabot 发起的开发依赖升级

5. 杂项

  • 更新 template/wiki 子模块
  • 提交 v0.14.0 版本号

完整 PR 列表

PR 标题 类型
#724 chore(deps-dev): bump esbuild from 0.28.0 to 0.28.1 依赖升级
#725 Refactor/git algorithm 重构
#726 Feat/html edit 新功能
#729 Fix/history 修复

完整对比: v0.13.1-fix...v0.14.0-1

# TidGi-Desktop v0.14.0-1 Release Report

Release Date: 2026-06-26
Tag Range: v0.13.1-fix (GitHub Release v0.13.1) → v0.14.0-1
Scope: 102 files changed, 3,787 insertions, 2,009 deletions


Table of Contents

  1. New Feature: HTML Wiki Workspace Editing
  2. Git Algorithm Refactor & Local IP Display
  3. History & Deep Link Fixes
  4. Dependencies & Tooling
  5. Miscellaneous

1. New Feature: HTML Wiki Workspace Editing (#726)

The largest feature in this release: open, edit, and save single-file HTML wikis as TidGi workspaces.

Area Changes
Workspace Type Added WorkspaceType.html to open .html single-file wikis
Strategy Pattern Introduced folderWikiStrategy and htmlWikiStrategy to isolate startup, HTTP routing, and Git scoping between folder and single-file HTML wikis
Save Mechanism Injects a TiddlyFox-style saver bootstrap into HTML and bridges saves through IPC via download interception, avoiding browser downloads
HTTP Service Added HtmlWikiService providing a local HTTP server for HTML workspaces, plus authenticated GET/PUT endpoints for whole-file mobile sync
Git Scoping Git operations scoped to a single HTML file; GitLog filtered by workspace file path
UI/UX Added "Open HTML file" form in Add Workspace, settings filtered by workspace type, English and Simplified Chinese i18n
Tests Added unit tests and Cucumber E2E scenarios covering HTML workspace import, save, reopen, and GitLog scope isolation

2. Git Algorithm Refactor & Local IP Display (#725)

  • HTTP server now binds to 0.0.0.0 instead of a gateway-matched single IP
  • Added getAllLocalIpV4() and inject all local NIC IPs into $:/info/url/localIP/ tiddlers
  • Workspace settings page displays all local IPs for multi-NIC scenarios
  • Removed default-gateway and ipaddr.js dependencies
  • Cleaned up legacy merge algorithm code in mergeUtilities and gitServer
  • Upgraded tw-mobile-sync plugin to v2.1.6 (and finally v2.3.3 in this release)

3. History & Deep Link Fixes (#729)

Fixes history and deep link issues including #728:

  • Restored the missing rememberLastPageVisited switch in workspace config; last-visited URL field shown only when enabled
  • Three-layer interception for tidgi:// deep links:
    • WebView will-navigate event
    • window.open() handler
    • Protocol handler fallback
  • New URL format: tidgi://<workspaceId>/preferences/<sectionId> opens the preference section of a workspace
  • Fixed protocol.ts renderer safety:
    • Unified use of TIDGI_PROTOCOL_SCHEME constant
    • Renderer obtains test-mode state via window.service.context.get('isTest')
  • Restored test-mode behavior of rendering all preference sections at once

4. Dependencies & Tooling

🔼 esbuild 0.28.0 → 0.28.1 (#724)

  • Dependabot dev-dependency bump

5. Miscellaneous

  • Updated template/wiki submodule
  • Bumped version to v0.14.0

Complete PR List

PR Title Type
#724 chore(deps-dev): bump esbuild from 0.28.0 to 0.28.1 Dependency Upgrade
#725 Refactor/git algorithm Refactor
#726 Feat/html edit Feature
#729 Fix/history Fix

Full Changelog: v0.13.1-fix...v0.14.0-1

Full Changelog: v0.13.1-fix...v0.14.0-1