From 3b51546d614312b70971cc35f8f4bf6d7a498b83 Mon Sep 17 00:00:00 2001 From: Pavel Tomanek Date: Wed, 27 Nov 2024 16:41:07 +0100 Subject: [PATCH 1/5] adding easyconfigs: MATES-0.1.5-20241121-foss-2023b.eb, anndata-0.11.1-foss-2023b.eb, pybedtools-0.10.0-foss-2023b.eb, BEDTools-2.31.1-GCC-13.2.0.eb --- .../a/anndata/anndata-0.11.1-foss-2023b.eb | 40 ++++++++++++++ .../b/BEDTools/BEDTools-2.31.1-GCC-13.2.0.eb | 46 ++++++++++++++++ .../MATES/MATES-0.1.5-20241121-foss-2023b.eb | 52 +++++++++++++++++++ .../pybedtools-0.10.0-foss-2023b.eb | 27 ++++++++++ 4 files changed, 165 insertions(+) create mode 100644 easybuild/easyconfigs/a/anndata/anndata-0.11.1-foss-2023b.eb create mode 100644 easybuild/easyconfigs/b/BEDTools/BEDTools-2.31.1-GCC-13.2.0.eb create mode 100644 easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb create mode 100644 easybuild/easyconfigs/p/pybedtools/pybedtools-0.10.0-foss-2023b.eb diff --git a/easybuild/easyconfigs/a/anndata/anndata-0.11.1-foss-2023b.eb b/easybuild/easyconfigs/a/anndata/anndata-0.11.1-foss-2023b.eb new file mode 100644 index 00000000000..4cfabbf080c --- /dev/null +++ b/easybuild/easyconfigs/a/anndata/anndata-0.11.1-foss-2023b.eb @@ -0,0 +1,40 @@ +easyblock = 'PythonBundle' + +name = 'anndata' +version = '0.11.1' + +homepage = 'https://github.com/scverse/anndata' +description = """anndata is a Python package for handling annotated data matrices in memory and on disk, + positioned between pandas and xarray""" + +toolchain = {'name': 'foss', 'version': '2023b'} + +builddependencies = [ + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('SciPy-bundle', '2023.11'), + ('h5py', '3.11.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('array_api_compat', '1.9.1', { + 'checksums': ['17bab828c93c79a5bb8b867145b71fcb889686607c5672b060aef437e0359ea8'], + }), + ('natsort', '8.4.0', { + 'checksums': ['45312c4a0e5507593da193dedd04abb1469253b601ecaf63445ad80f0a1ea581'], + }), + (name, version, { + 'checksums': ['36bff9a85276fc5f1b9fd01f15aff9aa49408129985f42e0fca4e2c5b7fa909f'], + }), +] + +sanity_check_commands = ["natsort --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BEDTools/BEDTools-2.31.1-GCC-13.2.0.eb b/easybuild/easyconfigs/b/BEDTools/BEDTools-2.31.1-GCC-13.2.0.eb new file mode 100644 index 00000000000..ee6ee7885ea --- /dev/null +++ b/easybuild/easyconfigs/b/BEDTools/BEDTools-2.31.1-GCC-13.2.0.eb @@ -0,0 +1,46 @@ +# Author: Maxime Schmitt, University of Luxembourg +# Author: Adam Huffman, The Francis Crick Institute +# +# Based on the work of: Pablo Escobar Lopez +# Swiss Institute of Bioinformatics (SIB) +# Biozentrum - University of Basel + +easyblock = 'MakeCp' + +name = 'BEDTools' +version = '2.31.1' + +homepage = 'https://bedtools.readthedocs.io/' +description = """BEDTools: a powerful toolset for genome arithmetic. +The BEDTools utilities allow one to address common genomics tasks such as finding feature overlaps and +computing coverage. +The utilities are largely based on four widely-used file formats: BED, GFF/GTF, VCF, and SAM/BAM.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://github.com/arq5x/bedtools2/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['79a1ba318d309f4e74bfa74258b73ef578dccb1045e270998d7fe9da9f43a50e'] + +builddependencies = [ + ('Python', '3.11.5'), +] +dependencies = [ + ('XZ', '5.4.4'), + ('zlib', '1.2.13'), + ('bzip2', '1.0.8'), + ('BamTools', '2.5.2'), +] + +buildopts = 'CXX="$CXX"' + +files_to_copy = ['bin', 'docs', 'data', 'genomes', 'scripts', 'test'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['bedtools', 'pairToBed', 'mergeBed', 'bedToBam', 'fastaFromBed']], + 'dirs': files_to_copy, +} + +sanity_check_commands = ['%(namelower)s --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb b/easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb new file mode 100644 index 00000000000..24837326ae2 --- /dev/null +++ b/easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb @@ -0,0 +1,52 @@ +easyblock = 'PythonBundle' + +name = 'MATES' +version = '0.1.5-20241121' +local_commit = '3846ad5' + +homepage = 'https://github.com/mcgilldinglab/MATES' +description = "A Deep Learning-Based Model for Quantifying Transposable Elements in Single-Cell Sequencing Data." + +toolchain = {'name': 'foss', 'version': '2023b'} + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('SciPy-bundle', '2023.11'), + ('matplotlib', '3.8.2'), + ('anndata', '0.11.1'), + ('pybedtools', '0.10.0'), + ('PyTorch', '2.1.2'), + ('Pysam', '0.22.0'), + ('tqdm', '4.66.2'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('sorted_nearest', '0.0.39', { + 'checksums': ['16a51d5db87ae226b47ace43c176bb672477a1b7ba8052ea9291a6356c9c69b1'], + }), + ('ncls', '0.0.68', { + 'checksums': ['81aaa5abb123bb21797ed2f8ef921e20222db14a3ecbc61ccf447532f2b7ba93'], + }), + ('pyranges', '0.0.129', { + 'checksums': ['bee83b4fad0062be9586668c6b0fc4270d5e761951975e018202993680071fb3'], + }), + (name, version, { + 'modulename': 'MATES', + # unpin exact versions of dependencies + 'preinstallopts': """sed -i 's/==.*//g' requirements.txt && sed -i 's/==.*/\",/g' setup.py && """, + 'source_urls': ['https://github.com/mcgilldinglab/MATES/archive'], + 'sources': [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}], + 'checksums': ['40fbb87dd72ca4c9e5347f2e984f9c0a0caa817d4eee692476be71e733e76f61'], + }), +] + +sanity_check_commands = [ + "python -c 'from MATES import bam_processor, data_processor, MATES_model'", + "python -c 'from MATES import TE_quantifier, TE_quantifier_LongRead, TE_quantifier_Intronic'", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/pybedtools/pybedtools-0.10.0-foss-2023b.eb b/easybuild/easyconfigs/p/pybedtools/pybedtools-0.10.0-foss-2023b.eb new file mode 100644 index 00000000000..986d15e5465 --- /dev/null +++ b/easybuild/easyconfigs/p/pybedtools/pybedtools-0.10.0-foss-2023b.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonBundle' + +name = 'pybedtools' +version = '0.10.0' + +homepage = 'https://daler.github.io/pybedtools' +description = "pybedtools wraps and extends BEDTools and offers feature-level manipulations from within Python." + +toolchain = {'name': 'foss', 'version': '2023b'} + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('BEDTools', '2.31.1'), + ('Pysam', '0.22.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'checksums': ['1a6fbaad23b013becc741d7d5922a2df03e391bc44ff92772ffb7dd456711161'], + }), +] + +moduleclass = 'bio' From c99da1e9e026ee4528a51855ad599eb71473ae99 Mon Sep 17 00:00:00 2001 From: Pavel Tomanek Date: Wed, 27 Nov 2024 16:46:47 +0100 Subject: [PATCH 2/5] update easyblock of pybedtools --- .../p/pybedtools/pybedtools-0.10.0-foss-2023b.eb | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/easybuild/easyconfigs/p/pybedtools/pybedtools-0.10.0-foss-2023b.eb b/easybuild/easyconfigs/p/pybedtools/pybedtools-0.10.0-foss-2023b.eb index 986d15e5465..2f643966cdb 100644 --- a/easybuild/easyconfigs/p/pybedtools/pybedtools-0.10.0-foss-2023b.eb +++ b/easybuild/easyconfigs/p/pybedtools/pybedtools-0.10.0-foss-2023b.eb @@ -1,4 +1,4 @@ -easyblock = 'PythonBundle' +easyblock = 'PythonPackage' name = 'pybedtools' version = '0.10.0' @@ -8,6 +8,9 @@ description = "pybedtools wraps and extends BEDTools and offers feature-level ma toolchain = {'name': 'foss', 'version': '2023b'} +sources = [SOURCE_TAR_GZ] +checksums = ['1a6fbaad23b013becc741d7d5922a2df03e391bc44ff92772ffb7dd456711161'] + dependencies = [ ('Python', '3.11.5'), ('SciPy-bundle', '2023.11'), @@ -16,12 +19,7 @@ dependencies = [ ] use_pip = True +download_dep_fail = True sanity_pip_check = True -exts_list = [ - (name, version, { - 'checksums': ['1a6fbaad23b013becc741d7d5922a2df03e391bc44ff92772ffb7dd456711161'], - }), -] - moduleclass = 'bio' From e9d7220858e7b3a78ec013f107719832a48f340f Mon Sep 17 00:00:00 2001 From: Pavel Tomanek <99190809+pavelToman@users.noreply.github.com> Date: Thu, 28 Nov 2024 14:47:02 +0100 Subject: [PATCH 3/5] Update anndata-0.11.1-foss-2023b.eb - add sanity_check_paths --- easybuild/easyconfigs/a/anndata/anndata-0.11.1-foss-2023b.eb | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/easybuild/easyconfigs/a/anndata/anndata-0.11.1-foss-2023b.eb b/easybuild/easyconfigs/a/anndata/anndata-0.11.1-foss-2023b.eb index 4cfabbf080c..cb2317d16cc 100644 --- a/easybuild/easyconfigs/a/anndata/anndata-0.11.1-foss-2023b.eb +++ b/easybuild/easyconfigs/a/anndata/anndata-0.11.1-foss-2023b.eb @@ -35,6 +35,11 @@ exts_list = [ }), ] +sanity_check_paths = { + 'files': ['bin/natsort'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + sanity_check_commands = ["natsort --help"] moduleclass = 'bio' From 77487c1abc3806eabcafbad8be280da64b1d12da Mon Sep 17 00:00:00 2001 From: Pavel Tomanek <99190809+pavelToman@users.noreply.github.com> Date: Thu, 28 Nov 2024 14:50:29 +0100 Subject: [PATCH 4/5] Update MATES-0.1.5-20241121-foss-2023b.eb - add samtools dep --- easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb | 1 + 1 file changed, 1 insertion(+) diff --git a/easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb b/easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb index 24837326ae2..b3ea589bf3a 100644 --- a/easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb +++ b/easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb @@ -19,6 +19,7 @@ dependencies = [ ('PyTorch', '2.1.2'), ('Pysam', '0.22.0'), ('tqdm', '4.66.2'), + ('SAMtools, '1.19.2), ] use_pip = True From 7345fe3020eab0cb292185ecad611e897d6e3d3c Mon Sep 17 00:00:00 2001 From: Pavel Tomanek <99190809+pavelToman@users.noreply.github.com> Date: Thu, 28 Nov 2024 14:57:55 +0100 Subject: [PATCH 5/5] Update MATES-0.1.5-20241121-foss-2023b.eb - typo --- .../easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb b/easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb index b3ea589bf3a..2c87d3d09bf 100644 --- a/easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb +++ b/easybuild/easyconfigs/m/MATES/MATES-0.1.5-20241121-foss-2023b.eb @@ -19,7 +19,7 @@ dependencies = [ ('PyTorch', '2.1.2'), ('Pysam', '0.22.0'), ('tqdm', '4.66.2'), - ('SAMtools, '1.19.2), + ('SAMtools', '1.19.2'), ] use_pip = True