elfeed-score News -- history of user-visible changes -*- outline -*-

* elfeed-score 1.2

** changes in elfeed-score 1.2.12

*** fix issue 038 "Saving stats is slow after months of usage"

Add configuration item `elfeed-score-rule-stats-pretty-print' allowing the user to turn-off the use of pretty-printing stats to disk.
** changes in elfeed-score 1.2.11

No user-visible changes (hygienic updates only).
** changes in elfeed-score 1.2.10

No user-visible changes (hygienic updates only).
** changes in elfeed-score 1.2.9

No user-visible changes (hygienic updates only).
** changes in elfeed-score 1.2.8

No user-visible changes (hygienic updates only).
** changes in elfeed-score 1.2.7

*** address issue #32 Parent dirs in elfeed-score-rule-stats-file are not created automatically

If you set `elfeed-score-rule-stats-file` to a path in which some intermediate directories don't exist, elfeed-score will error on saving stats.
** changes in elfeed-score 1.2.6

*** make the depth at which the scoring function runs configurable in the new entry hook
*** fix the explanations unit test (broken in 1.2.5)
** changes in elfeed-score 1.2.5

*** use `help-mode' for explanation buffers
*** add a workflow for pull requests
** changes in elfeed-score 1.2.4

*** address issue #25 Typo(?) in the readme
*** accept PR #24 Update elfeed-score.texi
*** accept PR #26 Update README
** changes in elfeed-score 1.2.3

*** address issue #22

'adjust-tags' rules just didn't work due to an embarassing omission on my part.
** changes in elfeed-score 1.2.2

*** update copyright statements
*** address issue #21

Change default keybindings for a few commands:

  - "aa" remaints bound to 'elfeed-score-maint-add-authors-rule
  - "at" is now bound to 'elfeed-score-maint-add-tag-rule
  - "aT" is now bound to 'elfeed-score-maint-add-title-rule
** changes in elfeed-score 1.2.1

No code changes-- just updating the tag when merging to `master` since I mistakenly tagged the alpha release `1.2.0`.
** changes in elfeed-score 1.2.0

**** address issue #19

Add user-defined scoring functions.
* elfeed-score 1.1

** Changes in elfeed-score 1.1.0

**** address issue #18

Add a :comment field to all rule types.
* elfeed-score 1.0

** Changes to elfeed-score 1.0.0

*** Deprecations

All obsolete symbols have been removed, except for `elfeed-score-score-file', which is likely in use in many configurations.
* elfeed-score 0.9

** Changes to elfeed-score 0.9.2

*** Deprecations

All symbols obsolete as of 0.2.0 removed.
** Changes to elfeed-score 0.9.1

No user-visible changes.
** Changes to elfeed-score 0.9.0

*** New Features

**** Produce error messages on invalid rule deser

Produce an error message when attempting to deserialize rules form a property list missing mandatory fields.
* elfeed-score 0.8

** Changes to elfeed-score 0.8.6

No new features; just a new tag for release purposes.
** Changes to elfeed-score 0.8.5

*** New Features

**** Add a full suite of interactive scoring rules
** Changes to elfeed-score 0.8.4

*** New Features

**** Add `elfeed-score-serde-add-title-rule`
** Changes to elfeed-score 0.8.3

*** New Features

**** Spiff-up the explanations buffer

    1. introduce elfeed-score-scoring-explain-text-face
    2. make the list of rules clickable; clicking-on or hitting enter when in a rule match will open the score file and move point to that rule
** Changes to elfeed-score 0.8.2

*** New Features

**** Added `elfeed-score-serde-add-rule'
** Changes to elfeed-score 0.8.1

*** Bugfixes

**** `elfeed-score-score` & `elfeed-score-serarch` no longer write stats too many times

* elfeed-score 0.7

** Changes to elfeed-score 0.7.10

*** Bugfixes

**** Rule statistics are now stored separately-- Issue #13

Rule statistics (# hits, last match date) have been moved out of the rule structs and stored separately.  From now on, `elfeed-score' will only *read* the score file. This should eliminate the recurring "Hey where did my rule changes go?" questions.

The stats will still be maintained, but will be written to a separate file ('elfeed.stats' by default).
** Changes in elfeed-score 0.7.9

*** Bugfixes

**** Make `score' mandatory in `elfeed-score-set-score' not optional
**** Address issue #10

When setting scores "manually" via `elfeed-score-set-score' will "stick": subsequently scoring that entry through the new entry hook or as part of scoring an entire search will not overwrite the manuall-set score.

Since this is a new feature, I've put it behind a configuration option `elfeed-score-scoring-manual-is-sticky' which defaults to true, but if the user dislikes this they can set it to nil to disable the feature.
** Changes in elfeed-score 0.7.8

*** Bugfixes

**** Address issue #12

'link' rules were not being read in correctly--fixed.
** Changes in elfeed-score 0.7.7

*** New Features

**** When reading an older score file, immediately re-write in the most recent format
** Changes in elfeed-score 0.7.6

No user-visible changes in this build; strictly re-factoring.
** Changes in elfeed-score 0.7.5

*** Bugfixes

**** Address issue #12

Announce the fact when making a backup copy of the score file. If there is an error on copy, say so & continue (i.e. don't error out).

*** New Features

**** New rule type: link
** Changes in elfeed-score 0.7.4

*** Other Changes

**** Below changes on the 0.7 branch now available on master
** Changes in elfeed-score 0.7.3

*** New Features

**** Write backup file on score file format version change

If elfeed-score detects that the score file it has read is in a format
prior to the current, it will write a backup file named SCORE-FILE.~N~
where SCORE-FILE is the original score file name and N is the prior
version.
** Changes in elfeed-score 0.7.2

*** New Features

**** Scoring Rules Now Serialized to Property Lists

This build introduces score file format version 6.

elfeed-score will now serialize scoring rules as property lists, rather than flat lists. It will, of course, continue to read all prior versions of the score file format.

Moving to property lists for the rule format, while more prolix, will reduce errors on the part of rule authors & enable better validation & error messages on the part of the package.

*** Other Changes

**** elfeed-score now requires Emacs 26.1
**** Internal changes cleaning-up after the re-factor.
** Changes in elfeed-score 0.7.1

*** Toher Changes

**** elfeed-score documentation re-worked

This build re-works the elfeed-score documentation, breaking
up the README:

  - introductory information & installation instructions remain
    in the README
  - user documentation has been moved to a Texinfo manual
  - developer documentation has been moved to the project Wiki
** Changes in elfeed-score 0.7.0

*** Other Changes

**** elfeed-score.el re-factored

Heretofore, `elfeed-score' was a single-file package. As the
file has grown to over 2K lines, it became increasingly
difficult to read & reason about. Beginning with the 0.7
series, I've broken it up into several smaller, hopefully
more manageable files.

Numerous functions & variables were renamed to begin with their new package prefix. In the case of public symbols, aliases were introduced so code using the old names will receive a warning about using anobsolete variable or function. However, private symbols were simply renamed-- if you wrote code accessing private symbols, this change will break your code.
* elfeed-score 0.6

** Changes in elfeed-score 0.6.5

*** Bug Fixes

**** "Some typos" fixed-- Issue #6
**** `elfeed-score-explain' now correctly documented-- Issue #9

*** New Features
**** Better validation on read of score file-- Issue #7
** Changes in elfeed-score 0.6.4

*** Bug Fixes

**** `elfeed-score-explain-entry' is no longer interactive
** Changes in elfeed-score 0.6.3

*** New Features

**** Updated the README

  - new installation instructions
  - mention of 'elfeed-score-explain-entry'.
** Changes in elfeed-score 0.6.2

*** New Features

**** Score explanations changed slightly

Re-implemented.
** Changes in elfeed-score 0.6.1

*** Bug Fixes

**** 'elfeed-score--pp-rule-match-to-string' wasn't handling tag rules correctly
** Changes in elfeed-score 0.6.0

*** New Features

**** 'elfeed-score-explain'

Produce a human-readable explanation of an entry's score.

* elfeed-score 0.5

** Changes in elfeed-score 0.5.5

Documentation changes to the README prior to the 0.5.5 release.
** Changes in elfeed-score 0.5.4

*** New Features

**** Reporting on which rules have matched most frequently

Adds an interactive function `elfeed-score-display-rules-by-match-hits'.
** Changes in elfeed-score 0.5.3

*** New Features

**** Reporting on how recently rules have matched

Adds an interactive function `elfeed-score-display-rules-by-last-match'.
** Changes in elfeed-score 0.5.2

*** New Features

**** Scoping rules by feed

You can now scope a rule by feed, analagously to tags.
**** Rules now record hit counts

Each rule will keep track of how many times it has matched; good for figuring out which rules are useful.
*** Bug Fixes

***** `elfeed-score--parse-authors-rule-sexps' was deserializing incorrectly

The date field was not being deserialized-- fixed.
***** Spelling errors

Numerous spelling errors corrected thanks to `flyspell'.
** Changes in elfeed-score 0.5.1

*** Bug Fixes

***** issue #2: `elfeed-score-write-score-file` will elide information when the list gets long enough

Fixed.
** Changes in elfeed-score 0.5.0

*** New Features

**** New Rule Type: Authors

Adjust an entry's score up or down based on the Author.

* elfeed-score 0.4

** Changes in elfeed-score 0.4.4

*** Bug Fixes

**** issue #2: (elfeed-score-enable) must have an argument now, unlike README suggests

Fixed.
** Changes in elfeed-score 0.4.3

*** New Features

**** new rule types

    1. tag: adjust an entry's score up or down based on the presence or absence of one or more tags

    2. adjust-tags: after the scoring process is complete, add or remove tags based on the score being above or below given thresholds.

**** much-improved logging

modeled on that of `elfeed' itself.

* elfeed-score 0.3

** New Features

*** scoping rules by tag

You can now scope rules by entry tags; rules can be setup to run only on entries that have one or more tags, or that have none of a given set of tags. See the README for syntax details.

*** whole-word matching

Specying a match type of 'w or 'W will perform case-insensitive or case-sensitive (resp.) whole-word regexp matching.

*** title-or-content rules

A new type of scoring rule is introduced: `title-or-content'. Such a rule performs a text match against both the title & content for each entry while allowing two different values to be added to entry's core for each sort of match.

*** Displaying Entry Scores in the Search Buffer

`elfeed-score' now provides an `elfeed-search-print-entry-function' compliant function that will display each entry's score in the first column of the search view. The score format can be controlled by the customization variable `elfeed-score-score-format'.  See the README for instructions.

* elfeed-score 0.2

** New Features

Loading the package no longer affects Elfeed; the package must be enabled via a call to `elfeed-score-enable', and may be unloaded via `elfeed-score-unload' (in accordance with the Emacs Lisp Coding Conventions).

** Miscellaneous Changes

*** Changed naming scheme for public symbols

The naming scheme for public symbols changed from "elfeed-score/" to "elfeed-score-" (in accordance with the Emacs Lisp Coding Conventions. Aliases are defined for all 0.1 symbols.

* elfeed-score 0.1

Initial release of the `elfeed-score' package.
