v1.1.9 | Rock-Solid
Deck
A modern, native, privacy-first clipboard OS for macOS
Release Notes v1.1.9
优化 / Improvements
-
安全模式性能大幅优化(CPU / IO)
在加密模式下,对密钥处理、搜索扫描路径、文本分析、链接预取、Blob IO、语义排序等关键路径进行了系统性优化,显著降低 CPU 与 IO 开销。
Applied encryption-mode performance optimizations across key handling, search scan paths, text analysis, link preview prefetching, blob IO, and semantic ranking to reduce CPU/IO overhead. -
Keychain 访问削减(短 TTL 内存缓存)
为对称密钥引入短 TTL 的内存缓存,并在鉴权重置 / 密钥删除时主动清空,减少突发场景下的 Keychain 往返。
SecurityService.swift -
搜索与向量计算优化
- 正则扫描仅选择
id / search_text,再按需拉取完整行 - 安全模式下启用搜索缓存,并在 App / Session 失活时清空
- 向量归一化与查询范数计算统一使用 vDSP,避免重复计算
DeckSQLManager.swift / SemanticSearchService.swift
- 正则扫描仅选择
-
文本分析加速
缓存NSDataDetector并加入快速预检查,在明显不匹配时跳过高成本检测。
SmartTextService.swift -
链接预览与电量感知
低电量模式下跳过图片预取,且预取逻辑迁移至 utility 队列,降低主线程与能耗压力。
ClipboardService.swift -
大文件 IO 与内存峰值控制
- 大 Blob 写入避免使用
.atomic - 读取时优先使用
.mappedIfSafe,减少 IO 与内存抖动
BlobStorage.swift
- 大 Blob 写入避免使用
内存 / 网络 / UI 深度优化
-
内存与生命周期管理
- 缓存引入 LRU + 内存压力清理
- 数据层补齐内存压力降载
- 剪贴板解析与粘贴改为 lazy 读取大数据,避免 OOM
- 链接卡片快照加入总量 / 单类型预算,避免大图瞬时占用
SmartContentCache.swift / DeckDataStore.swift / ClipboardService.swift
-
网络与电量优化
- 多端连接改为指数退避 + jitter
- 新增 sleep / wake 发现管理,已连接时停止扫描
- 编码 / 加密统一移至后台队列,主线程仅保留快路径
MultipeerService.swift / DirectConnectService.swift
-
列表与渲染性能
- History 列表将高频交互状态移出
@State,避免滚动重算 - 缩略图 / 图标缓存 + 后台降采样
- Base64 检测仅执行一次
- 代码高亮异步缓存
- 大文本 / Markdown 预览支持取消与销毁清理
HistoryListView.swift / ClipItemCardView.swift / SmartContentView.swift / LargeTextPreviewView.swift
- History 列表将高频交互状态移出
行为调整 / Behavior Changes
-
已连接时默认停止 Browsing(省电优先)
如需恢复原行为,可通过开关控制。
MultipeerService.swift -
大图片写入策略调整
当已存在fileURL时,不再强制写入 inline bytes,降低瞬时内存峰值。
ClipboardService.swift
并发与 Swift 6 兼容性修复 / Swift 6 Fixes
-
Sendable 与隔离修正
为多种 Payload / Snapshot / Decoded 类型补齐Sendable,避免后台编解码触发主线程隔离错误。
MultipeerService.swift -
日志与工具类型隔离调整
AppLogger标记为@unchecked Sendable- 部分方法显式退出
MainActor隔离,避免后台任务报错
AppLogger.swift / MultipeerService.swift
-
URL 检测彻底去除 NSDataDetector
改为正则匹配并统一去除尾部标点,消除 Swift 6 主线程隔离问题,同时保持快速预检查与去重。
SmartTextService.swift
更新系统 / Updater
-
每日 20:00(北京时间)自动检查更新
定时检查改为系统通知提醒,点击通知进入更新详情。
UpdateCoordinator.swift -
更新提示 UI 升级
- 完整 Markdown 渲染(标题 / 引用 / 列表 / 分割线)
- 保留自然换行并压缩多余空行
- 深色模式下按钮对比度优化
UpdatePromptView.swift
-
更新可靠性增强
- 启动验证等待时间延长(2s → 8s)
- 旧进程等待加入超时与 PID 复用保护
- 下载临时文件先落盘到稳定路径,避免被系统清理
- 新版本启动后自动清理当前版本前缀的旧更新缓存
UpdateService.swift / AppDelegate.swift
修复 / Fixes
-
Finder 多文件复制回归修复
修复从 Finder 复制多文件后,再复制文本并从历史记录粘贴时只剩第一个文件的问题。 -
面板关闭后焦点未恢复
修复复制后关闭面板但焦点未返回之前 App 的问题,并补齐 ⌘W 关闭设置窗口行为。
MainWindowController.swift / SettingsWindowController.swift -
PasteNow 剪贴板数据迁移支持
新增对 PasteNow App 剪贴板数据的迁移兼容。 -
Markdown 预览任务修复
修复parseTask重复声明与类型不匹配问题,并清理无效任务。
LargeTextPreviewView.swift
兼容性与说明 / Compatibility & Notes
-
iCloud / CloudKit entitlement 已移除,避免签名依赖;同步功能代码仍保留但默认关闭。
Deck.entitlements -
本版本包含大量性能、并发与稳定性改进,强烈建议所有用户升级。