Skip to content

v1.1.5 | Fortified

Choose a tag to compare

@yuzeguitarist yuzeguitarist released this 05 Jan 05:07
· 320 commits to main since this release

Deck

Deck

A modern, native, privacy-first clipboard OS for macOS


Release Notes v1.1.5

新增 / New

  • 隐私增强:证件号智能识别
    新增对身份证(中国 / 台湾 / 香港)、护照、德国税号、美国 SSN / ITIN 的识别能力;支持隐私开关,检测到后可自动跳过保存。
    Added intelligent detection for ID numbers (CN/TW/HK ID, passport, German tax ID, US SSN/ITIN) with a privacy toggle to skip saving detected content.

  • 临时剪贴板条目(Temporary Items)
    新增“临时”剪贴板项,粘贴一次后自动销毁;可在条目菜单中启用,并提供明确的视觉标识。
    Added temporary clipboard items that self-destruct after a paste, accessible from the item menu with a clear visual indicator.

  • 文本隐写(Steganography)
    支持将文本隐藏进图片(LSB)或文本(零宽字符),并在剪贴板历史中自动检测与解码;
    采用 AES-GCM 加密,可选共享口令,安全存储于 Keychain。
    Added text steganography: hide text in images (LSB) or text (zero-width chars), with auto-detect and decode in clipboard history; encrypted via AES-GCM with optional shared passphrase stored in Keychain.

  • OCR 设置面板
    通用设置中新增 OCR 设置区域,包含识别级别、语言纠错、最大文本长度与语言开关,UI 与现有设置体系保持一致。
    Added an OCR settings section to General Settings, matching the existing design system and exposing recognition level, language correction, max text length, and language toggles.


优化 / Improvements

  • 安全模式行为强化
    安全模式下加密失败将拒绝明文回退,仅触发一次用户可见提示;应用名称纳入加密 / 解密流程并参与迁移,确保隐私一致性。
    Security mode now rejects plaintext fallback on encryption failures with a single user-facing alert; app name is encrypted/decrypted and included in migrations for consistent privacy.

  • 数据库与同步稳定性
    数据库状态与重初始化流程完全序列化至 dbQueue
    iCloud 与局域网同步不再在 detached task 中捕获 ClipboardItem,一致性与稳定性提升。
    DB state and reinitialization are fully serialized on dbQueue; iCloud and LAN group sync no longer capture ClipboardItem in detached tasks.

  • 迁移与大图处理
    大图迁移采用 keyset pagination,仅在完成后提升 schema 版本;
    嵌入式迁移在加密错误时安全失败,不破坏已有数据。
    Large-image migration now uses keyset pagination and only bumps schema version after completion; embedding migration fails safe on encryption errors.

  • 剪贴板与分享流程
    文件粘贴统一使用 NSPasteboardItem + NSFilenamesPboardType
    局域网接收写入通过 dbQueue 执行;
    iCloud 同步可基于 DB id 重建条目。
    File pasteboard writes now use NSPasteboardItem + NSFilenamesPboardType; LAN group receive inserts through dbQueue; iCloud sync can rebuild items from DB ids.

  • 搜索与检测一致性
    FTS 与搜索路径统一读取 dbQueue 状态;
    安全模式下搜索缓存会解密 appName
    修复文件名如 deck-...@1x.png 被误判为邮箱的问题。
    Search paths now read dbQueue state consistently; search cache decrypts appName in security mode; filenames like deck-...@1x.png no longer trigger email detection.

  • 导出与 UI 反馈
    导出成功弹窗显示真实导出数量,而非当前内存页大小。
    Export success dialog now reports the actual exported count instead of the in-memory page size.

  • 隐写体验改进
    隐写密钥 UI 自适应窄布局,确保保存 / 清除按钮始终可见;
    自动解码发生在“仅聚焦文本”过滤之前;
    新增“存储并复制(store & copy)”流程。
    Stego key UI now adapts to narrow layouts; auto-decode happens before focus-text-only filtering; added a new “store & copy” flow for stego outputs.


修复 / Fixes

  • 修复零宽字符隐写解码稳定性问题。
    Fixed zero-width text decoding reliability issues.

  • 修复透明 PNG 在图片隐写中的处理问题。
    Fixed transparent PNG handling in image steganography.

  • 修复本地化表冲突,统一整合至 Localizable.xcstrings
    Fixed localization table conflicts by consolidating into Localizable.xcstrings.

  • 修复 Smart Rules 中的正则处理、忽略逻辑、标签创建与分享 URL 编码问题。
    Fixed regex handling, ignore behavior, tag creation, and share URL encoding in Smart Rules.

  • 修复 OCR 回调未保证主线程完成的问题。
    Ensured OCR completion handlers always return on the main thread.


技术变更 / Technical Changelog

  • ScriptPluginService.swift
    新增基于 hash 的网络授权;
    改进超时与中断处理;
    执行逻辑移出主线程。
    Added hash-based network authorization, safer timeout/interrupt handling, and moved execution off the main thread.

  • UserDefaultsManager.swift
    新增并迁移网络插件授权与 OCR 设置持久化。
    Added persistence and migration for network plugin authorizations and OCR settings.

  • DirectConnectService.swift
    预共享密钥(PSK)迁移至 Keychain;
    强化缓冲区解析与连接处理。
    Moved PSKs to Keychain, hardened buffer parsing, and improved connection handling.

  • PasteQueueHUDController.swift
    队列 HUD 标签由 emoji 改为 ASCII 文本。
    Replaced emoji labels with ASCII tags in the paste queue HUD.


本地化 / Localization

  • 新增隐私、隐写与告警相关的英文 / 德文翻译。
    Added English and German localizations for new privacy, stego, and alert UI.

  • 新增队列模式帮助文案与操作标签的 en / de 翻译。
    Added en/de localizations for queue-mode help text and action labels.

  • 清理 17 个未使用 key(旧占位符、废弃 %lld 变体等),消除 “References to this key…” 警告。
    Removed 17 unused keys to clear “References to this key…” warnings.

  • 补全缺失翻译,标记 zh-Hans 的版本 / 导入确认文案为已翻译状态。
    Filled missing translations and marked zh-Hans entries for version/import prompts as translated.


兼容性与行为说明 / Compatibility & Behavior Notes

  • 本次更新不包含数据库结构破坏性变更,可直接覆盖升级。
    This release introduces no breaking database schema changes and supports in-place upgrades.

  • 所有隐私处理、检测与加密均在本地完成。
    All privacy processing, detection, and encryption are performed locally.


升级建议 / Upgrade Notes

  • 推荐所有用户升级,以获得更强的隐私保障、更稳定的同步与迁移流程,以及全新的临时剪贴板与隐写能力。
    All users are recommended to upgrade for stronger privacy guarantees, more robust sync and migration, and the new temporary and steganography features.