From dbbf5c7981200db07f26146e651968d4a4d73551 Mon Sep 17 00:00:00 2001 From: Christian Mertes Date: Mon, 23 Mar 2026 10:24:30 +0100 Subject: [PATCH 1/8] update test env to install deps from scratch --- environment.yml | 55 +++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 46 insertions(+), 9 deletions(-) diff --git a/environment.yml b/environment.yml index 56b8ea2a..c5d71c66 100644 --- a/environment.yml +++ b/environment.yml @@ -1,18 +1,55 @@ name: drop_test + channels: - conda-forge - bioconda + dependencies: - - python>=3.11 - - r-base>=4.4 + - python >=3.11 - pip - - pandas>=3.0 - - drop - - snakemake>=5,<8 - - flake8 - - bioconductor-bsgenome.hsapiens.ucsc.hg19 - - wbuild>1.8.0 + - pandas >=3.0 + - Click >=7.0 + - click-log + - python-dateutil + + # snakemake/wbuild + - wbuild >=1.8=pyhdfd78af_2 + - snakemake >=5.5.2,<8 + - pandoc + - graphviz + + # command line tools + - bc + - wget + - htslib + - samtools >=1.9 + - bcftools >=1.9 + - gatk4 >=4.0.4 + - star >=2.7 + + # R dependencies + - r-base >=4.4 - r-dt + - r-rmarkdown + - r-knitr + - r-ggplot2 + - r-ggthemes + - r-cowplot + - r-data.table + - r-dplyr + - r-tidyr + - r-magrittr + - r-devtools + - r-tmae >=1.0.5 + + # bioconductor packages + - bioconductor-deseq2 + - bioconductor-genomicscores + - bioconductor-outrider >=1.28 + - bioconductor-fraser >=2.6 + - bioconductor-variantannotation - # required for downloading R packages through github + # testing dependencies + - flake8 + - bioconductor-bsgenome.hsapiens.ucsc.hg19 - unzip From b1d956499b48f3ccc8406c7b7e829e2957fef25c Mon Sep 17 00:00:00 2001 From: Christian Mertes Date: Mon, 23 Mar 2026 10:52:12 +0100 Subject: [PATCH 2/8] load txdbmaker and GenomeInfoDb explicit --- drop/modules/aberrant-splicing-pipeline/config.R | 2 +- drop/template/Scripts/Pipeline/preprocessGeneAnnotation.R | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/drop/modules/aberrant-splicing-pipeline/config.R b/drop/modules/aberrant-splicing-pipeline/config.R index 9cb39ab3..01b84124 100644 --- a/drop/modules/aberrant-splicing-pipeline/config.R +++ b/drop/modules/aberrant-splicing-pipeline/config.R @@ -14,7 +14,7 @@ suppressPackageStartupMessages({ library(plotly) library(DelayedMatrixStats) library(FRASER) - library(rhdf5) + library(rhdf5) }) diff --git a/drop/template/Scripts/Pipeline/preprocessGeneAnnotation.R b/drop/template/Scripts/Pipeline/preprocessGeneAnnotation.R index 68d99364..599a3cfd 100644 --- a/drop/template/Scripts/Pipeline/preprocessGeneAnnotation.R +++ b/drop/template/Scripts/Pipeline/preprocessGeneAnnotation.R @@ -21,6 +21,8 @@ suppressPackageStartupMessages({ library(data.table) library(rtracklayer) library(magrittr) + library(txdbmaker) + library(GenomeInfoDb) }) ## Create txdb From 81f1045e22a4ebaafabe976ce66cebce2f7c7e8d Mon Sep 17 00:00:00 2001 From: Christian Mertes Date: Mon, 23 Mar 2026 10:58:02 +0100 Subject: [PATCH 3/8] list packages and versions in conda env --- .github/workflows/python-package-conda.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/python-package-conda.yml b/.github/workflows/python-package-conda.yml index 25d8fa30..f0c017b7 100644 --- a/.github/workflows/python-package-conda.yml +++ b/.github/workflows/python-package-conda.yml @@ -25,6 +25,7 @@ jobs: run: | micromamba --version micromamba env list + micromamba list -n drop_test # - name: Install dependencies # run: mamba env update -f environment.yml From fe4db0b48dad747ddd402708c270539e33af261e Mon Sep 17 00:00:00 2001 From: Christian Mertes Date: Mon, 23 Mar 2026 11:03:05 +0100 Subject: [PATCH 4/8] load explicit GenomeInfoDb for seqlevelsStyle function --- .../aberrant-expression-pipeline/Counting/countReads.R | 1 + .../Counting/03_filter_expression_FraseR.R | 4 ++++ .../aberrant-splicing-pipeline/Counting/exportCounts.R | 5 ++++- .../aberrant-splicing-pipeline/FRASER/06_annotate_genes.R | 6 +++++- drop/modules/mae-pipeline/MAE/Results.R | 1 + drop/modules/mae-pipeline/QC/create_matrix_dna_rna_cor.R | 1 + 6 files changed, 16 insertions(+), 2 deletions(-) diff --git a/drop/modules/aberrant-expression-pipeline/Counting/countReads.R b/drop/modules/aberrant-expression-pipeline/Counting/countReads.R index 2fc85d70..b807383d 100644 --- a/drop/modules/aberrant-expression-pipeline/Counting/countReads.R +++ b/drop/modules/aberrant-expression-pipeline/Counting/countReads.R @@ -26,6 +26,7 @@ suppressPackageStartupMessages({ library(Rsamtools) library(BiocParallel) library(GenomicAlignments) + library(GenomeInfoDb) }) # Get strand specific information from sample annotation diff --git a/drop/modules/aberrant-splicing-pipeline/Counting/03_filter_expression_FraseR.R b/drop/modules/aberrant-splicing-pipeline/Counting/03_filter_expression_FraseR.R index 878e1d72..b3acc028 100644 --- a/drop/modules/aberrant-splicing-pipeline/Counting/03_filter_expression_FraseR.R +++ b/drop/modules/aberrant-splicing-pipeline/Counting/03_filter_expression_FraseR.R @@ -24,6 +24,10 @@ saveRDS(snakemake, snakemake@log$snakemake) source(snakemake@params$setup, echo=FALSE) +suppressPackageStartupMessages({ + library(GenomeInfoDb) +}) + opts_chunk$set(fig.width=12, fig.height=8) # input diff --git a/drop/modules/aberrant-splicing-pipeline/Counting/exportCounts.R b/drop/modules/aberrant-splicing-pipeline/Counting/exportCounts.R index ab9e77c6..4a115a66 100644 --- a/drop/modules/aberrant-splicing-pipeline/Counting/exportCounts.R +++ b/drop/modules/aberrant-splicing-pipeline/Counting/exportCounts.R @@ -20,7 +20,10 @@ saveRDS(snakemake, snakemake@log$snakemake) source(snakemake@params$setup, echo=FALSE) -library(AnnotationDbi) +suppressPackageStartupMessages({ + library(AnnotationDbi) + library(GenomeInfoDb) +}) # # input diff --git a/drop/modules/aberrant-splicing-pipeline/FRASER/06_annotate_genes.R b/drop/modules/aberrant-splicing-pipeline/FRASER/06_annotate_genes.R index b4ca0412..39cbe548 100644 --- a/drop/modules/aberrant-splicing-pipeline/FRASER/06_annotate_genes.R +++ b/drop/modules/aberrant-splicing-pipeline/FRASER/06_annotate_genes.R @@ -25,7 +25,11 @@ saveRDS(snakemake, snakemake@log$snakemake) source(snakemake@params$setup, echo=FALSE) -library(AnnotationDbi) + +suppressPackageStartupMessages({ + library(AnnotationDbi) + library(GenomeInfoDb) +}) annotation <- snakemake@wildcards$annotation dataset <- snakemake@wildcards$dataset diff --git a/drop/modules/mae-pipeline/MAE/Results.R b/drop/modules/mae-pipeline/MAE/Results.R index cb76d59a..61b83488 100644 --- a/drop/modules/mae-pipeline/MAE/Results.R +++ b/drop/modules/mae-pipeline/MAE/Results.R @@ -37,6 +37,7 @@ suppressPackageStartupMessages({ library(SummarizedExperiment) library(R.utils) library(dplyr) + library(GenomeInfoDb) }) # Read annotation and convert into GRanges diff --git a/drop/modules/mae-pipeline/QC/create_matrix_dna_rna_cor.R b/drop/modules/mae-pipeline/QC/create_matrix_dna_rna_cor.R index 38b60de4..1cbefc59 100644 --- a/drop/modules/mae-pipeline/QC/create_matrix_dna_rna_cor.R +++ b/drop/modules/mae-pipeline/QC/create_matrix_dna_rna_cor.R @@ -24,6 +24,7 @@ suppressPackageStartupMessages({ library(magrittr) library(BiocParallel) library(data.table) + library(GenomeInfoDb) }) register(MulticoreParam(snakemake@threads)) From 99b6c68437b7c809fab27d10a4cd5cbfa80d1212 Mon Sep 17 00:00:00 2001 From: Christian Mertes Date: Mon, 23 Mar 2026 11:25:03 +0100 Subject: [PATCH 5/8] Bump version to 1.6.1 to trigger updating files via cli --- drop/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drop/__init__.py b/drop/__init__.py index 296c3eed..280418f8 100644 --- a/drop/__init__.py +++ b/drop/__init__.py @@ -5,4 +5,4 @@ from . import demo -__version__ = "1.6.0" +__version__ = "1.6.1" From aab9f192beaedf4c74a185d9eeddccb03bff13ae Mon Sep 17 00:00:00 2001 From: Christian Mertes Date: Mon, 23 Mar 2026 13:46:34 +0100 Subject: [PATCH 6/8] install env based on branch environment file --- tests/full_test_run/full_kremer_test.sh | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/tests/full_test_run/full_kremer_test.sh b/tests/full_test_run/full_kremer_test.sh index ac67533f..12675410 100755 --- a/tests/full_test_run/full_kremer_test.sh +++ b/tests/full_test_run/full_kremer_test.sh @@ -20,11 +20,10 @@ cd ${run_folder} # create test env first env_path=${TMP}/env/env-$(basename ${run_folder}) -mkdir -p env -mamba create -y -p ${env_path} \ - "drop>=1.5" "pandoc>=2.4" "r-base>=4.4" \ - "python>=3.12" "pip>=26.0" "yq>=3.4" \ - "pandas>=3.0" +mkdir -p $(dirname ${env_path}) +wget "https://github.com/gagneurlab/drop/blob/${branch_name}/environment.yml" +yq -r '.dependencies[] | strings' environment.yml > environment.txt +mamba create -y -p ${env_path} --file ./environment.txt source $(dirname ${CONDA_EXE})/activate ${env_path} # Report locations in the end @@ -35,12 +34,6 @@ trap report_folder_on_exit EXIT trap report_folder_on_exit INT -# Install R data packages required for the pipeline -Rscript -e "options(repos=structure(c(CRAN='https://cloud.r-project.org')), warn = -1); install.packages('BiocManager');" -Rscript -e "BiocManager::install('BSgenome.Hsapiens.UCSC.hg19')" & -Rscript -e "BiocManager::install('MafDb.gnomAD.r2.1.hs37d5')" & -wait - # install version from git branch pip install --no-deps --force-reinstall \ "git+https://github.com/gagneurlab/drop@${branch_name}" From e0da820c3619ec88b384c29c19da1ebc5c434b58 Mon Sep 17 00:00:00 2001 From: Christian Mertes Date: Mon, 23 Mar 2026 13:55:39 +0100 Subject: [PATCH 7/8] use version from DROP module --- drop/cli.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drop/cli.py b/drop/cli.py index 174c65e6..c24c9155 100644 --- a/drop/cli.py +++ b/drop/cli.py @@ -17,7 +17,7 @@ @click.group(invoke_without_command=True) @click_log.simple_verbosity_option(logger) -@click.version_option('1.6.0',prog_name='drop') +@click.version_option(drop.__version__, prog_name='drop') def main(): ctx = click.get_current_context() From 853f721f48e35ceddec7b0645cca0132ea1d4602 Mon Sep 17 00:00:00 2001 From: Christian Mertes Date: Mon, 23 Mar 2026 17:44:02 +0100 Subject: [PATCH 8/8] report success for full test --- drop/cli.py | 2 +- tests/full_test_run/kremer_test.R | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/drop/cli.py b/drop/cli.py index c24c9155..6e3d4219 100644 --- a/drop/cli.py +++ b/drop/cli.py @@ -17,7 +17,7 @@ @click.group(invoke_without_command=True) @click_log.simple_verbosity_option(logger) -@click.version_option(drop.__version__, prog_name='drop') +@click.version_option("1.6.0", prog_name='drop') def main(): ctx = click.get_current_context() diff --git a/tests/full_test_run/kremer_test.R b/tests/full_test_run/kremer_test.R index d72b5e7f..02b44e20 100644 --- a/tests/full_test_run/kremer_test.R +++ b/tests/full_test_run/kremer_test.R @@ -124,3 +124,5 @@ qc_match_anno <- sapply(seq_len(nrow(qc_matches)), function(x){ stopifnot(qc_match_anno) +# report success +message("All checks passed!") \ No newline at end of file