Version 0.10.4 (2023-01-24)
===========================

Changes:
- Support PHP 8.2

Version 0.10.3 (2022-09-14)
===========================

Bug fixes:
- Return all removed articles when multiple statuses are requested in Miniflux
- Allow multiple date ranges in search strings in Tiny Tiny RSS
- Honour user time zone when interpreting search strings in Tiny Tiny RSS
- Perform MySQL table maintenance more reliably
- Address CVE-2022-31090, CVE-2022-31091, CVE-2022-29248, and CVE-2022-31109

Version 0.10.2 (2022-04-04)
===========================

Changes:
- Update Guzzle PSR-7 due to CVE-2022-24775

Version 0.10.1 (2022-01-17)
===========================

Changes:
- Support PHP 8.1

Version 0.10.0 (2021-07-11)
===========================

New features:
- Complete Unix manual page
- Support for running service as a forking daemon
- Respond to TERM and HUP signals when possible

Changes:
- Packages for Debian and related are now available (see manual for details)

Version 0.9.2 (2021-05-25)
==========================

Bug fixes:
- Do not fail adding users to an empty database (regression since 0.9.0)
- Cleanly ignore unknown configuration properties
- Set access mode to rw-r---- when creating SQLite databases

Changes:
- Packages for Arch Linux are now available (see manual for details)
- Numerous improvements to the manual

Version 0.9.1 (2021-03-18)
==========================

Bug fixes:
- Respond to PUT requests with 201 rather than 200 in Miniflux

Changes:
- Correct Web server configuration in manual

Version 0.9.0 (2021-03-06)
==========================

New features:
- Support for the Miniflux protocol (see manual for details)
- Support for API level 15 of Tiny Tiny RSS
- Support for feed icons in Fever
- Command-line functionality for managing user metadata
- Command-line functionality for managing Miniflux login tokens

Bug fixes:
- Further relax Fever HTTP correctness, to fix more clients
- Use icons specified in Atom feeds when available
- Do not return null as subscription unread count
- Explicitly forbid U+003A COLON and control characters in usernames, for 
  compatibility with RFC 7617
- Never return 401 in response to an OPTIONS request
- Accept "t" and "f" as booleans in Tiny Tiny RSS

Changes:
- Administrator account requirements for Nextcloud News functionality are
  now enforced
- E_DEPRECATED is now suppressed for compatibility with PHP 8 until affected
  dependencies can be replaced

Version 0.8.5 (2020-10-27)
==========================

Bug fixes:
- Relax Fever HTTP correctness, to fix some clients
- Add the QUERY_STRING FastCGI parameter to the sample Nginx configuration

Version 0.8.4 (2020-09-09)
==========================

Bug fixes:
- Don't crash updating feeds cached without ETag (regression since 0.8.3)

Version 0.8.3 (2020-02-16)
==========================

Changes:
- Officially require PHP 7.1 (accidentally required since version 0.8.0)
- Various internal changes pursuant to use of PHP 7.1

Version 0.8.2 (2019-12-07)
==========================

Bug fixes:
- Enforce foreign key constraints in MySQL
- Widen most text fields for MySQL

Version 0.8.1 (2019-10-28)
==========================

Bug fixes:
- Don't crash updating feeds cached solely via ETag
- Don't fail importing new folders from OPML files
- Don't fail adding a feed which collides with another via redirection
- Don't fail on very long text-search queries containing question marks
  when using PostgreSQL or MySQL
- Specify HTTP authentication encoding as UTF-8

Changes:
- Include a user manual
- Normalize newsfeed URLs before checking for duplicates

Version 0.8.0 (2019-07-26)
==========================

New features:
- Support for the Fever protocol (see manual for details)
- Command line functionality for clearing a password, disabling the account
- Command line options for dealing with Fever passwords
- Command line functionality for importing and exporting OPML
- Command line documentation of all commands and options

Bug fixes:
- Treat command line option -h the same as --help
- Sort Tiny Tiny RSS special feeds according to special ordering
- Invalidate sessions when passwords are changed
- Correct example systemd unit to start after PostgreSQL and MySQL

Changes:
- Perform regular database maintenance to improve long-term performance

Version 0.7.1 (2019-03-25)
==========================

Bug fixes:
- Correctly initialize new on-disk SQLite databases
- Retry queries on schema changes with PDO SQLite
- Correctly read author name from database in Tiny Tiny RSS
- Update internal version number to correct version

Changes:
- Improve performance of lesser-used database queries

Version 0.7.0 (2019-03-02)
==========================

New features:
- Support for basic freeform searching in Tiny Tiny RSS
- Console command to refresh all stale feeds once then exit

Bug fixes:
- Ensure updating does not fail with newsfeeds larger than 250 entries

Version 0.6.1 (2019-01-23)
==========================

Bug fixes:
- Unify SQL timeout settings
- Correctly escape shell command in subprocess service driver
- Correctly allow null time intervals in configuration when appropriate

Changes:
- Change PicoFeed dependency to maintained version (Thanks, Aaron Parecki!)
- Remove non-functional cURL service driver

Version 0.6.0 (2019-01-21)
==========================

New features:
- Support for PostgreSQL databases
- Support for MySQL databases
- Validation of configuration parameters

Bug fixes:
- Use a general-purpose Unicode collation with SQLite databases
- Use the correct SQLite schema change procedure for 3.25 and later

Changes:
- Improve performance of common database queries by 80-90%
- Make configuration defaults consistent with their defined types

Version 0.5.1 (2018-11-10)
==========================

Bug fixes:
- Correctly initialize PDO database driver

Version 0.5.0 (2018-11-07)
==========================

New features:
- Command line functionality for listing, removing, and changing the password
  of users as well as testing authentication

Bug fixes:
- Print command-line error messages more sensibly
- Allow exporting default configuration to standard output
- Fail correctly on authentication failure
- Prefer JSON data over GET parameters in Nextcloud News

Changes:
- Simplify user management backend to minimize opportunity for bugs
- Document previously unknown Nextcloud News behaviour

Version 0.4.0 (2018-10-26)
==========================

New features:
- Support for HTTP authentication in Tiny Tiny RSS (see manual for details)
- New userHTTPAuthRequired and userSessionEnforced settings

Version 0.3.1 (2018-07-22)
==========================

Bug fixes:
- Correctly read the configuration file on start-up
- Minor fixes to code and documentation

Changes:
- Disable memory and time limits to avoid deadlocks with Nextcloud News

Version 0.3.0 (2018-01-12)
==========================

New features:
- Support for SQLite3 via PDO
- Support for cross-origin resource sharing in all protocols

Bug fixes:
- Correctly handle %-encoded request URLs
- Overhaul protocol detection to fix various subtle bugs
- Overhaul HTTP response handling for more consistent results

Changes:
- Make date strings in TTRSS explicitly UTC

Version 0.2.1 (2017-12-07)
==========================

Bug fixes:
- Make SQLite timeouts much less likely
- Accept base64-encoded passwords from TTRSS clients
- Rename feeds correctly via TTRSS protocol
- Toggle marks correctly via TTRSS protocol
- Sort everything case-insensitively
- Be even stricter about output data types in Nextcloud News

Changes:
- Do not omit read feeds from TTRSS' getCounters, to fix some clients

Version 0.2.0 (2017-11-30)
==========================

New features:
- Support for the Tiny Tiny RSS protocol (see manual for details)
- Support for HTTP OPTIONS requests in all protocols

Bug fixes:
- Perform feed discovery *correctly*
- Expose the incorrectDbCharset boolean in the Nextcloud News server status
- Give Nextcloud News articles' guidHash attribute the correct type (string)

Changes:
- Overhaul input type normalization to minimize bug opportunities

Version 0.1.1 (2017-09-30)
==========================

Bug fixes:
- Perform feed discovery like Nextcloud News does
- Respond correctly to HEAD requests
- Various minor fixes

Version 0.1.0 (2017-08-29)
==========================

New features:
- Initial release