This release includes breaking changes for platform teams planning a safe upgrade.
✓ No known CVEs patched in this version
Topics
+8 more
Summary
AI summaryEvent‑driven file watcher reduces idle CPU to 0%.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
Added global Ctrl + Scroll zooming (8px‑36px font range) and a Reset badge in the header Added global Ctrl + Scroll zooming (8px‑36px font range) and a Reset badge in the header Source: llm_adapter@2026-06-02 Confidence: high |
— |
| Feature | Medium |
Replaced native browser unsaved‑changes dialogs with a custom modal supporting keyboard shortcuts and hints Replaced native browser unsaved‑changes dialogs with a custom modal supporting keyboard shortcuts and hints Source: llm_adapter@2026-06-02 Confidence: high |
— |
| Feature | Medium |
Modified Font, Theme, and Tab dropdown menus to stay open on clicks with a 180 ms grace delay before closing Modified Font, Theme, and Tab dropdown menus to stay open on clicks with a 180 ms grace delay before closing Source: llm_adapter@2026-06-02 Confidence: high |
— |
| Performance | Medium |
Replaced async Tokio file watcher with event-driven notify crate, reducing idle CPU to 0% Replaced async Tokio file watcher with event-driven notify crate, reducing idle CPU to 0% Source: llm_adapter@2026-06-02 Confidence: high |
— |
| Performance | Medium |
Implemented Write Echo Suppression flag to prevent redundant IPC loops during file writes Implemented Write Echo Suppression flag to prevent redundant IPC loops during file writes Source: llm_adapter@2026-06-02 Confidence: high |
— |
| Performance | Medium |
Refactored HTML preview renderer to use regex-based escaping, eliminating intermediate DOM allocations Refactored HTML preview renderer to use regex-based escaping, eliminating intermediate DOM allocations Source: llm_adapter@2026-06-02 Confidence: high |
— |
| Performance | Medium |
Consolidated CodeMirror updateListener registrations and removed unnecessary requestAnimationFrame wrappers Consolidated CodeMirror updateListener registrations and removed unnecessary requestAnimationFrame wrappers Source: llm_adapter@2026-06-02 Confidence: high |
— |
| Bugfix | Medium |
Added missing allow-show, allow-hide, and allow-set-focus permissions to fix startup flash‑and‑close bug Added missing allow-show, allow-hide, and allow-set-focus permissions to fix startup flash‑and‑close bug Source: llm_adapter@2026-06-02 Confidence: high |
— |
| Bugfix | Medium |
Moved titlebar button bindings to Phase 2 after Tauri initialization, resolving inert minimize/maximize/close buttons Moved titlebar button bindings to Phase 2 after Tauri initialization, resolving inert minimize/maximize/close buttons Source: llm_adapter@2026-06-02 Confidence: high |
— |
| Refactor | Low |
Combined ten theme configuration files into CSS custom properties within a single base.css file Combined ten theme configuration files into CSS custom properties within a single base.css file Source: llm_adapter@2026-06-02 Confidence: high |
— |
Full changelog
FeatherMD v1.5.0 introduces interaction design modernizations, native desktop capability improvements, and backend resource optimizations.
Performance and Engine Refactoring
- Event-Driven File Watcher: Replaced the async Tokio-based file watcher with the event-driven notify crate, reducing idle background CPU usage to 0%.
- Write Echo Suppression: Implemented a frontend
isSavingflag to prevent redundant triple-IPC loops during file writes. - HTML Escaping Optimization: Refactored the preview renderer to use regex-based HTML escaping, eliminating intermediate DOM allocations.
- CodeMirror Consolidation: Merged redundant
EditorView.updateListenerregistrations and removed unnecessary requestAnimationFrame wrappers in change handlers. - Theme Consolidated Stylesheet: Combined all ten distinct theme configuration files into CSS custom properties inside a single
base.cssfile.
User Interface and Experience Upgrades
- Integrated Zoom Interaction:
- Removed the legacy header font-size slider.
- Implemented global Ctrl + Scroll zooming (from 8px to 36px font range).
- Scaled CodeMirror line numbers gutter size to 0.85em to keep gutter size in sync with text zoom.
- Added a standalone zoom percentage badge in the header that displays a "Reset" indicator on hover and resets the zoom level to 100% on click.
- Custom Unsaved Changes Modal: Replaced native browser dialogs with a custom confirmation modal supporting Esc to cancel, single-key shortcuts (S, N, C), keyboard hints, and capture-phase event listeners.
- Dropdown Menu Persistence: Modified Font, Theme, and Tab menus to stay open on clicks for faster selection, closing on mouse leave after a 180ms grace delay.
- Native Titlebar and Bounds: Added rectangular window controls and configured the window to launch hidden, revealing it only after window bounds are loaded and applied to prevent startup flicker.
Bug Fixes
- Startup Visibility: Added missing
allow-show,allow-hide, andallow-set-focuscapabilities permissions to resolve a launch bug where the window would flash and close. - Window Controls Initialization: Moved titlebar button bindings to Phase 2 of the bootstrap pipeline after Tauri is initialized, resolving an issue where the minimize, maximize, and close buttons were inert.
Documentation
- PRD Update: Updated the Product Requirement Document to reflect the new modular architecture, revised performance budgets, and auto-updater configurations.
- README Cleanup: Updated the architecture map and purged obsolete local screenshot assets.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About prathamreet/featherMD
All releases →Related context
Related tools
Earlier breaking changes
- v1.4.0 Removed legacy Vim Mode configurations and packages.
Beta — feedback welcome: [email protected]