Releases: clearlinux/swupd-client
Release v3.7.0
This release includes major updates to various components of swupd-client:
A rework of the bundle subscription code, making the consolidation steps
simpler, reporting bundle changes for updates instead of "manifest" changes,
accounting fixes for the update stats, and reworking the update list creation
logic to massively improve performance by not calling verify_file() when
not needed.
The interface for functional tests was changed to better accommodate updating
test cases when output changes (because of code changes/fixes), such that
each test case has a single expected output that is tracked as a whole,
rather than individual output lines.
Many performance enchancements to drastically reduce client update time:
- Cutting down the amount of recursion when adding subscribed bundles.
- Caching the latest version number.
- Caching manifest hash checks if they succeed.
- Checking only the manifest headers on paths where the whole manifest does not
need to be parsed.
- Enabling multiplexing in curl.
- Setting nosync on staging dir removal operations.
- Fixing statistics and time reporting for updates.
Release v3.6.6
This release includes fixes for handling and removing files and directories,
notably a fix that caused swupd to fail on docker containers due to the overlay
filesystem behaviour, and reading system clock from a better clock source not
hindered by time skew or ntp adjustments.
Release v3.6.5
This release fixes and removes various checks and output to provide a better
user experience, and more significantly, fixes the hysteresis logic for
fullfile downloads, and updates the ordering for the fallbacks swupd uses
to determine where to download updates from.
Release v3.6.4
This release has a fix to check if a delta file exists before trying to apply it, and a fix to recover from missing or bad bundle manifest files.
v3.6.3
v3.6.2
This release includes a change to configure.ac to support supplying values for the config files swupd-client uses to figure out the URL and format it needs, lots of code cleanups, memory leak fixes, segfault fixes in some corner cases, enabling HTTP2 protocol with HTTP1 fallback, and enabling TLS1.2.
v3.6.1
This release introduces a change to the hashing scheme regarding delta names, and directory hashes. Fixes are also included for using consistent paths for the certificates, attempting local signature verification before downloading the Manifest.MoM and signature from the server, patching functional tests to accomodate the new hash changes, and various memory leaks and code cleanup.
v3.6.0
This release enables support for verification of signed MoM manifests,
with the MoM being the root of trust for any swupd-client action that
references update content (i.e. 'update', 'verify', etc.). Also, to
complete the chain of trust rooted at the MoM, integrity checks have
been enabled for bundle manifests.
To enable this feature, pass the --enable-signature-verification option
to the configure script.
v3.5.7
This release incorporates a couple of bug fixes.
- Fixes the bash completion script to support calling 'swupd' with an
absolute path (e.g. /usr/bin/swupd). - Improve behavior of 'update' when crossing a minversion, when
potentially many update artifacts only have their "last update" field
modified. For these artifacts, 'update' will now avoid downloading
fresh copies, thus improving performance times for an update.
v3.5.6
This release includes a few bug fixes:
- Improves 'bundle-add' reliability by falling back to downloading full
files in case packs contain incomplete or corrupt content. - Addresses a memory leak in bundle includes processing.
- Improves error handling in out-of-memory conditions.
- Fixes an issue with libcurl writing to invalid memory when downloading
version info.