From 54bd685cd785c95a0fae78c96dc08b9d9b73434c Mon Sep 17 00:00:00 2001 From: tdayris Date: Wed, 4 Dec 2024 16:06:36 +0100 Subject: [PATCH] 4.4.0 --- .test/tasks.py | 291 ++++++++++++++++++ CHANGELOG.md | 14 + CITATION.cff | 10 + README.md | 20 +- workflow/Snakefile | 1 + workflow/envs/bash.linux-64.pin.txt | 15 + workflow/envs/bash.yaml | 4 +- workflow/envs/goleft.linux-64.pin.txt | 31 ++ workflow/envs/goleft.yaml | 2 +- workflow/envs/ngsderive.linux-64.pin.txt | 115 +++++++ workflow/envs/ngsderive.yaml | 2 +- workflow/envs/python.linux-64.pin.txt | 98 ++++++ workflow/envs/python.yaml | 4 +- workflow/envs/rseqc.linux-64.pin.txt | 89 ++++++ workflow/envs/rseqc.yaml | 2 +- workflow/envs/snakemake.linux-64.pin.txt | 182 +++++++++++ workflow/report/fastp.rst | 2 +- workflow/report/material_methods.rst | 53 +++- workflow/report/mtnucratiocalculator.rst | 4 + workflow/report/multiqc.rst | 12 +- workflow/report/sexdeterrmine.rst | 5 + workflow/rules/bowtie2_sambamba_meta.smk | 2 +- workflow/rules/common.smk | 35 ++- workflow/rules/deeptools.smk | 2 +- workflow/rules/fair_fastqc_multiqc.smk | 2 +- workflow/rules/fair_genome_indexer.smk | 2 +- workflow/rules/fastp.smk | 2 +- workflow/rules/goleft.smk | 2 +- workflow/rules/mosdepth.smk | 2 +- workflow/rules/mtnucratio.smk | 33 ++ workflow/rules/multiqc.smk | 11 +- workflow/rules/ngsderive.smk | 10 +- workflow/rules/picard_metrics.smk | 2 +- workflow/rules/rseqc.smk | 6 +- workflow/rules/samtools_stats.smk | 4 +- workflow/rules/sexdeterrmine.smk | 96 ++++++ .../fair_bowtie2_mapping_multiqc_config.py | 24 +- 37 files changed, 1113 insertions(+), 78 deletions(-) create mode 100644 .test/tasks.py create mode 100644 CITATION.cff create mode 100644 workflow/envs/bash.linux-64.pin.txt create mode 100644 workflow/envs/goleft.linux-64.pin.txt create mode 100644 workflow/envs/ngsderive.linux-64.pin.txt create mode 100644 workflow/envs/python.linux-64.pin.txt create mode 100644 workflow/envs/rseqc.linux-64.pin.txt create mode 100644 workflow/envs/snakemake.linux-64.pin.txt create mode 100644 workflow/report/mtnucratiocalculator.rst create mode 100644 workflow/report/sexdeterrmine.rst create mode 100644 workflow/rules/mtnucratio.smk create mode 100644 workflow/rules/sexdeterrmine.smk diff --git a/.test/tasks.py b/.test/tasks.py new file mode 100644 index 0000000..9d02080 --- /dev/null +++ b/.test/tasks.py @@ -0,0 +1,291 @@ +# coding: utf-8 + +from invoke import task +from github import Github +from datetime import datetime + +import os.path as op +import os +import yaml + + +def get_latest_release(address: str) -> str: + git = Github() + repo = git.get_repo(address) + releases = repo.get_releases() + return releases[0].tag_name + + +snakemake_wrappers_version = os.environ.get("SNAKEMAKE_WRAPPERS_VERSION") +if not snakemake_wrappers_version: + print("Searching snakemake wrappers version on the web...") + snakemake_wrappers_version = get_latest_release("snakemake/snakemake-wrappers") + +fair_genome_indexer_version = os.environ.get("FAIR_GENOME_INDEXER_VERSION") +if not fair_genome_indexer_version: + print("Searching fair-genome-indexer version on the web...") + fair_genome_indexer_version = get_latest_release("tdayris/fair_genome_indexer") + + +fair_fastqc_multiqc_version = os.environ.get("FAIR_FASTQC_MULTIQC_VERSION") +if not fair_fastqc_multiqc_version: + print("Searching fair-fastqc-multiqc version on the web...") + fair_fastqc_multiqc_version = get_latest_release("tdayris/fair_fastqc_multiqc") + +fair_bowtie2_mapping_version = os.environ.get("FAIR_BOWTIE2_MAPPING_VERSION") +if not fair_bowtie2_mapping_version: + print("Searching fair-bowtie2-mapping version on the web...") + fair_bowtie2_mapping_version = get_latest_release("tdayris/fair_bowtie2_mapping") + +locations = { + "snakefile": "../workflow/Snakefile", + "rules": "../workflow/rules/", + "scripts": "../workflow/scripts", + "envs": "../workflow/envs", + "changelog": "../CHANGELOG.md", + "cff": "../CITATION.cff", +} +for location in locations.values(): + if not op.exists(location): + raise FileNotFoundError(f"Could not find {location=}") + + +def get_future_version( + changelog: str = locations["changelog"], +) -> str: + with open(changelog, "r") as changelog_stream: + line = next(changelog_stream) + version = line.strip("#").strip() + + print(f"Future version is: {version=}") + return version + + +future_version = get_future_version() + + +@task +def clean( + c, + conda: bool = False, + extra: str = "", +): + patterns = [ + "black.txt", + "format.txt", + "linter_info.txt", + "pipeline.txt", + "results", + "resources", + "report.txt", + "report.zip", + "resources.md", + "resources.tsv", + "resources.txt", + "summary.tsv", + "summary_small.tsv", + "docs_update.txt", + "logs", + "reference", + "report", + "tmp", + "Snakefile", + "wrappers_update.txt", + "conda_update.txt", + "docs_update.txt", + ] + if conda: + patterns.append(".snakemake") + patterns.append(".conda") + + for pattern in patterns: + if op.exists(pattern): + print(f"Removing {pattern=}") + c.run(f"rm -rf '{pattern}'") + else: + print(f"Skipping {pattern=}") + + +@task +def update_docs_cff( + c, + to: str = future_version, + cff_path: str = locations["cff"], +): + today = datetime.today().strftime("%Y-%m-%d") + cff = { + "cff-version": "1.2.0", + "message": "If you use this software, please cite it as below.", + "authors": [ + { + "family-names": "Dayris", + "given-names": "Thibault", + "orcid": "https://orcid.org/0009-0009-2758-8450", + } + ], + "title": "fair-bowtie2-mapping", + "version": future_version, + "date-released": today, + "url": "https://github.com/tdayris/fair_bowtie2_mapping", + } + print(cff) + with open(cff_path, "w") as yaml_cff_stream: + yaml.dump(cff, yaml_cff_stream, default_flow_style=False) + + +@task(update_docs_cff) +def update_docs_wrappers(c, to: str = snakemake_wrappers_version, future_version: str = future_version): + today = datetime.today().strftime("%Y-%m-%d") + regex = rf"s|v[0-9]\+\.[0-9]\+\.[0-9]\+/wrappers|{to}/wrappers|g" + print(f"Updating snakemake wrappers in README.md to {to=}") + c.run(f"sed -i '{regex}' ../README.md >> docs_update.txt 2>&1") + + for root, dirs, files in os.walk("../workflow/report"): + for file in files: + if file.endswith(".rst"): + print(f"Updating snakemake wrappers in '{root}/{file}'...") + c.run(f"sed -i '{regex}' '{root}/{file}' >> docs_update.txt 2>&1") + + regex = ( + 's|snakemake_wrappers_prefix: str = "v4.5.0"|' + f'snakemake_wrappers_prefix: str = "{to}"|g' + ) + print("Updating '../workflow/rules/common.smk'...") + c.run(f"sed -i '{regex}' '../workflow/rules/common.smk' >> update_docs.txt 2>&1") + + regex = ( + r's|fair-genome-indexer (Version v\?[0-9]\+\.[0-9]\+\.[0-9]\+)' + f'|fair-genome-indexer (Version {fair_genome_indexer_version})|g;' + r's|fair-fastqc-multiqc (Version v\?[0-9]\+\.[0-9]\+\.[0-9]\+)' + f'|fair-fastqc-multiqc (Version {fair_fastqc_multiqc_version})|g;' + r's|fair-bowtie2-mapping (Version v\?[0-9]\+\.[0-9]\+\.[0-9]\+)' + f'|fair-bowtie2-mapping (Version {future_version})|g' + ) + print("Updating '../workflow/report/material_methods.rst'...") + c.run(f"sed -i '{regex}' '../workflow/report/material_methods.rst' >> update_docs.txt 2>&1") + + regex = ( + r's|\:Version\: [0-9]\+\.[0-9]\+\.[0-9]\+ of [0-9]\+\-[0-9]\+\-[0-9]\+$' + fr'|\:Version\: {future_version} of {today}|g' + ) + c.run(f"sed -i '{regex}' '../workflow/report/material_methods.rst' >> update_docs.txt 2>&1") + + + +@task(update_docs_wrappers) +def update_wrappers_rules( + c, + to: str = snakemake_wrappers_version, + snakefile: str = locations["snakefile"], + rules: str = locations["rules"], +): + print(f"Updating {snakefile=}...") + c.run( + "snakedeploy update-snakemake-wrappers " + f"--git-ref '{snakemake_wrappers_version}' '{snakefile}' " + ">> wrappers_update.txt 2>&1" + ) + + for root, dirs, files in os.walk(rules): + for file in files: + if file == "fair_genome_indexer.smk": + print("Updating fair_genome_indexer...") + c.run(fr"""sed -i 's|tag="[0-9]\+\.[0-9]\+\.[0-9]\+"|tag="{fair_genome_indexer_version}"|g' '{root}/{file}' >> wrappers_update.txt 2>&1""") + elif file == "fair_fastqc_multiqc.smk": + print("Updating fair_fastq_multiqc...") + c.run(fr"""sed -i 's|tag="[0-9]\+\.[0-9]\+\.[0-9]\+"|tag="{fair_fastqc_multiqc_version}"|g' '{root}/{file}' >> wrappers_update.txt 2>&1""") + elif file == "fair_bowtie2_mapping.smk": + print("Updating fair_bowtie2_mapping...") + c.run(fr"""sed -i 's|tag="[0-9]\+\.[0-9]\+\.[0-9]\+"|tag="{fair_bowtie2_mapping_version}"|g' '{root}/{file}' >> wrappers_update.txt 2>&1""") + elif file.endswith(".smk"): + print(f"Updating '{root}/{file}'...") + c.run( + "snakedeploy update-snakemake-wrappers --git-ref " + f"'{snakemake_wrappers_version}' '{root}/{file}' " + ">> wrappers_update.txt 2>&1" + ) + else: + print(f"Skipping '{root}/{file}'...") + + +@task(update_wrappers_rules) +def update_conda( + c, + envs: str = locations["envs"], +): + for root, dirs, files in os.walk(envs): + for file in files: + if file.endswith(".yaml"): + print(f"Updating '{root}/{file}'. This may take some time...") + c.run( + "snakedeploy update-conda-envs --conda-frontend mamba " + f"--pin-envs '{root}/{file}' > conda_update.txt 2>&1" + ) + + +@task +def black(c, scripts: str = locations["scripts"]): + log: str = "black.txt" + for root, dirs, files in os.walk(scripts): + for file in files: + if file.endswith(".py"): + print(f"Formatting '{root}/{file}'...") + c.run(f"black '{root}/{file}' >> {log} 2>&1") + + +@task(black) +def snakefmt( + c, + snakefile: str = locations["snakefile"], + rules: str = locations["rules"], +): + log: str = "format.txt" + print(f"Formatting {snakefile=}...") + c.run(f"snakefmt '{snakefile}' >> '{log}' 2>&1") + + for root, dirs, files in os.walk(rules): + for file in files: + if file.endswith(".smk"): + print(f"Formatting '{root}/{file}'...") + c.run(f"snakefmt '{root}/{file}' >> '{log}' 2>&1") + + +@task(snakefmt) +def linter( + c, + snakefile: str = locations["snakefile"], +): + print(f"Linting {snakefile=}...") + c.run(f"snakemake --lint -s '{snakefile}' > linter_info.txt 2>&1") + + +@task(linter) +def pipeline( + c, + snakefile: str = locations["snakefile"], +): + print("Running pipeline...") + cmd = ( + f"snakemake -s '{snakefile}' " + "--cores 7 --restart-times 0 " + "--rerun-incomplete --printshellcmds " + "--shadow-prefix 'tmp' --rerun-triggers 'mtime' " + "--software-deployment-method conda " + "--benchmark-extended > pipeline.txt 2>&1" + ) + print(cmd) + c.run(cmd) + + +@task(pipeline) +def report( + c, + snakefile: str = locations["snakefile"], +): + print("Building test report...") + c.run(f"snakemake -s '{snakefile}' --report report.zip > report.txt 2>&1") + +@task(clean, update_conda, report) +def all(c): + print("All done.") + diff --git a/CHANGELOG.md b/CHANGELOG.md index 78f55a1..00e6f1e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,17 @@ +# 4.4.0 + +## Features: + +* Snakemake-wrappers update to 5.3.0 +* MTNucRatioCalculator added to QC +* Easy snakemake-wrappers update +* Easy conda envs update +* New testing pipeline with additional format checks + +## Doc: + +* Citation cff file added + # 4.3.1 ## Features: diff --git a/CITATION.cff b/CITATION.cff new file mode 100644 index 0000000..487d7f7 --- /dev/null +++ b/CITATION.cff @@ -0,0 +1,10 @@ +authors: +- family-names: Dayris + given-names: Thibault + orcid: https://orcid.org/0009-0009-2758-8450 +cff-version: 1.2.0 +date-released: '2024-12-04' +message: If you use this software, please cite it as below. +title: fair-bowtie2-mapping +url: https://github.com/tdayris/fair_bowtie2_mapping +version: 4.4.0 diff --git a/README.md b/README.md index 68c876e..d1287ad 100644 --- a/README.md +++ b/README.md @@ -28,10 +28,10 @@ See [`fair_fastqc_multiqc`](https://github.com/tdayris/fair_fastqc_multiqc/) do | Step | Meta-Wrapper | Wrapper | | ------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | -| Bowtie2-build | [bowtie2-sambamba meta-wrapper](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/meta-wrappers/bowtie2_sambamba.html) | [bowtie2-build](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/bowtie2/build.html) | -| Fastp | | [fastp](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/fastp.html) | -| Bowtie2-align | [bowtie2-sambamba meta-wrapper](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/meta-wrappers/bowtie2_sambamba.html) | [bowtie2-align](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/bowtie2/align.html) | -| Sambamba sort | [bowtie2-sambamba meta-wrapper](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/meta-wrappers/bowtie2_sambamba.html) | [sambamba-sort](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/sambamba/sort.html) | +| Bowtie2-build | [bowtie2-sambamba meta-wrapper](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/meta-wrappers/bowtie2_sambamba.html) | [bowtie2-build](https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/bowtie2/build.html) | +| Fastp | | [fastp](https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/fastp.html) | +| Bowtie2-align | [bowtie2-sambamba meta-wrapper](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/meta-wrappers/bowtie2_sambamba.html) | [bowtie2-align](https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/bowtie2/align.html) | +| Sambamba sort | [bowtie2-sambamba meta-wrapper](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/meta-wrappers/bowtie2_sambamba.html) | [sambamba-sort](https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/sambamba/sort.html) | ``` ┌───────────────────────────┐ ┌─────────────────────────┐ @@ -54,9 +54,9 @@ See [`fair_fastqc_multiqc`](https://github.com/tdayris/fair_fastqc_multiqc/) do | Step | Meta-Wrapper | Wrapper | | ---------------- | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------- | -| Sambamba-view | [bowtie2-sambamba meta-wrapper](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/meta-wrappers/bowtie2_sambamba.html) | [sambamba-view](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/sambamba/view.html) | -| Sambamba-markdup | [bowtie2-sambamba meta-wrapper](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/meta-wrappers/bowtie2_sambamba.html) | [sambamba-markdup](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/sambamba/markdup.html) | -| Sambamba-index | [bowtie2-sambamba meta-wrapper](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/meta-wrappers/bowtie2_sambamba.html) | [sambamba-index](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/sambamba/index.html) | +| Sambamba-view | [bowtie2-sambamba meta-wrapper](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/meta-wrappers/bowtie2_sambamba.html) | [sambamba-view](https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/sambamba/view.html) | +| Sambamba-markdup | [bowtie2-sambamba meta-wrapper](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/meta-wrappers/bowtie2_sambamba.html) | [sambamba-markdup](https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/sambamba/markdup.html) | +| Sambamba-index | [bowtie2-sambamba meta-wrapper](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/meta-wrappers/bowtie2_sambamba.html) | [sambamba-index](https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/sambamba/index.html) | | Deeptools | | [deeptools-alignment-sieve](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/bio/deeptools/alignmentsieve) | ``` @@ -89,9 +89,9 @@ See [`fair_fastqc_multiqc`](https://github.com/tdayris/fair_fastqc_multiqc/) do | Step | Wrapper | | -------- | --------------------------------------------------------------------------------------------------------------------------------- | -| Picard | [picard-collectmultiplemetrics](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/picard/collectmultiplemetrics.html) | -| Samtools | [samtools-stats](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/samtools/stats.html) | -| MultiQC | [multiqc-wrapper](https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/multiqc.html) | +| Picard | [picard-collectmultiplemetrics](https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/picard/collectmultiplemetrics.html) | +| Samtools | [samtools-stats](https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/samtools/stats.html) | +| MultiQC | [multiqc-wrapper](https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/multiqc.html) | ``` ┌──────────────────────┐ ┌─────────────────────┐ ┌─────────────────────────┐ diff --git a/workflow/Snakefile b/workflow/Snakefile index 24e9667..3fbd35c 100644 --- a/workflow/Snakefile +++ b/workflow/Snakefile @@ -17,6 +17,7 @@ include: "rules/deeptools.smk" include: "rules/fastp.smk" include: "rules/goleft.smk" include: "rules/mosdepth.smk" +include: "rules/mtnucratio.smk" include: "rules/multiqc.smk" include: "rules/ngsderive.smk" include: "rules/picard_metrics.smk" diff --git a/workflow/envs/bash.linux-64.pin.txt b/workflow/envs/bash.linux-64.pin.txt new file mode 100644 index 0000000..6901bbe --- /dev/null +++ b/workflow/envs/bash.linux-64.pin.txt @@ -0,0 +1,15 @@ +# This file may be used to create an environment using: +# $ conda create --name --file +# platform: linux-64 +# created-by: conda 24.9.2 +@EXPLICIT +https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2#d7c89558ba9fa0495403155b64376d81 +https://conda.anaconda.org/conda-forge/linux-64/libgomp-14.2.0-h77fa898_1.conda#cc3573974587f12dda90d96e3e55a702 +https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2#73aaf86a425cc6e73fcf236a5a46396d +https://conda.anaconda.org/conda-forge/linux-64/libgcc-14.2.0-h77fa898_1.conda#3cb76c3f10d3bc7f1105b2fc9db984df +https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-14.2.0-h69a702a_1.conda#e39480b9ca41323497b05492a63bc35b +https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-h4bc722e_7.conda#62ee74e96c5ebb0af99386de58cf9553 +https://conda.anaconda.org/conda-forge/linux-64/gzip-1.13-hd590300_0.conda#cb8143aa2e59e9684c41dfdf74af38ac +https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-h4ab18f5_6.conda#27329162c0dc732bcf67a4e0cd488125 +https://conda.anaconda.org/conda-forge/linux-64/zlib-1.2.13-h4ab18f5_6.conda#559d338a4234c2ad6e676f460a093e67 +https://conda.anaconda.org/bioconda/linux-64/pbgzip-2016.08.04-h9d449c0_5.tar.bz2#0da92a60578bf5de747bd240bde395fc diff --git a/workflow/envs/bash.yaml b/workflow/envs/bash.yaml index 286e9f3..38d66c0 100644 --- a/workflow/envs/bash.yaml +++ b/workflow/envs/bash.yaml @@ -3,5 +3,5 @@ channels: - bioconda - nodefaults dependencies: - - gzip=1.13 - - pbgzip=2016.08.04 \ No newline at end of file + - gzip =1.13 + - pbgzip =2016.08.04 diff --git a/workflow/envs/goleft.linux-64.pin.txt b/workflow/envs/goleft.linux-64.pin.txt new file mode 100644 index 0000000..2747f0d --- /dev/null +++ b/workflow/envs/goleft.linux-64.pin.txt @@ -0,0 +1,31 @@ +# This file may be used to create an environment using: +# $ conda create --name --file +# platform: linux-64 +# created-by: conda 24.9.2 +@EXPLICIT +https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2#d7c89558ba9fa0495403155b64376d81 +https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.8.30-hbcca054_0.conda#c27d1c142233b5bc9ca570c6e2e0c244 +https://conda.anaconda.org/conda-forge/linux-64/libgomp-14.2.0-h77fa898_1.conda#cc3573974587f12dda90d96e3e55a702 +https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2#73aaf86a425cc6e73fcf236a5a46396d +https://conda.anaconda.org/conda-forge/linux-64/libgcc-14.2.0-h77fa898_1.conda#3cb76c3f10d3bc7f1105b2fc9db984df +https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.3-hb9d3cd8_1.conda#ee228789a85f961d14567252a03e725f +https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-14.2.0-h69a702a_1.conda#e39480b9ca41323497b05492a63bc35b +https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-14.2.0-hc0a3c3a_1.conda#234a5554c53625688d51062645337328 +https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda#edb0dca6bc32e4f4789199455a1dbeb8 +https://conda.anaconda.org/conda-forge/linux-64/openssl-3.4.0-hb9d3cd8_0.conda#23cc74f77eb99315c0360ec3533147a9 +https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-h4bc722e_7.conda#62ee74e96c5ebb0af99386de58cf9553 +https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2#30186d27e2c9fa62b45fb1476b7200e3 +https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.21-h4bc722e_0.conda#36ce76665bf67f5aac36be7a0d21b7f3 +https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda#172bf1cd1ff8629f2b1179945ed45055 +https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hf672d98_0.conda#be2de152d8073ef1c01b7728475f2fe7 +https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-14.2.0-h4852527_1.conda#8371ac6457591af2cf6159439c1fd051 +https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-he02047a_1.conda#70caf8bb6cf39a0b6b7efc885f51c0fe +https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2#2161070d867d1b1204ea749c8eec4ef0 +https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2#4d331e44109e3f0e19b4cb8f9b82f3e1 +https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.64.0-h161d5f1_0.conda#19e57602824042dfd0446292ef90488b +https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.6-ha6fb4c9_0.conda#4d056880988120e29d75bfff282e0f45 +https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda#3f43953b7d3fb3aaa1d0d0723d91e368 +https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.10.1-hbbe4b11_0.conda#6e801c50a40301f6978c53976917b277 +https://conda.anaconda.org/bioconda/linux-64/htslib-1.21-h5efdd21_0.tar.bz2#06b995dc2244c024b45bbb3e53ae2f27 +https://conda.anaconda.org/bioconda/linux-64/samtools-1.21-h50ea8bc_0.tar.bz2#4a7fe11223f61cb2d950ed54e20c12ce +https://conda.anaconda.org/bioconda/linux-64/goleft-0.2.6-h9ee0642_0.tar.bz2#9c1b549f868f02696a3d9d1c7d960319 diff --git a/workflow/envs/goleft.yaml b/workflow/envs/goleft.yaml index 11108bf..beb78a7 100644 --- a/workflow/envs/goleft.yaml +++ b/workflow/envs/goleft.yaml @@ -3,4 +3,4 @@ channels: - bioconda - nodefaults dependencies: - - goleft=0.2.4 \ No newline at end of file + - goleft =0.2.6 diff --git a/workflow/envs/ngsderive.linux-64.pin.txt b/workflow/envs/ngsderive.linux-64.pin.txt new file mode 100644 index 0000000..e75a91d --- /dev/null +++ b/workflow/envs/ngsderive.linux-64.pin.txt @@ -0,0 +1,115 @@ +# This file may be used to create an environment using: +# $ conda create --name --file +# platform: linux-64 +# created-by: conda 24.9.2 +@EXPLICIT +https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2#d7c89558ba9fa0495403155b64376d81 +https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.8.30-hbcca054_0.conda#c27d1c142233b5bc9ca570c6e2e0c244 +https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.43-h712a8e2_2.conda#048b02e3962f066da18efe3a21b77672 +https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.12-5_cp312.conda#0424ae29b104430108f5218a66db7260 +https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda#8ac3367aafb1cc0a068483c580af8015 +https://conda.anaconda.org/conda-forge/linux-64/libgomp-14.2.0-h77fa898_1.conda#cc3573974587f12dda90d96e3e55a702 +https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2#73aaf86a425cc6e73fcf236a5a46396d +https://conda.anaconda.org/conda-forge/linux-64/libgcc-14.2.0-h77fa898_1.conda#3cb76c3f10d3bc7f1105b2fc9db984df +https://conda.anaconda.org/conda-forge/linux-64/aws-c-common-0.10.3-hb9d3cd8_0.conda#ff3653946d34a6a6ba10babb139d96ef +https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.3-hb9d3cd8_1.conda#ee228789a85f961d14567252a03e725f +https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hb9d3cd8_2.conda#41b599ed2b02abcfdd84302bff174b23 +https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.4-h5888daf_0.conda#db833e03127376d461e1e13e76f09b6c +https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-14.2.0-h69a702a_1.conda#e39480b9ca41323497b05492a63bc35b +https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-14.2.0-hd5240d6_1.conda#9822b874ea29af082e5d36098d25427d +https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-14.2.0-hc0a3c3a_1.conda#234a5554c53625688d51062645337328 +https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.8.0-hf23e847_1.conda#b1aa0faa95017bca11369bd080487ec4 +https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda#edb0dca6bc32e4f4789199455a1dbeb8 +https://conda.anaconda.org/conda-forge/linux-64/openssl-3.4.0-hb9d3cd8_0.conda#23cc74f77eb99315c0360ec3533147a9 +https://conda.anaconda.org/conda-forge/linux-64/aws-c-cal-0.8.0-hecf86a2_2.conda#c54459d686ad9d0502823cacff7e8423 +https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.3.0-hf42f96a_2.conda#257f4ae92fe11bd8436315c86468c39b +https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.2.1-hf42f96a_1.conda#bbdd20fb1994a9f0ba98078fcb6c12ab +https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.2.2-hf42f96a_1.conda#d908d43d87429be24edfb20e96543c20 +https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-h4bc722e_7.conda#62ee74e96c5ebb0af99386de58cf9553 +https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-h5888daf_1005.conda#d411fc29e338efb48c5fd4576d71d881 +https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2#30186d27e2c9fa62b45fb1476b7200e3 +https://conda.anaconda.org/conda-forge/linux-64/libabseil-20240722.0-cxx17_h5888daf_1.conda#e1f604644fe8d78e22660e2fec6756bc +https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hb9d3cd8_2.conda#9566f0bd264fbd463002e759b8a82401 +https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hb9d3cd8_2.conda#06f70867945ea6a84d35836af780f1de +https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.21-h4bc722e_0.conda#36ce76665bf67f5aac36be7a0d21b7f3 +https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda#172bf1cd1ff8629f2b1179945ed45055 +https://conda.anaconda.org/conda-forge/linux-64/libevent-2.1.12-hf998b51_1.conda#a1cfcc585f0c42bf8d5546bb1dfb668d +https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2#d645c6d2ac96843a2bfaccd2d62b3ac3 +https://conda.anaconda.org/conda-forge/linux-64/libgfortran-14.2.0-h69a702a_1.conda#f1fd30127802683586f768875127a987 +https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda#d66573916ffcf376178462f1b61c941e +https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hd590300_0.conda#30fd6e37fe21f86f4bd26d6ee73eeec7 +https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.47.0-hadc24fc_1.conda#b6f02b52a174e612e89548f4663ce56a +https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hf672d98_0.conda#be2de152d8073ef1c01b7728475f2fe7 +https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-14.2.0-h4852527_1.conda#8371ac6457591af2cf6159439c1fd051 +https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda#40b61aab5c7ba9ff276c41cfffe6b80b +https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda#5aa797f8787fe7a17d1b0821485b5adc +https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-he02047a_1.conda#70caf8bb6cf39a0b6b7efc885f51c0fe +https://conda.anaconda.org/conda-forge/linux-64/s2n-1.5.9-h0fd0ee4_0.conda#f472432f3753c5ca763d2497e2ea30bf +https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda#d453b98d9c83e71da0741bb0ff4d76bc +https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2#2161070d867d1b1204ea749c8eec4ef0 +https://conda.anaconda.org/conda-forge/linux-64/zlib-1.3.1-hb9d3cd8_2.conda#c9f075ab2f33b3bbee9e62d4ad0a6cd8 +https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.15.2-hdeadb07_2.conda#461a1eaa075fd391add91bcffc9de0c1 +https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.1-hbabe93e_0.conda#ff862eebdfeb2fd048ae9dc92510baca +https://conda.anaconda.org/conda-forge/linux-64/libcrc32c-1.1.2-h9c3ff4c_0.tar.bz2#c965a5aa0d5c1c37ffc62dff36e28400 +https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2#4d331e44109e3f0e19b4cb8f9b82f3e1 +https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.64.0-h161d5f1_0.conda#19e57602824042dfd0446292ef90488b +https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.28-pthreads_h94d23a6_1.conda#62857b389e42b36b686331bec0922050 +https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-5.28.2-h5b01275_0.conda#ab0bff36363bec94720275a681af8b83 +https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2024.07.02-hbbce691_1.conda#2124de47357b7a516c0a3efd8f88c143 +https://conda.anaconda.org/conda-forge/linux-64/libthrift-0.21.0-h0e7cc3e_0.conda#dcb95c0a98ba9ff737f7ae482aef7833 +https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.13.5-h064dc61_0.conda#fb16b85a5be1328ac1c44b098b74c570 +https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.4-hcb278e6_0.conda#318b08df404f9c9be5712aaa5a6f0bb0 +https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda#47d31b792659ce70f470b5c82fdfb7a4 +https://conda.anaconda.org/conda-forge/linux-64/snappy-1.2.1-ha2e4443_0.conda#6b7dcc7349efd123d493d2dbe85a045f +https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.6-ha6fb4c9_0.conda#4d056880988120e29d75bfff282e0f45 +https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.5.0-h1ffe551_7.conda#7cce4dfab184f4bbdfc160789251b3c5 +https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.9.1-hab05fe4_2.conda#fb409f7053fa3dbbdf6eb41045a87795 +https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda#3f43953b7d3fb3aaa1d0d0723d91e368 +https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-25_linux64_openblas.conda#8ea26d42ca88ec5258802715fe1ee10b +https://conda.anaconda.org/conda-forge/linux-64/orc-2.0.3-he039a57_0.conda#052499acd6d6b79952197a13b23e2600 +https://conda.anaconda.org/conda-forge/linux-64/python-3.12.7-hc5c86c4_0_cpython.conda#0515111a9cdf69f83278f7c197db9807 +https://conda.anaconda.org/conda-forge/linux-64/re2-2024.07.02-h77b4e00_1.conda#01093ff37c1b5e6bf9f17c0116747d11 +https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.8.0-hb88c0a9_10.conda#409b7ee6d3473cc62bda7280f6ac20d0 +https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.11.0-h7bd072d_8.conda#0e9d67838114c0dbd267a9311268b331 +https://conda.anaconda.org/conda-forge/noarch/colorlog-6.9.0-pyh707e725_1.conda#f00fc375bd02bdbbf791f9fe26ae96ec +https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-25_linux64_openblas.conda#5dbd1b0fc0d01ec5e0e1fbe667281a11 +https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.10.1-hbbe4b11_0.conda#6e801c50a40301f6978c53976917b277 +https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.67.1-hc2c308b_0.conda#4606a4647bfe857e3cfe21ca12ac3afb +https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-25_linux64_openblas.conda#4dc03a53fc69371a6158d0ed37214cd3 +https://conda.anaconda.org/conda-forge/noarch/packaging-24.2-pyhd8ed1ab_2.conda#3bfed7e6228ebf2f7b9eaa47f1b4e2aa +https://conda.anaconda.org/conda-forge/noarch/pygtrie-2.5.0-pyhd8ed1ab_0.tar.bz2#a041d1adf502fc6b3c6a0b0955e29fff +https://conda.anaconda.org/bioconda/linux-64/pytabix-0.1-py312hc60241a_6.tar.bz2#d48f5d19f75743387b82b8b7f35dc164 +https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.2-pyhd8ed1ab_1.conda#c0def296b2f6d2dd7b030c2a7f66bb1f +https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda#3eeeeb9e4827ace8c0c1419c85d590ad +https://conda.anaconda.org/conda-forge/noarch/rstr-3.2.2-pyhd8ed1ab_0.conda#8ad5e0007bdeeadf3fd7532a02699fd4 +https://conda.anaconda.org/conda-forge/noarch/setuptools-75.6.0-pyhff2d567_1.conda#fc80f7995e396cbaeabd23cf46c413dc +https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyhd8ed1ab_1.conda#a516da6cfe1ec0a55e49737f017b4965 +https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2#6d6552722448103793743dabfbda532d +https://conda.anaconda.org/conda-forge/noarch/wheel-0.45.1-pyhd8ed1ab_1.conda#75cb7132eb58d97896e173ef12ac9986 +https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.7.3-h3a84f74_0.conda#171850b890600458ae6c990e78f1fa23 +https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.14.0-h5cfcd09_0.conda#0a8838771cc2e985cd295e01ae83baf1 +https://conda.anaconda.org/bioconda/linux-64/htslib-1.21-h5efdd21_0.tar.bz2#06b995dc2244c024b45bbb3e53ae2f27 +https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.31.0-h804f50b_0.conda#35ab838423b60f233391eb86d324a830 +https://conda.anaconda.org/conda-forge/linux-64/numpy-2.1.3-py312h58c1407_0.conda#dfdbc12e6d81889ba4c494a23f23eba8 +https://conda.anaconda.org/conda-forge/noarch/pip-24.3.1-pyh8b19718_0.conda#5dd546fe99b44fda83963d15f84263b7 +https://conda.anaconda.org/bioconda/linux-64/pysam-0.22.1-py312hcfdcdd7_2.tar.bz2#33baeca8a223d34355fd37bc9e14a128 +https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhff2d567_1.conda#5ba79d7c71f03c678c8ead841f347d6e +https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.29.6-hdec8b0f_1.conda#40647232fad98f92be8c6050a7e0c2bd +https://conda.anaconda.org/conda-forge/linux-64/azure-identity-cpp-1.10.0-h113e628_0.conda#73f73f60854f325a55f1d31459f2ab73 +https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.8.0-h736e048_1.conda#13de36be8de3ae3f05ba127631599213 +https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.31.0-h0121fbd_0.conda#568d6a09a6ed76337a7b97c84ae7c0f8 +https://conda.anaconda.org/conda-forge/linux-64/pandas-2.2.3-py312hf9745cd_1.conda#8bce4f6caaf8c5448c7ac86d87e26b4b +https://conda.anaconda.org/conda-forge/linux-64/polars-0.20.31-py312hd26010a_1.conda#c444edacfe51f9034ee19fa227939d4b +https://conda.anaconda.org/bioconda/noarch/tabix-1.11-hdfd78af_0.tar.bz2#cb68d74b5a5ca94b745ce168b1043dfd +https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.449-h5558e3c_4.conda#ba7abdc93b0ade11d774b47aaab84737 +https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.13.0-h3cf044e_1.conda#7eb66060455c7a47d9dcdbfa9f46579b +https://conda.anaconda.org/conda-forge/linux-64/azure-storage-files-datalake-cpp-12.12.0-ha633028_1.conda#7c1980f89dd41b097549782121a73490 +https://conda.anaconda.org/conda-forge/linux-64/libarrow-18.1.0-he15abb1_1_cpu.conda#bd3e35a6f3f869b4777488452f315008 +https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-18.1.0-h5888daf_1_cpu.conda#6197dcb930f6254e9b2fdc416be56b71 +https://conda.anaconda.org/conda-forge/linux-64/libparquet-18.1.0-h6bd9018_1_cpu.conda#1054909202f86e38bbbb7ca1131b8471 +https://conda.anaconda.org/conda-forge/linux-64/pyarrow-core-18.1.0-py312h01725c0_0_cpu.conda#ee80934a6c280ff8635f8db5dec11e04 +https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-18.1.0-h5888daf_1_cpu.conda#77501831a2aabbaabac55e8cb3b6900a +https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-18.1.0-h5c8f2c3_1_cpu.conda#5d47bd2674afd104dbe2f2f3534594b0 +https://conda.anaconda.org/conda-forge/linux-64/pyarrow-18.1.0-py312h7900ff3_0.conda#ac65b70df28687c6af4270923c020bdd +https://conda.anaconda.org/bioconda/noarch/gtfparse-2.5.0-pyh7cba7a3_0.tar.bz2#ea40e62a70c5b458cba8eb9f5b92cfe0 +https://conda.anaconda.org/bioconda/noarch/ngsderive-4.0.0-pyhdfd78af_0.tar.bz2#1e6da7c47f5b67c9284c000d473b2103 diff --git a/workflow/envs/ngsderive.yaml b/workflow/envs/ngsderive.yaml index b366f6a..0ea1660 100644 --- a/workflow/envs/ngsderive.yaml +++ b/workflow/envs/ngsderive.yaml @@ -3,4 +3,4 @@ channels: - bioconda - nodefaults dependencies: - - ngsderive=3.3.2 \ No newline at end of file + - ngsderive =4.0.0 diff --git a/workflow/envs/python.linux-64.pin.txt b/workflow/envs/python.linux-64.pin.txt new file mode 100644 index 0000000..40dca73 --- /dev/null +++ b/workflow/envs/python.linux-64.pin.txt @@ -0,0 +1,98 @@ +# This file may be used to create an environment using: +# $ conda create --name --file +# platform: linux-64 +# created-by: conda 24.9.2 +@EXPLICIT +https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2#d7c89558ba9fa0495403155b64376d81 +https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.8.30-hbcca054_0.conda#c27d1c142233b5bc9ca570c6e2e0c244 +https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.43-h712a8e2_2.conda#048b02e3962f066da18efe3a21b77672 +https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.13-5_cp313.conda#381bbd2a92c863f640a55b6ff3c35161 +https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda#8ac3367aafb1cc0a068483c580af8015 +https://conda.anaconda.org/conda-forge/linux-64/libgomp-14.2.0-h77fa898_1.conda#cc3573974587f12dda90d96e3e55a702 +https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2#73aaf86a425cc6e73fcf236a5a46396d +https://conda.anaconda.org/conda-forge/linux-64/libgcc-14.2.0-h77fa898_1.conda#3cb76c3f10d3bc7f1105b2fc9db984df +https://conda.anaconda.org/conda-forge/linux-64/aws-c-common-0.10.3-hb9d3cd8_0.conda#ff3653946d34a6a6ba10babb139d96ef +https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.3-hb9d3cd8_1.conda#ee228789a85f961d14567252a03e725f +https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hb9d3cd8_2.conda#41b599ed2b02abcfdd84302bff174b23 +https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.4-h5888daf_0.conda#db833e03127376d461e1e13e76f09b6c +https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-14.2.0-h69a702a_1.conda#e39480b9ca41323497b05492a63bc35b +https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-14.2.0-hd5240d6_1.conda#9822b874ea29af082e5d36098d25427d +https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-14.2.0-hc0a3c3a_1.conda#234a5554c53625688d51062645337328 +https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.8.0-hf23e847_1.conda#b1aa0faa95017bca11369bd080487ec4 +https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda#edb0dca6bc32e4f4789199455a1dbeb8 +https://conda.anaconda.org/conda-forge/linux-64/openssl-3.4.0-hb9d3cd8_0.conda#23cc74f77eb99315c0360ec3533147a9 +https://conda.anaconda.org/conda-forge/linux-64/aws-c-cal-0.8.0-hecf86a2_2.conda#c54459d686ad9d0502823cacff7e8423 +https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.3.0-hf42f96a_2.conda#257f4ae92fe11bd8436315c86468c39b +https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.2.1-hf42f96a_1.conda#bbdd20fb1994a9f0ba98078fcb6c12ab +https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.2.2-hf42f96a_1.conda#d908d43d87429be24edfb20e96543c20 +https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-h4bc722e_7.conda#62ee74e96c5ebb0af99386de58cf9553 +https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-h5888daf_1005.conda#d411fc29e338efb48c5fd4576d71d881 +https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2#30186d27e2c9fa62b45fb1476b7200e3 +https://conda.anaconda.org/conda-forge/linux-64/libabseil-20240722.0-cxx17_h5888daf_1.conda#e1f604644fe8d78e22660e2fec6756bc +https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hb9d3cd8_2.conda#9566f0bd264fbd463002e759b8a82401 +https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hb9d3cd8_2.conda#06f70867945ea6a84d35836af780f1de +https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda#172bf1cd1ff8629f2b1179945ed45055 +https://conda.anaconda.org/conda-forge/linux-64/libevent-2.1.12-hf998b51_1.conda#a1cfcc585f0c42bf8d5546bb1dfb668d +https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2#d645c6d2ac96843a2bfaccd2d62b3ac3 +https://conda.anaconda.org/conda-forge/linux-64/libgfortran-14.2.0-h69a702a_1.conda#f1fd30127802683586f768875127a987 +https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda#d66573916ffcf376178462f1b61c941e +https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-h4bc722e_0.conda#aeb98fdeb2e8f25d43ef71fbacbeec80 +https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.47.0-hadc24fc_1.conda#b6f02b52a174e612e89548f4663ce56a +https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hf672d98_0.conda#be2de152d8073ef1c01b7728475f2fe7 +https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-14.2.0-h4852527_1.conda#8371ac6457591af2cf6159439c1fd051 +https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda#40b61aab5c7ba9ff276c41cfffe6b80b +https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-he02047a_1.conda#70caf8bb6cf39a0b6b7efc885f51c0fe +https://conda.anaconda.org/conda-forge/linux-64/s2n-1.5.9-h0fd0ee4_0.conda#f472432f3753c5ca763d2497e2ea30bf +https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda#d453b98d9c83e71da0741bb0ff4d76bc +https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2#2161070d867d1b1204ea749c8eec4ef0 +https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.15.2-hdeadb07_2.conda#461a1eaa075fd391add91bcffc9de0c1 +https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.1-hbabe93e_0.conda#ff862eebdfeb2fd048ae9dc92510baca +https://conda.anaconda.org/conda-forge/linux-64/libcrc32c-1.1.2-h9c3ff4c_0.tar.bz2#c965a5aa0d5c1c37ffc62dff36e28400 +https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2#4d331e44109e3f0e19b4cb8f9b82f3e1 +https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.64.0-h161d5f1_0.conda#19e57602824042dfd0446292ef90488b +https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.28-pthreads_h94d23a6_1.conda#62857b389e42b36b686331bec0922050 +https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-5.28.2-h5b01275_0.conda#ab0bff36363bec94720275a681af8b83 +https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2024.07.02-hbbce691_1.conda#2124de47357b7a516c0a3efd8f88c143 +https://conda.anaconda.org/conda-forge/linux-64/libthrift-0.21.0-h0e7cc3e_0.conda#dcb95c0a98ba9ff737f7ae482aef7833 +https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.13.5-h064dc61_0.conda#fb16b85a5be1328ac1c44b098b74c570 +https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.4-hcb278e6_0.conda#318b08df404f9c9be5712aaa5a6f0bb0 +https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda#47d31b792659ce70f470b5c82fdfb7a4 +https://conda.anaconda.org/conda-forge/linux-64/snappy-1.2.1-ha2e4443_0.conda#6b7dcc7349efd123d493d2dbe85a045f +https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.6-ha6fb4c9_0.conda#4d056880988120e29d75bfff282e0f45 +https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.5.0-h1ffe551_7.conda#7cce4dfab184f4bbdfc160789251b3c5 +https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.9.1-hab05fe4_2.conda#fb409f7053fa3dbbdf6eb41045a87795 +https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda#3f43953b7d3fb3aaa1d0d0723d91e368 +https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-25_linux64_openblas.conda#8ea26d42ca88ec5258802715fe1ee10b +https://conda.anaconda.org/conda-forge/linux-64/orc-2.0.3-he039a57_0.conda#052499acd6d6b79952197a13b23e2600 +https://conda.anaconda.org/conda-forge/linux-64/python-3.13.0-h9ebbce0_101_cp313.conda#f4fea9d5bb3f2e61a39950a7ab70ee4e +https://conda.anaconda.org/conda-forge/linux-64/re2-2024.07.02-h77b4e00_1.conda#01093ff37c1b5e6bf9f17c0116747d11 +https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.8.0-hb88c0a9_10.conda#409b7ee6d3473cc62bda7280f6ac20d0 +https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.11.0-h7bd072d_8.conda#0e9d67838114c0dbd267a9311268b331 +https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-25_linux64_openblas.conda#5dbd1b0fc0d01ec5e0e1fbe667281a11 +https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.10.1-hbbe4b11_0.conda#6e801c50a40301f6978c53976917b277 +https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.67.1-hc2c308b_0.conda#4606a4647bfe857e3cfe21ca12ac3afb +https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-25_linux64_openblas.conda#4dc03a53fc69371a6158d0ed37214cd3 +https://conda.anaconda.org/conda-forge/noarch/pip-24.3.1-pyh145f28c_0.conda#ca3afe2d7b893a8c8cdf489d30a2b1a3 +https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.2-pyhd8ed1ab_1.conda#c0def296b2f6d2dd7b030c2a7f66bb1f +https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda#3eeeeb9e4827ace8c0c1419c85d590ad +https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyhd8ed1ab_1.conda#a516da6cfe1ec0a55e49737f017b4965 +https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.7.3-h3a84f74_0.conda#171850b890600458ae6c990e78f1fa23 +https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.14.0-h5cfcd09_0.conda#0a8838771cc2e985cd295e01ae83baf1 +https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.31.0-h804f50b_0.conda#35ab838423b60f233391eb86d324a830 +https://conda.anaconda.org/conda-forge/linux-64/numpy-2.1.3-py313h4bf6692_0.conda#17bcf851cceab793dad11ab8089d4bc4 +https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhff2d567_1.conda#5ba79d7c71f03c678c8ead841f347d6e +https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.29.6-hdec8b0f_1.conda#40647232fad98f92be8c6050a7e0c2bd +https://conda.anaconda.org/conda-forge/linux-64/azure-identity-cpp-1.10.0-h113e628_0.conda#73f73f60854f325a55f1d31459f2ab73 +https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.8.0-h736e048_1.conda#13de36be8de3ae3f05ba127631599213 +https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.31.0-h0121fbd_0.conda#568d6a09a6ed76337a7b97c84ae7c0f8 +https://conda.anaconda.org/conda-forge/linux-64/pandas-2.2.3-py313ha87cce1_1.conda#c5d63dd501db554b84a30dea33824164 +https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.449-h5558e3c_4.conda#ba7abdc93b0ade11d774b47aaab84737 +https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.13.0-h3cf044e_1.conda#7eb66060455c7a47d9dcdbfa9f46579b +https://conda.anaconda.org/conda-forge/linux-64/azure-storage-files-datalake-cpp-12.12.0-ha633028_1.conda#7c1980f89dd41b097549782121a73490 +https://conda.anaconda.org/conda-forge/linux-64/libarrow-18.1.0-he15abb1_1_cpu.conda#bd3e35a6f3f869b4777488452f315008 +https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-18.1.0-h5888daf_1_cpu.conda#6197dcb930f6254e9b2fdc416be56b71 +https://conda.anaconda.org/conda-forge/linux-64/libparquet-18.1.0-h6bd9018_1_cpu.conda#1054909202f86e38bbbb7ca1131b8471 +https://conda.anaconda.org/conda-forge/linux-64/pyarrow-core-18.1.0-py313he5f92c8_0_cpu.conda#5380e12f4468e891911dbbd4248b521a +https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-18.1.0-h5888daf_1_cpu.conda#77501831a2aabbaabac55e8cb3b6900a +https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-18.1.0-h5c8f2c3_1_cpu.conda#5d47bd2674afd104dbe2f2f3534594b0 +https://conda.anaconda.org/conda-forge/linux-64/pyarrow-18.1.0-py313h78bf25f_0.conda#a11d880ceedc33993c6f5c14a80ea9d3 diff --git a/workflow/envs/python.yaml b/workflow/envs/python.yaml index 4dc8cb3..53c79e2 100644 --- a/workflow/envs/python.yaml +++ b/workflow/envs/python.yaml @@ -2,5 +2,5 @@ channels: - conda-forge - nodefaults dependencies: - - pandas=2.2.0 - - pyarrow=15.0.0 \ No newline at end of file + - pandas =2.2.3 + - pyarrow =18.1.0 diff --git a/workflow/envs/rseqc.linux-64.pin.txt b/workflow/envs/rseqc.linux-64.pin.txt new file mode 100644 index 0000000..4682966 --- /dev/null +++ b/workflow/envs/rseqc.linux-64.pin.txt @@ -0,0 +1,89 @@ +# This file may be used to create an environment using: +# $ conda create --name --file +# platform: linux-64 +# created-by: conda 24.9.2 +@EXPLICIT +https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2#d7c89558ba9fa0495403155b64376d81 +https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.8.30-hbcca054_0.conda#c27d1c142233b5bc9ca570c6e2e0c244 +https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.43-h712a8e2_2.conda#048b02e3962f066da18efe3a21b77672 +https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.12-5_cp312.conda#0424ae29b104430108f5218a66db7260 +https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda#8ac3367aafb1cc0a068483c580af8015 +https://conda.anaconda.org/conda-forge/linux-64/libgomp-14.2.0-h77fa898_1.conda#cc3573974587f12dda90d96e3e55a702 +https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2#73aaf86a425cc6e73fcf236a5a46396d +https://conda.anaconda.org/conda-forge/linux-64/libgcc-14.2.0-h77fa898_1.conda#3cb76c3f10d3bc7f1105b2fc9db984df +https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.3-hb9d3cd8_1.conda#ee228789a85f961d14567252a03e725f +https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hb9d3cd8_2.conda#41b599ed2b02abcfdd84302bff174b23 +https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.4-h5888daf_0.conda#db833e03127376d461e1e13e76f09b6c +https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-14.2.0-h69a702a_1.conda#e39480b9ca41323497b05492a63bc35b +https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-14.2.0-hd5240d6_1.conda#9822b874ea29af082e5d36098d25427d +https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-14.2.0-hc0a3c3a_1.conda#234a5554c53625688d51062645337328 +https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda#edb0dca6bc32e4f4789199455a1dbeb8 +https://conda.anaconda.org/conda-forge/linux-64/openssl-3.4.0-hb9d3cd8_0.conda#23cc74f77eb99315c0360ec3533147a9 +https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-hb9d3cd8_1002.conda#b3c17d95b5a10c6e64a21fa17573e70e +https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.11-hb9d3cd8_1.conda#77cbc488235ebbaab2b6e912d3934bae +https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdmcp-1.1.5-hb9d3cd8_0.conda#8035c64cb77ed555e3f150b7b3972480 +https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-h4bc722e_7.conda#62ee74e96c5ebb0af99386de58cf9553 +https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2#30186d27e2c9fa62b45fb1476b7200e3 +https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hb9d3cd8_2.conda#9566f0bd264fbd463002e759b8a82401 +https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hb9d3cd8_2.conda#06f70867945ea6a84d35836af780f1de +https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.21-h4bc722e_0.conda#36ce76665bf67f5aac36be7a0d21b7f3 +https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda#172bf1cd1ff8629f2b1179945ed45055 +https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2#d645c6d2ac96843a2bfaccd2d62b3ac3 +https://conda.anaconda.org/conda-forge/linux-64/libgfortran-14.2.0-h69a702a_1.conda#f1fd30127802683586f768875127a987 +https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.0.0-hd590300_1.conda#ea25936bb4080d843790b586850f82b8 +https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hd590300_0.conda#30fd6e37fe21f86f4bd26d6ee73eeec7 +https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.44-hadc24fc_0.conda#f4cc49d7aa68316213e4b12be35308d1 +https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.47.0-hadc24fc_1.conda#b6f02b52a174e612e89548f4663ce56a +https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hf672d98_0.conda#be2de152d8073ef1c01b7728475f2fe7 +https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-14.2.0-h4852527_1.conda#8371ac6457591af2cf6159439c1fd051 +https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda#40b61aab5c7ba9ff276c41cfffe6b80b +https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.4.0-hd590300_0.conda#b26e8aa824079e1be0294e7152ca4559 +https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.17.0-h8a09558_0.conda#92ed62436b625154323d40d5f2f11dd7 +https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda#5aa797f8787fe7a17d1b0821485b5adc +https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-he02047a_1.conda#70caf8bb6cf39a0b6b7efc885f51c0fe +https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda#d453b98d9c83e71da0741bb0ff4d76bc +https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2#2161070d867d1b1204ea749c8eec4ef0 +https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hb9d3cd8_2.conda#c63b5e52939e795ba8d26e35d767a843 +https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-h267a509_2.conda#9ae35c3d96db2c94ce0cef86efdfa2cb +https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2#76bbff344f0134279f225174e9064c8f +https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2#4d331e44109e3f0e19b4cb8f9b82f3e1 +https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.64.0-h161d5f1_0.conda#19e57602824042dfd0446292ef90488b +https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.28-pthreads_h94d23a6_1.conda#62857b389e42b36b686331bec0922050 +https://conda.anaconda.org/conda-forge/linux-64/qhull-2020.2-h434a139_5.conda#353823361b1d27eb3960efb076dfcaf6 +https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda#47d31b792659ce70f470b5c82fdfb7a4 +https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.6-ha6fb4c9_0.conda#4d056880988120e29d75bfff282e0f45 +https://conda.anaconda.org/conda-forge/linux-64/brotli-1.1.0-hb9d3cd8_2.conda#98514fe74548d768907ce7a13f680e8f +https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda#3f43953b7d3fb3aaa1d0d0723d91e368 +https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-25_linux64_openblas.conda#8ea26d42ca88ec5258802715fe1ee10b +https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.0-h6565414_0.conda#80eaf80d84668fa5620ac9ec1b4bf56f +https://conda.anaconda.org/conda-forge/linux-64/python-3.12.7-hc5c86c4_0_cpython.conda#0515111a9cdf69f83278f7c197db9807 +https://conda.anaconda.org/conda-forge/noarch/certifi-2024.8.30-pyhd8ed1ab_0.conda#12f7d00853807b0531775e9be891cb11 +https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda#5cd86562580f274031ede6aa6aa24441 +https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.7-py312h68727a3_0.conda#444266743652a4f1538145e9362f6d3b +https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.16-hb7c19ff_0.conda#51bb7010fc86f70eee639b4bb7a894f5 +https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-25_linux64_openblas.conda#5dbd1b0fc0d01ec5e0e1fbe667281a11 +https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.10.1-hbbe4b11_0.conda#6e801c50a40301f6978c53976917b277 +https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-25_linux64_openblas.conda#4dc03a53fc69371a6158d0ed37214cd3 +https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2#2ba8498c1018c1e9c61eb99b973dfe19 +https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda#7f2e286780f072ed750df46dc2631138 +https://conda.anaconda.org/conda-forge/noarch/packaging-24.2-pyhd8ed1ab_2.conda#3bfed7e6228ebf2f7b9eaa47f1b4e2aa +https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.2.0-pyhd8ed1ab_2.conda#4c05a2bcf87bb495512374143b57cf28 +https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.2-pyhd8ed1ab_1.conda#c0def296b2f6d2dd7b030c2a7f66bb1f +https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda#3eeeeb9e4827ace8c0c1419c85d590ad +https://conda.anaconda.org/conda-forge/noarch/setuptools-75.6.0-pyhff2d567_1.conda#fc80f7995e396cbaeabd23cf46c413dc +https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyhd8ed1ab_1.conda#a516da6cfe1ec0a55e49737f017b4965 +https://conda.anaconda.org/conda-forge/linux-64/unicodedata2-15.1.0-py312h66e93f0_1.conda#588486a61153f94c7c13816f7069e440 +https://conda.anaconda.org/conda-forge/noarch/wheel-0.45.1-pyhd8ed1ab_1.conda#75cb7132eb58d97896e173ef12ac9986 +https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.55.1-py312h178313f_0.conda#174341e89aceca05a98008a20d0b4f14 +https://conda.anaconda.org/conda-forge/linux-64/numpy-2.1.3-py312h58c1407_0.conda#dfdbc12e6d81889ba4c494a23f23eba8 +https://conda.anaconda.org/conda-forge/linux-64/pillow-11.0.0-py312h7b63e92_0.conda#385f46a4df6f97892503a841121a9acf +https://conda.anaconda.org/conda-forge/noarch/pip-24.3.1-pyh8b19718_0.conda#5dd546fe99b44fda83963d15f84263b7 +https://conda.anaconda.org/bioconda/linux-64/pysam-0.22.1-py312hcfdcdd7_2.tar.bz2#33baeca8a223d34355fd37bc9e14a128 +https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhff2d567_1.conda#5ba79d7c71f03c678c8ead841f347d6e +https://conda.anaconda.org/bioconda/linux-64/bx-python-0.13.0-py312ha1f7cf2_0.tar.bz2#c685957138cc0296cc2bd787f26f8096 +https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.3.1-py312h68727a3_0.conda#f5fbba0394ee45e9a64a73c2a994126a +https://conda.anaconda.org/conda-forge/linux-64/pandas-2.2.3-py312hf9745cd_1.conda#8bce4f6caaf8c5448c7ac86d87e26b4b +https://conda.anaconda.org/bioconda/linux-64/pybigwig-0.3.23-py312h0e9d276_0.tar.bz2#41d3a8256dbcf8629b08c64e6943c2f5 +https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.9.3-py312hd3ec401_0.conda#b023c7b33ecc2aa6726232dc3061ac6c +https://conda.anaconda.org/conda-forge/noarch/logomaker-0.8-pyhd8ed1ab_0.conda#3aa94bd5910de4d35379834666d9f152 +https://conda.anaconda.org/bioconda/noarch/rseqc-5.0.4-pyhdfd78af_0.tar.bz2#2fa2ac5ca813378f7196c9e680f2aa66 diff --git a/workflow/envs/rseqc.yaml b/workflow/envs/rseqc.yaml index 4c767e6..a88b443 100644 --- a/workflow/envs/rseqc.yaml +++ b/workflow/envs/rseqc.yaml @@ -3,4 +3,4 @@ channels: - bioconda - nodefaults dependencies: - - rseqc=5.0.3 + - rseqc =5.0.4 diff --git a/workflow/envs/snakemake.linux-64.pin.txt b/workflow/envs/snakemake.linux-64.pin.txt new file mode 100644 index 0000000..10bf4e9 --- /dev/null +++ b/workflow/envs/snakemake.linux-64.pin.txt @@ -0,0 +1,182 @@ +# This file may be used to create an environment using: +# $ conda create --name --file +# platform: linux-64 +# created-by: conda 24.9.2 +@EXPLICIT +https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2#d7c89558ba9fa0495403155b64376d81 +https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.8.30-hbcca054_0.conda#c27d1c142233b5bc9ca570c6e2e0c244 +https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.43-h712a8e2_2.conda#048b02e3962f066da18efe3a21b77672 +https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.12-5_cp312.conda#0424ae29b104430108f5218a66db7260 +https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda#8ac3367aafb1cc0a068483c580af8015 +https://conda.anaconda.org/conda-forge/linux-64/libgomp-14.2.0-h77fa898_1.conda#cc3573974587f12dda90d96e3e55a702 +https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2#73aaf86a425cc6e73fcf236a5a46396d +https://conda.anaconda.org/conda-forge/linux-64/libgcc-14.2.0-h77fa898_1.conda#3cb76c3f10d3bc7f1105b2fc9db984df +https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.3-hb9d3cd8_1.conda#ee228789a85f961d14567252a03e725f +https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.4-h5888daf_0.conda#db833e03127376d461e1e13e76f09b6c +https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-14.2.0-h69a702a_1.conda#e39480b9ca41323497b05492a63bc35b +https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-14.2.0-hd5240d6_1.conda#9822b874ea29af082e5d36098d25427d +https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-14.2.0-hc0a3c3a_1.conda#234a5554c53625688d51062645337328 +https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda#edb0dca6bc32e4f4789199455a1dbeb8 +https://conda.anaconda.org/conda-forge/linux-64/openssl-3.4.0-hb9d3cd8_0.conda#23cc74f77eb99315c0360ec3533147a9 +https://conda.anaconda.org/conda-forge/linux-64/reproc-14.2.5.post0-hb9d3cd8_0.conda#69fbc0a9e42eb5fe6733d2d60d818822 +https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-h4bc722e_7.conda#62ee74e96c5ebb0af99386de58cf9553 +https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2#30186d27e2c9fa62b45fb1476b7200e3 +https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda#172bf1cd1ff8629f2b1179945ed45055 +https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2#d645c6d2ac96843a2bfaccd2d62b3ac3 +https://conda.anaconda.org/conda-forge/linux-64/libgfortran-14.2.0-h69a702a_1.conda#f1fd30127802683586f768875127a987 +https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda#d66573916ffcf376178462f1b61c941e +https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hd590300_0.conda#30fd6e37fe21f86f4bd26d6ee73eeec7 +https://conda.anaconda.org/conda-forge/linux-64/libseccomp-2.4.4-hd590300_4.conda#d013a2d72b76bbac7e298fbd3a43fbeb +https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.47.0-hadc24fc_1.conda#b6f02b52a174e612e89548f4663ce56a +https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hf672d98_0.conda#be2de152d8073ef1c01b7728475f2fe7 +https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-14.2.0-h4852527_1.conda#8371ac6457591af2cf6159439c1fd051 +https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda#40b61aab5c7ba9ff276c41cfffe6b80b +https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda#5aa797f8787fe7a17d1b0821485b5adc +https://conda.anaconda.org/conda-forge/linux-64/lzo-2.10-hd590300_1001.conda#ec7398d21e2651e0dcb0044d03b9a339 +https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-he02047a_1.conda#70caf8bb6cf39a0b6b7efc885f51c0fe +https://conda.anaconda.org/conda-forge/linux-64/oniguruma-6.9.9-hd590300_0.conda#77dab674d16c1525ebe65e67de30de0d +https://conda.anaconda.org/conda-forge/linux-64/reproc-cpp-14.2.5.post0-h5888daf_0.conda#828302fca535f9cfeb598d5f7c204323 +https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda#d453b98d9c83e71da0741bb0ff4d76bc +https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2#2161070d867d1b1204ea749c8eec4ef0 +https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2#4cb3ad778ec2d5a7acbdf254eb1c42ae +https://conda.anaconda.org/conda-forge/linux-64/cpp-expected-1.1.0-hf52228f_0.conda#a7f1500bf47196443b67355d67afec6d +https://conda.anaconda.org/conda-forge/linux-64/fmt-11.0.2-h434a139_0.conda#995f7e13598497691c1dc476d889bc04 +https://conda.anaconda.org/conda-forge/linux-64/jq-1.7.1-hd590300_0.conda#80814f94713e35df60aad6c4b235de87 +https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2#4d331e44109e3f0e19b4cb8f9b82f3e1 +https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-14.2.0-h69a702a_1.conda#0a7f4cd238267c88e5d69f7826a407eb +https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.64.0-h161d5f1_0.conda#19e57602824042dfd0446292ef90488b +https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.28-pthreads_h94d23a6_1.conda#62857b389e42b36b686331bec0922050 +https://conda.anaconda.org/conda-forge/linux-64/libsolv-0.7.30-h3509ff9_0.conda#02539b77d25aa4f65b20246549e256c3 +https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.13.5-h064dc61_0.conda#fb16b85a5be1328ac1c44b098b74c570 +https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.4-hcb278e6_0.conda#318b08df404f9c9be5712aaa5a6f0bb0 +https://conda.anaconda.org/conda-forge/linux-64/nlohmann_json-3.11.3-he02047a_1.conda#e46f7ac4917215b49df2ea09a694a3fa +https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda#47d31b792659ce70f470b5c82fdfb7a4 +https://conda.anaconda.org/conda-forge/linux-64/simdjson-3.10.1-h84d6215_0.conda#7f9bd0e5c889fae32b03dd448eb71de6 +https://conda.anaconda.org/conda-forge/linux-64/yaml-cpp-0.8.0-h59595ed_0.conda#965eaacd7c18eb8361fd12bb9e7a57d7 +https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.6-ha6fb4c9_0.conda#4d056880988120e29d75bfff282e0f45 +https://conda.anaconda.org/conda-forge/linux-64/cni-1.0.1-ha975731_1.tar.bz2#58f92707fb5595c8cd90d278f602011c +https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda#3f43953b7d3fb3aaa1d0d0723d91e368 +https://conda.anaconda.org/conda-forge/linux-64/libarchive-3.7.7-hadbb8c3_0.conda#4a099677417658748239616b6ca96bb6 +https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-25_linux64_openblas.conda#8ea26d42ca88ec5258802715fe1ee10b +https://conda.anaconda.org/conda-forge/linux-64/python-3.12.7-hc5c86c4_0_cpython.conda#0515111a9cdf69f83278f7c197db9807 +https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.14.1-hed91bc2_1.conda#909188c8979846bac8e586908cf1ca6a +https://conda.anaconda.org/conda-forge/linux-64/squashfs-tools-4.6.1-hdfefc0d_0.conda#38e382a22fec7047e4a86df444f68568 +https://conda.anaconda.org/conda-forge/noarch/appdirs-1.4.4-pyh9f0ad1d_0.tar.bz2#5f095bc6454094e96f146491fd03633b +https://conda.anaconda.org/conda-forge/noarch/argparse-dataclass-2.0.0-pyhd8ed1ab_0.conda#be47a0ee841e940a9a8eec03c2f776a3 +https://conda.anaconda.org/conda-forge/noarch/attrs-24.2.0-pyh71513ae_0.conda#6732fa52eb8e66e5afeb32db8701a791 +https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py312h2ec8cdc_2.conda#b0b867af6fc74b2a0aa206da29c0f3cf +https://conda.anaconda.org/conda-forge/noarch/certifi-2024.8.30-pyhd8ed1ab_0.conda#12f7d00853807b0531775e9be891cb11 +https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.0-pyhd8ed1ab_1.conda#6581a17bba6b948bb60130026404a9d6 +https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_1.conda#cb8e52f28f5e592598190c562e7b5bf1 +https://conda.anaconda.org/conda-forge/linux-64/cni-plugins-1.3.0-ha8f183a_0.conda#7b19dcc220b79ec9249ecf2f4e671986 +https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda#962b9857ee8e7018c22f2776ffa0b2d7 +https://conda.anaconda.org/conda-forge/noarch/configargparse-1.7-pyhd8ed1ab_0.conda#0d07dc29b1c1cc973f76b74beb44915f +https://conda.anaconda.org/conda-forge/noarch/connection_pool-0.0.3-pyhd3deb0d_0.tar.bz2#e270fff08907db8691c02a0eda8d38ae +https://conda.anaconda.org/conda-forge/linux-64/datrie-0.8.2-py312h66e93f0_8.conda#d207ef2514432166373be0f559773358 +https://conda.anaconda.org/conda-forge/noarch/docutils-0.21.2-pyhd8ed1ab_1.conda#24c1ca34138ee57de72a943237cde4cc +https://conda.anaconda.org/conda-forge/noarch/dpath-2.2.0-pyha770c72_0.conda#b2681af65644be41a18d4b00b67938f1 +https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_1.conda#a16662747cdeb9abbac74d0057cc976e +https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyhd8ed1ab_1.conda#2aa5ff7fa34a81b9196532c84c10d865 +https://conda.anaconda.org/conda-forge/noarch/humanfriendly-10.0-pyhd81877a_7.conda#74fbff91ca7c1b9a36b15903f2242f86 +https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_1.conda#566e75c90c1d0c8c459eb0ad9833dc7a +https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda#39a4f67be3286c86d696df570b1201b7 +https://conda.anaconda.org/conda-forge/linux-64/immutables-0.21-py312h66e93f0_0.conda#2aa27ea23f115c62663428c50ff4e9a4 +https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda#6837f3eff7dcea42ecd714ce1ac2b108 +https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-25_linux64_openblas.conda#5dbd1b0fc0d01ec5e0e1fbe667281a11 +https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.10.1-hbbe4b11_0.conda#6e801c50a40301f6978c53976917b277 +https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-25_linux64_openblas.conda#4dc03a53fc69371a6158d0ed37214cd3 +https://conda.anaconda.org/conda-forge/noarch/logmuse-0.2.8-pyhd8ed1ab_0.conda#36460a82251aae67f02e976ccd8b911b +https://conda.anaconda.org/conda-forge/linux-64/markupsafe-3.0.2-py312h178313f_1.conda#eb227c3e0bf58f5bd69c0532b157975b +https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_1.conda#592132998493b3ff25fd7479396e8351 +https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_1.conda#29097e7ea634a45cc5386b95cac6568f +https://conda.anaconda.org/conda-forge/noarch/packaging-24.2-pyhd8ed1ab_2.conda#3bfed7e6228ebf2f7b9eaa47f1b4e2aa +https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_1.conda#617f15191456cc6a13db418a275435e5 +https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda#405678b942f2481cecdb3e010f4925d9 +https://conda.anaconda.org/conda-forge/noarch/plac-1.4.3-pyhd8ed1ab_0.conda#c2231e8389ae345477ac94e736e8cc1b +https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.3.6-pyhd8ed1ab_1.conda#577852c7e53901ddccc7e6a9959ddebe +https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_1.conda#e9dcbce5f45f9ee500e728ae58b605b6 +https://conda.anaconda.org/conda-forge/linux-64/psutil-6.1.0-py312h66e93f0_0.conda#0524eb91d3d78d76d671c6e3cd7cee82 +https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda#12c566707c80111f9799308d9e265aef +https://conda.anaconda.org/conda-forge/noarch/pygments-2.18.0-pyhd8ed1ab_1.conda#b38dc0206e2a530e5c2cf11dc086b31a +https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.2.0-pyhd8ed1ab_2.conda#4c05a2bcf87bb495512374143b57cf28 +https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda#461219d1a5bd61342293efa2c0c90eac +https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.21.1-pyhd8ed1ab_0.conda#38e34d2d1d9dca4fb2b9a0a04f604e2c +https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.2-pyhd8ed1ab_1.conda#c0def296b2f6d2dd7b030c2a7f66bb1f +https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda#3eeeeb9e4827ace8c0c1419c85d590ad +https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.2-py312h66e93f0_1.conda#549e5930e768548a89c23f595dac5a95 +https://conda.anaconda.org/conda-forge/noarch/reretry-0.11.8-pyhd8ed1ab_0.conda#b8a877fba9cfe5d5dc2fef9d951316dd +https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.22.1-py312h12e396e_0.conda#db784e4ddb4c55c95cc15a7572802ef1 +https://conda.anaconda.org/conda-forge/noarch/setuptools-75.6.0-pyhff2d567_1.conda#fc80f7995e396cbaeabd23cf46c413dc +https://conda.anaconda.org/conda-forge/noarch/shellingham-1.5.4-pyhd8ed1ab_0.conda#d08db09a552699ee9e7eec56b4eb3899 +https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyhd8ed1ab_1.conda#a516da6cfe1ec0a55e49737f017b4965 +https://conda.anaconda.org/conda-forge/noarch/slack-sdk-3.33.4-pyhff2d567_1.conda#de7fa9fafa804fef16b6fede2aa7c4de +https://conda.anaconda.org/conda-forge/noarch/smmap-5.0.0-pyhd8ed1ab_0.tar.bz2#62f26a3d1387acee31322208f0cfa3e0 +https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2#4759805cce2d914c38472f70bf4d8bcb +https://conda.anaconda.org/conda-forge/noarch/throttler-1.2.2-pyhd8ed1ab_0.conda#6fc48bef3b400c82abaee323a9d4e290 +https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2#f832c45a477c78bebd107098db465095 +https://conda.anaconda.org/conda-forge/noarch/tomli-2.2.1-pyhd8ed1ab_1.conda#ac944244f1fed2eb49bae07193ae8215 +https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.3-pyhd8ed1ab_0.conda#3df84416a021220d8b5700c613af2dc5 +https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.2-pyha770c72_1.conda#d17f13df8b65464ca316cbc000a3cb64 +https://conda.anaconda.org/conda-forge/noarch/wheel-0.45.1-pyhd8ed1ab_1.conda#75cb7132eb58d97896e173ef12ac9986 +https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.17.0-py312h66e93f0_0.conda#ddbe3bb0e1356cb9074dd848570694f9 +https://conda.anaconda.org/conda-forge/noarch/zipp-3.21.0-pyhd8ed1ab_1.conda#0c3cc595284c5e8f0f9900a9b228a332 +https://conda.anaconda.org/conda-forge/noarch/amply-0.1.6-pyhd8ed1ab_0.conda#a45a9cc65a438f465845ebff49c6fbf9 +https://conda.anaconda.org/conda-forge/linux-64/apptainer-1.3.2-he894457_0.conda#ad73401c6b20a895f2b6a221ef65679d +https://conda.anaconda.org/conda-forge/linux-64/black-24.10.0-py312h7900ff3_0.conda#2daba153b913b1b901cf61440ad5e019 +https://conda.anaconda.org/conda-forge/linux-64/cffi-1.17.1-py312h06ac9bb_0.conda#a861504bbea4161a9170b85d4d2be840 +https://conda.anaconda.org/conda-forge/noarch/coloredlogs-15.0.1-pyhd8ed1ab_3.tar.bz2#7b4fc18b7f66382257c45424eaf81935 +https://conda.anaconda.org/conda-forge/noarch/conda-inject-1.3.2-pyhd8ed1ab_0.conda#e52c2a160d6bd0649c9fafdf0c813357 +https://conda.anaconda.org/conda-forge/noarch/gitdb-4.0.11-pyhd8ed1ab_1.conda#9d3a3c39dd982332dab2aac113492013 +https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_1.conda#825927dc7b0f287ef8d4d0011bb113b1 +https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.4.5-pyhd8ed1ab_1.conda#15798fa69312d433af690c8c42b3fb36 +https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.4-pyhd8ed1ab_1.conda#08cce3151bde4ecad7885bd9fb647532 +https://conda.anaconda.org/conda-forge/noarch/jupyter_core-5.7.2-pyh31011fe_1.conda#0a2980dada0dd7fd0998f0342308b1b1 +https://conda.anaconda.org/conda-forge/linux-64/liblapacke-3.9.0-25_linux64_openblas.conda#8f5ead31b3a168aedd488b8a87736c41 +https://conda.anaconda.org/conda-forge/linux-64/libmamba-2.0.4-hf72d635_0.conda#ee936d20425961886b3ddc68e7021bb9 +https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_1.conda#fee3164ac23dfca50cfcc8b85ddefb81 +https://conda.anaconda.org/conda-forge/linux-64/numpy-2.1.3-py312h58c1407_0.conda#dfdbc12e6d81889ba4c494a23f23eba8 +https://conda.anaconda.org/conda-forge/noarch/pip-24.3.1-pyh8b19718_0.conda#5dd546fe99b44fda83963d15f84263b7 +https://conda.anaconda.org/conda-forge/noarch/pytest-8.3.4-pyhd8ed1ab_1.conda#799ed216dc6af62520f32aa39bc1c2bb +https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhff2d567_1.conda#5ba79d7c71f03c678c8ead841f347d6e +https://conda.anaconda.org/conda-forge/noarch/referencing-0.35.1-pyhd8ed1ab_0.conda#0fc8b52192a8898627c3efae1003e9f6 +https://conda.anaconda.org/conda-forge/noarch/slack_sdk-3.33.4-hff2d567_1.conda#1797a4464959dfae47170800a144bf8b +https://conda.anaconda.org/conda-forge/noarch/smart_open-7.0.5-pyhd8ed1ab_1.conda#1be1d9fb41517af182663bdd004bbe6a +https://conda.anaconda.org/bioconda/noarch/snakemake-interface-common-1.17.4-pyhdfd78af_0.tar.bz2#4a72a6f5efb323aa2953e3dde0589ff6 +https://conda.anaconda.org/conda-forge/noarch/typer-slim-0.15.0-pyhd8ed1ab_0.conda#629fef89115de5a907fb9765cdd45b26 +https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.12.2-hd8ed1ab_1.conda#b6a408c64b78ec7b779a3e5c7a902433 +https://conda.anaconda.org/conda-forge/noarch/yte-1.5.4-pyha770c72_0.conda#f4d2f4a372be452baebf8dbdcd9892ed +https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.7.0-pyhd8ed1ab_1.conda#2934f256a8acfe48f6ebb4fce6cde29c +https://conda.anaconda.org/conda-forge/linux-64/coin-or-utils-2.11.12-h99da652_1.conda#09df0d407a41652b994d9ac785a9cef9 +https://conda.anaconda.org/conda-forge/noarch/gitpython-3.1.43-pyhff2d567_1.conda#23867f6f9fcd2fb9e9ce6427addf01ae +https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2024.10.1-pyhd8ed1ab_0.conda#720745920222587ef942acfbc578b584 +https://conda.anaconda.org/conda-forge/linux-64/mamba-2.0.4-hfdd0a45_0.conda#ab79fe6e239eb7a332d3ed92972c1e98 +https://conda.anaconda.org/conda-forge/linux-64/pandas-2.2.3-py312hf9745cd_1.conda#8bce4f6caaf8c5448c7ac86d87e26b4b +https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.27.1-py312h12e396e_0.conda#114030cb28527db2c385f07038e914c8 +https://conda.anaconda.org/conda-forge/noarch/rich-13.9.4-pyhd8ed1ab_0.conda#bcf8cc8924b5d20ead3d122130b8320b +https://conda.anaconda.org/bioconda/noarch/snakefmt-0.10.2-pyhdfd78af_0.tar.bz2#be6c10fbd75a547d74e77be4c36d1de7 +https://conda.anaconda.org/bioconda/noarch/snakemake-interface-executor-plugins-9.3.2-pyhdfd78af_0.tar.bz2#935050469d81fe24c63939ac4ac5eb00 +https://conda.anaconda.org/bioconda/noarch/snakemake-interface-report-plugins-1.1.0-pyhdfd78af_0.tar.bz2#3a7dd19cd530b27b59aed6cb606a7987 +https://conda.anaconda.org/bioconda/noarch/snakemake-interface-storage-plugins-3.3.0-pyhdfd78af_0.tar.bz2#6956cd18cbc5310fecfa26e25fc4caee +https://conda.anaconda.org/conda-forge/noarch/veracitools-0.1.3-py_0.tar.bz2#f2c8d44ea78cf639ab4810aedba43ab5 +https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.23.0-py312hef9b889_1.conda#8b7069e9792ee4e5b4919a7a306d2e67 +https://conda.anaconda.org/conda-forge/linux-64/coin-or-osi-0.108.11-h6514dde_1.conda#2b5e135b66af8bea756852ad5ec21a6c +https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.23.0-pyhd8ed1ab_0.conda#da304c192ad59975202859b367d0f6a2 +https://conda.anaconda.org/conda-forge/noarch/pydantic-2.10.2-pyh3cfb1c2_1.conda#a03e28b933eaad08664b53887930cc1f +https://conda.anaconda.org/bioconda/noarch/snakemake-executor-plugin-slurm-jobstep-0.2.1-pyhdfd78af_0.tar.bz2#7daf955f3ed7eee4b5fe2e7653af877e +https://conda.anaconda.org/conda-forge/noarch/typer-slim-standard-0.15.0-hd8ed1ab_0.conda#a4746fc9efbff02c1a288d8fcd8ffba9 +https://conda.anaconda.org/conda-forge/noarch/ubiquerg-0.8.0-pyhd8ed1ab_0.conda#41408dc37271d5d0f99e2e10336cf40d +https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.3-pyhd8ed1ab_1.conda#4a2d8ef7c37b8808c5b9b750501fffce +https://conda.anaconda.org/conda-forge/linux-64/coin-or-clp-1.17.10-h07f2a63_0.conda#72e0208f85cfed1d2d04afdf1b1052e8 +https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.4-pyhd8ed1ab_0.conda#0b57b5368ab7fc7cdc9e3511fa867214 +https://conda.anaconda.org/conda-forge/noarch/requests-2.32.3-pyhd8ed1ab_1.conda#a9b9368f3701a417eac9edbcae7cb737 +https://conda.anaconda.org/bioconda/noarch/snakemake-executor-plugin-slurm-0.11.2-pyhdfd78af_0.tar.bz2#f679cbc153a82a3e50027074da5ea55f +https://conda.anaconda.org/conda-forge/noarch/typer-0.15.0-pyhd8ed1ab_0.conda#cf9393f5733c7277b1a5f79145f8485b +https://conda.anaconda.org/conda-forge/linux-64/coin-or-cgl-0.60.9-h1d3f3f2_0.conda#7c87c7488ce7e546332c588f3280b797 +https://conda.anaconda.org/conda-forge/linux-64/coin-or-cbc-2.10.12-h8b142ea_1.conda#1d7f5461c42aba35340cd31d0f72d85f +https://conda.anaconda.org/conda-forge/noarch/coincbc-2.10.12-1_metapackage.conda#fb2f3dba642b3c0bfba2654651262b38 +https://conda.anaconda.org/conda-forge/linux-64/pulp-2.8.0-py312h7900ff3_0.conda#20e55885b4b57db6f53e746d1076a8b0 +https://conda.anaconda.org/bioconda/noarch/snakemake-minimal-8.25.5-pyhdfd78af_0.tar.bz2#627e3868f02d805757bfcbe345c01275 +https://conda.anaconda.org/conda-forge/noarch/eido-0.2.4-pyhd8ed1ab_0.conda#fc815854ab62482e2f2f0d8fab786a1c +https://conda.anaconda.org/bioconda/noarch/snakemake-8.25.5-hdfd78af_0.tar.bz2#361163184455f30b5a52fbf1877595cb +https://conda.anaconda.org/conda-forge/noarch/pephubclient-0.4.4-pyhd8ed1ab_0.conda#1fb0b63ececc327dda75c29633429d12 +https://conda.anaconda.org/conda-forge/noarch/peppy-0.40.7-pyhd8ed1ab_1.conda#6e6e5fa522000fb52544768e212820eb diff --git a/workflow/report/fastp.rst b/workflow/report/fastp.rst index 8019ece..4c23cda 100644 --- a/workflow/report/fastp.rst +++ b/workflow/report/fastp.rst @@ -2,4 +2,4 @@ This HTML_ file contains Fastp_ quality reports for sample {{ snakemake.wildcard It is a stand-alone file, and can be opened in your favorite web-browser. .. _HTML: https://en.wikipedia.org/wiki/HTML -.. _Fastp: https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/fastp.html +.. _Fastp: https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/fastp.html diff --git a/workflow/report/material_methods.rst b/workflow/report/material_methods.rst index f47f912..fff4fa2 100644 --- a/workflow/report/material_methods.rst +++ b/workflow/report/material_methods.rst @@ -10,6 +10,9 @@ equal to NA. Samtools_ [#samtoolspaper]_ and Picard_ [#picardpaper]_ were used to index genome sequences. Raw fastq file quality was assessed with FastQC_ [#fastqcpaper]_. +FastQ files formats were checked using Fastq_utils_ [#fastqutilspaper]_, additional +qualities were gathered using Seqkit_ [#seqkitpaper]_ and Fastqinfo_ [#fastqinfopaper]_. + Raw fastq files were trimmed using Fastp_ [#fastppaper]_ . Cleaned reads were aligned over indexed Ensembl genome with Bowtie2_ [#bowtie2paper]_. Sambamba_ [#sambambapaper]_ was used to sort, @@ -17,23 +20,30 @@ filter, mark duplicates, and compress aligned reads. Quality controls were done on cleaned, sorted, deduplicated aligned reads using Picard_ [#picardpaper]_ and Samtools_ [#samtoolspaper]_. Additonal quality assessments are done with RSeQC_ [#rseqcpaper]_, -NGSderive_ [#ngsderivepaper]_, GOleft_ [#goleftpaper]_, -Mosdepth_ [#mosdepthpaper]_. +NGSderive_ [#ngsderivepaper]_, GOleft_ [#goleftpaper]_, and +Mosdepth_ [#mosdepthpaper]_ to determine mapping quality. Additional +sample quality checks were done with MTNucRatioCalculator_ [#mtnucratiocalculator]_, +and SexDetERRmine_ [#sexdeterrmine]_ to verify library and sample +expectations. Quality repord produced during both trimming and mapping steps have been aggregated with MultiQC_ [#multiqcpaper]_. On user demand, alignment sieve are produced using Deeptools_ [#deeptoolspaper]_. -The whole pipeline was powered by Snakemake_ [#snakemakepaper]_. +The whole pipeline_ [#fairbowtiemapping]_ was powered by Snakemake_ [#snakemakepaper]_. This pipeline is freely available on Github_, details about installation usage, and resutls can be found on the -`Snakemake workflow`_ page. +`Snakemake workflow`_ page. It relies on `fair-genome-indexer`_ [#fairgenomeindexer]_ and +`fair-fastqc-multiqc`_ [#fairfastqcmultiqc]_ pipelines. .. [#pyfaidxpaper] Shirley, Matthew D., et al. Efficient" pythonic" access to FASTA files using pyfaidx. No. e1196. PeerJ PrePrints, 2015. .. [#agatpaper] Dainat J. AGAT: Another Gff Analysis Toolkit to handle annotations in any GTF/GFF format. (Version v0.7.0). Zenodo. https://www.doi.org/10.5281/zenodo.3552717 .. [#samtoolspaper] Li, Heng, et al. "The sequence alignment/map format and SAMtools." bioinformatics 25.16 (2009): 2078-2079. .. [#picardpaper] McKenna, Aaron, et al. "The Genome Analysis Toolkit: a MapReduce framework for analyzing next-generation DNA sequencing data." Genome research 20.9 (2010): 1297-1303. .. [#fastqcpaper] Andrews, S. Fastqc. "A quality control tool for high throughput sequence data. Augen, J.(2004). Bioinformatics in the post-genomic era: Genome, transcriptome, proteome, and information-based medicine." (2010). +.. [#fastqutilspaper] Nuno Fonseca, & Jonathan Manning. (2023). nunofonseca/fastq_utils: 0.25.2 (0.25.2). Zenodo. https://doi.org/10.5281/zenodo.7755574 +.. [#seqkitpaper] Shen, Wei, et al. "SeqKit: a cross-platform and ultrafast toolkit for FASTA/Q file manipulation." PloS one 11.10 (2016): e0163962. +.. [#fastqinfopaper] Kiu R, fastq-info: compute estimated sequencing depth (coverage) of prokaryotic genomes .. [#fastppaper] Chen, Shifu, et al. "fastp: an ultra-fast all-in-one FASTQ preprocessor." Bioinformatics 34.17 (2018): i884-i890. .. [#bowtie2paper] Langmead, Ben, and Steven L. Salzberg. "Fast gapped-read alignment with Bowtie 2." Nature methods 9.4 (2012): 357-359. .. [#sambambapaper] Tarasov, Artem, et al. "Sambamba: fast processing of NGS alignment formats." Bioinformatics 31.12 (2015): 2032-2034. @@ -41,29 +51,44 @@ installation usage, and resutls can be found on the .. [#ngsderivepaper] McLeod, Clay, et al. "St. Jude Cloud: a pediatric cancer genomic data-sharing ecosystem." Cancer discovery 11.5 (2021): 1082-1099. .. [#goleftpaper] Pedersen, Brent S., et al. "Indexcov: fast coverage quality control for whole-genome sequencing." Gigascience 6.11 (2017): gix090. .. [#mosdepthpaper] Pedersen, Brent S., and Aaron R. Quinlan. "Mosdepth: quick coverage calculation for genomes and exomes." Bioinformatics 34.5 (2018): 867-868. +.. [#mtnucratiocalculator] Alexander Peltzerand Alexander Regueiro. Apeltzer/mtnucratiocalculator: 0.7.1. 0.7.1, Zenodo, 10 Sept. 2024, doi:10.5281/zenodo.13739840. +.. [#sexdeterrmine] Lamnidis, T.C. et al., 2018. Ancient Fennoscandian genomes reveal origin and spread of Siberian ancestry in Europe. Nature communications, 9(1), p.5018. Available at: http://dx.doi.org/10.1038/s41467-018-07483-5. .. [#multiqcpaper] Ewels, Philip, et al. "MultiQC: summarize analysis results for multiple tools and samples in a single report." Bioinformatics 32.19 (2016): 3047-3048. .. [#deeptoolspaper] Ramírez, Fidel, et al. "deepTools: a flexible platform for exploring deep-sequencing data." Nucleic acids research 42.W1 (2014): W187-W191. +.. [#fairbowtiemapping] Dayris, T. (2024). fair-bowtie2-mapping (Version 4.4.0) [Computer software]. https://github.com/tdayris/fair_bowtie2_mapping .. [#snakemakepaper] Köster, Johannes, and Sven Rahmann. "Snakemake—a scalable bioinformatics workflow engine." Bioinformatics 28.19 (2012): 2520-2522. +.. [#fairgenomeindexer] Dayris, T. (2024). fair-genome-indexer (Version 3.9.3) [Computer software]. https://github.com/tdayris/fair_genome_indexer +.. [#fairfastqcmultiqc] Dayris, T. (2024). fair-fastqc-multiqc (Version 2.4.2) [Computer software]. https://github.com/tdayris/fair_fastqc_multiqc + -.. _Sambamba: https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/sambamba.html -.. _Bowtie2: https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/bowtie2.html -.. _Fastp: https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/fastp.html -.. _Mosdepth: https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/mosdepth.html -.. _Picard: https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/picard/collectmultiplemetrics.html -.. _MultiQC: https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/multiqc.html +.. _Sambamba: https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/sambamba.html +.. _Bowtie2: https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/bowtie2.html +.. _Fastp: https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/fastp.html +.. _Mosdepth: https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/mosdepth.html +.. _Picard: https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/picard/collectmultiplemetrics.html +.. _MultiQC: https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/multiqc.html .. _Snakemake: https://snakemake.readthedocs.io .. _Github: https://github.com/tdayris/fair_bowtie2_mapping .. _`Snakemake workflow`: https://snakemake.github.io/snakemake-workflow-catalog?usage=tdayris/fair_bowtie2_mapping .. _Agat: https://agat.readthedocs.io/en/latest/index.html -.. _Samtools: https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/samtools/faidx.html -.. _FastQC: https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/fastqc.html +.. _Samtools: https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/samtools/faidx.html +.. _FastQC: https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/fastqc.html +.. _Fastq_utils: https://github.com/nunofonseca/fastq_utils +.. _Seqkit: https://bioinf.shenwei.me/seqkit/ +.. _Fastqinfo: https://github.com/raymondkiu/fastq-info .. _Pyfaidx: https://github.com/mdshw5/pyfaidx .. _GOleft: https://github.com/brentp/goleft .. _NGSderive: https://stjudecloud.github.io/ngsderive/ .. _RSeQC: https://rseqc.sourceforge.net/ -.. _Deeptools: https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/deeptools/alignmentsieve.html +.. _Deeptools: https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/deeptools/alignmentsieve.html +.. _SexDetERRmine: ??? +.. _MTNucRatioCalculator: ??? +.. _`fair-genome-indexer`: https://github.com/tdayris/fair_genome_indexer +.. _`fair-fastqc-multiqc`: https://github.com/tdayris/fair_fastqc_multiqc +.. _`fair-bowtie2-mapping`: https://github.com/tdayris/fair_bowtie2_mapping :Authors: Thibault Dayris -:Version: Unchanged since 4.0.0 of 07/16/2024 + +:Version: 4.4.0 of 2024-12-04 diff --git a/workflow/report/mtnucratiocalculator.rst b/workflow/report/mtnucratiocalculator.rst new file mode 100644 index 0000000..efa08de --- /dev/null +++ b/workflow/report/mtnucratiocalculator.rst @@ -0,0 +1,4 @@ +This text file contains a description of MT coverage in {{ snakemake.wildcards.sample }}. +It has been build with MTNucRatioCalculator_ + +.. _MTNucRatioCalculator: ??? diff --git a/workflow/report/multiqc.rst b/workflow/report/multiqc.rst index bbd1714..ea93c3d 100644 --- a/workflow/report/multiqc.rst +++ b/workflow/report/multiqc.rst @@ -4,12 +4,12 @@ It is a stand-alone file, and can be opened in your favorite web-browser. .. _HTML: https://en.wikipedia.org/wiki/HTML -.. _Fastp: https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/fastp.html -.. _Bowtie2: https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/bowtie2/align.html -.. _FastQC: https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/fastqc.html -.. _Stats: https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/samtools/stats.html -.. _Picard: https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/picard/collectmultiplemetrics.html -.. _Samtools: https://snakemake-wrappers.readthedocs.io/en/v4.6.0/wrappers/samtools/stats.html +.. _Fastp: https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/fastp.html +.. _Bowtie2: https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/bowtie2/align.html +.. _FastQC: https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/fastqc.html +.. _Stats: https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/samtools/stats.html +.. _Picard: https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/picard/collectmultiplemetrics.html +.. _Samtools: https://snakemake-wrappers.readthedocs.io/en/v5.3.0/wrappers/samtools/stats.html .. _GOleft: https://github.com/brentp/goleft .. _NGSderive: https://stjudecloud.github.io/ngsderive/ .. _RSeQC: https://rseqc.sourceforge.net/ diff --git a/workflow/report/sexdeterrmine.rst b/workflow/report/sexdeterrmine.rst new file mode 100644 index 0000000..76f95ff --- /dev/null +++ b/workflow/report/sexdeterrmine.rst @@ -0,0 +1,5 @@ +This TSV_ file contains information about X/Y coverage and possible birth gender assessment. +This is produced using SexDetERRmine_ + +.. _TSV: https://en.wikipedia.org/wiki/Tab-separated_values +.. _SexDetERRmine: ??? diff --git a/workflow/rules/bowtie2_sambamba_meta.smk b/workflow/rules/bowtie2_sambamba_meta.smk index 28f12a0..c9ff0ce 100644 --- a/workflow/rules/bowtie2_sambamba_meta.smk +++ b/workflow/rules/bowtie2_sambamba_meta.smk @@ -1,6 +1,6 @@ module bowtie2_sambamba_metawrapper: meta_wrapper: - f"{snakemake_wrappers_prefix}/meta/bio/bowtie2_sambamba" + "v5.3.0/meta/bio/bowtie2_sambamba" config: config diff --git a/workflow/rules/common.smk b/workflow/rules/common.smk index a543fc2..0f156ca 100644 --- a/workflow/rules/common.smk +++ b/workflow/rules/common.smk @@ -125,7 +125,6 @@ snakemake.utils.validate(genomes, "../schemas/genomes.schema.yaml") report: "../report/workflows.rst" -snakemake_wrappers_prefix: str = "v4.6.0" release_tuple: tuple[str] = tuple(set(genomes.release.tolist())) build_tuple: tuple[str] = tuple(set(genomes.build.tolist())) species_tuple: tuple[str] = tuple(set(genomes.species.tolist())) @@ -442,6 +441,40 @@ def get_genepred_bed( ) +def get_all_bams_per_genotype( + wildcards: snakemake.io.Wildcards, + samples: pandas.DataFrame = samples, + index: bool = False, + samples_only: bool = False, +) -> list[str]: + """ + Return the list of all bams belonging to a given genome + """ + sampled_samples = lookup( + query="{species} = '{wildcards.species}' & {build} = '{wildcards.build}' & {release} = '{wildcards.release}'", + within=samples, + ) + samples_id: list[str] | None = getattr(sampled_samples, "sample_id", None) + if samples_id is None: + raise ValueError( + "No samples found with the following informations: {wildcards=}" + ) + + if samples_only is True: + return samples_id + + template: str = "results/{gp}.{datatype}/Mapping/{sample}.bam" + if index is True: + template = "results/{gp}.{datatype}/Mapping/{sample}.bam.bai" + datatype = str(wildcards.datatype) + gp: str = genome_property(wildcards) + + return [ + template.format(gp=gp, datatype=datatype, sample=sample) + for sample in samples_id + ] + + def get_fair_bowtie2_mapping_target( wildcards: snakemake.io.Wildcards, samples: pandas.DataFrame = samples, diff --git a/workflow/rules/deeptools.smk b/workflow/rules/deeptools.smk index 9ec95f6..9e9844c 100644 --- a/workflow/rules/deeptools.smk +++ b/workflow/rules/deeptools.smk @@ -23,7 +23,7 @@ rule fair_bowtie2_mapping_deeptools_alignment_sieve: dpath="params/fair_bowtie2_mapping_deeptools_alignment_sieve", default="" ), wrapper: - f"{snakemake_wrappers_prefix}/bio/deeptools/alignmentsieve" + "v5.3.0/bio/deeptools/alignmentsieve" use rule fair_bowtie2_mapping_sambamba_sort as fair_bowtie2_mapping_sambamba_sort_sieve with: diff --git a/workflow/rules/fair_fastqc_multiqc.smk b/workflow/rules/fair_fastqc_multiqc.smk index ed1af0e..483b675 100644 --- a/workflow/rules/fair_fastqc_multiqc.smk +++ b/workflow/rules/fair_fastqc_multiqc.smk @@ -5,7 +5,7 @@ module fair_fastqc_multiqc: github( "tdayris/fair_fastqc_multiqc", path="workflow/Snakefile", - tag="2.3.6", + tag="2.4.2", ), ) config: diff --git a/workflow/rules/fair_genome_indexer.smk b/workflow/rules/fair_genome_indexer.smk index 325cb8e..d40f4a6 100644 --- a/workflow/rules/fair_genome_indexer.smk +++ b/workflow/rules/fair_genome_indexer.smk @@ -5,7 +5,7 @@ module fair_genome_indexer: github( "tdayris/fair_genome_indexer", path="workflow/Snakefile", - tag="3.9.0", + tag="3.9.3", ), ) config: diff --git a/workflow/rules/fastp.smk b/workflow/rules/fastp.smk index ffd7789..1c6720b 100644 --- a/workflow/rules/fastp.smk +++ b/workflow/rules/fastp.smk @@ -54,7 +54,7 @@ rule fair_bowtie2_mapping_fastp_trimming_pair_ended: default="--verbose --overrepresentation_analysis", ), wrapper: - f"{snakemake_wrappers_prefix}/bio/fastp" + "v5.3.0/bio/fastp" use rule fair_bowtie2_mapping_fastp_trimming_pair_ended as fair_bowtie2_mapping_fastp_trimming_single_ended with: diff --git a/workflow/rules/goleft.smk b/workflow/rules/goleft.smk index 887d5f1..6aefc46 100644 --- a/workflow/rules/goleft.smk +++ b/workflow/rules/goleft.smk @@ -37,4 +37,4 @@ rule fair_bowtie2_mapping_goleft_indexcov: default="", ), wrapper: - f"{snakemake_wrappers_prefix}/bio/goleft/indexcov" + "v5.3.0/bio/goleft/indexcov" diff --git a/workflow/rules/mosdepth.smk b/workflow/rules/mosdepth.smk index e23bac4..295d47d 100644 --- a/workflow/rules/mosdepth.smk +++ b/workflow/rules/mosdepth.smk @@ -33,4 +33,4 @@ rule fair_bowtie2_mapping_mosdepth: default="--no-per-base --use-median", ), wrapper: - f"{snakemake_wrappers_prefix}/bio/mosdepth" + "v5.3.0/bio/mosdepth" diff --git a/workflow/rules/mtnucratio.smk b/workflow/rules/mtnucratio.smk new file mode 100644 index 0000000..70874a1 --- /dev/null +++ b/workflow/rules/mtnucratio.smk @@ -0,0 +1,33 @@ +rule fair_bowtie2_mapping_mtnucratiocalculator: + input: + "results/{species}.{build}.{release}.{datatype}/Mapping/{sample}.bam", + output: + txt=report( + "results/{species}.{build}.{release}.{datatype}/QC/Mitochondrion/{sample}.ratio.txt", + caption="../report/mtnucratiocalculator.rst", + category="Quality Controls", + subcategory="Mapping", + labels={ + "report": "txt", + "step": "Mapping", + "organism": "{species}.{build}.{release}", + }, + ), + json=temp( + "tmp/fair_bowtie2_mapping_mtnucratiocalculator/{species}.{build}.{release}.{datatype}/{sample}.mtnuc.json" + ), + threads: 1 + resources: + mem_mb=lambda wildcards, attempt: attempt * 1_000, + runtime=lambda wildcards, attempt: attempt * 15, + tmpdir=tmp, + log: + "logs/fair_bowtie2_mapping_mtnucratiocalculator/{species}.{build}.{release}.{datatype}/{sample}.log", + benchmark: + "benchmark/fair_bowtie2_mapping_mtnucratiocalculator/{species}.{build}.{release}.{datatype}/{sample}.tsv" + params: + chrom=lookup_config( + dpath="params/fair_bowtie2_mapping_mtnucratiocalculator", default="MT" + ), + wrapper: + "v5.3.0/bio/mtnucratio" diff --git a/workflow/rules/multiqc.smk b/workflow/rules/multiqc.smk index 6454937..ea6b485 100644 --- a/workflow/rules/multiqc.smk +++ b/workflow/rules/multiqc.smk @@ -222,6 +222,15 @@ rule fair_bowtie2_mapping_multiqc_report: ), allow_missing=True, ), + #sexdeterrmine="tmp/fair_bowtie2_mapping_sexdeterrmine/{species}.{build}.{release}.{datatype}/sexdeterrmine.json", + mtnucratiocalculator=collect( + "tmp/fair_bowtie2_mapping_mtnucratiocalculator/{sample.species}.{sample.build}.{sample.release}.{datatype}/{sample.sample_id}.mtnuc.json", + sample=lookup( + query="species == '{species}' & release == '{release}' & build == '{build}'", + within=samples, + ), + allow_missing=True, + ), output: report( "results/{species}.{build}.{release}.{datatype}/QC/MultiQC_Mapping.html", @@ -251,4 +260,4 @@ rule fair_bowtie2_mapping_multiqc_report: benchmark: "benchmark/fair_bowtie2_mapping_multiqc_report/{species}.{build}.{release}.{datatype}.tsv" wrapper: - f"{snakemake_wrappers_prefix}/bio/multiqc" + "v5.3.0/bio/multiqc" diff --git a/workflow/rules/ngsderive.smk b/workflow/rules/ngsderive.smk index 7f1cb2e..2b59834 100644 --- a/workflow/rules/ngsderive.smk +++ b/workflow/rules/ngsderive.smk @@ -98,7 +98,7 @@ rule tabix_gzipped_gtf: default="-p gff", ), wrapper: - f"{snakemake_wrappers_prefix}/bio/tabix/index" + "v5.3.0/bio/tabix/index" rule fair_bowtie2_mapping_ngsderive_strandedness: @@ -127,7 +127,7 @@ rule fair_bowtie2_mapping_ngsderive_strandedness: default="", ), wrapper: - f"{snakemake_wrappers_prefix}/bio/ngsderive" + "v5.3.0/bio/ngsderive" """ @@ -165,7 +165,7 @@ rule fair_bowtie2_mapping_ngsderive_encoding: default="", ), wrapper: - f"{snakemake_wrappers_prefix}/bio/ngsderive" + "v5.3.0/bio/ngsderive" """ @@ -203,7 +203,7 @@ rule fair_bowtie2_mapping_ngsderive_instrument: default="", ), wrapper: - f"{snakemake_wrappers_prefix}/bio/ngsderive" + "v5.3.0/bio/ngsderive" """ @@ -241,4 +241,4 @@ rule fair_bowtie2_mapping_ngsderive_readlen: default="", ), wrapper: - f"{snakemake_wrappers_prefix}/bio/ngsderive" + "v5.3.0/bio/ngsderive" diff --git a/workflow/rules/picard_metrics.smk b/workflow/rules/picard_metrics.smk index 1dac362..ddcc4f5 100644 --- a/workflow/rules/picard_metrics.smk +++ b/workflow/rules/picard_metrics.smk @@ -43,4 +43,4 @@ rule fair_bowtie2_mapping_picard_create_multiple_metrics: default="", ), wrapper: - f"{snakemake_wrappers_prefix}/bio/picard/collectmultiplemetrics" + "v5.3.0/bio/picard/collectmultiplemetrics" diff --git a/workflow/rules/rseqc.smk b/workflow/rules/rseqc.smk index eec32c5..5b03817 100644 --- a/workflow/rules/rseqc.smk +++ b/workflow/rules/rseqc.smk @@ -33,7 +33,7 @@ rule fair_bowtie2_mapping_rseqc_infer_experiment: default="", ), wrapper: - f"{snakemake_wrappers_prefix}/bio/rseqc/infer_experiment" + "v5.3.0/bio/rseqc/infer_experiment" """ @@ -109,7 +109,7 @@ rule fair_bowtie2_mapping_rseqc_read_gc: default="", ), wrapper: - f"{snakemake_wrappers_prefix}/bio/rseqc/read_gc" + "v5.3.0/bio/rseqc/read_gc" """ @@ -147,7 +147,7 @@ rule fair_bowtie2_mapping_rseqc_read_distribution: default="", ), wrapper: - f"{snakemake_wrappers_prefix}/bio/rseqc/read_distribution" + "v5.3.0/bio/rseqc/read_distribution" """ diff --git a/workflow/rules/samtools_stats.smk b/workflow/rules/samtools_stats.smk index c637b88..160ba12 100644 --- a/workflow/rules/samtools_stats.smk +++ b/workflow/rules/samtools_stats.smk @@ -32,7 +32,7 @@ rule fair_bowtie2_mapping_samtools_stats: default="", ), wrapper: - f"{snakemake_wrappers_prefix}/bio/samtools/stats" + "v5.3.0/bio/samtools/stats" """ @@ -63,4 +63,4 @@ rule fair_bowtie2_mapping_samtools_idxstats: default="", ), wrapper: - f"{snakemake_wrappers_prefix}/bio/samtools/idxstats" + "v5.3.0/bio/samtools/idxstats" diff --git a/workflow/rules/sexdeterrmine.smk b/workflow/rules/sexdeterrmine.smk new file mode 100644 index 0000000..f8c790b --- /dev/null +++ b/workflow/rules/sexdeterrmine.smk @@ -0,0 +1,96 @@ +rule fair_bowtie2_mapping_samtools_depth: + input: + bam=lambda wildcards: get_all_bams_per_genotype( + wildcards, + samples, + ), + bai=lambda wildcards: get_all_bams_per_genotype( + wildcards, + samples, + index=True, + ), + bed=lambda wildcards: get_capturekit_bed( + wildcards, + config, + ), + output: + temp( + "tmp/fair_bowtie2_mapping_samtools_depth/{species}.{build}.{release}.{datatype}.depth.tsv" + ), + threads: 1 + resources: + mem_mb=lambda wildcards, attempt: attempt * 1_000, + runtime=lambda wildcards, attempt: attempt * 15, + tmpdir=tmp, + log: + "logs/fair_bowtie2_mapping_samtools_depth/{species}.{build}.{release}.{datatype}.log", + benchmark: + "benchmark/fair_bowtie2_mapping_samtools_depth/{species}.{build}.{release}.{datatype}.tsv" + params: + extra=lookup_config( + dpath="params/fair_bowtie2_mapping_samtools_depth", + default="--min-MQ 30 -l 10", + ), + wrapper: + "v5.3.0/bio/samtools/depth" + + +rule fair_bowtie2_mapping_csvkit_add_header: + input: + table="tmp/fair_bowtie2_mapping_samtools_depth/{species}.{build}.{release}.{datatype}.depth.tsv", + output: + temp( + "tmp/fair_bowtie2_mapping_csvkit_add_header/{species}.{build}.{release}.{datatype}.depth.tsv" + ), + threads: 1 + resources: + mem_mb=lambda wildcards, attempt: attempt * 1_000, + runtime=lambda wildcards, attempt: attempt * 15, + tmpdir=tmp, + log: + "logs/fair_bowtie2_mapping_csvkit_add_header/{species}.{build}.{release}.{datatype}.log", + benchmark: + "benchmark/fair_bowtie2_mapping_csvkit_add_header/{species}.{build}.{release}.{datatype}.benchmark" + params: + subcommand="add-header", + extra=lambda wildcards: "-t -n Chr,Pos," + + ",".join( + get_all_bams_per_genotype( + wildcards, + samples, + samples_only=True, + ), + ), + wrapper: + "v5.3.0/utils/csvtk" + + +rule fair_bowtie2_mapping_sexdeterrmine: + input: + depth="tmp/fair_bowtie2_mapping_csvkit_add_header/{species}.{build}.{release}.{datatype}.depth.tsv", + output: + tsv=report( + "results/{species}.{build}.{release}.{datatype}/QC/Sex.DetERRmine.tsv", + caption="../report/sexdeterrmine.rst", + category="Quality Controls", + subcategory="General", + labels={ + "report": "tsv", + "step": "Mapping", + "organism": "{species}.{build}.{release}.{datatype}", + }, + ), + json=temp( + "tmp/fair_bowtie2_mapping_sexdeterrmine/{species}.{build}.{release}.{datatype}/sexdeterrmine.json", + ), + threads: 1 + resources: + mem_mb=lambda wildcards, attempt: attempt * 1_000, + runtime=lambda wildcards, attempt: attempt * 15, + tmpdir=tmp, + log: + "logs/fair_bowtie2_mapping_sexdeterrmine/{species}.{build}.{release}.{datatype}.log", + benchmark: + "benchmark/fair_bowtie2_mapping_sexdeterrmine/{species}.{build}.{release}.{datatype}.benchmark" + wrapper: + "v5.3.0/bio/sexdeterrmine" diff --git a/workflow/scripts/fair_bowtie2_mapping_multiqc_config.py b/workflow/scripts/fair_bowtie2_mapping_multiqc_config.py index c46b192..bd1f224 100644 --- a/workflow/scripts/fair_bowtie2_mapping_multiqc_config.py +++ b/workflow/scripts/fair_bowtie2_mapping_multiqc_config.py @@ -33,29 +33,11 @@ {"Project Type": "Mapping"}, ], "software_versions": { - "Quality controls": { - "fastqc": "1.12.1", - "fastq_screen": "0.15.3", - "bowtie2": "2.5.3", - "bowtie1": "1.3.1", - "multiqc": "1.21.0", - }, - "Mapping": { - "bowtie2": "2.5.3", - "sambamba": "1.0", - "samtools": "1.19.2", - "picard": "3.1.1", - "rseqc": "5.0.3", - "fastp": "0.23.4", - "ngsderive": "3.3.2", - "goleft": "0.2.4", - "mosdepth": "0.3.8", - }, "Pipeline": { "snakemake": "8.13.0", "snakemake-wrappers-utils": "0.6.2", - "fair_fastqc_multiqc": "2.2.8", - "fair_genome_indexer": "3.6.0", + "fair_fastqc_multiqc": "2.4.2", + "fair_genome_indexer": "3.9.3", }, }, "disable_version_detection": True, @@ -70,6 +52,7 @@ "ngsderive", "goleft_indexcov", "mosdepth", + "mtnucratio", ], "report_section_order": { "fastq_screen": {"order": 1000}, @@ -82,6 +65,7 @@ "rseqc": {"order": 850}, "goleft_indexcov": {"order": 840}, "mosdepth": {"order": 830}, + "mtnucratio": {"order": 827}, "software_versions": {"order": -1000}, }, }