Skip to content

v0.21.0

Latest

Choose a tag to compare

@github-actions github-actions released this 14 Apr 10:47
v0.21.0
3e05deb

Raffi v0.21.0 introduces automatic desktop application detection, configurable sort modes, and powerful new capabilities for script filters, including search fallbacks and live autocomplete. It also features significant internal refactoring of the Wayland UI and a new zero-cost debug logging system.

🚀 Features

  • Desktop App Auto-Detection: Automatically scans installed desktop applications (via .desktop files) to provide a default list of launchers when no valid configuration is found, enabling immediate use after installation (#168).
  • Sort Modes: Added a sort_mode configuration option (frequency, recency, or hybrid) for launcher entries. The MRU cache now tracks usage timestamps to support this and migrates automatically.
  • Search Fallbacks: Introduced a fallbacks general setting to display specified web searches or script filters at the bottom of the results list. These can execute commands and parse outputs directly from the native UI.
  • Script Filter Enhancements:
    • Added support for passing environment variables (env) to script processes.
    • Added min_query_length to prevent execution until a sufficient number of characters are typed, accompanied by a helpful UI prompt.
    • Included a new live search script (scripts/search/search.py) that queries configuration files and provides DuckDuckGo autocomplete suggestions.
  • CLI Improvements: Added short CLI flags for config location (-c), print-only mode (-p), and cache refresh (-r). Also added a --debug-file=FILE flag to activate timestamped debug logging.

🧹 Maintenance / Refactoring

  • Wayland UI Modularization: Extracted the monolithic Wayland UI file into a dedicated subdirectory, organizing the logic into maintainable modules (actions, app, browser, currency, emoji, etc.).
  • Developer Documentation: Added AGENTS.md to detail project workflows and DESIGN.md to explain internal system structure, configuration models, and runtime behaviors.
  • Testing: Removed unnecessary reference dereferencing in test assertions to ensure compatibility with updated trait implementations.
  • Documentation: Fixed formatting and adjusted aside block placements in the quickstart guide.

📦 Dependencies

  • Updated Rust dependencies to their latest versions, including major updates for jni, read-fonts, thiserror, ureq (to 3.3.0), and schemars (to 1.2.1).
  • Bumped GitHub Actions for the website deployment workflow (setup-node v6, deploy-pages v5, upload-pages-artifact v4).

Contributors