What changed,
and what it fixed.
Pinboards that keep what you pin
Clips pinned to a pinboard are no longer removed by history retention, sensitive-item expiry, or Clear History.
- Kept clips pinned to a pinboard when the history retention period removes older items.
- Kept pinboard clips when sensitive items expire and when clearing history by time range, app, or type.
- Clarified in Settings which actions keep pinned clips, and that Delete all clipboard history removes everything.
- Pointed the license window's Purchase License button to the launch-price checkout.
- Added regression coverage for retention, bulk clearing, moving clips between boards, and deleting boards.
Image previews that stay put
Image cards keep a small local preview, so they load quickly without reopening the original file.
- Cached image previews locally, so cards still show after a restart or when the original file is gone.
- Stopped downloading iCloud-offloaded originals just to draw a card, with a Retry button once the file is local.
- Kept embedded color profiles and photo orientation in previews without retaining EXIF metadata.
- Capped the preview cache at 100 MB and removed previews together with their clips.
- Showed a generated preview even when it could not be written to the cache.
A branded installer, ready to download
The branded macOS installer introduced in 0.12.3 reaches a published release, alongside a fix to test discovery.
- Shipped the branded installation window with standard and Retina artwork, plus app and Applications icons.
- Included the unified DMG packaging workflow and its signature and notarization checks from 0.12.3.
- Limited Vitest discovery to source tests so generated and bundled files are not collected as tests.
Source tag only · no published download
A Pastry welcome before the first launch
The macOS disk image gains a branded installation window.
- Added installation artwork at standard and Retina resolutions, with app and Applications icons.
- Unified local and release DMG packaging, with signature and notarization checks.
History that stays in step
The drawer now catches up with local clipboard changes using revision-based synchronization.
- Fetch only changed clipboard items when possible, with a full refresh when needed.
- Serialize overlapping refreshes and prevent older responses from replacing newer clipboard events.
- Added database migration and regression coverage for clipboard synchronization.
- Added release-version validation.
Copy images without the duplicates
Copying an image from the drawer no longer captures it again.
- Mark drawer image copies on the macOS pasteboard to prevent duplicate history entries and extra sounds.
- Keep subsequent external image copies eligible for capture, including after monitoring resumes.
- Preserve the clipboard when the source image is missing or cannot be decoded.
A softer drawer
Cards, controls, and the drawer gain more generous corners.
- Increased interface border radii throughout the app.
Build reliability
The release pipeline moves to a Node version that supports pnpm 11.
- Updated release builds to Node.js 24.
Source tag only · no published download
One package manager version
Release builds use the package-manager version declared by the project.
- Aligned CI’s pnpm setup with the packageManager field.
Source tag only · no published download
Faster search, calmer screenshots
Search, animation, file access, and screenshot capture receive a focused reliability pass.
- Added FTS5 history search with debounced queries and incremental clipboard events.
- Moved drawer show and hide animations to Core Animation.
- Added security-scoped resource commands and updated file-access permissions.
- Stopped screenshot monitoring from triggering iCloud downloads.
- Fixed phantom “Loading image...” duplicates after pasting an image.
Keep the drawer within reach
Window and menu behavior become more resilient during everyday use.
- Prevented closing the main window from making the drawer unavailable.
- Improved app menus and the menu-bar recovery path.
A more dependable startup
Cold starts and secure-input focus handling receive follow-up fixes.
- Added a frontend-ready watchdog to recover an unresponsive cold boot.
- Changed the default pause shortcut to avoid VS Code’s command palette.
- Improved activation-click handling while macOS secure input is active.
Privacy controls, built in
A complete privacy pass adds control over capture, retention, previews, and backups.
- Added screen-sharing exclusion and support for concealed pasteboard hints.
- Added local detection of sensitive content, redacted previews, and automatic expiry.
- Added editable privacy rules, built-in and custom ignored-app lists, and a native app picker.
- Added global pause and no-history pinboards.
- Added size limits and EXIF stripping, with a default maximum item size of 100 MiB.
- Added bulk clearing, retention cleanup, and transactional deletion of user data.
- Added export and import of .pastry-backup bundles.
- Improved privacy settings, keyboard focus, accessible labels, and status announcements.
- Fixed privacy-rule enforcement, toggle persistence, export dialogs, and a macOS launch crash.
- Prevented duplicate screenshot captures and improved drawer focus during secure input.
Build the native helpers in CI
Continuous integration now compiles the Swift helpers too.
- Added Swift helper compilation steps to CI.
Paste Stack and a stronger foundation
Queue clips for sequential pasting while the app’s internals become easier to maintain and test.
- Added an in-memory Paste Stack with position tracking and interface updates.
- Split large Rust command, macOS, and UI modules into focused components.
- Extracted React hooks, shared types, subcomponents, and a format-conversion context.
- Added Rust and TypeScript characterization tests, component and hook tests, CI, and pre-commit checks.
- Improved license-check timeouts and background validation.
- Fixed measurement labels for small elements and improved pinboard-filter accessibility.
- Removed dead code and consolidated shared behavior.
Know what you copy most
Clipboard items retain more useful copy activity information.
- Added a copy count and last-copied timestamp to clipboard items.
- Consolidated app utilities and removed unused functions and console logging.
Color-picker focus
A small cleanup makes color-picker focus handling simpler.
- Streamlined focus handling in the color picker.
Color-picker release follow-up
A version-only follow-up to the new color picker.
- Updated release version metadata; no additional feature changes appear between the source tags.
Source tag only · no published download
A new color picker
The color picker gets a new interface.
- Implemented the redesigned color-picker UI.
Expansion pauses with the drawer
Typing in Pastry no longer competes with global keyword expansion.
- Suspend text expansion while the drawer is visible and resume it when the drawer hides.
Less work for synthetic keystrokes
Text expansion avoids unnecessary processing of generated input.
- Skip redundant event-tap work during synthetic keyboard events.
An explicit expansion trigger
Keywords support the @ trigger prefix.
- Added @-prefixed keyword expansion.
Leave iCloud files in the cloud
Checking file metadata no longer starts a download for an offloaded file.
- Use symlink metadata when inspecting iCloud-backed files.
Replace keywords cleanly
Expansion removes the typed keyword before writing the replacement to the clipboard.
- Simulate Backspace presses before the clipboard write.
A dedicated expansion shortcut
Expansion editing moves to Command-M, with matching macOS keyboard handling.
- Changed the expansion-input shortcut to ⌘M.
- Read modifier flags through the native event API.
- Prevented the drawer from minimizing on macOS.
Keep expansion keywords current
Deleting a clip updates the available expansion keywords immediately.
- Emit an expansion-keyword change event when deleting a clipboard item.
Turn clips into expansions
Assign keywords to clipboard items and expand them while typing in other apps.
- Added persistent expansion keywords with create, edit, and removal controls.
- Added a global keystroke monitor and an autocomplete popup with prefix matching.
- Included content type and image metadata in expansion suggestions.
- Enabled text expansion by default and added a keyboard shortcut for editing keywords.
- Refined keyword badges, tag interactions, removal controls, errors, and animations.
- Addressed security, accessibility, and database-index findings.
Find bundled resources reliably
Native helpers use the correct resource paths inside the macOS app.
- Fixed resource paths for packaged Tauri applications.
A more reliable signing pipeline
Release tooling receives additional signing checks and fixes.
- Added a Tauri signer test workflow.
- Corrected pnpm setup and signing environment variables.
- Streamlined the signing process.
Source tag only · no published download
Handle multiline signing keys
The release signer accepts multiline private keys correctly.
- Fixed private-key handling in the Tauri signing command.
Source tag only · no published download
Use the project’s signer
The release workflow invokes the locally installed signing tool.
- Corrected the Tauri signer binary path.
Source tag only · no published download
Native-helper compatibility
Swift helpers target the intended macOS version.
- Updated the Swift compilation target for macOS compatibility.
Source tag only · no published download
Package and sign consistently
Release artifact handling is simplified.
- Streamlined packaging and signing in the release workflow.
Source tag only · no published download
Sign the Swift helpers
Native helpers use the configured Apple signing identity.
- Added Apple signing identity support for Swift helpers in release builds.
Source tag only · no published download
Quick Look in release builds
The release pipeline builds the Quick Look helper, with improved preview layout.
- Added Quick Look helper compilation to release builds.
- Improved Quick Look layout and URL rendering in the webshot helper.
Source tag only · no published download
A closer look at every clip
Quick Look previews and drag-and-drop make clipboard items easier to inspect and use.
- Added Quick Look previews for colors, URLs, code, data, text, and files.
- Added a native preview helper with arrow-key navigation, Return-to-copy, and in-place updates.
- Preserved selection and scroll position when returning from Quick Look.
- Added drag-and-drop support to clipboard cards.
- Improved PNG and TIFF image-copy compatibility.
- Fixed Time Travel state and item selection.
- Improved screenshot-folder detection and hid the drawer before screenshot capture.
- Added missing toast build entry points and cleaned up screenshot logging.
A steadier update button
The update button animates its colors without transitioning every property.
- Limited update-button transitions to colors.
More reliable image copying
Clipboard error handling and native image copying receive fixes.
- Improved macOS image-copy behavior and clipboard error handling.
License-response compatibility
License validation supports the updated response format while retaining compatibility.
- Handle both new and legacy license-validation responses.
- Consolidated intermediate version bumps back into the 0.5 series.
Source tag only · no published download
Choose your screenshot folder
Screenshot monitoring can use a custom folder.
- Added screenshot-folder management and custom path support.
A longer license trust period
A successful license check remains trusted for longer.
- Extended the license-validation trust period to 24 hours.
A simpler download control
The Settings download button gets an implementation cleanup.
- Simplified download-button rendering in Settings.
Update timing cleanup
Automatic-update timing and diagnostics are streamlined.
- Simplified updater logging and timing logic.
Update release follow-up
A version-only follow-up to automatic restart support.
- Updated release version metadata; no additional feature changes appear between the source tags.
Restart after updating
The Mac app restarts automatically after a successful update.
- Implemented automatic restart after update installation on macOS.
Updater release follow-up
A version-only follow-up to updater reliability work.
- Updated release version metadata; no additional feature changes appear between the source tags.
Bounded update checks
Automatic-update checks gain a timeout and clearer diagnostics.
- Improved updater timeout handling and logging.
License release follow-up
A version-only follow-up to license-validation maintenance.
- Updated release version metadata; no additional feature changes appear between the source tags.
License-validation maintenance
License revalidation is simplified.
- Updated the revalidation interval and removed unused reactivation code.
Mac-focused release packaging
The release pipeline focuses on macOS and uses consistent download names.
- Standardized DMG filenames.
- Removed Windows and Linux build steps from the release workflow.
Source tag only · no published download
Packaging version update
A version-only step in the packaging history.
- Updated release version metadata; no additional feature changes appear between the source tags.
Clearer download names
Mac installers use more readable filenames.
- Updated macOS DMG filenames to identify the target architecture more clearly.
Source tag only · no published download
App icons and update restarts
Localized application names resolve to the right icons, and updates restart more reliably.
- Map localized names to actual application names for icon retrieval.
- Added app restart handling after an update on macOS.
Visible download progress
The update button gives animated feedback while downloading.
- Added download animation to the update button.
More precise measurements
The measurement tool refines edge detection and snapping.
- Improved edge thresholds, inward search, sampling precision, and snapping.
- Added a refining-edges spinner and improved measurement diagnostics.
Automatic updates
Pastry checks for updates periodically and supports installation.
- Added the automatic-update checker and installation flow.
Source tag only · no published download
Recover capture and cold starts
Clipboard monitoring and first-window rendering gain readiness checks.
- Added capture tracking and periodic clipboard refresh logic.
- Wait for the frontend before showing the drawer to prevent a white window on cold boot.
Better multi-display behavior
Native screen detection and Tahoe styling bring Pastry closer to macOS.
- Integrated NSScreen-based monitor detection.
- Added macOS Tahoe detection and matching corner styling.
- Added major, minor, and patch keywords to the version-bump script.
Recognize code from VS Code
Clipboard capture understands editor metadata.
- Read VS Code clipboard metadata and extract file extensions.
A monitor that can recover
Clipboard capture checks its health and startup waits for the backend.
- Added monitoring health checks and recovery mechanisms.
- Added backend-ready events and retries for the initial data load.
- Unified macOS window vibrancy setup.
- Improved local signing scripts, updater-key checks, and certificate import in release builds.
A consistent machine identity
License activation uses an identifier obtained through native operating-system APIs.
- Added hardware-bound machine identifier retrieval.
Native clipboard operations
macOS clipboard operations move from AppleScript to Cocoa APIs.
- Replaced AppleScript clipboard handling with native Cocoa calls.
Track new clips in the drawer
The drawer tracks incoming items and resets its position when loading.
- Added new-item tracking and initial position reset.
- Moved the macOS background-app setting into Info.plist.
Source tag only · no published download
Licensing and display recovery
License feedback and monitor fallback handling become more robust.
- Extended license grace handling and added reactivation support.
- Improved license-window layout and validation feedback.
- Improved cursor-based monitor selection and window-visibility fallbacks.
- Updated signing-key setup and macOS background-app configuration.
More stable rendering
The drawer refreshes layout more reliably.
- Added layout recalculation and GPU optimization hints for window rendering.
Activation and paste fixes
License activation and pasting receive better failure handling.
- Improved license activation, validation errors, and logging.
- Improved focus restoration when copying and pasting.
Copy without inserting
Command-C copies the selected clip without pasting it into another app.
- Prevent auto-insert for ⌘C, even when automatic insertion is enabled.
Tags, Time Travel, and keyboard control
Long histories and growing pinboards become easier to navigate.
- Added Time Travel for long jumps through history, with coordinated selection and animations.
- Added tags with creation, editing, removal, and search.
- Added pinboard search, keyboard navigation, and ⌘N creation.
- Added animated tooltips, dynamic shortcut labels, and Option-key handling.
- Improved dropdown focus, positioning, outside-click behavior, and forms.
- Reduced virtual-scroll overscan and added database setup and migration tooling.
Source tag only · no published download
No more double hides
Drawer hide events and frontend state stay coordinated.
- Prevented duplicate blur-triggered hides during programmatic window changes.
- Added native hide-event notifications and synchronized state refs to prevent races.
- Improved clipboard and measurement logging and updated the development-server port.
A faster, more dependable drawer
The first follow-up focuses on performance, focus, and copying.
- Improved clipboard, deletion, history, and automatic-insert performance.
- Fixed blur and reopen races, consecutive opens, and focus restoration using NSWorkspace.
- Added ⌘C to copy the selected item.
- Fixed paste sounds and drawer behavior when opening license activation.
- Corrected version display and cleaned up Settings icons.
- Added development seed/reset scripts, performance monitoring, and debugging tools.
The first early-access build
Pastry brings clipboard history and everyday capture tools into a keyboard-driven drawer.
- Added local clipboard storage and previews for text, links, code, colors, structured data, images, and files.
- Added history search including source apps, type filters, virtual scrolling, and keyboard navigation.
- Added pinboards with create, edit, delete, pin/unpin, and undo/redo support.
- Added color picking and color/data format detection, conversion, and keyboard cycling.
- Added multilingual screenshot OCR, automatic screenshot capture, and dominant-color extraction.
- Added a measurement tool with edge detection, cancellation, and result notifications.
- Added file thumbnails and metadata, URL favicons, and direct URL opening.
- Added duplicate suppression, copy timestamps, deletion undo, and history retention cleanup.
- Added configurable shortcuts, automatic insertion, action sounds, themes, and launch at login.
- Added onboarding, permission checks, trial tracking, and license management.
- Added menu-bar controls, cursor-aware drawer placement, focus handling, and reduced-motion animations.
- Added update notifications and architecture-specific release packaging.
Stop re-copying
what you already copied.
It takes about ninety seconds to install and one afternoon to stop being able to work without it.
v0.12.6 · macOS 13+ · Apple silicon & Intel · 7-day trial
Intel Mac? Download the Intel build.