Changelog

What's new

Recent releases have focused on keyboard navigation completeness, theme persistence and feed discovery from the app itself.

v2.4.0

Component-split licensing

  • Licensing split by component: user interface under LGPL-3.0, model under Apache-2.0
  • Header now shows two licence buttons: "UI Licence" (LGPL-3.0) and "Model Licence" (Apache-2.0), each with its own dialog
  • CONTRIBUTING.md added with contribution guidelines and the layer invariant
  • Licence texts split into LICENSE-LGPL-3.0.txt and LICENSE-APACHE-2.0.txt, mapped from the root LICENSE
v2.3.0

Cross-Platform Release + Diagnostics

  • macOS DMG build - tested on Tahoe
  • Linux Flatpak - tested on Ubuntu
  • Windows installer rebuilt and re-tested on Windows 11
  • Crash diagnostics: stdout/stderr redirected to ~/Library/Logs/Meridian/meridian.log in frozen mode
  • About dialog icon and Licence dialog text rendering fixed
  • Bulk subscribe confirmation dialog height corrected - previously showed only one URL
v2.2.0

UI/UX Overhaul + Keyboard Navigation

  • Full UI/UX layout overhaul: buttons replace menus throughout
  • Complete Tab/Shift+Tab and arrow key navigation across all controls
  • Dark/light theme preference persists across restarts via Qt.labs.settings
  • Escape closes the Feed Discovery panel from any control
  • 371 tests, 100% branch coverage
v2.1.0

Full Keyboard Navigation

  • Every interactive element reachable and operable without a mouse
  • Tab chain: File menu → Search → Manage → Theme toggle → Feed list → Item list → Open in Browser → wraps
  • Amber focus ring on all focusable controls
  • Full keyboard nav inside Manage Subscriptions and all its dialogs
  • Filter dialog opens pre-populated with existing terms as tabbable toggleable rows
  • Left/Right cursor navigates between dialog footer buttons (Cancel / OK)
v2.0.0

Feed Discovery

  • Search by topic or keyword - subscribe to one or many feeds without leaving the app
  • Discovery panel runs on an isolated async event loop in a daemon thread
  • DiscoveryFetcher ABC with FeedsearchFetcher implementation - same layered boundaries as the rest of the system
  • HTTP and HTTPS feed URLs accepted (HTTP feeds follow redirects transparently)
  • Splash screen with rounded corners; Win32 mutex prevents multiple instances
  • 100% branch coverage maintained including the new discovery stack
v1.0.1

Feed Reader UI + Sample Feeds

  • Reworked FeedReader layout: hero thumbnail, media player, sort controls, unread indicator dot
  • feeds_export.json ships with the repo - curated RSS, Atom and MFEED subscriptions ready to import
  • LGPL-3.0 licence added to Help menu and corrected throughout documentation
  • black formatting and flake8 clean across all Python sources
v0.3.0

Windows Installer + Splash Screen

  • MeridianSetup.exe: per-user installer with upgrade, repair and uninstall workflows
  • Registers with Windows Settings > Apps; creates desktop and Start Menu shortcuts
  • No administrator privileges required; user data preserved across upgrades
  • Branded splash screen displayed on launch while the app initialises
  • Full multi-resolution icon set (16 px through 512 px) for sharp rendering everywhere
View all releases on GitHub