enhance PythonPackage and PythonBundle easyblocks to add support to install dummy Python packages#4063
Conversation
|
Test report in easybuilders/easybuild-easyconfigs#25266 (comment) |
…heck existence of METADATA file for dummy packages
PythonPackage and PythonBundle easyblocks to add support to install dummy Python packages
retain condition to replace 'python' in exts_filter, only do so when needed
|
@boegelbot please test @ jsc-zen3 |
|
@boegel: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de PR test command '
Test results coming soon (I hope)... Details- notification for comment with ID 4132702682 processed Message to humans: this is just bookkeeping information for me, |
|
✅ retested use of |
|
Test report by @boegelbot Overview of tested easyconfigs (in order)
Build succeeded for 5 out of 5 (total: 3 hours 2 mins 32 secs) (5 easyconfigs in total) |
|
Test report by @boegel Overview of tested easyconfigs (in order)
Build succeeded for 6 out of 6 (total: 4 hours 38 mins 59 secs) (6 easyconfigs in total) |
This PR adds a new
dummy_packageoption toPythonPackageandPythonBundlethat allows to install any python package as a dummy package, which is a fake installation that makes package managers believe that the package is installed.In practice, this does the following:
METADATAfile that contains the name and version of the packageThe purpose of dummy packages is to be able to fulfill harcoded requirements in wheels that target python packages repackaging libraries that are already available in EasyBuild. The most notorious example are the CUDA libraries, wheels with support for CUDA need a collection of wheels from Nvidia that just repackage the CUDA libraries. Therefore, with this PR we can depend on the CUDA easyconfig as usual, while still have the fake cuda python packages to not break
pip check.Easyconfig using this feature in easybuilders/easybuild-easyconfigs#25266