[xlsxio] Limit to use minizip-ng 4.0.7 as requirement to avoid incompatibility#28528
[xlsxio] Limit to use minizip-ng 4.0.7 as requirement to avoid incompatibility#28528uilianries wants to merge 1 commit intoconan-io:masterfrom
Conversation
Signed-off-by: Uilian Ries <uilianr@jfrog.com>
|
This was a bit confusing because we do not currently have minizip-ng newer than 4.0.7 - so while it is a conservative and reasonable fix - nobody is experiencing it if they are using vanilla Conan Center. I would probably consider just refactoring this PR to publish the newer xlxsio version that already fixes this: brechtsanders/xlsxio@a9016eb |
That commit is not enough because minzip-ng provides compatible headers under the folder I just sent the PR brechtsanders/xlsxio#144 to the upstream, so we can bump to a new future release using the minizip-ng support correctly. |
Summary
Changes to recipe: xlsxio/0.2.34
Motivation
When reviewing #28004 and testing the side effects of having
minizip-ng/mz_compatibility=True, the package for xlsxio failed to be built using minizip/4.0.10:Full build log: xlsxio-0.2.34-linux-gcc11-static-minizipng.log
As minizip-ng is an optional dependency, it passed by the CI without warnings, but users are broken in case using it due version range not limiting to the proper version.
The minizip-ng 4.0.8 passed by a transformation, including replacing the
mz_compat.hby a few headers likeminizip-ng/zip.hFurther details about that release can be found in their changelog: https://github.com/zlib-ng/minizip-ng/releases/tag/4.0.8
The specific commit that changed the minizip-ng behavior is zlib-ng/minizip-ng@7df56f7. The release 4.0.8 is a patch version, but it looks a breaking change anyway.
Details
This PR limits the xlsxio/0.2.34 to use minizip-ng only until 4.0.7, which is safe:
xlsxio-0.2.34-linux-gcc11-static-patched.log
I also removed the logic checking the minimal version, as we only have 0.2.34 available in the recipe.
However, doing a quick look at xlsxio/0.2.36 (not in CCI yet), it has already adapted to use newer releases of minizip-ng, which will result in further changes in the recipe.