                               ━━━━━━━━━
                                CHANGES
                               ━━━━━━━━━


1 Upcoming 4.0.0 (development)
══════════════════════════════

1.1 General
───────────

  • `elfeed-tree': New command which opens an `elfeed-tree-mode' buffer.
  • `elfeed-search': New command as entry point.
  • `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'.


1.2 Database
────────────

  • `elfeed-db-directory': Change default to
    `~/.config/emacs/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.


1.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 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.
  ┌────
  │ (setq elfeed-feeds
  │  '(("https://yhetil.org/emacs-devel/new.atom" :no-update t emacs)
  │    ...))
  └────
  • Support for the JSON Feed format.


1.4 Search buffer
─────────────────

  • `elfeed-search-set-filter', `elfeed-search-tag-all': Filter and tag
    completion using `completing-read-multiple'.
  • `elfeed-search-set-filter': Support shorter age filter syntax, e.g.,
    `@6months'.
  • `elfeed-search-date-filter', `elfeed-search-feed-filter': New
    commands bound to `@' and `=' to filter for the date or feed at
    point.
  • `elfeed-search-(un)tag-all', `elfeed-search-toggle-all',
    `elfeed-search-(un)tag-all-unread': If prefix argument is given, tag
    or untag all entries, not only the selected ones.
  • `elfeed-search-remain-on-entry': Generalized option to configure the
    commands explicitly that should remain on the entry.
  • `elfeed-search-mode': Auto-resizing of title column.
  • `elfeed-search-update-delay': New option to debounce search buffer
    update.
  • `elfeed-search-separator-face': New face for the search buffer
    separators.
  • `elfeed-search-add-separators': New search buffer update hook which
    adds separator overlays. The separators are enabled by
    default. Remove the hook to disable:
  ┌────
  │ (remove-hook 'elfeed-search-update-hook #'elfeed-search-add-separators)
  └────
  • `elfeed-search-group-by-feed': New function for
    `elfeed-search-sort-function'.
  • `elfeed-search-show-entry': Do not mark entry as read when invoked
    with prefix argument.
  • `elfeed-search-mark', `elfeed-search-unmark': New commands for
    non-continuous selections bound to `m' and `M'.
  • `elfeed-search-set-entry-title', `elfeed-search-set-feed-title': Add
    `t' and `T' key bindings to change entry and feed title.
  …  …
