Deprecate patool
With patool not being particularly active upstream (technically not unmaintained any more, but there still haven't been any releases) causing various issues and culminating in portmod both depending on patool itself, and providing it through the python repository so that it actually works, I'm thinking that we should instead just rely on python's builtin archive support (should cover zip
and tar.{xz,gz,bz2}
at least) and require repositories to provide any further support through custom src_unpack
.
7zip provides pre-built binaries for windows, macos and Linux (including statically compiled ones), which should cover most archive formats used by the openmw package repository. On the other hand I think proper package testing CI (for fetchable packages of course) would be useful to verify that this actually works on Windows/MacOS before it gets deployed, as I can't test those manually.
This shouldn't cause any backwards-compatibility issues, since custom src_unpack
would work fine already and old versions of portmod using patool already support the restricted subset of archive formats we'd be using in future, however changing the default src_unpack would cause forwards-compatibility issues as old packages which expect patool to be used could break if they use unsupported archive formats. Probably the best option is to have the new src_unpack
be only for Pybuild2, which should avoid breaking anything, but it means that until Pybuild1 is removed portmod will still need to depend on patool.