2019/12/20 - 1.0.3:
- Various documentation improvements (many thanks to Vasilii Blazhnov
  questions)
- Sane: Fix: When getting number lists (for instance the possible resolutions),
  do not drop the last value.
- Safebet: Fix support of Canon Lide 30 (driver Sane plustek ; and possibly
  other scanners with a similar problem): Reorder the workaround/normalizers
  to make sure the Libinsane does not switch the option 'source' too many
  times. Otherwise the (buggy) driver ends up using the wrong source, with a
  wrong scan area.
- WIA2: Fix: Canon i-SENSYS MF3010: IStream.seek() can be called with argument
  'plibNewPosition' set to NULL.
- WIA2: Fix crashes caused by drivers that keeps using the IStream after
  releasing it (implies a small memory leak at each scanned page ... :/).
- WIA2: Fix: When an invalid device ID is passed as argument of
  impl->get_device(), it now returns INVALID_VALUE instead of UNKNOWN_ERROR.
- WIA2: Fix: When requesting the children of a child item, return an empty list
  instead of an error (like other implementations)
- WIA2: Handle correctly some other error codes that may be returned by the
  driver.
- Sane: Fix support of Black&White output (mode=Lineart).
- All APIs: Fix impl->base_name (previously, multiplexer always set it to
  NULL).
- Fix compilation as a 64bits library on Windows.


2019/10/14 - 1.0.2:
- Libinsane/gobject: Added mising flag Libinsane.CAPABILITY_INACTIVE.

- Sane: when the application expect one page, do not request a second one
  (fix unittests timeout).

- WIA2: Use the option 'dev_name' to figure out the manufacturer name and the
  device name. It is the only reliable option.
- WIA2: HP Photosmart C4200, Epson Perfection V30/V300:
  When getting the scanned image, allow calls to
  `seek(SEEK_SET, current_position)`.
  https://openpaper.work/scannerdb/report/280/
  https://openpaper.work/scannerdb/report/350/
- WIA2: Ignore sources that are not explicitely a flatbed or an ADF
  (for instance 0000\\Root\\Auto: It is simply not supported by Libinsane).

- TWAIN: Fujitsu fi-6130 / fi-6130dj:
  Keep reading Windows message queue while waiting for the DSM callback
  to be called with the value 'ready'. If we don't, the DSM callback never gets
  called.

- normalizers/opt_aliases: Fix: When using option aliases 'tl-x', 'tl-y',
  'br-x' and 'br-y', with WIA2, if the lowest values for 'xpos', 'ypos',
  'xextent' and 'yextent' don't have (0, 0) as minimum values, inaccurate
  values were set in WIA2 frame options.
  https://openpaper.work/fr/scanner_db/report/335/
- workarounds/cache: Fix: do not drop the item type (root, adf, flatbed, etc).
- normalizers/resolution: If the driver does not specify any constraint
  for the option 'resolution', put one default constraint.

- normalizers/safe_defaults: Sane + Fujitsu fi-6130dj:
  Cannot set the option 'page-height' to the maximum: Scanner rejects it.
  Option must be set to slightly less than the maximum.
  https://openpaper.work/fr/scanner_db/report/392/
- normalizers/safe_default: Sane + Epson Perfection 1250:
  If the default value for an option is out of the range specified by the
  option constraint, do not change it.
  https://openpaper.work/fr/scanner_db/report/328/
- workaround/opt_names: Sane + Canon Pixma MX520:
  Take into account that somes backend provide both an option 'resolution'
  and 'scan-resolution'. In that case, do not generate an option 'resolution'
  that would be an alias for 'scan-resolution', just keep 'resolution' as is.
- normalizers/source_names: Sane + Canon CanoScan Lide 30:
  Normalize the weird source names specified by the plustek driver.
  https://openpaper.work/fr/scanner_db/report/298/
- Sane + Canon Lide 220:
  * https://openpaper.work/fr/scanner_db/report/279/
  * workarounds/check_capabilty: Some options are marked as unreadable
    (INACTIVE) but may still be writable (for instance the option 'source').
  * normalizers/source_nodes: If the option 'source' is marked inactive, still
    try to set it, but do not return an error if setting it fails.

2019/08/18 - 1.0.1:
- Sane: make sure sane_cancel() is called at the end of all scans (required
  by some drivers)
- Sane: Fix memory leak when opening an invalid device. (thanks to
  Elliott Sales de Andrade)
- WIA/Twain: Fix reading bits-per-pixel from BMP header on big-endian CPU
  (thanks to Elliott Sales de Andrade)

2019/05/08 - 1.0:
- TWAIN: Add support for frame options (tl-x, tl-y, br-x, br-y)
- Sane: Fix: 'net' backend: when we get SANE_INFO_RELOAD_OPTIONS, we must call
  we must first call sane_get_option_descriptor() before sane_control_option()
  even if we just want to use sane_control_option() to get the number of
  options.
- normalizer 'min_one_source': do not use the type of the root item on the
  child, it's not a good value and prevents 'one_page_flatbed' from working
  correctly.
- Documentation updated, completed and clarified
- Linux: .so files now include the version number (thanks to Eliott Sales de
  Andrade)
- Fix various CI issues
- (unchanged) Known limitation: Only support scan of color images on Windows (24bits)

2019/03/10 - 0.9:
- First release: Test preview.
- Support of Sane, WIA2 and TWAIN.
- Known limitation: Only support scan of color images on Windows (24bits)
