From fb9f1822994a88d40b3a6be8c04d3ca078a591e3 Mon Sep 17 00:00:00 2001 From: thoffman Date: Sat, 17 Aug 2024 20:03:08 +0200 Subject: [PATCH 01/18] {bio}[foss/2023a] AlphaPulldown v2.0.0b4 Uni-Core v0.0.3 w/ CUDA v12.1.1 --- ...Pulldown-2.0.0b4-foss-2023a-CUDA-12.1.1.eb | 85 +++++++++++++++++++ ..._af2_biopython_IUPACData_as_SCOPData.patch | 27 ++++++ .../dm-haiku-0.0.11-foss-2023a-CUDA-12.1.1.eb | 57 +++++++++++++ .../OpenMM-8.0.0-foss-2023a-CUDA-12.1.1.eb | 70 +++++++++++++++ .../Uni-Core-0.0.3-foss-2023a-CUDA-12.1.1.eb | 60 +++++++++++++ 5 files changed, 299 insertions(+) create mode 100644 easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4-foss-2023a-CUDA-12.1.1.eb create mode 100644 easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4_af2_biopython_IUPACData_as_SCOPData.patch create mode 100644 easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.11-foss-2023a-CUDA-12.1.1.eb create mode 100644 easybuild/easyconfigs/o/OpenMM/OpenMM-8.0.0-foss-2023a-CUDA-12.1.1.eb create mode 100644 easybuild/easyconfigs/u/Uni-Core/Uni-Core-0.0.3-foss-2023a-CUDA-12.1.1.eb diff --git a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..62c616bf500 --- /dev/null +++ b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,85 @@ +# created by Denis Kristak (Inuits) +# update: Thomas Hoffmann, EMBL +easyblock = 'PythonBundle' + +name = 'AlphaPulldown' +version = '2.0.0b4' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/KosinskiLab/AlphaPulldown' +description = """AlphaPulldown is a Python package that streamlines protein-protein +interaction screens and high-throughput modelling of higher-order oligomers using AlphaFold-Multimer""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('OpenMM', '8.0.0', versionsuffix), + ('Kalign', '3.4.0'), + ('PyYAML', '6.0'), + ('jax', '0.4.25', versionsuffix), # also provides absl-py + ('Biopython', '1.83'), + ('h5py', '3.9.0'), + ('IPython', '8.14.0'), + ('JupyterLab', '4.0.5'), + ('matplotlib', '3.7.2'), + ('TensorFlow', '2.15.1', versionsuffix), + ('PyTorch', '2.1.2', versionsuffix), + ('tqdm', '4.66.1'), + ('dm-tree', '0.1.8'), + ('py3Dmol', '2.1.0'), + ('HMMER', '3.4'), + ('HH-suite', '3.3.0'), + ('dm-haiku', '0.0.11', versionsuffix), + ('Uni-Core', '0.0.3', versionsuffix), +] + +use_pip = True + +exts_list = [ + ('contextlib2', '21.6.0', { + 'checksums': ['ab1e2bfe1d01d968e1b7e8d9023bc51ef3509bba217bb730cee3827e1ee82869'], + }), + ('ml-collections', '0.1.1', { + 'preinstallopts': "touch requirements.txt && touch requirements-test.txt && ", + 'sources': ['ml_collections-%(version)s.tar.gz'], + 'checksums': ['3fefcc72ec433aa1e5d32307a3e474bbb67f405be814ea52a2166bfc9dbe68cc'], + }), + ('PDBFixer', '1.9', { + 'source_urls': ['https://github.com/openmm/pdbfixer/archive/'], + 'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['88b9a77e50655f89d0eb2075093773e82c27a4cef842cb7d735c877b20cd39fb'], + }), + (name, version, { + 'patches': ['AlphaPulldown-2.0.0b4_af2_biopython_IUPACData_as_SCOPData.patch'], + 'preinstallopts': "sed -i 's/[>=]=.*//g' setup.cfg && ", + 'sources': [{ + 'filename': '%(name)s-%(version)s.tar.gz', + 'git_config': { + 'url': 'https://github.com/KosinskiLab', + 'repo_name': 'AlphaPulldown', + 'tag': '2.0.0b4', + 'recursive': True + } + }], + 'checksums': [ + None, + # AlphaPulldown-2.0.0b4_af2_biopython_IUPACData_as_SCOPData.patch: + '0f8ff118bbab50b97a397a9e4de890155b77f868db9913ea3b496d422330bc18' + ], + }), +] + +fix_python_shebang_for = ['bin/*.py'] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/run_multimer_jobs.py', 'bin/rename_colab_search_a3m.py'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/alphapulldown'], +} + +sanity_check_commands = ["run_multimer_jobs.py --help | grep 'A script to perform structure prediction'"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4_af2_biopython_IUPACData_as_SCOPData.patch b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4_af2_biopython_IUPACData_as_SCOPData.patch new file mode 100644 index 00000000000..f6a89591dcf --- /dev/null +++ b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4_af2_biopython_IUPACData_as_SCOPData.patch @@ -0,0 +1,27 @@ +# Thomas Hoffmann, EMBL Heidelberg, structures-it@embl.de, 2024/08 +# allow to use BioPython >= 1.83 +diff -ru AlphaPulldown/alphafold/alphafold/data/mmcif_parsing.py AlphaPulldown-2.0.0b4_alphfold_SCOP.patch/alphafold/alphafold/data/mmcif_parsing.py +--- AlphaPulldown/alphafold/alphafold/data/mmcif_parsing.py 2024-08-17 15:34:23.000000000 +0200 ++++ AlphaPulldown-2.0.0b4_alphfold_SCOP.patch/alphafold/alphafold/data/mmcif_parsing.py 2024-08-17 15:44:47.460653530 +0200 +@@ -21,7 +21,7 @@ + + from absl import logging + from Bio import PDB +-from Bio.Data import SCOPData ++from Bio.Data import IUPACData as SCOPData + + # Type aliases: + ChainId = str +fix import of protein_letters_3to1 from Biopython +author: Kenneth Hoste (HPC-UGent) +--- AlphaPulldown/alphapulldown/utils/remove_clashes_low_plddt.py.orig 2024-06-05 09:30:16.114746286 +0200 ++++ AlphaPulldown/alphapulldown/utils/remove_clashes_low_plddt.py 2024-06-05 09:30:35.242665615 +0200 +@@ -4,7 +4,7 @@ + from alphafold.data.mmcif_parsing import parse + from alphafold.common.residue_constants import residue_atoms, atom_types + from Bio.PDB import NeighborSearch, PDBIO, MMCIFIO +-from Bio.PDB.Polypeptide import protein_letters_3to1 ++from Bio.Data.IUPACData import protein_letters_3to1 + from Bio import SeqIO + from colabfold.batch import convert_pdb_to_mmcif + from Bio.PDB import Structure, Model, Chain, Residue diff --git a/easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.11-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.11-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..a30f458a967 --- /dev/null +++ b/easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.11-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,57 @@ +# update 0.9.11: Thomas Hoffmann (EMBL) +easyblock = 'PythonBundle' + +name = 'dm-haiku' +version = '0.0.11' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/deepmind/dm-haiku' +description = """Haiku is a simple neural network library for JAX developed by some of the authors of Sonnet, a neural +network library for TensorFlow.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('jax', '0.4.25', versionsuffix), # required by jmp, also provides absl-py + ('PyYAML', '6.0'), + ('CUDA', '12.1.1', '', SYSTEM), + ('tensorstore', '0.1.53'), + ('protobuf-python', '4.24.0'), +] + +use_pip = True + +exts_list = [ + ('jmp', '0.0.4', { + 'checksums': ['5dfeb0fd7c7a9f72a70fff0aab9d0cbfae32a809c02f4037ff3485ceb33e1730'], + }), + ('flax', '0.8.1', { + 'checksums': ['ce3d99e9b4c0d2e4d9fc28bc56cced8ba953adfd695aabd24f096b4c8a7e2f92'], + }), + ('optax', '0.1.9', { + 'checksums': ['731f43e8b404f50a5ef025b1261894d7d0300f7ad9cb688ea08f67b40822e94f'], + }), + ('orbax_checkpoint', '0.5.3', { + 'modulename': 'orbax', + 'checksums': ['1572904cbbfe8513927e0d80f80b730e0ef2f680332d3c2810d8443532938b45'], + }), + ('toolz', '0.12.1', { + 'checksums': ['ecca342664893f177a13dac0e6b41cbd8ac25a358e5f215316d43e2100224f4d'], + }), + ('chex', '0.1.85', { + 'checksums': ['a27cfe87119d6e1fe24ccc1438a59195e6dc1d6e0e10099fcf618c3f64771faf'], + }), + ('nest_asyncio', '1.6.0', { + 'checksums': ['6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe'], + }), + (name, version, { + 'modulename': 'haiku', + 'checksums': ['c420a90c6a76c1d941996698840089df0d352806312eaf7b737486f6c6a32ef2'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/o/OpenMM/OpenMM-8.0.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/o/OpenMM/OpenMM-8.0.0-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..8cf271071e7 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenMM/OpenMM-8.0.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,70 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Pablo Escobar Lopez +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics +# Update to 7.5.1 +# J. Sassmannshausen / GSTT + +easyblock = 'CMakeMake' + +name = 'OpenMM' +version = '8.0.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://openmm.org' +description = "OpenMM is a toolkit for molecular simulation." + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'opt': True} + +source_urls = ['https://github.com/openmm/openmm/archive/'] +sources = ['%(version)s.tar.gz'] +patches = ['OpenMM-8.0.0_add_no_tree_vectorize.patch'] +checksums = [ + 'dc63d7b47c8bb7b169c409cfd63d909ed0ce1ae114d37c627bf7a4231acf488e', # 8.0.0.tar.gz + '4bacf45443a2472e59798743f27d07481e065d784cbbea7be22aa6427af0d2bd', # OpenMM-8.0.0_add_no_tree_vectorize.patch +] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Doxygen', '1.9.7'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('SWIG', '4.1.1'), + ('CUDA', '12.1.1', '', SYSTEM), +] + +# Set the OPENMM_CUDA_COMPILER variable to make sure that all tests use the right nvcc, +# Otherwise they will use the wrong path: `/usr/local/cuda/bin/nvcc` +pretestopts = ' export OPENMM_CUDA_COMPILER=${EBROOTCUDA}/bin/nvcc && ' +pretestopts += " CTEST_OUTPUT_ON_FAILURE=1" +# Skip CudaCompiler test as it doesn't work when the OPENMM_CUDA_COMPILER variable is set +local_ignore_pattern = "(Integrator)|(Thermostat)|(Barostat)|(Rpmd)|(Amoeba)|(CudaCompiler)" +runtest = """test -e ARGS="-E \'%s\'" """ % local_ignore_pattern + +preinstallopts = ' export OPENMM_INCLUDE_PATH=%(installdir)s/include && ' +preinstallopts += ' export OPENMM_LIB_PATH=%(installdir)s/lib && ' + +# required to install the python API +installopts = ' && cd python && python setup.py build && python setup.py install --prefix=%(installdir)s' + +sanity_check_paths = { + 'files': ['lib/libOpenMM.%s' % SHLIB_EXT], + 'dirs': ['lib/python%(pyshortver)s/site-packages'] +} + +sanity_check_commands = [ + "python -c 'import simtk.openmm'", + "python -m openmm.testInstallation", +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages/OpenMM-%(version)s-py%(pyshortver)s-linux-%(arch)s.egg', + 'OPENMM_INCLUDE_PATH': 'include', + 'OPENMM_LIB_PATH': 'lib', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/u/Uni-Core/Uni-Core-0.0.3-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/u/Uni-Core/Uni-Core-0.0.3-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..24fb0a0d2e2 --- /dev/null +++ b/easybuild/easyconfigs/u/Uni-Core/Uni-Core-0.0.3-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,60 @@ +easyblock = 'PythonBundle' + +name = 'Uni-Core' +version = '0.0.3' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/dptech-corp/Uni-Core' +description = "An efficient distributed PyTorch framework" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('maturin', '1.4.0', '-Rust-1.75.0') +] +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('PyTorch', '2.1.2', versionsuffix), + ('jax', '0.4.25', versionsuffix), # provides absl-py + ('tensorboardX', '2.6.2.2'), + ('tqdm', '4.66.1'), + ('wandb', '0.16.1'), +] + +use_pip = True +local_preinstallopts = "sed -i " +# local_preinstallopts += "-e 's/DISABLE_CUDA_EXTENSION = False/DISABLE_CUDA_EXTENSION = True/g' " +local_preinstallopts += "-e 's/torch>=[0-9.]*/torch/g' setup.py && " + +exts_list = [ + ('lmdb', '1.5.1', { + 'checksums': ['717c255827d331e02f7242b44051aa06466c90f6d732ecb07b31edfb1e06c67a'], + }), + ('contextlib2', '21.6.0', { + 'checksums': ['ab1e2bfe1d01d968e1b7e8d9023bc51ef3509bba217bb730cee3827e1ee82869'], + }), + ('ml-collections', '0.1.1', { + 'preinstallopts': "touch requirements.txt && touch requirements-test.txt && ", + 'sources': ['ml_collections-%(version)s.tar.gz'], + 'checksums': ['3fefcc72ec433aa1e5d32307a3e474bbb67f405be814ea52a2166bfc9dbe68cc'], + }), + ('huggingface-hub', '0.24.5', { + 'source_tmpl': 'huggingface_hub-%(version)s.tar.gz', + 'checksums': ['7b45d6744dd53ce9cbf9880957de00e9d10a9ae837f1c9b7255fc8fa4e8264f3'], + }), + ('tokenizers', '0.20.0', { + 'checksums': ['39d7acc43f564c274085cafcd1dae9d36f332456de1a31970296a6b8da4eac8d'], + }), + (name, version, { + 'modulename': 'unicore', + 'preinstallopts': local_preinstallopts, + 'source_urls': ['https://github.com/dptech-corp/Uni-Core/archive/'], + 'sources': ['%(version)s.tar.gz'], + 'checksums': ['e7a1e938d7d340d7aa483a05ed5ecf715bfa22f5f32a92e46d096da5b9a08043'], + }), +] + +sanity_pip_check = True + +moduleclass = 'ai' From 1e5d9a16cad81029ce63cedb46e14abbade2322f Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann <81254262+ThomasHoffmann77@users.noreply.github.com> Date: Sun, 18 Aug 2024 09:23:12 +0200 Subject: [PATCH 02/18] Add files via upload --- .../t/tensorstore-0.1.53-foss-2023a.eb | 62 +++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 easybuild/easyconfigs/t/tensorstore-0.1.53-foss-2023a.eb diff --git a/easybuild/easyconfigs/t/tensorstore-0.1.53-foss-2023a.eb b/easybuild/easyconfigs/t/tensorstore-0.1.53-foss-2023a.eb new file mode 100644 index 00000000000..0637b6107cb --- /dev/null +++ b/easybuild/easyconfigs/t/tensorstore-0.1.53-foss-2023a.eb @@ -0,0 +1,62 @@ +# Thomas Hoffmann, EMBL Heidlelberg, structures-it@embl.de, 2024/02 +easyblock = 'PythonBundle' + +name = 'tensorstore' +version = '0.1.53' + +homepage = 'https://github.com/google/tensorstore' +description = """TensorStore is an open-source C++ and Python software library designed for +storage and manipulation of large multi-dimensional arrays.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +builddependencies = [ + ('NASM', '2.16.01'), + ('pybind11', '2.11.1'), + ('Bazel', '6.3.1'), + + + + ('PyYAML', '6.0'), + ('zlib', '1.2.13'), + ('LibTIFF', '4.5.0'), + ('snappy', '1.1.10'), + ('Brotli', '1.0.9'), + ('protobuf', '24.0'), + ('bzip2', '1.0.8'), + ('zstd', '1.5.5'), + ('libwebp', '1.3.1'), + ('nlohmann_json', '3.11.2'), + ('Blosc', '1.21.5'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('ml_dtypes', '0.3.2'), +] + +use_pip = True + + +local_ts_useebbazel = """sed -i 's/bazel_path =.*/""" +local_ts_useebbazel += """bazel_path = os.path.join(os.getenv("EBROOTBAZEL"),"bin", "bazel")/g'""" +local_ts_useebbazel += " bazelisk.py&& " # TODO: patch? +local_ts_version = """sed -i "s/use_scm_version=/version='%(version)s',&/g" setup.py&&""" +local_ts_bzl_exp = """export TENSORSTORE_BAZEL_STARTUP_OPTIONS='--output_user_root %(builddir)s/cache' &&""" +# inject CFLAGS: +local_ts_bzl_exp += """export TENSORSTORE_BAZEL_BUILD_OPTIONS="$(for i in $CFLAGS;do echo --copt=$i; done)" &&""" + + +local_ts_preinstall = local_ts_version + local_ts_useebbazel + local_ts_bzl_exp + +exts_list = [ + (name, version, { + 'installopts': '-v', + 'preinstallopts': local_ts_preinstall, + 'checksums': ['45ef74b2dc9f2cd5f766bc373ded91d681cd021cc69d16592df48abaeb81af56'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' From 641d19d0d5f697a5438733999484f8b187823e54 Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann <81254262+ThomasHoffmann77@users.noreply.github.com> Date: Sun, 18 Aug 2024 09:24:07 +0200 Subject: [PATCH 03/18] Rename easybuild/easyconfigs/t/tensorstore-0.1.53-foss-2023a.eb to easybuild/easyconfigs/t/tensorstore/tensorstore-0.1.53-foss-2023a.eb --- .../t/{ => tensorstore}/tensorstore-0.1.53-foss-2023a.eb | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename easybuild/easyconfigs/t/{ => tensorstore}/tensorstore-0.1.53-foss-2023a.eb (100%) diff --git a/easybuild/easyconfigs/t/tensorstore-0.1.53-foss-2023a.eb b/easybuild/easyconfigs/t/tensorstore/tensorstore-0.1.53-foss-2023a.eb similarity index 100% rename from easybuild/easyconfigs/t/tensorstore-0.1.53-foss-2023a.eb rename to easybuild/easyconfigs/t/tensorstore/tensorstore-0.1.53-foss-2023a.eb From 72101f27c32b721656820eee211e9de2d97d8bfe Mon Sep 17 00:00:00 2001 From: thoffman Date: Mon, 14 Oct 2024 12:32:14 +0200 Subject: [PATCH 04/18] update 2.0.0b6 --- ...Pulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb | 108 ++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100644 easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb diff --git a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..db4efafa541 --- /dev/null +++ b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,108 @@ +# created by Denis Kristak (Inuits) +# update: Thomas Hoffmann, EMBL +easyblock = 'PythonBundle' + +name = 'AlphaPulldown' +version = '2.0.0b6' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/KosinskiLab/AlphaPulldown' +description = """AlphaPulldown is a Python package that streamlines protein-protein +interaction screens and high-throughput modelling of higher-order oligomers using AlphaFold-Multimer""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('OpenMM', '8.0.0', versionsuffix), + ('Kalign', '3.4.0'), + ('PyYAML', '6.0'), + ('jax', '0.4.25', versionsuffix), # also provides absl-py + ('Biopython', '1.83'), + ('h5py', '3.9.0'), + ('IPython', '8.14.0'), + ('JupyterLab', '4.0.5'), + ('matplotlib', '3.7.2'), + # ('TensorFlow', '2.15.1', versionsuffix), + ('TensorFlow', '2.13.0', versionsuffix), # to be consistent with AF2 ? + ('PyTorch', '2.1.2', versionsuffix), + ('tqdm', '4.66.1'), + ('dm-tree', '0.1.8'), + ('py3Dmol', '2.1.0'), + ('HMMER', '3.4'), + ('HH-suite', '3.3.0'), + ('dm-haiku', '0.0.12', versionsuffix), + ('Uni-Core', '0.0.3', versionsuffix), +] +local_commit = 'cc4b0af60518c078305bbe4c584691d1ed9ade31' +use_pip = True + +local_tests = [ + 'custom_db', + 'remove_clashes_low_plddt', + 'modelcif', + 'features_with_templates', + 'post_prediction', + # require pyrosetta, analysis aptainer image, and AlphaFold2 data: + # 'pdb_analyser', + # 'get_good_inter_pae', +] +local_testinstall_PATH = """ PATH=$(echo $PYTHONPATH|awk -F ':' '{print $1}')/../../../bin:$PATH """ +exts_list = [ + ('contextlib2', '21.6.0', { + 'checksums': ['ab1e2bfe1d01d968e1b7e8d9023bc51ef3509bba217bb730cee3827e1ee82869'], + }), + ('ml-collections', '0.1.1', { + 'preinstallopts': "touch requirements.txt && touch requirements-test.txt && ", + 'sources': ['ml_collections-%(version)s.tar.gz'], + 'checksums': ['3fefcc72ec433aa1e5d32307a3e474bbb67f405be814ea52a2166bfc9dbe68cc'], + }), + ('PDBFixer', '1.9', { + 'source_urls': ['https://github.com/openmm/pdbfixer/archive/'], + 'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['88b9a77e50655f89d0eb2075093773e82c27a4cef842cb7d735c877b20cd39fb'], + }), + ('ihm', '1.3', { + 'checksums': ['09f69809fd81509cc26b60253c55b02ce79fc01fc8f4a068bca2953a7dfd33be'], + }), + ('modelcif', '1.0', { + 'checksums': ['e8375bc502a73dcfab0b7fbdd454d67d393bbb8969981eb52199d77192a3de56'], + }), + ('looseversion', '1.1.2'), # for test only ? + ('mmtf-python', '1.1.3', {'modulename': 'mmtf'}), + ('biopandas', '0.5.1.dev0'), # for test only ? + (name, version, { + 'preinstallopts': "sed -i 's/[>=]=.*//g' setup.cfg && ", + 'sources': [{ + 'filename': '%(name)s-%(version)s.tar.gz', + 'git_config': { + 'url': 'https://github.com/KosinskiLab', + 'repo_name': 'AlphaPulldown', + 'tag': version, + 'recursive': True + } + }], + 'testinstall': True, + 'runtest': '%s pytest -s %s ' % (local_testinstall_PATH, " ".join('test/test_%s.py' % x for x in local_tests)), + 'checksums': [ + None, + ], + }), +] + +fix_python_shebang_for = ['bin/*.py'] +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/run_multimer_jobs.py', 'bin/rename_colab_search_a3m.py', + 'lib/python%(pyshortver)s/site-packages/alphafold/common/stereo_chemical_props.txt'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/alphapulldown'], +} + +sanity_check_commands = [ + "run_multimer_jobs.py --help | grep 'A script to perform structure prediction'", + "create_individual_features.py --helpfull|grep 'Additional allowance for hydrogen bonding'", +] + +moduleclass = 'bio' From 6e3c92dbe99e77e355626c19002751c0e9887376 Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann <81254262+ThomasHoffmann77@users.noreply.github.com> Date: Mon, 14 Oct 2024 12:32:49 +0200 Subject: [PATCH 05/18] Delete easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.11-foss-2023a-CUDA-12.1.1.eb --- .../dm-haiku-0.0.11-foss-2023a-CUDA-12.1.1.eb | 57 ------------------- 1 file changed, 57 deletions(-) delete mode 100644 easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.11-foss-2023a-CUDA-12.1.1.eb diff --git a/easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.11-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.11-foss-2023a-CUDA-12.1.1.eb deleted file mode 100644 index a30f458a967..00000000000 --- a/easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.11-foss-2023a-CUDA-12.1.1.eb +++ /dev/null @@ -1,57 +0,0 @@ -# update 0.9.11: Thomas Hoffmann (EMBL) -easyblock = 'PythonBundle' - -name = 'dm-haiku' -version = '0.0.11' -versionsuffix = '-CUDA-%(cudaver)s' - -homepage = 'https://github.com/deepmind/dm-haiku' -description = """Haiku is a simple neural network library for JAX developed by some of the authors of Sonnet, a neural -network library for TensorFlow.""" - -toolchain = {'name': 'foss', 'version': '2023a'} - -dependencies = [ - ('Python', '3.11.3'), - ('SciPy-bundle', '2023.07'), - ('jax', '0.4.25', versionsuffix), # required by jmp, also provides absl-py - ('PyYAML', '6.0'), - ('CUDA', '12.1.1', '', SYSTEM), - ('tensorstore', '0.1.53'), - ('protobuf-python', '4.24.0'), -] - -use_pip = True - -exts_list = [ - ('jmp', '0.0.4', { - 'checksums': ['5dfeb0fd7c7a9f72a70fff0aab9d0cbfae32a809c02f4037ff3485ceb33e1730'], - }), - ('flax', '0.8.1', { - 'checksums': ['ce3d99e9b4c0d2e4d9fc28bc56cced8ba953adfd695aabd24f096b4c8a7e2f92'], - }), - ('optax', '0.1.9', { - 'checksums': ['731f43e8b404f50a5ef025b1261894d7d0300f7ad9cb688ea08f67b40822e94f'], - }), - ('orbax_checkpoint', '0.5.3', { - 'modulename': 'orbax', - 'checksums': ['1572904cbbfe8513927e0d80f80b730e0ef2f680332d3c2810d8443532938b45'], - }), - ('toolz', '0.12.1', { - 'checksums': ['ecca342664893f177a13dac0e6b41cbd8ac25a358e5f215316d43e2100224f4d'], - }), - ('chex', '0.1.85', { - 'checksums': ['a27cfe87119d6e1fe24ccc1438a59195e6dc1d6e0e10099fcf618c3f64771faf'], - }), - ('nest_asyncio', '1.6.0', { - 'checksums': ['6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe'], - }), - (name, version, { - 'modulename': 'haiku', - 'checksums': ['c420a90c6a76c1d941996698840089df0d352806312eaf7b737486f6c6a32ef2'], - }), -] - -sanity_pip_check = True - -moduleclass = 'lib' From 190006958f5cffc94b7df9e31ab54eadaf6f908b Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann <81254262+ThomasHoffmann77@users.noreply.github.com> Date: Mon, 14 Oct 2024 12:33:07 +0200 Subject: [PATCH 06/18] Delete easybuild/easyconfigs/o/OpenMM/OpenMM-8.0.0-foss-2023a-CUDA-12.1.1.eb --- .../OpenMM-8.0.0-foss-2023a-CUDA-12.1.1.eb | 70 ------------------- 1 file changed, 70 deletions(-) delete mode 100644 easybuild/easyconfigs/o/OpenMM/OpenMM-8.0.0-foss-2023a-CUDA-12.1.1.eb diff --git a/easybuild/easyconfigs/o/OpenMM/OpenMM-8.0.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/o/OpenMM/OpenMM-8.0.0-foss-2023a-CUDA-12.1.1.eb deleted file mode 100644 index 8cf271071e7..00000000000 --- a/easybuild/easyconfigs/o/OpenMM/OpenMM-8.0.0-foss-2023a-CUDA-12.1.1.eb +++ /dev/null @@ -1,70 +0,0 @@ -# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild -# Author: Pablo Escobar Lopez -# sciCORE - University of Basel -# SIB Swiss Institute of Bioinformatics -# Update to 7.5.1 -# J. Sassmannshausen / GSTT - -easyblock = 'CMakeMake' - -name = 'OpenMM' -version = '8.0.0' -versionsuffix = '-CUDA-%(cudaver)s' - -homepage = 'https://openmm.org' -description = "OpenMM is a toolkit for molecular simulation." - -toolchain = {'name': 'foss', 'version': '2023a'} -toolchainopts = {'opt': True} - -source_urls = ['https://github.com/openmm/openmm/archive/'] -sources = ['%(version)s.tar.gz'] -patches = ['OpenMM-8.0.0_add_no_tree_vectorize.patch'] -checksums = [ - 'dc63d7b47c8bb7b169c409cfd63d909ed0ce1ae114d37c627bf7a4231acf488e', # 8.0.0.tar.gz - '4bacf45443a2472e59798743f27d07481e065d784cbbea7be22aa6427af0d2bd', # OpenMM-8.0.0_add_no_tree_vectorize.patch -] - -builddependencies = [ - ('CMake', '3.26.3'), - ('Doxygen', '1.9.7'), -] - -dependencies = [ - ('Python', '3.11.3'), - ('SciPy-bundle', '2023.07'), - ('SWIG', '4.1.1'), - ('CUDA', '12.1.1', '', SYSTEM), -] - -# Set the OPENMM_CUDA_COMPILER variable to make sure that all tests use the right nvcc, -# Otherwise they will use the wrong path: `/usr/local/cuda/bin/nvcc` -pretestopts = ' export OPENMM_CUDA_COMPILER=${EBROOTCUDA}/bin/nvcc && ' -pretestopts += " CTEST_OUTPUT_ON_FAILURE=1" -# Skip CudaCompiler test as it doesn't work when the OPENMM_CUDA_COMPILER variable is set -local_ignore_pattern = "(Integrator)|(Thermostat)|(Barostat)|(Rpmd)|(Amoeba)|(CudaCompiler)" -runtest = """test -e ARGS="-E \'%s\'" """ % local_ignore_pattern - -preinstallopts = ' export OPENMM_INCLUDE_PATH=%(installdir)s/include && ' -preinstallopts += ' export OPENMM_LIB_PATH=%(installdir)s/lib && ' - -# required to install the python API -installopts = ' && cd python && python setup.py build && python setup.py install --prefix=%(installdir)s' - -sanity_check_paths = { - 'files': ['lib/libOpenMM.%s' % SHLIB_EXT], - 'dirs': ['lib/python%(pyshortver)s/site-packages'] -} - -sanity_check_commands = [ - "python -c 'import simtk.openmm'", - "python -m openmm.testInstallation", -] - -modextrapaths = { - 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages/OpenMM-%(version)s-py%(pyshortver)s-linux-%(arch)s.egg', - 'OPENMM_INCLUDE_PATH': 'include', - 'OPENMM_LIB_PATH': 'lib', -} - -moduleclass = 'bio' From d36e3edadffd484ea817f9270011e10af98e61ef Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann <81254262+ThomasHoffmann77@users.noreply.github.com> Date: Mon, 14 Oct 2024 12:33:23 +0200 Subject: [PATCH 07/18] Delete easybuild/easyconfigs/t/tensorstore/tensorstore-0.1.53-foss-2023a.eb --- .../tensorstore-0.1.53-foss-2023a.eb | 62 ------------------- 1 file changed, 62 deletions(-) delete mode 100644 easybuild/easyconfigs/t/tensorstore/tensorstore-0.1.53-foss-2023a.eb diff --git a/easybuild/easyconfigs/t/tensorstore/tensorstore-0.1.53-foss-2023a.eb b/easybuild/easyconfigs/t/tensorstore/tensorstore-0.1.53-foss-2023a.eb deleted file mode 100644 index 0637b6107cb..00000000000 --- a/easybuild/easyconfigs/t/tensorstore/tensorstore-0.1.53-foss-2023a.eb +++ /dev/null @@ -1,62 +0,0 @@ -# Thomas Hoffmann, EMBL Heidlelberg, structures-it@embl.de, 2024/02 -easyblock = 'PythonBundle' - -name = 'tensorstore' -version = '0.1.53' - -homepage = 'https://github.com/google/tensorstore' -description = """TensorStore is an open-source C++ and Python software library designed for -storage and manipulation of large multi-dimensional arrays.""" - -toolchain = {'name': 'foss', 'version': '2023a'} -builddependencies = [ - ('NASM', '2.16.01'), - ('pybind11', '2.11.1'), - ('Bazel', '6.3.1'), - - - - ('PyYAML', '6.0'), - ('zlib', '1.2.13'), - ('LibTIFF', '4.5.0'), - ('snappy', '1.1.10'), - ('Brotli', '1.0.9'), - ('protobuf', '24.0'), - ('bzip2', '1.0.8'), - ('zstd', '1.5.5'), - ('libwebp', '1.3.1'), - ('nlohmann_json', '3.11.2'), - ('Blosc', '1.21.5'), -] - -dependencies = [ - ('Python', '3.11.3'), - ('SciPy-bundle', '2023.07'), - ('ml_dtypes', '0.3.2'), -] - -use_pip = True - - -local_ts_useebbazel = """sed -i 's/bazel_path =.*/""" -local_ts_useebbazel += """bazel_path = os.path.join(os.getenv("EBROOTBAZEL"),"bin", "bazel")/g'""" -local_ts_useebbazel += " bazelisk.py&& " # TODO: patch? -local_ts_version = """sed -i "s/use_scm_version=/version='%(version)s',&/g" setup.py&&""" -local_ts_bzl_exp = """export TENSORSTORE_BAZEL_STARTUP_OPTIONS='--output_user_root %(builddir)s/cache' &&""" -# inject CFLAGS: -local_ts_bzl_exp += """export TENSORSTORE_BAZEL_BUILD_OPTIONS="$(for i in $CFLAGS;do echo --copt=$i; done)" &&""" - - -local_ts_preinstall = local_ts_version + local_ts_useebbazel + local_ts_bzl_exp - -exts_list = [ - (name, version, { - 'installopts': '-v', - 'preinstallopts': local_ts_preinstall, - 'checksums': ['45ef74b2dc9f2cd5f766bc373ded91d681cd021cc69d16592df48abaeb81af56'], - }), -] - -sanity_pip_check = True - -moduleclass = 'lib' From c9b0f98aaba547b2f1de126d0d76fc780958b979 Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann <81254262+ThomasHoffmann77@users.noreply.github.com> Date: Mon, 14 Oct 2024 12:33:40 +0200 Subject: [PATCH 08/18] Delete easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4-foss-2023a-CUDA-12.1.1.eb --- ...Pulldown-2.0.0b4-foss-2023a-CUDA-12.1.1.eb | 85 ------------------- 1 file changed, 85 deletions(-) delete mode 100644 easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4-foss-2023a-CUDA-12.1.1.eb diff --git a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4-foss-2023a-CUDA-12.1.1.eb deleted file mode 100644 index 62c616bf500..00000000000 --- a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4-foss-2023a-CUDA-12.1.1.eb +++ /dev/null @@ -1,85 +0,0 @@ -# created by Denis Kristak (Inuits) -# update: Thomas Hoffmann, EMBL -easyblock = 'PythonBundle' - -name = 'AlphaPulldown' -version = '2.0.0b4' -versionsuffix = '-CUDA-%(cudaver)s' - -homepage = 'https://github.com/KosinskiLab/AlphaPulldown' -description = """AlphaPulldown is a Python package that streamlines protein-protein -interaction screens and high-throughput modelling of higher-order oligomers using AlphaFold-Multimer""" - -toolchain = {'name': 'foss', 'version': '2023a'} - -dependencies = [ - ('CUDA', '12.1.1', '', SYSTEM), - ('Python', '3.11.3'), - ('OpenMM', '8.0.0', versionsuffix), - ('Kalign', '3.4.0'), - ('PyYAML', '6.0'), - ('jax', '0.4.25', versionsuffix), # also provides absl-py - ('Biopython', '1.83'), - ('h5py', '3.9.0'), - ('IPython', '8.14.0'), - ('JupyterLab', '4.0.5'), - ('matplotlib', '3.7.2'), - ('TensorFlow', '2.15.1', versionsuffix), - ('PyTorch', '2.1.2', versionsuffix), - ('tqdm', '4.66.1'), - ('dm-tree', '0.1.8'), - ('py3Dmol', '2.1.0'), - ('HMMER', '3.4'), - ('HH-suite', '3.3.0'), - ('dm-haiku', '0.0.11', versionsuffix), - ('Uni-Core', '0.0.3', versionsuffix), -] - -use_pip = True - -exts_list = [ - ('contextlib2', '21.6.0', { - 'checksums': ['ab1e2bfe1d01d968e1b7e8d9023bc51ef3509bba217bb730cee3827e1ee82869'], - }), - ('ml-collections', '0.1.1', { - 'preinstallopts': "touch requirements.txt && touch requirements-test.txt && ", - 'sources': ['ml_collections-%(version)s.tar.gz'], - 'checksums': ['3fefcc72ec433aa1e5d32307a3e474bbb67f405be814ea52a2166bfc9dbe68cc'], - }), - ('PDBFixer', '1.9', { - 'source_urls': ['https://github.com/openmm/pdbfixer/archive/'], - 'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], - 'checksums': ['88b9a77e50655f89d0eb2075093773e82c27a4cef842cb7d735c877b20cd39fb'], - }), - (name, version, { - 'patches': ['AlphaPulldown-2.0.0b4_af2_biopython_IUPACData_as_SCOPData.patch'], - 'preinstallopts': "sed -i 's/[>=]=.*//g' setup.cfg && ", - 'sources': [{ - 'filename': '%(name)s-%(version)s.tar.gz', - 'git_config': { - 'url': 'https://github.com/KosinskiLab', - 'repo_name': 'AlphaPulldown', - 'tag': '2.0.0b4', - 'recursive': True - } - }], - 'checksums': [ - None, - # AlphaPulldown-2.0.0b4_af2_biopython_IUPACData_as_SCOPData.patch: - '0f8ff118bbab50b97a397a9e4de890155b77f868db9913ea3b496d422330bc18' - ], - }), -] - -fix_python_shebang_for = ['bin/*.py'] - -sanity_pip_check = True - -sanity_check_paths = { - 'files': ['bin/run_multimer_jobs.py', 'bin/rename_colab_search_a3m.py'], - 'dirs': ['lib/python%(pyshortver)s/site-packages/alphapulldown'], -} - -sanity_check_commands = ["run_multimer_jobs.py --help | grep 'A script to perform structure prediction'"] - -moduleclass = 'bio' From b6567471ce6c43cdebe369e7a58a68f3c883a62d Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann <81254262+ThomasHoffmann77@users.noreply.github.com> Date: Mon, 14 Oct 2024 12:33:55 +0200 Subject: [PATCH 09/18] Delete easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4_af2_biopython_IUPACData_as_SCOPData.patch --- ..._af2_biopython_IUPACData_as_SCOPData.patch | 27 ------------------- 1 file changed, 27 deletions(-) delete mode 100644 easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4_af2_biopython_IUPACData_as_SCOPData.patch diff --git a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4_af2_biopython_IUPACData_as_SCOPData.patch b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4_af2_biopython_IUPACData_as_SCOPData.patch deleted file mode 100644 index f6a89591dcf..00000000000 --- a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b4_af2_biopython_IUPACData_as_SCOPData.patch +++ /dev/null @@ -1,27 +0,0 @@ -# Thomas Hoffmann, EMBL Heidelberg, structures-it@embl.de, 2024/08 -# allow to use BioPython >= 1.83 -diff -ru AlphaPulldown/alphafold/alphafold/data/mmcif_parsing.py AlphaPulldown-2.0.0b4_alphfold_SCOP.patch/alphafold/alphafold/data/mmcif_parsing.py ---- AlphaPulldown/alphafold/alphafold/data/mmcif_parsing.py 2024-08-17 15:34:23.000000000 +0200 -+++ AlphaPulldown-2.0.0b4_alphfold_SCOP.patch/alphafold/alphafold/data/mmcif_parsing.py 2024-08-17 15:44:47.460653530 +0200 -@@ -21,7 +21,7 @@ - - from absl import logging - from Bio import PDB --from Bio.Data import SCOPData -+from Bio.Data import IUPACData as SCOPData - - # Type aliases: - ChainId = str -fix import of protein_letters_3to1 from Biopython -author: Kenneth Hoste (HPC-UGent) ---- AlphaPulldown/alphapulldown/utils/remove_clashes_low_plddt.py.orig 2024-06-05 09:30:16.114746286 +0200 -+++ AlphaPulldown/alphapulldown/utils/remove_clashes_low_plddt.py 2024-06-05 09:30:35.242665615 +0200 -@@ -4,7 +4,7 @@ - from alphafold.data.mmcif_parsing import parse - from alphafold.common.residue_constants import residue_atoms, atom_types - from Bio.PDB import NeighborSearch, PDBIO, MMCIFIO --from Bio.PDB.Polypeptide import protein_letters_3to1 -+from Bio.Data.IUPACData import protein_letters_3to1 - from Bio import SeqIO - from colabfold.batch import convert_pdb_to_mmcif - from Bio.PDB import Structure, Model, Chain, Residue From d96e84f16dcc216bdaafa70b17aef5e95dcd2663 Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann <81254262+ThomasHoffmann77@users.noreply.github.com> Date: Mon, 14 Oct 2024 13:10:48 +0200 Subject: [PATCH 10/18] Update AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb update TensorFlow dependency from 2.13.0 to 2.15.2-CUDA --- .../AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb index db4efafa541..d1a950bddd4 100644 --- a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb @@ -24,8 +24,7 @@ dependencies = [ ('IPython', '8.14.0'), ('JupyterLab', '4.0.5'), ('matplotlib', '3.7.2'), - # ('TensorFlow', '2.15.1', versionsuffix), - ('TensorFlow', '2.13.0', versionsuffix), # to be consistent with AF2 ? + ('TensorFlow', '2.15.1', versionsuffix), ('PyTorch', '2.1.2', versionsuffix), ('tqdm', '4.66.1'), ('dm-tree', '0.1.8'), From cbc778dc189a024af0ba815a528cfeb5ef945532 Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann <81254262+ThomasHoffmann77@users.noreply.github.com> Date: Mon, 14 Oct 2024 14:58:33 +0200 Subject: [PATCH 11/18] Update easyconfigs.py AlphaPulldown TF2.15.1 multivariant dependency --- test/easyconfigs/easyconfigs.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test/easyconfigs/easyconfigs.py b/test/easyconfigs/easyconfigs.py index d228333cca6..71f38c23ae6 100644 --- a/test/easyconfigs/easyconfigs.py +++ b/test/easyconfigs/easyconfigs.py @@ -655,6 +655,8 @@ def check_dep_vars(self, gen, dep, dep_vars): ('2.5.3;', ['medaka-1.5.0-']), # tensorflow-probability version to TF version ('2.8.4;', ['tensorflow-probability-0.16.0-']), + # AlphaPulldown + ('2.15.1', ['AlphaPulldown-2.0.0b6']), ], # smooth-topk uses a newer version of torchvision 'torchvision': [('0.11.3;', ['smooth-topk-1.0-20210817-'])], From 1eaea1acdef5da61fef008a0b226fef43b1c5e9a Mon Sep 17 00:00:00 2001 From: thoffman Date: Tue, 15 Oct 2024 09:29:49 +0200 Subject: [PATCH 12/18] add missing checksums; use TF-CPU 2.13.0 --- ...Pulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb | 25 +++++++++++-------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb index d1a950bddd4..5f318543631 100644 --- a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb @@ -24,7 +24,8 @@ dependencies = [ ('IPython', '8.14.0'), ('JupyterLab', '4.0.5'), ('matplotlib', '3.7.2'), - ('TensorFlow', '2.15.1', versionsuffix), + # ('TensorFlow', '2.15.1', versionsuffix), + ('TensorFlow', '2.13.0'), # to be consistent with AF2 ? ('PyTorch', '2.1.2', versionsuffix), ('tqdm', '4.66.1'), ('dm-tree', '0.1.8'), @@ -68,25 +69,29 @@ exts_list = [ ('modelcif', '1.0', { 'checksums': ['e8375bc502a73dcfab0b7fbdd454d67d393bbb8969981eb52199d77192a3de56'], }), - ('looseversion', '1.1.2'), # for test only ? - ('mmtf-python', '1.1.3', {'modulename': 'mmtf'}), - ('biopandas', '0.5.1.dev0'), # for test only ? + ('looseversion', '1.1.2', { + 'checksums': ['94d80bdbd0b6d57c11b886147ba1601f7d1531571621b81933b34537cbe469ad'], + }), + ('mmtf-python', '1.1.3', { + 'modulename': 'mmtf', + 'checksums': ['12a02fe1b7131f0a2b8ce45b46f1e0cdd28b9818fe4499554c26884987ea0c32'], + }), + ('biopandas', '0.5.1.dev0', { + 'checksums': ['6dc9de631babf8221c1ac60230133717039e08911f15e8ac48498c787022de12'], + }), (name, version, { 'preinstallopts': "sed -i 's/[>=]=.*//g' setup.cfg && ", + 'runtest': '%s pytest -s %s ' % (local_testinstall_PATH, " ".join('test/test_%s.py' % x for x in local_tests)), 'sources': [{ 'filename': '%(name)s-%(version)s.tar.gz', 'git_config': { 'url': 'https://github.com/KosinskiLab', 'repo_name': 'AlphaPulldown', - 'tag': version, - 'recursive': True + 'tag': version, 'recursive': True } }], 'testinstall': True, - 'runtest': '%s pytest -s %s ' % (local_testinstall_PATH, " ".join('test/test_%s.py' % x for x in local_tests)), - 'checksums': [ - None, - ], + 'checksums': ['41b73bfe91719522713ed155a43cc7dda2474c954d723fe382d9676e41c6e241'], }), ] From 0126a76f0db22ce3b168c4696e3b8d6468a849b4 Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann <81254262+ThomasHoffmann77@users.noreply.github.com> Date: Fri, 8 Nov 2024 10:08:36 +0100 Subject: [PATCH 13/18] Update and rename AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb to AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb update 2.0.0 --- ...2.1.1.eb => AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb} | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename easybuild/easyconfigs/a/AlphaPulldown/{AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb => AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb} (97%) diff --git a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb similarity index 97% rename from easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb rename to easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb index 5f318543631..22ad35947c8 100644 --- a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0b6-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb @@ -3,7 +3,7 @@ easyblock = 'PythonBundle' name = 'AlphaPulldown' -version = '2.0.0b6' +version = '2.0.0' versionsuffix = '-CUDA-%(cudaver)s' homepage = 'https://github.com/KosinskiLab/AlphaPulldown' @@ -91,7 +91,7 @@ exts_list = [ } }], 'testinstall': True, - 'checksums': ['41b73bfe91719522713ed155a43cc7dda2474c954d723fe382d9676e41c6e241'], + 'checksums': ['e338195987e003f3caadb06bda0ca56dece87e358738143ea72662f9ad69b1d4], }), ] From b3c9399681b4c762a84e0f7569f9066645c147f8 Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann <81254262+ThomasHoffmann77@users.noreply.github.com> Date: Fri, 8 Nov 2024 10:34:36 +0100 Subject: [PATCH 14/18] Update AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb add ext. immutabledict; fix tensorflow-cpu requirement --- .../AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb index 22ad35947c8..4c54a12c72f 100644 --- a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb @@ -12,6 +12,10 @@ interaction screens and high-throughput modelling of higher-order oligomers usin toolchain = {'name': 'foss', 'version': '2023a'} +builddependencies = [ + ('poetry', '1.5.1'), +] + dependencies = [ ('CUDA', '12.1.1', '', SYSTEM), ('Python', '3.11.3'), @@ -79,8 +83,11 @@ exts_list = [ ('biopandas', '0.5.1.dev0', { 'checksums': ['6dc9de631babf8221c1ac60230133717039e08911f15e8ac48498c787022de12'], }), + ('immutabledict', '4.1.0', { + 'checksums': ['93d100ccd2cd09a1fd3f136b9328c6e59529ba341de8bb499437f6819159fe8a'], + }), (name, version, { - 'preinstallopts': "sed -i 's/[>=]=.*//g' setup.cfg && ", + 'preinstallopts': "sed -i 's/[>=]=.*//g;s/tensorflow-cpu/tensorflow/g' setup.cfg && ", 'runtest': '%s pytest -s %s ' % (local_testinstall_PATH, " ".join('test/test_%s.py' % x for x in local_tests)), 'sources': [{ 'filename': '%(name)s-%(version)s.tar.gz', From 95d423750af93bf8544ea42ff42f253bad66f818 Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann <81254262+ThomasHoffmann77@users.noreply.github.com> Date: Fri, 8 Nov 2024 12:19:21 +0100 Subject: [PATCH 15/18] Update AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb fix typo --- .../AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb index 4c54a12c72f..cdcc434dc64 100644 --- a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb @@ -98,7 +98,7 @@ exts_list = [ } }], 'testinstall': True, - 'checksums': ['e338195987e003f3caadb06bda0ca56dece87e358738143ea72662f9ad69b1d4], + 'checksums': ['e338195987e003f3caadb06bda0ca56dece87e358738143ea72662f9ad69b1d4'], }), ] From dc6cd3565c32962cfee17abda284f8187e12c3e9 Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann <81254262+ThomasHoffmann77@users.noreply.github.com> Date: Fri, 6 Dec 2024 14:15:08 +0100 Subject: [PATCH 16/18] Update easyconfigs.py --- test/easyconfigs/easyconfigs.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/test/easyconfigs/easyconfigs.py b/test/easyconfigs/easyconfigs.py index adc1ab93062..4b1c4dd770e 100644 --- a/test/easyconfigs/easyconfigs.py +++ b/test/easyconfigs/easyconfigs.py @@ -657,8 +657,6 @@ def check_dep_vars(self, gen, dep, dep_vars): ('2.5.3;', ['medaka-1.5.0-']), # tensorflow-probability version to TF version ('2.8.4;', ['tensorflow-probability-0.16.0-']), - # AlphaPulldown - ('2.15.1', ['AlphaPulldown-2.0.0b6']), ], # smooth-topk uses a newer version of torchvision 'torchvision': [('0.11.3;', ['smooth-topk-1.0-20210817-'])], From 9debfc554bfb590d8727506d4a5c6ca04c08da64 Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann <81254262+ThomasHoffmann77@users.noreply.github.com> Date: Mon, 9 Dec 2024 10:24:14 +0100 Subject: [PATCH 17/18] Update AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb move Jupyterlab dependency to end of list --- .../AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb index cdcc434dc64..d654f63ae5f 100644 --- a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb @@ -26,7 +26,6 @@ dependencies = [ ('Biopython', '1.83'), ('h5py', '3.9.0'), ('IPython', '8.14.0'), - ('JupyterLab', '4.0.5'), ('matplotlib', '3.7.2'), # ('TensorFlow', '2.15.1', versionsuffix), ('TensorFlow', '2.13.0'), # to be consistent with AF2 ? @@ -38,6 +37,7 @@ dependencies = [ ('HH-suite', '3.3.0'), ('dm-haiku', '0.0.12', versionsuffix), ('Uni-Core', '0.0.3', versionsuffix), + ('JupyterLab', '4.0.5'), ] local_commit = 'cc4b0af60518c078305bbe4c584691d1ed9ade31' use_pip = True From f76acd623e037ac2ff597eaf1910c30bf8770b57 Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann <81254262+ThomasHoffmann77@users.noreply.github.com> Date: Fri, 13 Dec 2024 10:01:19 +0100 Subject: [PATCH 18/18] Update AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb --- .../AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb index d654f63ae5f..e1dd253f812 100644 --- a/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/a/AlphaPulldown/AlphaPulldown-2.0.0-foss-2023a-CUDA-12.1.1.eb @@ -98,7 +98,9 @@ exts_list = [ } }], 'testinstall': True, - 'checksums': ['e338195987e003f3caadb06bda0ca56dece87e358738143ea72662f9ad69b1d4'], + # This needs to be [None], at least until EB v5 is out + # 'checksums': ['e338195987e003f3caadb06bda0ca56dece87e358738143ea72662f9ad69b1d4'], + 'checksums': [None], }), ]