v1.0 (unreleased)
====

* Simplified the sfeed(5) format:
  * The formatted time field is removed.
  * The feedtype field (values "atom" or "rss") is removed.
  To convert your files from the previous format to the changed format you
  can just remove the fields:
      cd ~/.sfeed/feeds
      for i in *; do cut -f 1,3-8 "$i" > /tmp/t; mv /tmp/t "$i"; done
* Simpler and much faster time parsing in sfeed(1): like timegm(3), this is
  also more portable.
* 2038-proof: support 64-bit time_t, output truncated as long long int.
* The format programs now use the localtime and a shorter time format:
  "yyyy-mm-dd HH:MM" instead of "yyyy-mm-dd HH:MM:SS timezone".
  If you run the programs on a system in a different timezone make sure to
  update the TZ environment variable or change the source-code to show the UTC
  offset.

Minor fixes:
* Check errno (ERANGE) when parsing UNIX timestamp from a sfeed(5) file.
* sfeed_frames: don't make title of content a HTML anchor if it's empty.
* sfeed_frames: make the filename of the content file more unique: use the
  UNIX timestamp in the filename. This makes sure it won't overwrite older
  content files anymore which had the same title, but a different timestamp.

Documentation:
* Add sfeed(5) man page which explains the feed file format, this information
  is also still available in sfeed(1).
* Rewrite some sentences so it is hopefully more clear.


v0.9.1
======

* Improved `make dist` rule in Makefile: don't build binaries before packaging
  the source files. Package the source files in the relative path
  sfeed-VERSION/.


v0.9
====

Features:
---------

* sfeed_update: feeds are now by default updated concurrently for an increase
  in performance.
* sfeed_update: Auto-detect XML character set encoding (sfeed_xmlenc).
* sfeed_update: don't send user-agent by default (used to send: curl+version).
* Removed the dependency on libexpat, using a custom XML parser (xml.*),
  this parser is also non-validating, it will not check the XML for errors
  or stop parsing if it contains errors (which is good).
* On OpenBSD 5.9+ the sfeed tools can now use pledge(2) as a security
  mitigation. Most tools only require "stdio" and read-only filesystem access.
  To enable it the CPPFLAGS -DUSE_PLEDGE can be used, see the file: config.mk.
* Added (optional) format tools:
  * Add sfeed_frames, a formatting program to output feeds as a HTML file with
    frames. It's optimized to look good in older browsers that don't necesarily
    support CSS or modern HTML, like links. See the man page for more details.
  * Add sfeed_mbox: format feeds to mbox format.
  * Add sfeed_tail: poll files or stdin and print unique/unseen items to
    stdout, this is inspired from RSSTail.
  * Add sfeed_web: find RSS/Atom feeds from web-pages.


Documentation:
--------------

* Changed to mandoc (semantic) for the documentation format, for older systems
  man pages can be created with mandoc -Tman.
* Major improvements to the documentation quality.


License:
--------

* Changed license from MIT to ISC (simpler wording).


Bug fixes:
----------

* sfeed_update: fix issue with merging failed feeds, the date from the last
  (possibly failed) request would be used and passed as HTTP If-Modified-Since,
  so data would be missed, see commit 77a603a904087dd9fd3350da029f279f076e4f4b
  for more info.
* Fix possible TOCTOU in sfeed_frames.
* Fix crash with repeated tags: <link href="" /> in Atom feeds.
* Path truncations are now treated as fatal errors.
* Remove use of deprecated (POSIX) functions: timegm, utime.
* Fix off-by-one in string_append when reallocating buffer.
* Parsing datetime strings containing timezone suffix to UNIX timestamps
  was wrong. UNIX timestamps are in UTC+0 time. For simplicity sake output
  parsed datetime strings in a formatted manner without converting the
  time to the user selected timezone YYYY-mm-dd HH:MM:SS (UTC[+-][HHMM])|tz .
* Also to determine if an item is new - by comparing the UNIX timestamp -
  don't take into account timezones, because setenv(TZ,...) is just ugly and
  I don't use it.
* Lots of small fixes for compatibility with RSS / Atom feeds.
* Many more improvements, I'll keep a more detailed list in the future.


v0.8
====

No history
