According to upstream, zstd is ABI and ABI backwards compatible, so we should be able to do this without having to rebuild downward dependencies if we're careful.
Metadata Update from @dcavalca: - Issue assigned to dcavalca
I'm not sure this is entirely true. The reason stated for not updating to 1.5.0 in the kernel was related to API/ABI incompatibilities.
The reason stated for not updating to 1.5.0 in the kernel was related to API/ABI incompatibilities.
The reason I'm updating the kernel to a release of zstd that will be called zstd-1.4.10, which is based on zstd-1.4.9 is because:
I intend to update the kernel to zstd-1.5.1 after my upgrade is merged.
Zstd provides ABI & API compatibility for its stable API (all functions not hidden behind #ifdef ZSTD_STATIC_LINKING_ONLY in the header).
#ifdef ZSTD_STATIC_LINKING_ONLY
For functions hidden behind ZSTD_STATIC_LINKING_ONLY we don't guarantee API/ABI stability, as its intended for experimental features we aren't sure we will support long term. But so far we've provided it for all symbols except ZBUFF_.* symbols, which we've removed from the library in zstd-1.5.0, and have been emitting deprecation warnings since zstd-1.1.2 released in December 2016. It is also still possible to build zstd-1.5.0 with ZBUFF_.* symbols if we wanted to.
ZSTD_STATIC_LINKING_ONLY
ZBUFF_.*
Scratch build: https://cbs.centos.org/koji/taskinfo?taskID=2592593
Built and tagged zstd-1.5.0-2.hs.el8 for -release
Metadata Update from @dcavalca: - Issue status updated to: Closed (was: Open)