Prepares a 1.4.0 release, following the convention of the previous ones: one commit for the soversion, one commit for NEWS. Relates to #170.
Why now
The last release, 1.3.1, is from 2025-10-17. Every 2026 device exists only in
git. A user with a MacBook Pro M5 who installs a distribution package gets a
library that cannot identify the machine, and idevicerestore then stops
with "Unable to discover device type".
libimobiledevice/idevicerestore#805 proposes a 2.0.0 release of
idevicerestore. It can only require 1.3.1 today, which makes that release
useless on current hardware.
Version number
1.4.0, not 1.3.2. The interface gains two functions:
irecv_async_usb_control_transfer()
irecv_async_usb_control_transfer_with_cancel()New functions with nothing removed is a minor release.
Soversion
6:2:1 becomes 7:0:2, which is the +1 : 0 : +1 case in the comment above
the value: "adds new functions to the interface".
This keeps the library major at 5, because CURRENT minus AGE stays 5. A local
build confirms it, since the file is still named libirecovery-1.0.5.dylib.
Programs linked against 1.3.1 therefore keep working.
Verification
./autogen.sh && make passes on macOS 27.0 on arm64.
Remaining step
The version comes from git describe through git-version-gen, so this PR
cannot set it. The tag 1.4.0 still has to be created by a maintainer.