This file lists notable changes in each release. For the full history of all
changes, see ChangeLog.

Version 1.94.5:

Highlights:
 - fprintd now depends on libfprint 1.94.9
 - Improved handling of device errors
 - pam: reduce minimum timeout to 1 second
 - pam: support unlimited timeout

Version 1.94.4:

Highlights:
 - Support building in other non-linux unix platforms (FreeBSD tested)
 - Bump minimum glib dependency version to 2.64
 - Allow interactive DBus authorization on fprintd-tools
 - Use prefix to determine the PAM modules dir
 - Translation updates

Version 1.94.3:

Highlights:
 - Don't try to clear storage on devices without internal storage
 - Build: Add option to use libelogind for DBus
 - Fixed loading external storage modules
 - Do not require bash to build (just posix sh)
 - Tests fixes for newer python, python-dbusmock and libfprint
 - Even more translation updates

Version 1.94.2:

API users, please adjust now to planned API changes in 2.0:
 - EnrollStart will throw an error if the finger was enrolled already
 - Interactive DBus authentication will only happen when requested

Highlights:
 - Add PAM module options to ignore timeout/retry limits
 - A lot of translation updates after the POT file was fixed
 - Improve meson build file and fix building with meson 0.61.0

Version 1.94.1:

API users, please adjust now to planned API changes in 2.0:
 - EnrollStart will throw an error if the finger was enrolled already
 - Interactive DBus authentication will only happen when requested

Highlights.
 - Fix systemd unit so that udev hotplug events are processed
 - Report back the selected finger if there is only one
 - Change PolicyKit strings for clarity
 - Various fixes to the testsuite
 - Plenty of translation updates

Version 1.94.0:

API users, please adjust now to planned API changes in 2.0:
 - EnrollStart will throw an error if the finger was enrolled already
 - Interactive DBus authentication will only happen when requested

Highlights:
 - Implement suspend/resume handling.
   This requires writing "power/persist" and "power/wakeup" in sysfs.
 - Support libfprint overheat protections
 - Delete host prints when device prints disappeared
 - pam: Immediately return success information
 - Plenty of updated translations thanks to move to Fedora Weblate
 - Fix possible race when retrieving session information
 - Fix possible race when a client disconnects
 - GLib 2.56 compatibility fixes


Version 1.92.0:

API users, please adjust now to planned API changes in 2.0:
 - EnrollStart will throw an error if the finger was enrolled already
 - Interactive DBus authentication will only happen when requested

Highlights:
 - fprintd now prevents the same finger to be enrolled twice
 - Support clearing storage of match-on-chip devices
 - pam: Cancel authentication on SIGINT (e.g. ctrl+c with sudo)
 - pam: Always return PAM_AUTHINFO_UNAVAIL for devices without prints
 - Expose finger status on DBus
 - Add method to delete only a specific print of a user
 - Improved error reporting for deletion
 - Wait for finger removal before cancelling operations
 - Prefer older prints when garbage collecting
 - Major improvements to test coverage

Version 1.90.9:

Highlights:
 - Fix multiple daemon lockup issues (#97)
 - Fix print garbage collection to not delete used prints
 - pam: Use the device with the most prints


Version 1.90.8:

It seems that we are finally reaching the end of the tunnel with regard
to regressions. One more issue that cropped up was that a pam_fprintd fix
to avoid a possible authentication bypass caused issues when fprintd was
just started on demand.

Highlights:
 - pam: Only listen to NameOwnerChanged after fprintd is known to run (#94)
 - Place new ObjectManager DBus API at /net/reactivated/Fprint


Version 1.90.7:

While 1.90.6 fixed a number of issues, we did have a bad regression due
causing pam_fprintd to crash when there are no fingerprint devices
installed.

Highlights:
 - pam: Guard strdup calls against NULL pointers


Version 1.90.6:

The 1.90.5 release was unusable due to a number of inter-related issues
with the DBus interface and authorization. We also found a number of
problems with possible security implications.

Currently fprintd will do interactive authorization even if this was not
requested using the correct DBus method call flag. All API users MUST be
updated to set the flag as it will be enabled in the future!

Highlights:
 - Fix fprintd DBus configuration
 - Change details of what requires authorization
 - Fix various race conditions in pam_fprintd
 - Permit interactive authorization from fprintd utilities
 - Do not allow deletion while another operation is ongoing


Version 1.90.5:

The 1.90.4 release contained some bad errors, this release addresses those.

Highlights:
 - Permit building with polkit older than 0.114
 - Fix possible issues with PAM test
 - Fix incorrect DBus policy
 - Fix build so that CFLAGS enviroment is correctly used
 - Skip hotplug test with older libfprint (which times out otherwise)

Version 1.90.4:

This fprintd release contains major core reworkings and improved testing.
As such, only the most important changes are listed here, focusing on
changes relevant to distributors.

Highlights:
 - Authentication is now required to enroll a new print (#5)
 - Add support for the libfprint early reporting mechanism
 - Proper hotplug support together with libfprint 1.90.4
 - Handle STATE_DIRECTORY containing multiple paths

version 1.90.1:
- Add support for prints saved on the fingerprint device itself
- Add integration tests using the virtual image driver, and further
  tests for the utilities
- Port build system to meson
- Loads of build warnings and memory leak fixes

- PAM module:
  - Port PAM module to sd-bus from dbus-glib
  - Use systemd to not ask for a fingerprint scan on remote logins
  - Add man page for PAM module
  - Add tests

This version requires libfprint 1.90.1, a 2.0 pre-release.

version 0.9.0:
- Fix hangs when there the verification error was "retry"
- Update for fp_get_pollfds() changes
- Fix "client_username" memory leak, fix memory leak when saving a file
- Create the fingerprint storage directory at install time,
  the storage path is now hard-coded as /var/lib/fprint and created by
  systemd when the service is started

version 0.8.1:
- Fix build when builddir != srcdir
- Fix possible crash on exit
- Avoid warnings in copy/paste header
- Sandbox fprintd daemon more
- Update website address
- Minimise debug output
- Updated translations

version 0.8.0:
- Lockdown the daemon to minimise potential security issues
- Don't wake up readers when there's no enrolled fingerprints

version 0.7.0:
- Fix crash in the daemon when cancelling PAM conversation
- Fix build warnings and update translations

version 0.6.0:
- Fix warning in fprintd.pod file
- Reduce logging during normal operation
- Fix eventfd leak in PAM module
- List possible values for finger when enrolling
- Fix possible crash in fprintd-verify
- Fix listing and deleting fingerprints when there's more than
  one reader available

version 0.5.1:
- Add max-tries and timeout arguments to PAM module
- Add ability to require the fingerprint for enrolled users
- Add "-f <finger>" option to enroll utilities

version 0.5.0:
- Don't use a device name if there's only one reader
- Avoid possible crash when trying to login without devices
- Fix possible crashes due to uninitialised variables
- Fix hang when the machine has no USB bus
- Add a systemd unit file

version 0.4.1:
- Enable gtk-doc by default so that file aren't
  missing in the tarball

version 0.4.0:
- Loads of new translations
- Fix crasher when PAM module gets unloaded
- Use GIO to monitor D-Bus clients instead of custom code

version 0.2.0:
- First actual release
