                           ━━━━━━━━━━━━━━━━━━
                            ELFEED CHANGELOG
                           ━━━━━━━━━━━━━━━━━━


1 Version 4.1.1 (2026-08-01)
════════════════════════════

  • Bugfix: Use `insert-file-contents' to load database instead of
    `find-file-noselect'. This avoids many interaction issues.
  • Bugfix: Use appropriate `header-line-highlight' face instead of
    `highlight' face for header-line elements.


2 Version 4.1.0 (2026-06-28)
════════════════════════════

  • `elfeed-search-live-filter': Use `while-no-input' for better
    responsiveness.
  • `elfeed-show-fetch-link': Display message in the buffer during
    fetching.
  • Hide more commands in non-Elfeed buffers.
  • `elfeed-search-next-separator', `elfeed-search-previous-separator':
    New commands to traverse date or feed title separators.
  • Depend on Emacs 29.1.


3 Version 4.0.1 (2026-06-11)
════════════════════════════

  • Bugfix: Improve shr image insertion, compatibility with
    `elfeed-tube'.
  • Bugfix: Prefix argument handling of `elfeed-show-next'.
  • Bugfix: Call `elfeed-update-hook' also for feeds which have not been
    modified.
  • Minor code cleanup (requires, private function namespacing).


4 Version 4.0.0 (2026-06-06)
════════════════════════════

4.1 General
───────────

  • `elfeed-entry-point': New customization option to customize `M-x
    elfeed' to either the search or tree buffer.
  • `elfeed-search-mode', `elfeed-show-mode', `elfeed-tree-mode': All
    Elfeed major modes derive from `special-mode'.
  • Hide irrelevant commands in `M-x' if
    `read-extended-command-predicate' is set to
    `command-completion-default-include-p'.
  • `elfeed-confirm-browse-url': New customization option.
  • `elfeed-use-libxml': New customization option to enable parsing via
    `libxml'.
  • New mouse menus in all Elfeed major modes.
  • Mouse support in the search buffer and the header line.
  • Moved elfeed-web.el to the separate repository at
    <https://github.com/emacs-elfeed/elfeed-web>.
  • Show title and search filter in Ibuffer via the variable
    `list-buffers-directory'.
  • `elfeed-last-update-relative': New option to show last database
    update in the header line relative to the current time.
  • `elfeed-csv-export': Marked as autoloaded, `elfeed-csv' is not
    required anymore.


4.2 Database
────────────

  • `elfeed-db-directory': Change default to `~/.emacs.d/elfeed'. The
    change is backward compatible. If `~/.elfeed' is present, it will be
    used.
  • `elfeed-db-cache-timeout': New option to keep archive content cache
    alive.
  • `elfeed-db-save', `elfeed-db-pack': Reduce risk for database
    corruptions by writing to temporary files first and renaming
    atomically afterwards.
  • `elfeed-db-gc', `elfeed-db-pack': Scan entry and feed meta data for
    `elfeed-ref' references. This way other packages can reference
    content with the reference kept in the metadata.
  • `elfeed-db-gc': Deduplicate strings in the database to reduce
    on-disk and in-memory size.


4.3 Feed updates
────────────────

  • `elfeed-delete-feed': New command to delete feed with all entries
    from the db.
  • `elfeed-fetch-functions': New hook to implement custom feed
    fetching. This hook can be used by `elfeed-protocol', to generate a
    feed from an external program, or to modify fetched content.
  • `elfeed-make-tagger': Support matching on entry categories.
  • `elfeed-update-background': New function to update Elfeed in the
    background from a timer.
  • `elfeed-feeds': Feeds can specify per-feed options as a
    plist. Currently supported options are `:no-update', `:fetch-link',
    `:readable' and `:show-entry'.
  • `elfeed-feeds': Feeds can specify a `:no-update' option to disable
    feed updates.  The feed appears still in the list for manual
    updates, and you can configure autotags for the entries which are
    part of the feed.
  ┌────
  │ ;; Do not update this feed
  │ (setq elfeed-feeds
  │  '(("https://yhetil.org/emacs-devel/new.atom" :no-update t emacs)
  │    ...))
  └────
  • Support for the JSON Feed format. JSON feeds are automatically
    detected, parsed with the Emacs JSON parser, but otherwise treated
    like the usual RSS or Atom feeds.


4.4 Tree buffer
───────────────

  • New `elfeed-tree-mode' which lists all feeds and tags as a tree
    structure.
  • `elfeed-tree': New command which opens an `elfeed-tree-mode' buffer.


4.5 Search buffer
─────────────────

  …  …
