diff --git a/easybuild/easyconfigs/c/CellBender/CellBender-0.4.0-foss-2025b-CUDA-12.9.1.eb b/easybuild/easyconfigs/c/CellBender/CellBender-0.4.0-foss-2025b-CUDA-12.9.1.eb new file mode 100644 index 000000000000..21104fac488a --- /dev/null +++ b/easybuild/easyconfigs/c/CellBender/CellBender-0.4.0-foss-2025b-CUDA-12.9.1.eb @@ -0,0 +1,56 @@ +easyblock = 'PythonBundle' + +name = 'CellBender' +version = '0.4.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'http://github.com/broadinstitute/CellBender' +description = """ +CellBender is a software package for eliminating technical artifacts from +high-throughput single-cell RNA sequencing (scRNA-seq) data. +""" + +toolchain = {'name': 'foss', 'version': '2025b'} + +builddependencies = [ + ('hatchling', '1.27.0'), + ('scikit-learn', '1.7.1'), # tests +] +dependencies = [ + ('CUDA', '12.9.1', '', SYSTEM), + ('Python', '3.13.5'), + ('SciPy-bundle', '2025.07'), + ('PyTorch', '2.9.1', versionsuffix), + ('pyro-ppl', '1.9.1', versionsuffix), + ('matplotlib', '3.10.5'), + ('IPython', '9.4.0'), + ('anndata', '0.12.16'), + ('jupyter-server', '2.17.0'), + ('PyTables', '3.10.2'), + ('dill', '0.4.1'), + ('lxml', '6.0.0'), +] + +exts_list = [ + ('lxml_html_clean', '0.4.4', { + 'checksums': ['58f39a9d632711202ed1d6d0b9b47a904e306c85de5761543b90e3e3f736acfb'], + }), + ('cellbender', version, { + 'runtest': 'pytest -v tests', + 'testinstall': True, + 'source_urls': ['https://github.com/broadinstitute/%(name)s/archive/'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'patches': ['CellBender-0.4.0_fix-version.patch'], + 'checksums': [ + {'cellbender-0.4.0.tar.gz': '4e25735f04047fffee68e7082c0471f89ffe0ac28a9f2a90481098503e07b40a'}, + {'CellBender-0.4.0_fix-version.patch': 'd19ed8202ebcde6a17f6b57da544d81aad24133b92c319b99b9247fa1ce6fdbd'}, + ], + }), +] + +sanity_check_commands = [ + "cellbender --help", + "cellbender remove-background --help", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/CellBender/CellBender-0.4.0_fix-version.patch b/easybuild/easyconfigs/c/CellBender/CellBender-0.4.0_fix-version.patch new file mode 100644 index 000000000000..c9e0f3e08c12 --- /dev/null +++ b/easybuild/easyconfigs/c/CellBender/CellBender-0.4.0_fix-version.patch @@ -0,0 +1,37 @@ +Use a static version instead of deriving the CellBender version from Git metadata. + +The GitHub release archive does not contain the .git directory required by +setuptools-git-versioning, which causes the installed package version to be +reported incorrectly. Set the release version explicitly in pyproject.toml +and remove setuptools-git-versioning from the build requirements. + +Author: Pavel Tomanek (Inuits/UGent) with help from ChatGPT5.6 +--- CellBender-0.4.0.orig/pyproject.toml ++++ CellBender-0.4.0/pyproject.toml +@@ -1,5 +1,5 @@ + [build-system] +-requires = ["setuptools>=61.2", "setuptools-git-versioning>=2.0"] ++requires = ["setuptools>=61.2"] + build-backend = "setuptools.build_meta" + + [project] +@@ -19,7 +19,8 @@ + "Programming Language :: Python :: 3.12", + "Topic :: Scientific/Engineering :: Bio-Informatics", + ] +-dynamic = ["version", "dependencies", "optional-dependencies"] ++version = "0.4.0" ++dynamic = ["dependencies", "optional-dependencies"] + + [project.readme] + file = "README.rst" +@@ -48,10 +49,6 @@ + [tool.setuptools.package-data] + "*" = ["cellbender.remove_background.report.ipynb"] + +-[tool.setuptools-git-versioning] +-enabled = true +-starting_version = "0.3.2" +- + [tool.pytest.ini_options] + testpaths = ["tests"] diff --git a/easybuild/easyconfigs/p/pyro-ppl/pyro-ppl-1.9.1-foss-2025b-CUDA-12.9.1.eb b/easybuild/easyconfigs/p/pyro-ppl/pyro-ppl-1.9.1-foss-2025b-CUDA-12.9.1.eb new file mode 100644 index 000000000000..b5d6d7e3db16 --- /dev/null +++ b/easybuild/easyconfigs/p/pyro-ppl/pyro-ppl-1.9.1-foss-2025b-CUDA-12.9.1.eb @@ -0,0 +1,39 @@ +easyblock = 'PythonBundle' + +name = 'pyro-ppl' +version = '1.9.1' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/pyro-ppl/pyro' +description = "Pyro is a flexible, scalable deep probabilistic programming library built on PyTorch." + +toolchain = {'name': 'foss', 'version': '2025b'} + +builddependencies = [('hatchling', '1.27.0')] +dependencies = [ + ('CUDA', '12.9.1', '', SYSTEM), + ('Python', '3.13.5'), + ('SciPy-bundle', '2025.07'), + ('PyTorch', '2.9.1', versionsuffix), + ('tqdm', '4.67.1'), + ('opt-einsum', '3.4.0'), +] + +exts_list = [ + ('pyro-api', '0.1.2', { + 'modulename': 'pyroapi', + 'checksums': ['a1b900d9580aa1c2fab3b123ab7ff33413744da7c5f440bd4aadc4d40d14d920'], + }), + (name, version, { + 'modulename': 'pyro', + 'checksums': ['5e1596de276c038a3f77d2580a90d0a97126e0104900444a088eee620bb0d65e'], + }), +] + +sanity_check_commands = [ + "python -c 'from pyroapi import distributions as dist'", + "python -c 'from pyroapi import infer, ops, optim, pyro, pyro_backend'", + "python -c 'from pyro import infer, nn, distributions'", +] + +moduleclass = 'tools'