From c1d75ae60abdbc6c66b71e0b0b932d3f56442eae Mon Sep 17 00:00:00 2001 From: Olivier Date: Wed, 3 Jun 2026 12:02:43 +0200 Subject: [PATCH 01/31] fix bug with weights not being used at all --- bin/compute_stability_scores.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/compute_stability_scores.py b/bin/compute_stability_scores.py index ad7fbba2..e3a284de 100755 --- a/bin/compute_stability_scores.py +++ b/bin/compute_stability_scores.py @@ -120,7 +120,7 @@ def compute_stability_score(self): pl.col(config.RATIO_NULLS_VALID_SAMPLES_COLNAME) * self.WEIGHT_RATIO_NB_NULLS_TO_SCORING ) - + for col, weight in self.weights.items(): if col not in self.df.columns: logger.warning(f"Column {col} not found in dataframe") @@ -133,7 +133,7 @@ def compute_stability_score(self): pl.col(normalised_col).is_not_null() & pl.col(normalised_col).is_not_nan() ) - .then(pl.col(normalised_col)) + .then(pl.col(normalised_col) * weight) .otherwise(pl.lit(0)) ) From 019c51fb8f8a57a6a57f43d5dd4836dc821a93d6 Mon Sep 17 00:00:00 2001 From: Olivier Date: Wed, 3 Jun 2026 12:02:56 +0200 Subject: [PATCH 02/31] Update merge_counts.py --- bin/merge_counts.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/bin/merge_counts.py b/bin/merge_counts.py index 0f9d426c..fbd8e03a 100755 --- a/bin/merge_counts.py +++ b/bin/merge_counts.py @@ -126,10 +126,9 @@ def formating_counts(lf: pl.LazyFrame): The config.GENE_ID_COLNAME column is cast to String, and all other columns are cast to Float64. """ - # casting count columns to Float64 - # casting gene id column to Stringcount_files - # casting nans to nulls + # casting gene id column to String + # replacing nans with nulls logger.info("Cleaning merged lazyframe") return lf.select( [pl.col(config.GENE_ID_COLNAME).cast(pl.String)] From 3b45e96c7cb865623c538371dd5574c77983c6ea Mon Sep 17 00:00:00 2001 From: Olivier Date: Wed, 3 Jun 2026 12:03:49 +0200 Subject: [PATCH 03/31] improve missing value imputation by sampling data in posterior pred --- bin/impute_missing_values.py | 1 + 1 file changed, 1 insertion(+) diff --git a/bin/impute_missing_values.py b/bin/impute_missing_values.py index 962e9728..f8316ffb 100755 --- a/bin/impute_missing_values.py +++ b/bin/impute_missing_values.py @@ -69,6 +69,7 @@ def apply_knn_imputer(df: pl.DataFrame) -> pl.DataFrame: def apply_iterative_imputer(df: pl.DataFrame) -> pl.DataFrame: imputer = IterativeImputer( max_iter=MAX_ITERATIONS, + sample_posterior=True, n_nearest_features=N_NEAREST_FEATURES, random_state=0, initial_strategy="mean", From a062e45580d088365198faebc7ac1ca73bb9077d Mon Sep 17 00:00:00 2001 From: Olivier Date: Wed, 3 Jun 2026 12:04:31 +0200 Subject: [PATCH 04/31] make computation of gene statistics more scalable --- bin/compute_gene_statistics.py | 69 +++++++++++++++++----------------- 1 file changed, 35 insertions(+), 34 deletions(-) diff --git a/bin/compute_gene_statistics.py b/bin/compute_gene_statistics.py index ec250cf7..5c1e0357 100755 --- a/bin/compute_gene_statistics.py +++ b/bin/compute_gene_statistics.py @@ -15,7 +15,7 @@ # outfile names ALL_GENES_RESULT_OUTFILE_SUFFIX = "stats_all_genes.csv" -RCV_MULTIFILER = 1.4826 # see https://pmc.ncbi.nlm.nih.gov/articles/PMC9196089/ +RCV_MULTIPLIER = 1.4826 # see https://pmc.ncbi.nlm.nih.gov/articles/PMC9196089/ # quantile intervals NB_QUANTILES = 100 @@ -95,9 +95,9 @@ def parse_args(): return parser.parse_args() -def get_counts(file: Path) -> pl.DataFrame: +def get_counts(file: Path) -> pl.LazyFrame: # sorting dataframe (necessary to get consistent output) - return pl.read_parquet(file).sort(config.GENE_ID_COLNAME, descending=False) + return pl.scan_parquet(file).sort(config.GENE_ID_COLNAME, descending=False) def get_colname(colname: str, platform: str | None) -> str: @@ -125,29 +125,37 @@ def get_valid_samples( def compute_ratios_null_values( - df: pl.DataFrame, valid_samples: list[str], platform: str | None -) -> pl.DataFrame: + lf: pl.LazyFrame, valid_samples: list[str], platform: str | None +) -> pl.LazyFrame: + + samples_cols = [col for col in lf.collect_schema().names() if col != config.GENE_ID_COLNAME] + nb_samples = len(samples_cols) - 1 + found_valid_samples = [sample for sample in valid_samples if sample in samples_cols] + # the samples showing a low gene count will not be taken into account for the zero count penalty - nb_nulls = df.select(pl.exclude(config.GENE_ID_COLNAME).is_null()).sum_horizontal() - - found_valid_samples = [sample for sample in valid_samples if sample in df.columns] - + nb_nulls = ( + lf + .select(pl.exclude(config.GENE_ID_COLNAME).is_null()) # select all columns except GENE_ID_COLNAME and check if they are null + .select(pl.sum_horizontal(pl.all()).alias("nb_nulls_all_samples")) # sum the number of null values across all columns + .collect() + .to_series() + ) + if found_valid_samples: - nb_nulls_valid_samples = df.select( - pl.col(found_valid_samples).is_null() - ).sum_horizontal() + nb_nulls_valid_samples = ( + lf + .select(pl.col(found_valid_samples).is_null()) # select all columns in valid_samples and check if they are null + .select(pl.sum_horizontal(pl.all()).alias("nb_nulls_valid_samples")) # sum the number of null values across all columns + .collect() + .to_series() + ) else: nb_nulls_valid_samples = nb_nulls - - nb_samples = len(df.columns) - 1 - return df.select( + + return lf.select( pl.col(config.GENE_ID_COLNAME), - (nb_nulls / nb_samples).alias( - get_colname(config.RATIO_NULLS_COLNAME, platform) - ), - (nb_nulls_valid_samples / len(found_valid_samples)).alias( - get_colname(config.RATIO_NULLS_VALID_SAMPLES_COLNAME, platform) - ), + (nb_nulls / nb_samples).alias(get_colname(config.RATIO_NULLS_COLNAME, platform)), + (nb_nulls_valid_samples / len(found_valid_samples)).alias(get_colname(config.RATIO_NULLS_VALID_SAMPLES_COLNAME, platform)), ) @@ -174,7 +182,7 @@ def get_main_statistics(lf: pl.LazyFrame, platform: str | None) -> pl.LazyFrame: (pl.col("std") / pl.col("mean")).alias( get_colname(config.COEFFICIENT_OF_VARIATION_COLNAME, platform) ), - (pl.col("mad") / pl.col("median") * RCV_MULTIFILER).alias( + (pl.col("mad") / pl.col("median") * RCV_MULTIPLIER).alias( get_colname(config.ROBUST_COEFFICIENT_OF_VARIATION_MEDIAN_COLNAME, platform) ), ) @@ -244,15 +252,12 @@ def main(): ) logger.info("Loading count data (before missing value imputation)") - non_imputed_count_df = get_counts(args.count_file) + non_imputed_count_lf = get_counts(args.count_file) - ratio_nulls_df = compute_ratios_null_values( - non_imputed_count_df, valid_samples, args.platform + ratio_nulls_lf = compute_ratios_null_values( + non_imputed_count_lf, valid_samples, args.platform ) - # deleting non_imputed_count_df in order to free unused memory - del non_imputed_count_df - # if the user provided an imputed count file, use it; otherwise, use the original count file if args.imputed_count_file: logger.info("Using imputed count file") @@ -262,19 +267,15 @@ def main(): count_file = args.count_file logger.info("Loading count data...") - count_df = get_counts(count_file) - logger.info( - f"Loaded count data with {count_df.shape[0]} rows and {count_df.shape[1]} columns" - ) + count_lf = get_counts(count_file) logger.info("Computing statistics and stability score") - count_lf = count_df.lazy() # getting expression statistics stat_lf = get_main_statistics(count_lf, args.platform) # adding column for nb of null values for each gene stat_lf = stat_lf.join( - ratio_nulls_df.lazy(), on=config.GENE_ID_COLNAME, how="inner" + ratio_nulls_lf, on=config.GENE_ID_COLNAME, how="inner" ) # adding a column for the frequency of zero values From 0aa6d9e5d1d9419a9e326107842039777297992b Mon Sep 17 00:00:00 2001 From: Olivier Date: Wed, 3 Jun 2026 14:37:29 +0200 Subject: [PATCH 05/31] fix possible read timeout errors with expression atlas --- bin/get_eatlas_accessions.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/bin/get_eatlas_accessions.py b/bin/get_eatlas_accessions.py index 2b8b2dde..1389c0ac 100755 --- a/bin/get_eatlas_accessions.py +++ b/bin/get_eatlas_accessions.py @@ -20,6 +20,7 @@ ) logging.basicConfig(level=logging.INFO) +logging.getLogger("httpx").setLevel(logging.WARNING) logger = logging.getLogger(__name__) ALLOWED_PLATFORMS = ["rnaseq", "microarray"] @@ -103,7 +104,8 @@ def get_data(url: str) -> dict: RuntimeError If the query fails """ - response = httpx.get(url) + # timeout of 10 minutes since the EBI may take a while to respond + response = httpx.get(url, timeout=360.0) response.raise_for_status() return response.json() @@ -427,7 +429,7 @@ def main(): species_name = format_species_name(args.species) keywords = args.keywords - logger.info(f"Getting experiments corresponding to species {species_name}") + logger.info("Getting all Expression Atlas experiments") experiments = get_eatlas_experiments() logger.info("Filtering on species name") From 095070443f475b321c9d2517b0669aa4345a187a Mon Sep 17 00:00:00 2001 From: Olivier Coen Date: Wed, 3 Jun 2026 15:11:37 +0200 Subject: [PATCH 06/31] Create get_eatlas_supported_species.py --- publication/get_eatlas_supported_species.py | 90 +++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 publication/get_eatlas_supported_species.py diff --git a/publication/get_eatlas_supported_species.py b/publication/get_eatlas_supported_species.py new file mode 100644 index 00000000..8dcf5094 --- /dev/null +++ b/publication/get_eatlas_supported_species.py @@ -0,0 +1,90 @@ +#!/usr/bin/env python3 + +# Written by Olivier Coen. Released under the MIT license. + +import logging +from collections import Counter + +import httpx +from tenacity import ( + before_sleep_log, + retry, + stop_after_delay, + wait_exponential, +) + +logging.basicConfig(level=logging.INFO) +logger = logging.getLogger(__name__) + +ALL_EXP_URL = "https://www.ebi.ac.uk/gxa/json/experiments/" + +################################################################## +################################################################## +# FUNCTIONS +################################################################## +################################################################## + + +@retry( + stop=stop_after_delay(600), + wait=wait_exponential(multiplier=1, min=1, max=30), + before_sleep=before_sleep_log(logger, logging.WARNING), +) +def get_data(url: str) -> dict: + """ + Queries a URL and returns the data as a JSON object + + Parameters + ---------- + url : str + The URL to query + + Returns + ------- + data : dict + The JSON object returned by the query + + Raises + ------ + RuntimeError + If the query fails + """ + response = httpx.get(url) + response.raise_for_status() + return response.json() + + +def get_eatlas_experiments(): + """ + Gets all experiments from Expression Atlas + + Parameters + ---------- + + Returns + ------- + experiments : list + A list of experiment dictionaries + """ + data = get_data(ALL_EXP_URL) + return data["experiments"] + + +################################################################## +################################################################## +# MAIN +################################################################## +################################################################## + + +def main(): + experiments = get_eatlas_experiments() + species = Counter( + sorted([" ".join(exp["species"].split(" ")[:2]) for exp in experiments]) + ) + print(species) + print(len(species)) + + +if __name__ == "__main__": + main() From cd9326c4178d024460e3160095e83cb0aa888e77 Mon Sep 17 00:00:00 2001 From: Olivier Coen Date: Fri, 5 Jun 2026 10:04:43 +0200 Subject: [PATCH 07/31] update default weights --- nextflow.config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nextflow.config b/nextflow.config index 910a3ec7..8c08dbd8 100644 --- a/nextflow.config +++ b/nextflow.config @@ -56,7 +56,7 @@ params { // stability scoring skip_genorm = false - stability_score_weights = "0.5,0.5,0,0" + stability_score_weights = "0.25,0.25,0.25,0.25" // random sampling random_sampling_seed = 42 From cdfd8e7539cc126c78dc937643a51f3bc8e92b19 Mon Sep 17 00:00:00 2001 From: Olivier Coen Date: Mon, 8 Jun 2026 09:29:58 +0200 Subject: [PATCH 08/31] publish merged counts --- conf/modules/merging.config | 20 ++++++++++++++++++++ subworkflows/local/merge_data/main.nf | 2 +- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/conf/modules/merging.config b/conf/modules/merging.config index f9c1e46d..58a26db1 100644 --- a/conf/modules/merging.config +++ b/conf/modules/merging.config @@ -5,4 +5,24 @@ process { maxForks = 1 } + withName: 'NFCORE_STABLEEXPRESSION:STABLEEXPRESSION:MERGE_DATA:GLOBAL' { + publishDir = [ + path: { "${params.outdir}/merged_counts" }, + mode: params.publish_dir_mode, + saveAs: { + filename -> 'all_counts.parquet' + } + ] + } + + withName: 'IMPUTE_MISSING_VALUES' { + publishDir = [ + path: { "${params.outdir}/merged_data" }, + mode: params.publish_dir_mode, + saveAs: { + filename -> 'all_counts.missing_values_imputed.parquet' + } + ] + } + } diff --git a/subworkflows/local/merge_data/main.nf b/subworkflows/local/merge_data/main.nf index 55b6cc52..a315e76b 100644 --- a/subworkflows/local/merge_data/main.nf +++ b/subworkflows/local/merge_data/main.nf @@ -84,7 +84,7 @@ workflow MERGE_DATA { seed: "batch,condition,sample", newLine: true, sort: true, - storeDir: "${outdir}/merged_datasets/" + storeDir: "${outdir}/merged_data/" ) { item -> "${item.batch},${item.condition},${item.sample}" } From 632e9757ff6d5e336cc4fdca1c6fc76208434478 Mon Sep 17 00:00:00 2001 From: Olivier Date: Thu, 11 Jun 2026 08:58:01 +0200 Subject: [PATCH 09/31] fix bug for strict synthax --- subworkflows/local/sample_filtering/main.nf | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/subworkflows/local/sample_filtering/main.nf b/subworkflows/local/sample_filtering/main.nf index 31006f3f..c6d87039 100644 --- a/subworkflows/local/sample_filtering/main.nf +++ b/subworkflows/local/sample_filtering/main.nf @@ -44,6 +44,7 @@ workflow SAMPLE_FILTERING { ch_ratio_nulls_per_sample_file = TOO_MANY_MISSING_VALUES.out.ratio_nulls_per_sample .splitCsv( header: true ) + .map { item -> "${item["sample"]},${item["ratio"]}" } .collectFile( name: 'ratio_nulls_per_sample.csv', seed: "sample,ratio", @@ -51,9 +52,7 @@ workflow SAMPLE_FILTERING { storeDir: "${outdir}/statistics/", sort: true ) - { - item -> "${item["sample"]},${item["ratio"]}" - } + emit: counts = TOO_MANY_MISSING_VALUES.out.counts From 9f858e717c15210b3621386d938b1f17c7feb984 Mon Sep 17 00:00:00 2001 From: Olivier Date: Thu, 11 Jun 2026 09:00:39 +0200 Subject: [PATCH 10/31] update snapshots --- .../with_too_many_missing_values/main.nf | 2 +- subworkflows/local/reporting/main.nf | 1 - tests/default.nf.test.snap | 614 +++++++++--------- .../local/aggregate_results/main.nf.test.snap | 20 +- .../compute_gene_statistics/main.nf.test.snap | 12 +- .../main.nf.test.snap | 24 +- .../getaccessions/main.nf.test.snap | 8 +- .../expressionatlas/getdata/main.nf.test.snap | 12 +- .../filter_and_rename_genes/main.nf.test.snap | 40 +- .../compute_m_measure/main.nf.test.snap | 4 +- .../local/genorm/cross_join/main.nf.test.snap | 4 +- .../genorm/expression_ratio/main.nf.test.snap | 4 +- .../genorm/make_chunks/main.nf.test.snap | 4 +- .../main.nf.test.snap | 4 +- .../get_candidate_genes/main.nf.test.snap | 8 +- .../gprofiler/idmapping/main.nf.test.snap | 4 +- .../local/merge_counts/main.nf.test.snap | 8 +- .../compute_cpm/main.nf.test.snap | 32 +- .../compute_tpm/main.nf.test.snap | 48 +- .../local/normfinder/main.nf.test.snap | 8 +- .../quantile_normalisation/main.nf.test.snap | 24 +- .../main.nf.test.snap | 8 +- .../main.nf.test.snap | 16 +- .../local/genorm/main.nf.test.snap | 8 +- .../get_public_accessions/main.nf.test.snap | 16 +- 25 files changed, 489 insertions(+), 444 deletions(-) diff --git a/modules/local/filter_out_samples/with_too_many_missing_values/main.nf b/modules/local/filter_out_samples/with_too_many_missing_values/main.nf index ebbdc119..3b743950 100644 --- a/modules/local/filter_out_samples/with_too_many_missing_values/main.nf +++ b/modules/local/filter_out_samples/with_too_many_missing_values/main.nf @@ -17,7 +17,7 @@ process FILTER_OUT_SAMPLES_WITH_TOO_MANY_MISSING_VALUES { output: tuple val(meta), path("*.nulls_filtered.parquet"), optional: true, emit: counts path("ratio_null_values_per_sample.csv"), emit: ratio_nulls_per_sample - tuple val(meta.dataset), path("ratio_null_values.csv"), topic: ratio_nulls + tuple val(meta.dataset), path("ratio_null_values.csv"), topic: ratio_nulls tuple val(meta.dataset), env("NB_KEPT_SAMPLES"), env("NB_REJECTED_SAMPLES"), topic: mqc_missing_values_filter_stats tuple val("${task.process}"), val('python'), eval("python3 --version | sed 's/Python //'"), topic: versions tuple val("${task.process}"), val('polars'), eval('python3 -c "import polars; print(polars.__version__)"'), topic: versions diff --git a/subworkflows/local/reporting/main.nf b/subworkflows/local/reporting/main.nf index 9d4fa676..797730e6 100644 --- a/subworkflows/local/reporting/main.nf +++ b/subworkflows/local/reporting/main.nf @@ -79,7 +79,6 @@ workflow REPORTING { ) ch_versions = ch_versions.mix ( DASH_APP.out.versions ) - // ------------------------------------------------------------------------------------ // PREPARING BAR PLOTS // ------------------------------------------------------------------------------------ diff --git a/tests/default.nf.test.snap b/tests/default.nf.test.snap index 87571ee3..b72dac7b 100644 --- a/tests/default.nf.test.snap +++ b/tests/default.nf.test.snap @@ -206,7 +206,7 @@ "dash_app/src/utils/style.py", "errors", "gene_length", - "gene_length/Mus_musculus.GRCm39.115.chr.gff3.gz", + "gene_length/Mus_musculus.GRCm39.116.chr.gff3.gz", "gene_length/gene_transcript_lengths.csv", "idmapping", "idmapping/global_gene_id_mapping.csv", @@ -308,102 +308,102 @@ "warnings/renaming_warning_reasons.tsv" ], [ - "all_genes_summary.csv:md5,67694aeb7cb1bec8e31a604fa5350783", + "all_genes_summary.csv:md5,7a05f123348f6fe44bbccbfa8006141a", "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", - "section_1.most_stable_genes_summary.csv:md5,f62b0f3c0462c8a6aeba61ed083ce07e", - "section_1.most_stable_genes_transposed_counts.csv:md5,7c197e7b57cdaee0b0250aed93050e24", - "section_10.most_stable_genes_summary.csv:md5,9b8dde024b554d9b2318bad7e4b76252", - "section_10.most_stable_genes_transposed_counts.csv:md5,6d9df5bef8a5b44340bbdc141d229f68", - "section_11.most_stable_genes_summary.csv:md5,255237f708e36bcd0290be1e811fd8b2", - "section_11.most_stable_genes_transposed_counts.csv:md5,08c786a9859eeae873dacbec33bb2e9e", - "section_12.most_stable_genes_summary.csv:md5,7597d72cce386c406bae974f6bccc089", - "section_12.most_stable_genes_transposed_counts.csv:md5,e93e7f64d0b5890ad95b5e0a9398f255", - "section_13.most_stable_genes_summary.csv:md5,5d0906956d78014f3bef28227e4af8f6", - "section_13.most_stable_genes_transposed_counts.csv:md5,93070ff7b4e36a2486a4b8b45f957ac8", - "section_14.most_stable_genes_summary.csv:md5,5e4743e56fbe09cc030f8401944d219c", - "section_14.most_stable_genes_transposed_counts.csv:md5,dd80d0a9118f20f47b3d06e479423713", - "section_15.most_stable_genes_summary.csv:md5,87a32675404d3908277e725954daf477", - "section_15.most_stable_genes_transposed_counts.csv:md5,0e6ed0bc24c70e3fca43691d87b39eec", - "section_16.most_stable_genes_summary.csv:md5,10b6a0507815b5a0f19371945cee71d9", - "section_16.most_stable_genes_transposed_counts.csv:md5,0dedfedd98859fabb0ba0bb57b08efce", - "section_17.most_stable_genes_summary.csv:md5,6e9ea1f25adaafdeec78ad3419815b68", - "section_17.most_stable_genes_transposed_counts.csv:md5,85a7c2959d89324cc6f250493d4520a7", - "section_18.most_stable_genes_summary.csv:md5,cafcd5fff5842789dc2024c9ec2b45d8", - "section_18.most_stable_genes_transposed_counts.csv:md5,69a36fb3843257e1c67fe06282a22671", - "section_19.most_stable_genes_summary.csv:md5,1a2f4da7114df0cdc08c09f024718d0c", - "section_19.most_stable_genes_transposed_counts.csv:md5,4e4b2100fca4c6d461333edf6e5fd9e7", - "section_2.most_stable_genes_summary.csv:md5,74094f7f58405bcfce2972a1073db7ee", - "section_2.most_stable_genes_transposed_counts.csv:md5,67e877f84141462327383d622cab7b49", - "section_20.most_stable_genes_summary.csv:md5,57068c5336541f1cfa8ae699f098b0b6", - "section_20.most_stable_genes_transposed_counts.csv:md5,5691275bafee54ec2520d82011295495", - "section_3.most_stable_genes_summary.csv:md5,537ce26b668dceffd0c23126fb97cef4", - "section_3.most_stable_genes_transposed_counts.csv:md5,907103b9138b1d27b6a17d321ca59bca", - "section_4.most_stable_genes_summary.csv:md5,cb353777ed864969add3036f4aa664ea", - "section_4.most_stable_genes_transposed_counts.csv:md5,2794b4e29fa21c53604cfc189ce6ecdf", - "section_5.most_stable_genes_summary.csv:md5,667468cdafb70c899dd3f7b7cb603ba6", - "section_5.most_stable_genes_transposed_counts.csv:md5,4d4395309a84a820d6c3169906824657", - "section_6.most_stable_genes_summary.csv:md5,62d2ade9627014c122f22bc1a32776a6", - "section_6.most_stable_genes_transposed_counts.csv:md5,73806b0e960342be7378aface0618229", - "section_7.most_stable_genes_summary.csv:md5,56a27a3d372727d3a0dfdef023f9aad2", - "section_7.most_stable_genes_transposed_counts.csv:md5,2067a0574e51f1fe8bf590addbfd6ea9", - "section_8.most_stable_genes_summary.csv:md5,79c41e03a858dd68a5614b1343938c24", - "section_8.most_stable_genes_transposed_counts.csv:md5,35e02009d4aff77f0fca02711a8ad058", - "section_9.most_stable_genes_summary.csv:md5,0e7776950594471fc8dfb914eed0a17a", - "section_9.most_stable_genes_transposed_counts.csv:md5,e102dcbb3bdcec1bd724adbd772655d1", + "section_1.most_stable_genes_summary.csv:md5,1875d2074dca643a1ffa6f05e6fe322f", + "section_1.most_stable_genes_transposed_counts.csv:md5,f0aa2ebe8060c9588f613cad96719e52", + "section_10.most_stable_genes_summary.csv:md5,0eba91c8cceb89aae830f67d8f815b63", + "section_10.most_stable_genes_transposed_counts.csv:md5,c37f10ace6e600d6da7f38b8f7bb6aab", + "section_11.most_stable_genes_summary.csv:md5,b791fef8fae7ad37f765b82d6184b8f2", + "section_11.most_stable_genes_transposed_counts.csv:md5,d1bbab66c208ad799a63de4aa436f225", + "section_12.most_stable_genes_summary.csv:md5,f5adbe6824eb8df9cd4869ac97022b29", + "section_12.most_stable_genes_transposed_counts.csv:md5,d2ed9bc7016d79a717d215fa63ea09a6", + "section_13.most_stable_genes_summary.csv:md5,86c1287421c650d64d0b6bfea5c24b4f", + "section_13.most_stable_genes_transposed_counts.csv:md5,95ccfb3e5c438b69abe6d801cd769e95", + "section_14.most_stable_genes_summary.csv:md5,5d96c2e2e6b5959b90a20dfb452d22da", + "section_14.most_stable_genes_transposed_counts.csv:md5,e5205e234aaab1798f864c47201a07cd", + "section_15.most_stable_genes_summary.csv:md5,e433c354001b093067e222e4eedfed2d", + "section_15.most_stable_genes_transposed_counts.csv:md5,2c8727aee96e59c4e12848cc30426271", + "section_16.most_stable_genes_summary.csv:md5,a03738fbf51db8e2ecea10724c9c9dfc", + "section_16.most_stable_genes_transposed_counts.csv:md5,dc586fea605dd682246045f22753f357", + "section_17.most_stable_genes_summary.csv:md5,301cd19e3d87d645343824f0dbd7fe41", + "section_17.most_stable_genes_transposed_counts.csv:md5,33da9c08ab89ef93aa12c4fbd59b0bbf", + "section_18.most_stable_genes_summary.csv:md5,07bc8d1d6887949026baf2f56ab8cc3e", + "section_18.most_stable_genes_transposed_counts.csv:md5,103f7fc3d836719599e8fd4347dde840", + "section_19.most_stable_genes_summary.csv:md5,a67a66be4263248aba4c745d1f8bfd7a", + "section_19.most_stable_genes_transposed_counts.csv:md5,cfd43c3c9a6bc1833430bad191912e04", + "section_2.most_stable_genes_summary.csv:md5,f3e9081a79f12aa76d9966b7b816def8", + "section_2.most_stable_genes_transposed_counts.csv:md5,f001d1b66eab6232a5aa3c1252856204", + "section_20.most_stable_genes_summary.csv:md5,3da0fb75961fc73c19f5cbefb656f126", + "section_20.most_stable_genes_transposed_counts.csv:md5,8c1897be3310417adb83b864d3fe7653", + "section_3.most_stable_genes_summary.csv:md5,48620b74e53c44bd37b780797c48d525", + "section_3.most_stable_genes_transposed_counts.csv:md5,fb02ae7c69383dac84611ca88a892795", + "section_4.most_stable_genes_summary.csv:md5,c07113aa994cd77c7d85a95897045cf6", + "section_4.most_stable_genes_transposed_counts.csv:md5,5cfcc0b503c0d716cceed28977eb1a5a", + "section_5.most_stable_genes_summary.csv:md5,6edfa7465269a68b82e7ecdd90933ced", + "section_5.most_stable_genes_transposed_counts.csv:md5,ebac4d228a4138ec7aed06063f1135f0", + "section_6.most_stable_genes_summary.csv:md5,3ceb7ee2ca0e300eca722938a555bc36", + "section_6.most_stable_genes_transposed_counts.csv:md5,154bda2945835afb944997a057986b7b", + "section_7.most_stable_genes_summary.csv:md5,7009d971071a4989df5e65855c675459", + "section_7.most_stable_genes_transposed_counts.csv:md5,ecb2db18fef826caa930f8b9493496b7", + "section_8.most_stable_genes_summary.csv:md5,efe7d6aba9d17bb1f45c4b1447414541", + "section_8.most_stable_genes_transposed_counts.csv:md5,e875b107e29fbde0dfd94b747c57c669", + "section_9.most_stable_genes_summary.csv:md5,c889f1266ad0baba53d542a1fd55c2dd", + "section_9.most_stable_genes_transposed_counts.csv:md5,6cd3306ce043bf45d664d4ecc178bb78", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,67694aeb7cb1bec8e31a604fa5350783", + "all_genes_summary.csv:md5,7a05f123348f6fe44bbccbfa8006141a", "whole_design.csv:md5,f29515bc2c783e593fb9028127342593", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", - "Mus_musculus.GRCm39.115.chr.gff3.gz:md5,66a5d70eeb2ce9685ca871fc7b0f4f96", - "gene_transcript_lengths.csv:md5,09e2d2a8881df9aa96ee71802e9c3451", + "Mus_musculus.GRCm39.116.chr.gff3.gz:md5,8db25f5186d0671a328b41b650af667f", + "gene_transcript_lengths.csv:md5,d6b8d94eb9e7907d601600c9bf58ff7b", "global_gene_id_mapping.csv:md5,78934d2ac5fe7d863f114c5703f57a06", - "global_gene_metadata.csv:md5,bd76860b422e45eca7cd583212a977d2", - "gene_metadata.csv:md5,bd76860b422e45eca7cd583212a977d2", + "global_gene_metadata.csv:md5,3b7a412c544dc438d9ebd2d4e02ad232", + "gene_metadata.csv:md5,3b7a412c544dc438d9ebd2d4e02ad232", "mapped_gene_ids.csv:md5,78934d2ac5fe7d863f114c5703f57a06", "whole_design.csv:md5,f29515bc2c783e593fb9028127342593", "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", - "multiqc_gene_statistics.txt:md5,9285ae2cfc531a0987e3172be0aa6483", - "multiqc_genes_section_1.txt:md5,3d44381703173383e455e59e84c3ecd9", - "multiqc_genes_section_1_1.txt:md5,49f24363739b3b2952ad813b0a1dc7c9", - "multiqc_genes_section_1_10.txt:md5,23eda043b3773d143f42c79943785baa", - "multiqc_genes_section_1_11.txt:md5,f221ca530b336e01b6c5a7f3a74b4262", - "multiqc_genes_section_1_12.txt:md5,df9f14313b281daae80438b134f25326", - "multiqc_genes_section_1_13.txt:md5,186cbc4df4a2d8bb05ff272725ad573e", - "multiqc_genes_section_1_14.txt:md5,efb4bfa55b0981b5b683a5d3bcf4fee3", - "multiqc_genes_section_1_15.txt:md5,cc47d6728943dafbdf0fa65ef0d075d9", - "multiqc_genes_section_1_16.txt:md5,35b7292de1819b89ece3df46081e6db3", - "multiqc_genes_section_1_17.txt:md5,8468a21c35f53afffe1f3f5a49f56aa7", - "multiqc_genes_section_1_18.txt:md5,8f2906665b62c75ab1786214124c02d1", - "multiqc_genes_section_1_19.txt:md5,d879c38bd6016d13a55adf59b4de7d99", - "multiqc_genes_section_1_2.txt:md5,58126f33166e756917d3fca0c66aafa8", - "multiqc_genes_section_1_3.txt:md5,dded6f5abee4f377eb093d6b95b6daa0", - "multiqc_genes_section_1_4.txt:md5,2c9a3ba7a78140a1e01afcc15b35c835", - "multiqc_genes_section_1_5.txt:md5,cddedab71e149bb731d6dee130dbea65", - "multiqc_genes_section_1_6.txt:md5,8c21ab38a3c761b0fefc029812b1cc35", - "multiqc_genes_section_1_7.txt:md5,d5779f1d0e92d80de7dc728e375d57ee", - "multiqc_genes_section_1_8.txt:md5,66e168eafc2bd8be9e9a397d0fc1c4b9", - "multiqc_genes_section_1_9.txt:md5,62a4f655b779f14b751e47f32bf7ccf1", + "multiqc_gene_statistics.txt:md5,af3ea257f6449837b490a4b2ed28ca32", + "multiqc_genes_section_1.txt:md5,98ad704d2d7cdf04da4dd50a2f154ede", + "multiqc_genes_section_1_1.txt:md5,4864390039388103ec51851517996976", + "multiqc_genes_section_1_10.txt:md5,ea599e1b5c33e05c7a0b330f5ab42908", + "multiqc_genes_section_1_11.txt:md5,33887b7c1d9c96e49fd4e74c04fed0f0", + "multiqc_genes_section_1_12.txt:md5,c3cef1394f448939be8daa546a852551", + "multiqc_genes_section_1_13.txt:md5,68d3e235ac209a0e85d6ac0b17767b81", + "multiqc_genes_section_1_14.txt:md5,592d6408eb1349b16fbeb90262556819", + "multiqc_genes_section_1_15.txt:md5,4df1e145fad48d5299e01bf37b3bdc9c", + "multiqc_genes_section_1_16.txt:md5,ba8097cd6cfb2b412bdeef2f3ce74f9b", + "multiqc_genes_section_1_17.txt:md5,dbbac6c02156a5e447b56578f939a66d", + "multiqc_genes_section_1_18.txt:md5,b2a65f123f62eec29e1f1b5ac8dfffae", + "multiqc_genes_section_1_19.txt:md5,4f92a36a536bcd64ffd0b0d5b12eb51b", + "multiqc_genes_section_1_2.txt:md5,c758ea7d7d677088c2b24d6eb1f35f39", + "multiqc_genes_section_1_3.txt:md5,b526025449711a828d78dd8f9b07370d", + "multiqc_genes_section_1_4.txt:md5,1c237f2e3a327ead6999b8beb9cf91c3", + "multiqc_genes_section_1_5.txt:md5,cc24c7bb99373b4b50668cb448388fc3", + "multiqc_genes_section_1_6.txt:md5,332583d3762d95a1d96b620b8bab5e5e", + "multiqc_genes_section_1_7.txt:md5,f3d629bd519a9dccb2c2b4f9d9525aa5", + "multiqc_genes_section_1_8.txt:md5,aa3a641ebffa065777bb35e61c209309", + "multiqc_genes_section_1_9.txt:md5,9e6e41dbfed795908fb4a346454c5694", "multiqc_id_mapping_stats.txt:md5,600e9fa5656a06a3288ea7e6d9fef647", - "multiqc_normalised_expr_distrib_section_1.txt:md5,342306198c5930791d9255b481b6daa8", - "multiqc_normalised_expr_distrib_section_1_1.txt:md5,3a1b52103dd52cceeede5b99f0c18d1c", - "multiqc_normalised_expr_distrib_section_1_10.txt:md5,69d9ea655368e4b61ea3c49dc336ccc3", - "multiqc_normalised_expr_distrib_section_1_11.txt:md5,cf5fcd0fb87409255e88f808993570a8", - "multiqc_normalised_expr_distrib_section_1_12.txt:md5,e0767d376933c8849a08ba998acaee39", - "multiqc_normalised_expr_distrib_section_1_13.txt:md5,76d7fd5652e923ad09000bc80f9aa4ca", - "multiqc_normalised_expr_distrib_section_1_14.txt:md5,ce675ff07c194b1c975879f3288a27e8", - "multiqc_normalised_expr_distrib_section_1_15.txt:md5,5936ef07006c81b688289ec764994932", - "multiqc_normalised_expr_distrib_section_1_16.txt:md5,1a5a56d8661bcc0f986058a90ebb81b0", - "multiqc_normalised_expr_distrib_section_1_17.txt:md5,8c4c83bdcc648b4cbd5876c58d8c30d8", - "multiqc_normalised_expr_distrib_section_1_18.txt:md5,832ad87d6f4689a459e443a032f67f9d", - "multiqc_normalised_expr_distrib_section_1_19.txt:md5,83be81b32d7c48685015c2ede21fb511", - "multiqc_normalised_expr_distrib_section_1_2.txt:md5,f1e22de47e393569f3d193a30bbdc9cd", - "multiqc_normalised_expr_distrib_section_1_3.txt:md5,9e190919da3fc866beb78076ad8c4a33", - "multiqc_normalised_expr_distrib_section_1_4.txt:md5,3712b42a48fa257ad75f2deba10f631d", + "multiqc_normalised_expr_distrib_section_1.txt:md5,89415fc6e1439b74fd7dd3b105a18d82", + "multiqc_normalised_expr_distrib_section_1_1.txt:md5,ebb8be92a4abeffcea92e4e7ca25b7a0", + "multiqc_normalised_expr_distrib_section_1_10.txt:md5,64b2d4ba9046bf47c3c3817930123381", + "multiqc_normalised_expr_distrib_section_1_11.txt:md5,53bf17f93cd37a1c54a06acb5d9104f0", + "multiqc_normalised_expr_distrib_section_1_12.txt:md5,ca1390ebdfcaa9fa8b01c4b90e0295e0", + "multiqc_normalised_expr_distrib_section_1_13.txt:md5,33054b9a198b20d404e28ecaf956a091", + "multiqc_normalised_expr_distrib_section_1_14.txt:md5,11db8dc453c18bcb1fac133ba825f63f", + "multiqc_normalised_expr_distrib_section_1_15.txt:md5,a15013140a4a77850a4453dd19ce5b25", + "multiqc_normalised_expr_distrib_section_1_16.txt:md5,d259e46df12b50d915ab9822d2f8bf3d", + "multiqc_normalised_expr_distrib_section_1_17.txt:md5,043eacbfb4c883c07f29f005a22f5fd7", + "multiqc_normalised_expr_distrib_section_1_18.txt:md5,c5d4cf7f39f5a7aa8075b74ddac2a402", + "multiqc_normalised_expr_distrib_section_1_19.txt:md5,28a16f8e774c618c4aeaac8aed949705", + "multiqc_normalised_expr_distrib_section_1_2.txt:md5,286dcbc6133b3b4fb37033892298ac25", + "multiqc_normalised_expr_distrib_section_1_3.txt:md5,8cffb578d250586067815f9ab8038e69", + "multiqc_normalised_expr_distrib_section_1_4.txt:md5,a3166f54f6da7698c01cf35bc0b0626b", "multiqc_normalised_expr_distrib_section_1_5.txt:md5,d927439c8e03a2e6f2ad18f16a90afff", - "multiqc_normalised_expr_distrib_section_1_6.txt:md5,b2d87c20485c9ffdd0237c4372d9d6e9", - "multiqc_normalised_expr_distrib_section_1_7.txt:md5,d18c331b910ce9702b5a977521c39aa1", - "multiqc_normalised_expr_distrib_section_1_8.txt:md5,1a6c7f079559251385f268beee39c9cb", - "multiqc_normalised_expr_distrib_section_1_9.txt:md5,688908e507b313d477957cb1d7d6e1a2", + "multiqc_normalised_expr_distrib_section_1_6.txt:md5,b9d863f24a52af1ea1b44769c6790893", + "multiqc_normalised_expr_distrib_section_1_7.txt:md5,b55d52062f11ffa588d885c61a313fba", + "multiqc_normalised_expr_distrib_section_1_8.txt:md5,23b0e6eadf37679ac3c55e9c80e0a041", + "multiqc_normalised_expr_distrib_section_1_9.txt:md5,5f3231dc5fb9c1aa1b6fc89136f76a37", "multiqc_null_values_filter.txt:md5,64ca3e3acc613e1b85733fd847712a37", "multiqc_ratio_nulls.txt:md5,7063b06cadcf854671bc9cefb51a6fe3", "multiqc_ratio_zeros.txt:md5,7063b06cadcf854671bc9cefb51a6fe3", @@ -419,18 +419,18 @@ "renaming_warning_reasons.tsv:md5,0a11a59b5b547a39ab7a0e4dac622173" ] ], + "timestamp": "2026-06-10T20:15:14.835851129", "meta": { "nf-test": "0.9.5", - "nextflow": "25.10.4" - }, - "timestamp": "2026-04-05T09:10:44.402386214" + "nextflow": "26.04.3" + } }, "-profile test_skip_id_mapping": { "content": [ [ "errors", "gene_length", - "gene_length/Solanum_tuberosum.SolTub_3.0.62.gff3.gz", + "gene_length/Solanum_tuberosum.SolTub_3.0.63.gff3.gz", "gene_length/gene_transcript_lengths.csv", "idmapping", "idmapping/gene_ids.txt", @@ -467,7 +467,7 @@ "warnings" ], [ - "Solanum_tuberosum.SolTub_3.0.62.gff3.gz:md5,cca99141f43d57d697f6df75de790e05", + "Solanum_tuberosum.SolTub_3.0.63.gff3.gz:md5,2cd34d7db3d162f8fae7bf82d56ff744", "gene_transcript_lengths.csv:md5,217aa7c1e227ce2f78a905138d8e5b39", "gene_ids.txt:md5,831b47f91a0808802967aa0e53a25de9", "whole_design.csv:md5,70d6c2673e619ca52d2774fb3e368382", @@ -479,11 +479,11 @@ "zero_values_filter_stats.csv:md5,ebad5386e7c670ff04887eff67c8faae" ] ], + "timestamp": "2026-06-10T20:53:13.223083446", "meta": { "nf-test": "0.9.5", - "nextflow": "25.10.4" - }, - "timestamp": "2026-04-04T22:10:20.013206958" + "nextflow": "26.04.3" + } }, "-profile test_dataset_custom_mapping_and_gene_length": { "content": [ @@ -534,11 +534,11 @@ "id_mapping_stats.csv:md5,20bd1443c864cb013c97efc760465e9c" ] ], + "timestamp": "2026-03-21T12:53:02.926804675", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-21T12:53:02.926804675" + } }, "-profile test": { "content": [ @@ -617,7 +617,7 @@ "dash_app/src/utils/style.py", "errors", "gene_length", - "gene_length/Prunus_persica.Prunus_persica_NCBIv2.62.chr.gff3.gz", + "gene_length/Prunus_persica.Prunus_persica_NCBIv2.63.chr.gff3.gz", "gene_length/gene_transcript_lengths.csv", "idmapping", "idmapping/global_gene_id_mapping.csv", @@ -728,53 +728,53 @@ "warnings" ], [ - "all_genes_summary.csv:md5,50ab37894673a3ff7e7b9cdf70038616", + "all_genes_summary.csv:md5,d5624bf709334c22a3e5c81bc65617d6", "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", - "section_1.most_stable_genes_summary.csv:md5,574a24ab5764c4084a03a43665efdfeb", - "section_1.most_stable_genes_transposed_counts.csv:md5,f951d9c40133ae0eec2c1592e27c9e01", - "section_10.most_stable_genes_summary.csv:md5,7192f72f608ad9741b213679dc28937c", - "section_10.most_stable_genes_transposed_counts.csv:md5,b8fbfd01d8ba5eba5e4b0f77ae3039e0", - "section_11.most_stable_genes_summary.csv:md5,288d33ee6cb4e5f30a53078c8f0e8a3a", - "section_11.most_stable_genes_transposed_counts.csv:md5,c07f4d994881730e357516b7711085c8", - "section_12.most_stable_genes_summary.csv:md5,63a6e5293e968b73f34fa6fe04ce5a7c", - "section_12.most_stable_genes_transposed_counts.csv:md5,54bf16cc1b84d8c3e6147c347ea19747", - "section_13.most_stable_genes_summary.csv:md5,f5a0871521572851601550dea5b6abb5", - "section_13.most_stable_genes_transposed_counts.csv:md5,5f6857a2334ba3f30f35d3223d9965ac", - "section_14.most_stable_genes_summary.csv:md5,4b5169a450a787855427aef0ec52348e", - "section_14.most_stable_genes_transposed_counts.csv:md5,a33fa8b001d43aed1c4ab77250b3cc7a", - "section_15.most_stable_genes_summary.csv:md5,bf792e95cf332e1c17587b4fbaebdcfb", - "section_15.most_stable_genes_transposed_counts.csv:md5,404bd099df6631b9a6c292edc0ab7ed2", - "section_16.most_stable_genes_summary.csv:md5,280f21317a5993d6e8fce796c63040d5", - "section_16.most_stable_genes_transposed_counts.csv:md5,a88ac2ef0471041f8d4ce3471c591192", - "section_17.most_stable_genes_summary.csv:md5,8a971c43f72f9d19124920fc39e68d46", - "section_17.most_stable_genes_transposed_counts.csv:md5,38b0d132084d5aa1f32b02a9448f66c3", - "section_18.most_stable_genes_summary.csv:md5,9481961b11d8386ea013d4fbbcab9ce9", + "section_1.most_stable_genes_summary.csv:md5,e604d30bdf8713182366544ccc18000e", + "section_1.most_stable_genes_transposed_counts.csv:md5,e96d0b9352df7050eaca1cbf03453ad5", + "section_10.most_stable_genes_summary.csv:md5,fd93a8e6016b8b661fec411ec57d9c6a", + "section_10.most_stable_genes_transposed_counts.csv:md5,2a14b91edad838a8e41c87ac4b5ba9c2", + "section_11.most_stable_genes_summary.csv:md5,35e1f8aaacbaa9d1cea7ff2856e19420", + "section_11.most_stable_genes_transposed_counts.csv:md5,7a72b5afb53f9254984a79d27fb1addb", + "section_12.most_stable_genes_summary.csv:md5,ae77af1e0b76cdf253e8be3d498a6731", + "section_12.most_stable_genes_transposed_counts.csv:md5,552dfbfd725b0daa4c80b9ca56deca88", + "section_13.most_stable_genes_summary.csv:md5,1b34eaed54b4d1ed7d87f73189d53bd7", + "section_13.most_stable_genes_transposed_counts.csv:md5,c48afdbc524aba28ade9f4302eae5a79", + "section_14.most_stable_genes_summary.csv:md5,2fdf1e8288e42f5658e3bbb342833a13", + "section_14.most_stable_genes_transposed_counts.csv:md5,0efa64fe7ceaa6a2f48855b838c69cb5", + "section_15.most_stable_genes_summary.csv:md5,be7632ac54e53296e03f55c621519181", + "section_15.most_stable_genes_transposed_counts.csv:md5,f95ef7a986e0608e0ad2d04841eda938", + "section_16.most_stable_genes_summary.csv:md5,77a012e88f1e37a00911bda93ae775cd", + "section_16.most_stable_genes_transposed_counts.csv:md5,2a88d1b989aa4613f79c5ab6d9ffed86", + "section_17.most_stable_genes_summary.csv:md5,81cdac028b5dcd67ce9d27e4fb44c0dc", + "section_17.most_stable_genes_transposed_counts.csv:md5,9ee009023853786771765f802e95f818", + "section_18.most_stable_genes_summary.csv:md5,af5ac149647a38b76e54c67319b9649b", "section_18.most_stable_genes_transposed_counts.csv:md5,b08d66dbe529a0038a09cd6c435a604c", "section_19.most_stable_genes_summary.csv:md5,d6ebc49aba6db637c09e973b7e2a1cd4", "section_19.most_stable_genes_transposed_counts.csv:md5,3e13b4a9e1564e1b23106f7b5b6588ae", - "section_2.most_stable_genes_summary.csv:md5,4fa8e287cb65fcc13a18995973a44d1e", - "section_2.most_stable_genes_transposed_counts.csv:md5,3bce723d7b67560b14352acef626775e", + "section_2.most_stable_genes_summary.csv:md5,f8519a4595a7f15ae45f8fb366b61e99", + "section_2.most_stable_genes_transposed_counts.csv:md5,b4088c96790b85f2b95d99f10083f7b6", "section_20.most_stable_genes_summary.csv:md5,41b8421059ca95352617184211753e86", "section_20.most_stable_genes_transposed_counts.csv:md5,f3715dd47e78d261c38339135703cf12", - "section_3.most_stable_genes_summary.csv:md5,42b235930a27a23e803667fdde064488", - "section_3.most_stable_genes_transposed_counts.csv:md5,df41c6dbece0d4885440ec392ffa261d", - "section_4.most_stable_genes_summary.csv:md5,21360b4a811c29224f2d79a7cdb42059", - "section_4.most_stable_genes_transposed_counts.csv:md5,e49241be359433067b5fc3c747e57030", - "section_5.most_stable_genes_summary.csv:md5,393bb0c32166eb09857e8e4d78c53cea", - "section_5.most_stable_genes_transposed_counts.csv:md5,fd09fa61f02c8721d09cd11dacf7ffe4", - "section_6.most_stable_genes_summary.csv:md5,34b575768b6d23a7154c021be5062a99", - "section_6.most_stable_genes_transposed_counts.csv:md5,c5773c2ff340782d1a3acdfc50a133d3", - "section_7.most_stable_genes_summary.csv:md5,414dd8b188f9dd88acc5b53964a10c6b", - "section_7.most_stable_genes_transposed_counts.csv:md5,2b1460cc2c6cd34a1637754fd17d7eec", - "section_8.most_stable_genes_summary.csv:md5,f8835325014d5adc54e3b794edfb4771", - "section_8.most_stable_genes_transposed_counts.csv:md5,7deab925d9006a6f9df005476520f4b7", - "section_9.most_stable_genes_summary.csv:md5,93cdb58ce05f2acc7732f272405a3937", - "section_9.most_stable_genes_transposed_counts.csv:md5,f2e698d07a70f870c06bab83786ab04c", + "section_3.most_stable_genes_summary.csv:md5,e35a7c5b9bb4ca1da415706f54426980", + "section_3.most_stable_genes_transposed_counts.csv:md5,33b5e74a890b2816a212282103e6eb9f", + "section_4.most_stable_genes_summary.csv:md5,c8bbd11b38f45118287e36b90f02ec72", + "section_4.most_stable_genes_transposed_counts.csv:md5,d2f7c58e9f8411123fd00e11737b90e0", + "section_5.most_stable_genes_summary.csv:md5,9cbc2fd2b0fcc74411e164da330814d2", + "section_5.most_stable_genes_transposed_counts.csv:md5,877aefb00c4102c2948e49e4c2bb7604", + "section_6.most_stable_genes_summary.csv:md5,2fca0a63f47f32f298c889266387c739", + "section_6.most_stable_genes_transposed_counts.csv:md5,3bc07946c07cda995210b5c865f36607", + "section_7.most_stable_genes_summary.csv:md5,4ff0d5a49986a8777045f9f37973c5d2", + "section_7.most_stable_genes_transposed_counts.csv:md5,97d77b38e839c45dfc2a38001ebde008", + "section_8.most_stable_genes_summary.csv:md5,5c38cd095f552543ea2ef5bd4740a938", + "section_8.most_stable_genes_transposed_counts.csv:md5,cc798e77c90bdfe28ac9f7dd12ba73f5", + "section_9.most_stable_genes_summary.csv:md5,0892240881815f7bd44c6961c9e918e2", + "section_9.most_stable_genes_transposed_counts.csv:md5,ec3417f9ff4db1ce52950623340390b3", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,50ab37894673a3ff7e7b9cdf70038616", + "all_genes_summary.csv:md5,d5624bf709334c22a3e5c81bc65617d6", "whole_design.csv:md5,e6b2a08b65fa02b470829a652593e161", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", - "Prunus_persica.Prunus_persica_NCBIv2.62.chr.gff3.gz:md5,a333b20996b221f18e1c25aebd1c89f1", + "Prunus_persica.Prunus_persica_NCBIv2.63.chr.gff3.gz:md5,b6503b872c8f9f6ee573f9910450a12b", "gene_transcript_lengths.csv:md5,e9376e922e381f3b52fd0cfa4ba95605", "global_gene_id_mapping.csv:md5,dddb3e3dfbd118a6152837df2160b3a8", "global_gene_metadata.csv:md5,8a93b691384b34e7d2cc30781532f952", @@ -784,48 +784,48 @@ "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", "multiqc_eatlas_all_experiments_metadata.txt:md5,e3c379628a87ad8b3f1e5cfe7310fcb0", "multiqc_eatlas_selected_experiments_metadata.txt:md5,e3c379628a87ad8b3f1e5cfe7310fcb0", - "multiqc_gene_statistics.txt:md5,5acdc3e3c5ee949585746122042e3a95", - "multiqc_genes_section_1.txt:md5,3c48edce816118087fad975c3b2e150e", - "multiqc_genes_section_1_1.txt:md5,60962ac96142f6d818e6e552e49acfbf", - "multiqc_genes_section_1_10.txt:md5,8b5656d0384954be77d68b52b352c274", - "multiqc_genes_section_1_11.txt:md5,291d6d3087e97955aed29c49c8212ead", - "multiqc_genes_section_1_12.txt:md5,91698e69c64018fd72957c490f7ff3ff", - "multiqc_genes_section_1_13.txt:md5,9871fd84ac2bad8f740ce5aa42097db4", - "multiqc_genes_section_1_14.txt:md5,4ecd956786bd45a8412c72421b0ba071", - "multiqc_genes_section_1_15.txt:md5,7c84424999bcbb32f93898dcbdcfc2c3", - "multiqc_genes_section_1_16.txt:md5,bfc047dce5c21deca584138e89c6c993", - "multiqc_genes_section_1_17.txt:md5,167a36544d5cd92e9a178e92b91b2f42", + "multiqc_gene_statistics.txt:md5,60e0a77b6edf55ebbcc4eca43ab536b1", + "multiqc_genes_section_1.txt:md5,ec91374cb52d2b85c9f784a02dc9d895", + "multiqc_genes_section_1_1.txt:md5,61e181003037c67bb54cc326eb4b4703", + "multiqc_genes_section_1_10.txt:md5,ece61a930b40ba5fb5bb7e07903cbb29", + "multiqc_genes_section_1_11.txt:md5,4e159fa8b3e3c9b56143305a470fe2c0", + "multiqc_genes_section_1_12.txt:md5,64affb5e596cae4e968252861a82feb5", + "multiqc_genes_section_1_13.txt:md5,8ad30b8b22f9b574296e32e9ff1dfdd1", + "multiqc_genes_section_1_14.txt:md5,b5a2aff38ca935dabe9f39d19f2cf555", + "multiqc_genes_section_1_15.txt:md5,86e9e33ed5ff6c00984a05d24ecb7535", + "multiqc_genes_section_1_16.txt:md5,135633f886bbd0392c446494abe77cdc", + "multiqc_genes_section_1_17.txt:md5,ee5628ca58bd2e73d2c3a2e7f9600be0", "multiqc_genes_section_1_18.txt:md5,f41528e9d8a43b4184ab64d2f17bb52a", "multiqc_genes_section_1_19.txt:md5,2b8ae5d9a6f2562a29e153325c0813ae", - "multiqc_genes_section_1_2.txt:md5,6d5d700f547ed93498b75ca9d7e3a8b6", - "multiqc_genes_section_1_3.txt:md5,9d9d88b1065e6b7337b14683d08e6247", - "multiqc_genes_section_1_4.txt:md5,0aa0e21163e065cef0d5cdc437f23fbd", - "multiqc_genes_section_1_5.txt:md5,06b5f26e442498b658106df4239a2bf9", - "multiqc_genes_section_1_6.txt:md5,04be4ff16ce543c2bf6b40f4686fb46b", - "multiqc_genes_section_1_7.txt:md5,6a88f35e493baf1409ea9590f4f33e8e", - "multiqc_genes_section_1_8.txt:md5,fc195cb44c051684ac8a04bc42f1d563", - "multiqc_genes_section_1_9.txt:md5,fbfe2930503e42809f25fa1d8022d554", + "multiqc_genes_section_1_2.txt:md5,68d8d0a8d1910eef01013a5480ee13f7", + "multiqc_genes_section_1_3.txt:md5,146057fb0f8adad37b62809638af9dc4", + "multiqc_genes_section_1_4.txt:md5,1dd21a76223f205fc6b085e149f02dbb", + "multiqc_genes_section_1_5.txt:md5,9624fd9d6921bfed4e66408dd1cfbd9e", + "multiqc_genes_section_1_6.txt:md5,891edc03c3aa134548dfa9779af137a2", + "multiqc_genes_section_1_7.txt:md5,2320b884fcc25a65e666080f13693ccc", + "multiqc_genes_section_1_8.txt:md5,89bd59ff0c011a9545a08d4cd205ae2c", + "multiqc_genes_section_1_9.txt:md5,2d77a81bed67c085750cc603e95baa98", "multiqc_id_mapping_stats.txt:md5,eebd614817761551497a4210022da830", - "multiqc_normalised_expr_distrib_section_1.txt:md5,643038ea4a668569e988bd0aac4a53e0", - "multiqc_normalised_expr_distrib_section_1_1.txt:md5,e78c321fe74010ffc43e1a24699c63c5", - "multiqc_normalised_expr_distrib_section_1_10.txt:md5,c6362429c6f181bb42c874a7a01f9704", - "multiqc_normalised_expr_distrib_section_1_11.txt:md5,adda3b5049d3444aace2ce78381d7df0", - "multiqc_normalised_expr_distrib_section_1_12.txt:md5,71d7deda66c9084a5f28e27061d66f58", - "multiqc_normalised_expr_distrib_section_1_13.txt:md5,0517c3cd42512d6d6d9da151cafd5ef9", - "multiqc_normalised_expr_distrib_section_1_14.txt:md5,6ddb07bfcb9c80045847b9f392cc49e5", - "multiqc_normalised_expr_distrib_section_1_15.txt:md5,17dce6dc28fab7606a9664249575a9a8", - "multiqc_normalised_expr_distrib_section_1_16.txt:md5,289b63cd2b4ed35780597b3db595a506", + "multiqc_normalised_expr_distrib_section_1.txt:md5,8bdaffc580faa0a1b122f8a0c826a4b9", + "multiqc_normalised_expr_distrib_section_1_1.txt:md5,f5e48c930106878cc29ecc0528661a9f", + "multiqc_normalised_expr_distrib_section_1_10.txt:md5,a403cea246ad313b02d81e9a4687abd4", + "multiqc_normalised_expr_distrib_section_1_11.txt:md5,3369257ccaa49e80d15c80be4a263f16", + "multiqc_normalised_expr_distrib_section_1_12.txt:md5,b39a6fffb076d41612852e5921150023", + "multiqc_normalised_expr_distrib_section_1_13.txt:md5,53dcbc4bd9276d29b2ceaf77eae25950", + "multiqc_normalised_expr_distrib_section_1_14.txt:md5,958b9b3fedcb53e36bcc4949680c9564", + "multiqc_normalised_expr_distrib_section_1_15.txt:md5,936e98045097e24135a4f1d32261ea9c", + "multiqc_normalised_expr_distrib_section_1_16.txt:md5,9e045e770e6e548dcdcae9ef4d28679e", "multiqc_normalised_expr_distrib_section_1_17.txt:md5,02bdf8ead4c248f5fcb0f80837d01140", "multiqc_normalised_expr_distrib_section_1_18.txt:md5,2f8835d4cf0ecc6cdff09368f511aceb", "multiqc_normalised_expr_distrib_section_1_19.txt:md5,d3ca94b2b22de241043d0dc8427cd916", - "multiqc_normalised_expr_distrib_section_1_2.txt:md5,c67b04d423c08f50abb7aded61e3fee8", - "multiqc_normalised_expr_distrib_section_1_3.txt:md5,bf5750a74ede44bebb3820bab622a932", - "multiqc_normalised_expr_distrib_section_1_4.txt:md5,6223117ebef835bd7f17e5a39015f97e", - "multiqc_normalised_expr_distrib_section_1_5.txt:md5,ab5ef1ab638a16b554baa16711f2fee4", - "multiqc_normalised_expr_distrib_section_1_6.txt:md5,42231476381c9522d4abef2219b3a376", - "multiqc_normalised_expr_distrib_section_1_7.txt:md5,c8cf57807b257529733df840084fab80", - "multiqc_normalised_expr_distrib_section_1_8.txt:md5,2291b32d9fc682a4bd8f7e74f181304f", - "multiqc_normalised_expr_distrib_section_1_9.txt:md5,88f2fd190de04ea355afdedd03184068", + "multiqc_normalised_expr_distrib_section_1_2.txt:md5,b6ac24eedda0bb76cf432914ad44b363", + "multiqc_normalised_expr_distrib_section_1_3.txt:md5,49ca3c92088a2f17ebc92cce9e9f5429", + "multiqc_normalised_expr_distrib_section_1_4.txt:md5,2fefecb5f0da97000b31587380c14bd6", + "multiqc_normalised_expr_distrib_section_1_5.txt:md5,82d0cf537a84f6bfbe55a0380e7c2450", + "multiqc_normalised_expr_distrib_section_1_6.txt:md5,3da0ee76edb1869ad52d3fa215f55ec0", + "multiqc_normalised_expr_distrib_section_1_7.txt:md5,03833c145b92da7fee4e437b66b974d9", + "multiqc_normalised_expr_distrib_section_1_8.txt:md5,dcb0a0940dfd3cff35ee861db117c2ba", + "multiqc_normalised_expr_distrib_section_1_9.txt:md5,80ebf9f7dbeb0234d99f3943be2760b3", "multiqc_null_values_filter.txt:md5,9f39dde761d2be72b989b3da51d9b768", "multiqc_ratio_nulls.txt:md5,fd9acca0d6995183d30b6ef2489a596e", "multiqc_ratio_zeros.txt:md5,7de1385d524ab670ffa9ddaf4cb8735b", @@ -844,11 +844,11 @@ "zero_values_filter_stats.csv:md5,a6fdf3c5250dc46a43f79a9ec5a1355d" ] ], + "timestamp": "2026-06-10T20:09:19.125984906", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" - }, - "timestamp": "2026-04-16T11:45:04.163764784" + "nf-test": "0.9.5", + "nextflow": "26.04.3" + } }, "-profile test_accessions_only": { "content": [ @@ -894,11 +894,11 @@ "species_experiments.metadata.tsv:md5,2af519969d9c77cc74d92723ee171c48" ] ], + "timestamp": "2026-04-16T11:58:55.484363676", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-16T11:58:55.484363676" + } }, "-profile test_one_accession_low_gene_count": { "content": [ @@ -1111,7 +1111,7 @@ "dash_app/src/utils/style.py", "errors", "gene_length", - "gene_length/Arabidopsis_thaliana.TAIR10.62.gff3.gz", + "gene_length/Arabidopsis_thaliana.TAIR10.63.gff3.gz", "gene_length/gene_transcript_lengths.csv", "idmapping", "idmapping/global_gene_id_mapping.csv", @@ -1216,13 +1216,13 @@ "warnings" ], [ - "all_genes_summary.csv:md5,643bb1aa5f128bad6f192bd2aeaa2ee6", + "all_genes_summary.csv:md5,c0bc9c5291ae1bf09b9aa48494c94896", "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", - "section_1.most_stable_genes_summary.csv:md5,911c1c687cdc308f5aecaef42d504a89", - "section_1.most_stable_genes_transposed_counts.csv:md5,849135e7f42258dd2975d74f136d23aa", - "section_10.most_stable_genes_summary.csv:md5,131be639b26c51537ec05d67258a2820", - "section_10.most_stable_genes_transposed_counts.csv:md5,aa8748ba5cab4cb2387a616326d82023", - "section_11.most_stable_genes_summary.csv:md5,6e363a28b0762735cdf575f6aec3fb54", + "section_1.most_stable_genes_summary.csv:md5,38688ecb98f03c9b0be25828bdcc45c1", + "section_1.most_stable_genes_transposed_counts.csv:md5,20f06de606f552389a4a44bce3c8e4ff", + "section_10.most_stable_genes_summary.csv:md5,cbb8b7793be6b3742e1436c3ccc187fd", + "section_10.most_stable_genes_transposed_counts.csv:md5,e2acad1bb821b6b3aa17293248d9dadd", + "section_11.most_stable_genes_summary.csv:md5,de89f2d123f3ea6238b47b528f1b2722", "section_11.most_stable_genes_transposed_counts.csv:md5,705e2b4becb685f21490948f648cee0a", "section_12.most_stable_genes_summary.csv:md5,6e49cbc5af4a45fcd62f9a9c9d1c82ad", "section_12.most_stable_genes_transposed_counts.csv:md5,a757cf115a30079e4dea9ebe44e587d5", @@ -1240,29 +1240,29 @@ "section_18.most_stable_genes_transposed_counts.csv:md5,2f633511784b3babc159c4ecfed76fa2", "section_19.most_stable_genes_summary.csv:md5,b32ed5d4a50671ac38a4a616dc81b2b9", "section_19.most_stable_genes_transposed_counts.csv:md5,b507a8bbe8e2d3852e7952e932917751", - "section_2.most_stable_genes_summary.csv:md5,439d0e60a30d7232508e695a210053c5", - "section_2.most_stable_genes_transposed_counts.csv:md5,a1803a9577616d7a098ad1567817cb20", + "section_2.most_stable_genes_summary.csv:md5,bceec4ac92ed4844be087bb1100d6010", + "section_2.most_stable_genes_transposed_counts.csv:md5,2e96c423eb31bf1af3f2bf36b0e85a25", "section_20.most_stable_genes_summary.csv:md5,0d82b5d34b415947bdda4d016fa52f71", "section_20.most_stable_genes_transposed_counts.csv:md5,3a1ae07c51acb0a1672e210a8a137121", - "section_3.most_stable_genes_summary.csv:md5,1ade5c406fe691b48a7f6b56b4778971", - "section_3.most_stable_genes_transposed_counts.csv:md5,71d9e444731c709189ed569ada9be4c1", - "section_4.most_stable_genes_summary.csv:md5,aa1216a538b2723ac246fd336b8a3fcb", - "section_4.most_stable_genes_transposed_counts.csv:md5,8bd766e3232e4f7591cba721cbf305dc", - "section_5.most_stable_genes_summary.csv:md5,84e099dbe057240baa5542e035214362", - "section_5.most_stable_genes_transposed_counts.csv:md5,180382fc6c81bc94032fb592425d1596", - "section_6.most_stable_genes_summary.csv:md5,e455df268552dbede82debdaff7f2bb5", - "section_6.most_stable_genes_transposed_counts.csv:md5,da8bc59c611f88c51b047f6ccb50d08b", - "section_7.most_stable_genes_summary.csv:md5,ef6db8ade4ffd92d0ef872b8e4c88417", - "section_7.most_stable_genes_transposed_counts.csv:md5,b1d1db3949dd5a07ea45baf10c184d05", - "section_8.most_stable_genes_summary.csv:md5,911c809c86111dc0597a953cbfa26d62", - "section_8.most_stable_genes_transposed_counts.csv:md5,337a0e231598d45291a6a42a25c585b1", - "section_9.most_stable_genes_summary.csv:md5,cfaafcd65fffaed8169835cfc0992430", - "section_9.most_stable_genes_transposed_counts.csv:md5,cdb7220619e76d11963f1f1b08101e42", + "section_3.most_stable_genes_summary.csv:md5,7421c22fd4343e95ba549dca21934753", + "section_3.most_stable_genes_transposed_counts.csv:md5,774433a6c1281d7011f0e9e7b11295b2", + "section_4.most_stable_genes_summary.csv:md5,6b7cb8291079453114aa1a42d25bdcc0", + "section_4.most_stable_genes_transposed_counts.csv:md5,d42732b4a961fcadaacf35d76df0ceb7", + "section_5.most_stable_genes_summary.csv:md5,9cd36d1b86d4378e87f43aec9241b5d3", + "section_5.most_stable_genes_transposed_counts.csv:md5,ac653c2f2fe4576c2ec06e3272f2bfa8", + "section_6.most_stable_genes_summary.csv:md5,599623b9b2e05396928bd93e7b23576f", + "section_6.most_stable_genes_transposed_counts.csv:md5,c8f33c5e870dcfd23f8872fec81080c3", + "section_7.most_stable_genes_summary.csv:md5,7a072dec898986397b7a5233e9c5be90", + "section_7.most_stable_genes_transposed_counts.csv:md5,e246bbb1441e1978839b2574e607b378", + "section_8.most_stable_genes_summary.csv:md5,ecbd4eacebf8a950d142300f51430644", + "section_8.most_stable_genes_transposed_counts.csv:md5,938c0a2ec6a484870b3a468af71006e0", + "section_9.most_stable_genes_summary.csv:md5,d6a13dd430fc508ca0226798d1977c17", + "section_9.most_stable_genes_transposed_counts.csv:md5,750a2e252a0b31de32ade9c7daa0f2cc", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,643bb1aa5f128bad6f192bd2aeaa2ee6", + "all_genes_summary.csv:md5,c0bc9c5291ae1bf09b9aa48494c94896", "whole_design.csv:md5,d3aa542c4ad07d0051a84482fe6cd81c", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", - "Arabidopsis_thaliana.TAIR10.62.gff3.gz:md5,b02566c301d47461db70747b3adaa6ce", + "Arabidopsis_thaliana.TAIR10.63.gff3.gz:md5,ee02d70eb655f0440af19a3f3f40b15c", "gene_transcript_lengths.csv:md5,06b4612031f4f300a6d67f36e7625492", "global_gene_id_mapping.csv:md5,42491ef436cce231258c0358e1af5745", "global_gene_metadata.csv:md5,b35e20500269d4e6787ef1a3468f16bc", @@ -1270,10 +1270,10 @@ "mapped_gene_ids.csv:md5,42491ef436cce231258c0358e1af5745", "whole_design.csv:md5,d3aa542c4ad07d0051a84482fe6cd81c", "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", - "multiqc_gene_statistics.txt:md5,53fe105326f1a097d3437731eb4e3a8d", - "multiqc_genes_section_1.txt:md5,cb79085a6608e6dfd5a96291dcea850b", - "multiqc_genes_section_1_1.txt:md5,7308dd2805d9b530457a1eb839e1b455", - "multiqc_genes_section_1_10.txt:md5,91e61a6a01bdf35096fb02f79476dd58", + "multiqc_gene_statistics.txt:md5,939507106bc44c3fe2fd2e29ed9c610a", + "multiqc_genes_section_1.txt:md5,0d95391e54df056de6d40079391b3fe4", + "multiqc_genes_section_1_1.txt:md5,d56c5246b4704de5852e3ac23b8bda9a", + "multiqc_genes_section_1_10.txt:md5,fd0b9aec3f3c3e55ce579293109434b7", "multiqc_genes_section_1_11.txt:md5,f0b8df84a99b2d5ef557ee8896217095", "multiqc_genes_section_1_12.txt:md5,89e8c3dcd3d970735de56ed6dd618caf", "multiqc_genes_section_1_13.txt:md5,b7b1b4265c236ba1c8ed7358e34a6dd6", @@ -1283,17 +1283,17 @@ "multiqc_genes_section_1_17.txt:md5,920067a6137cbded388b393f4a84d0bf", "multiqc_genes_section_1_18.txt:md5,e46e3add55d144e8dc04087498b73b65", "multiqc_genes_section_1_19.txt:md5,72e10039958b0d2667136688b35411cf", - "multiqc_genes_section_1_2.txt:md5,210eff8a16470b70dd186c52aa218512", - "multiqc_genes_section_1_3.txt:md5,15f3d0a57e714b176361689eece78b90", - "multiqc_genes_section_1_4.txt:md5,36cb183f89030a540dc51f83fe0073c4", - "multiqc_genes_section_1_5.txt:md5,6bd50c3d3040facf83fb70d3aad70caf", - "multiqc_genes_section_1_6.txt:md5,420fee370865219de09913c9eb827a49", - "multiqc_genes_section_1_7.txt:md5,fb4c14faf2e007704f1fcb21949deb2d", - "multiqc_genes_section_1_8.txt:md5,df2f893d352fc6992f8d95e18f30a1e4", - "multiqc_genes_section_1_9.txt:md5,75c27fc9730c4346074c667cc8d1c885", + "multiqc_genes_section_1_2.txt:md5,cbdbff5fe9d0bf77fd1f09198a356b6e", + "multiqc_genes_section_1_3.txt:md5,ec60c449d8378b5c60aad683f9d9eca5", + "multiqc_genes_section_1_4.txt:md5,9ab5db00a0b47a9bae4afe750a384040", + "multiqc_genes_section_1_5.txt:md5,35ab04ba4f31fc692b80835218fecfed", + "multiqc_genes_section_1_6.txt:md5,e5a4c446ad7d7c4008845e8d458f9749", + "multiqc_genes_section_1_7.txt:md5,d84ae037fc399f432ee39e078d0ccf9f", + "multiqc_genes_section_1_8.txt:md5,cb07a3dc033d0f064a91e48623fe8c9c", + "multiqc_genes_section_1_9.txt:md5,33cc88168ebf116fae87a702f7318006", "multiqc_id_mapping_stats.txt:md5,49023d9842e01da40e2c50e9659802d5", - "multiqc_normalised_expr_distrib_section_1.txt:md5,9e50c1075664481653bb278323672633", - "multiqc_normalised_expr_distrib_section_1_1.txt:md5,a1fa5d657a142abbf49fb95bf266d906", + "multiqc_normalised_expr_distrib_section_1.txt:md5,ceb1e5505f1890c1661bc596c647f5ca", + "multiqc_normalised_expr_distrib_section_1_1.txt:md5,dddc7221434003069dc1f5b261771ee5", "multiqc_normalised_expr_distrib_section_1_10.txt:md5,f89a15a3af0047f9bd0f5d01ca9ccb33", "multiqc_normalised_expr_distrib_section_1_11.txt:md5,fead0770f22c316593d6d2353d94e9f7", "multiqc_normalised_expr_distrib_section_1_12.txt:md5,8cacaee9d1bedf3ec8a4d66f3bab1f7f", @@ -1304,14 +1304,14 @@ "multiqc_normalised_expr_distrib_section_1_17.txt:md5,c86c0cf8c3e4eab7a61979f622f126d7", "multiqc_normalised_expr_distrib_section_1_18.txt:md5,17554bf8a45621ecdedefe2a9b79835e", "multiqc_normalised_expr_distrib_section_1_19.txt:md5,28b90411fa811ba678f237e9ee6f20a2", - "multiqc_normalised_expr_distrib_section_1_2.txt:md5,b3876970c55302cb37f1bd8f8ca620ee", - "multiqc_normalised_expr_distrib_section_1_3.txt:md5,2ead25fe7da0f48beca784882fabb1a6", - "multiqc_normalised_expr_distrib_section_1_4.txt:md5,68245ac492b42288c310612a5e88cbe4", - "multiqc_normalised_expr_distrib_section_1_5.txt:md5,ac5f414686facdfc71016982d3824875", - "multiqc_normalised_expr_distrib_section_1_6.txt:md5,88d20ad256f42e564daf79ca8c13a1a2", - "multiqc_normalised_expr_distrib_section_1_7.txt:md5,4cb4700660dd2613194c7b62324d019b", - "multiqc_normalised_expr_distrib_section_1_8.txt:md5,43eb422269b358c59e2d31f9602b24b3", - "multiqc_normalised_expr_distrib_section_1_9.txt:md5,d444233cf608c17cfdc7cc8ebf2c2fe9", + "multiqc_normalised_expr_distrib_section_1_2.txt:md5,a5de085be1fc18182465068dade27e7d", + "multiqc_normalised_expr_distrib_section_1_3.txt:md5,f8cc673495837035789260f274146ddd", + "multiqc_normalised_expr_distrib_section_1_4.txt:md5,43a2f30491e4215387c369a1e4db9b99", + "multiqc_normalised_expr_distrib_section_1_5.txt:md5,ca13c9e4388290456c92df986fc6f1a1", + "multiqc_normalised_expr_distrib_section_1_6.txt:md5,1d35f7a55e03abcd684ea3b9f1557a31", + "multiqc_normalised_expr_distrib_section_1_7.txt:md5,fe36ab4ab11c35fbd94fe75d7791ae93", + "multiqc_normalised_expr_distrib_section_1_8.txt:md5,56d92dc7ec7576e378deff07e98a5111", + "multiqc_normalised_expr_distrib_section_1_9.txt:md5,72d4fa17e2ea16cb77297995fa4a1008", "multiqc_null_values_filter.txt:md5,91eb32460cdebb4e08ae0b1ee559cf59", "multiqc_ratio_nulls.txt:md5,bcf9aa423c404f2e7f8ea84735810959", "multiqc_ratio_zeros.txt:md5,c743a773da2858b59923eff1873c26d0", @@ -1327,11 +1327,11 @@ "zero_values_filter_stats.csv:md5,766d888e41179e8a785f634b3b606bc9" ] ], + "timestamp": "2026-06-10T20:51:17.884124517", "meta": { "nf-test": "0.9.5", - "nextflow": "25.10.4" - }, - "timestamp": "2026-04-05T09:30:42.794565916" + "nextflow": "26.04.3" + } }, "-profile test_public_and_dataset": { "content": [ @@ -1410,7 +1410,7 @@ "dash_app/src/utils/style.py", "errors", "gene_length", - "gene_length/Beta_vulgaris.RefBeet-1.2.2.62.gff3.gz", + "gene_length/Beta_vulgaris.RefBeet-1.2.2.63.gff3.gz", "gene_length/gene_transcript_lengths.csv", "idmapping", "idmapping/global_gene_id_mapping.csv", @@ -1522,53 +1522,53 @@ "warnings" ], [ - "all_genes_summary.csv:md5,e3f8d59accf267c351d0a995ffc9ebf5", + "all_genes_summary.csv:md5,a8e6d99f3d9579cc4dab79a235d4c23c", "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", - "section_1.most_stable_genes_summary.csv:md5,be640cd7efc6a7ac3df989b9ab9a6448", - "section_1.most_stable_genes_transposed_counts.csv:md5,8363bc69b84c68fe4ecea13b6dc70d98", - "section_10.most_stable_genes_summary.csv:md5,41c3ba1e338277e40e03c9b043059cb0", - "section_10.most_stable_genes_transposed_counts.csv:md5,4a599908cea31077650911161a4fd155", - "section_11.most_stable_genes_summary.csv:md5,136e636de09496412dc76ef7fb10c47b", - "section_11.most_stable_genes_transposed_counts.csv:md5,9aeb482d2ff0cbfaa8d29a5af4357701", - "section_12.most_stable_genes_summary.csv:md5,c27fb0df29ac4fb3bea8df3fbb6ef2b1", - "section_12.most_stable_genes_transposed_counts.csv:md5,edbe661b7c150c1a8af01c3c52ea45f7", - "section_13.most_stable_genes_summary.csv:md5,0395eed958d9571fae34ae29b8fe643e", - "section_13.most_stable_genes_transposed_counts.csv:md5,3ece34d50b412abddbce5da5c05f10de", - "section_14.most_stable_genes_summary.csv:md5,8677aa89331f67690330becf078260e3", - "section_14.most_stable_genes_transposed_counts.csv:md5,15840cc29d8d27881b59f19804134f97", - "section_15.most_stable_genes_summary.csv:md5,182e3a6e3a855340c50b5d2705b84142", - "section_15.most_stable_genes_transposed_counts.csv:md5,8a4c0d3018f3ed87305b4cafa8d3a7ae", - "section_16.most_stable_genes_summary.csv:md5,6c41bed8aea0f1cfa973ae7dfc93a148", - "section_16.most_stable_genes_transposed_counts.csv:md5,e3196137992a40340e20cb46ebd5cbdd", - "section_17.most_stable_genes_summary.csv:md5,f4aaec1b2af2e89bf26c156b907097e8", - "section_17.most_stable_genes_transposed_counts.csv:md5,af06eab6bc04fc315544fcd0176da4cd", + "section_1.most_stable_genes_summary.csv:md5,693f381232e9e4deceb411443a86f17d", + "section_1.most_stable_genes_transposed_counts.csv:md5,d23170ac1505db73a05c94b541b19d76", + "section_10.most_stable_genes_summary.csv:md5,8b37cd237c6d7d53bc344cc03929c131", + "section_10.most_stable_genes_transposed_counts.csv:md5,0e38a3d8ef82160f75d88c07c90f675f", + "section_11.most_stable_genes_summary.csv:md5,ea11810a179fa2047a75705abaec1e51", + "section_11.most_stable_genes_transposed_counts.csv:md5,0c3c54a830ab82ea9bf3513cd0911e21", + "section_12.most_stable_genes_summary.csv:md5,e61aa6f132dbb4d70ea87e8560ac6bfe", + "section_12.most_stable_genes_transposed_counts.csv:md5,b01652b330c30737b064019c82b54edc", + "section_13.most_stable_genes_summary.csv:md5,b49c5516c67a18a8aa88efbb2c4b6851", + "section_13.most_stable_genes_transposed_counts.csv:md5,2115e08cd0ca5687f3f51df30d8713f6", + "section_14.most_stable_genes_summary.csv:md5,63d585b48ba1427408ceeba1eb8e21f3", + "section_14.most_stable_genes_transposed_counts.csv:md5,61447a0e829a5b6d478aab2729773480", + "section_15.most_stable_genes_summary.csv:md5,4b44b25d58b69d457bd4362c6d0fed0b", + "section_15.most_stable_genes_transposed_counts.csv:md5,0910fbe3560684cb2a04c024681e3154", + "section_16.most_stable_genes_summary.csv:md5,681322bb7859dff570c40291c29b283b", + "section_16.most_stable_genes_transposed_counts.csv:md5,b0016bea58a5ebd79c8973b30700f60e", + "section_17.most_stable_genes_summary.csv:md5,db2c9e3d248fc5a99310ddf3914669d2", + "section_17.most_stable_genes_transposed_counts.csv:md5,9ee50f3d9ba4dadf8aa6dbfe32edb1de", "section_18.most_stable_genes_summary.csv:md5,5f21148626ed40d0d64b393babcf160d", "section_18.most_stable_genes_transposed_counts.csv:md5,29fc2248ad428cb3ac8898b0a5471eec", "section_19.most_stable_genes_summary.csv:md5,5acc2a1b1980004f88c0584a8cf0784e", "section_19.most_stable_genes_transposed_counts.csv:md5,9586c452f93c486ed667fb343af3b13c", - "section_2.most_stable_genes_summary.csv:md5,95e986dad2f0232070aa47079b6465c1", - "section_2.most_stable_genes_transposed_counts.csv:md5,b22984d5b00ee4540fca59b5585a0a88", + "section_2.most_stable_genes_summary.csv:md5,15998b75df4ae1f6fc7f9ff8ec87965b", + "section_2.most_stable_genes_transposed_counts.csv:md5,6f4cfa670ff7a30357549572b2409e9e", "section_20.most_stable_genes_summary.csv:md5,9d9c5cd95d1d1a350a8d1f2ce363f882", "section_20.most_stable_genes_transposed_counts.csv:md5,e9f4187bdc7079c3130bdff1e4ebf575", - "section_3.most_stable_genes_summary.csv:md5,7825d8dbcfd1c4e5a4e4ca42268d4ea8", - "section_3.most_stable_genes_transposed_counts.csv:md5,77d118556692fe285590489db96f47d0", - "section_4.most_stable_genes_summary.csv:md5,221b0d42881ada7cd7fcca65cdc827a4", - "section_4.most_stable_genes_transposed_counts.csv:md5,5d1d9ebe8151765fb37176c86f3c7812", - "section_5.most_stable_genes_summary.csv:md5,a3c3edb5fd3cf852185531a4adcd9fd9", - "section_5.most_stable_genes_transposed_counts.csv:md5,51289b18ac41641114892519d2e494a6", - "section_6.most_stable_genes_summary.csv:md5,5a7baf9eadb389cc234808d56ee6fdfe", - "section_6.most_stable_genes_transposed_counts.csv:md5,bb1cddda97df3915d2aad5973e1c8a16", - "section_7.most_stable_genes_summary.csv:md5,a1ed63a57844d1bce998eea23714f071", - "section_7.most_stable_genes_transposed_counts.csv:md5,82c59e866871569fbde316efea5e7ea3", - "section_8.most_stable_genes_summary.csv:md5,40673407e734107f0cebf2045023155a", - "section_8.most_stable_genes_transposed_counts.csv:md5,0bfb8031fc91115a61a57113a6df5c4d", - "section_9.most_stable_genes_summary.csv:md5,7178bb75b1733f71d0aeba2a09750b3b", - "section_9.most_stable_genes_transposed_counts.csv:md5,b02e0d31ed2c0fa925060893062c07a7", + "section_3.most_stable_genes_summary.csv:md5,e30f8d04d85f2782b5742020dfd0044a", + "section_3.most_stable_genes_transposed_counts.csv:md5,fcb1c0943cdf34ffca3da97373c47cc5", + "section_4.most_stable_genes_summary.csv:md5,64d72e6b587ff51ddb3456ae1ca2a6ba", + "section_4.most_stable_genes_transposed_counts.csv:md5,9a2c49e697021134b2fd3c8b6da7dcd6", + "section_5.most_stable_genes_summary.csv:md5,9ef654cd6e343710bded8f3d9bd543a0", + "section_5.most_stable_genes_transposed_counts.csv:md5,429bc1af92af063cf4dd84e94765dfa7", + "section_6.most_stable_genes_summary.csv:md5,bc27938c6c99268de4b75e3e3765cf06", + "section_6.most_stable_genes_transposed_counts.csv:md5,e52102f58aa7c190d20644fdf2cd93fd", + "section_7.most_stable_genes_summary.csv:md5,cda963dbec1cfee62b8794d089275982", + "section_7.most_stable_genes_transposed_counts.csv:md5,b81616f12ad783cbb71dec9f061a0d47", + "section_8.most_stable_genes_summary.csv:md5,9b3e62491d7c9012e3c60ad4a921e039", + "section_8.most_stable_genes_transposed_counts.csv:md5,063a5dc2323321f17aa628a9aac61b52", + "section_9.most_stable_genes_summary.csv:md5,c780aed4e96a132a3a4c90086a5dfbd1", + "section_9.most_stable_genes_transposed_counts.csv:md5,cbde52f4d7eeeaf15f9fbfacfa9e17bb", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,e3f8d59accf267c351d0a995ffc9ebf5", + "all_genes_summary.csv:md5,a8e6d99f3d9579cc4dab79a235d4c23c", "whole_design.csv:md5,fbd18d011d7d855452e5a30a303afcbf", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", - "Beta_vulgaris.RefBeet-1.2.2.62.gff3.gz:md5,6f2c45809441c8776e6578000db2b0e4", + "Beta_vulgaris.RefBeet-1.2.2.63.gff3.gz:md5,e711481dc9292c4b7c6422b9b4dc7d9d", "gene_transcript_lengths.csv:md5,458c7dfd3598bdcbcb6ceb76ccba189f", "global_gene_id_mapping.csv:md5,7eecbd2d88adaf5f213f238a72d28b99", "global_gene_metadata.csv:md5,cc8d4afdbaf03cd39a4e10f2a9040b7e", @@ -1578,48 +1578,48 @@ "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", "multiqc_eatlas_all_experiments_metadata.txt:md5,6ea661253a55d41687e32fea72961063", "multiqc_eatlas_selected_experiments_metadata.txt:md5,8b7643e0ef8eaaa3fa72f7103fd7ccee", - "multiqc_gene_statistics.txt:md5,d7750cb95663a63219dcec94e03d7af1", - "multiqc_genes_section_1.txt:md5,f310a16068d5e76713497e2d3824cf2d", - "multiqc_genes_section_1_1.txt:md5,d68c3cce20e06aaf226e88e0e52184b3", - "multiqc_genes_section_1_10.txt:md5,304bd44c0867a1419e7b48e5bb6dff05", - "multiqc_genes_section_1_11.txt:md5,807ad09f10e257546f18e5fb052511e9", - "multiqc_genes_section_1_12.txt:md5,e3d5acc5a292639bc3a1b1b5e7f5a04b", - "multiqc_genes_section_1_13.txt:md5,7dd72d333b12fc101f4a5b555e09d49a", - "multiqc_genes_section_1_14.txt:md5,59d0addf52e85cdf7d0163721c29c095", - "multiqc_genes_section_1_15.txt:md5,b10474b0ad8cd3cdf21dbe8dc4fd3676", - "multiqc_genes_section_1_16.txt:md5,6f038b7c99db654f2d749da25f7c213b", + "multiqc_gene_statistics.txt:md5,50ccceb54f210f7b61126cbe9e0a4ec1", + "multiqc_genes_section_1.txt:md5,3a31230289daa57751489f5fe86604d7", + "multiqc_genes_section_1_1.txt:md5,54f4d77c332007a1fa53e22e435e3e7a", + "multiqc_genes_section_1_10.txt:md5,0af94078f42a32d2edfe7cf3729f1628", + "multiqc_genes_section_1_11.txt:md5,ab2d0afb14d2fb7003d49968d13e7442", + "multiqc_genes_section_1_12.txt:md5,bc4e94e683ccc16146da4d2f7464be42", + "multiqc_genes_section_1_13.txt:md5,4f18cc626489ff9b3a26cba7cd2b13ee", + "multiqc_genes_section_1_14.txt:md5,bd518be5c3ec50c708515a3fc98e6a27", + "multiqc_genes_section_1_15.txt:md5,91757602c9d66bc49dc6e1809f77d749", + "multiqc_genes_section_1_16.txt:md5,9581898cabf368d36501dff58f81ca4c", "multiqc_genes_section_1_17.txt:md5,9f9f97f85d6605978b286942ac69ba2c", "multiqc_genes_section_1_18.txt:md5,ab6c6e6e1a658ba92baa6dd2b68f56bf", "multiqc_genes_section_1_19.txt:md5,5d4910983359e122e07fdbe2aeda10f7", - "multiqc_genes_section_1_2.txt:md5,89b5e91c54815bd340411210fb7b86a7", - "multiqc_genes_section_1_3.txt:md5,94130719e096ffd035a155aa59b4bdd0", - "multiqc_genes_section_1_4.txt:md5,ba0275140b46c0c2d2690304bfd008d8", - "multiqc_genes_section_1_5.txt:md5,fcdcb0618858bf79586f679f4834f902", - "multiqc_genes_section_1_6.txt:md5,9cf7cebccab8b0073cad3d43d4d2ef92", - "multiqc_genes_section_1_7.txt:md5,d440bc9cce034ba82dd0d9f3387f9094", - "multiqc_genes_section_1_8.txt:md5,dc1f5de798343036301a059b545a378f", - "multiqc_genes_section_1_9.txt:md5,e9402e81e8c32c8a6b4015c4a55962f0", + "multiqc_genes_section_1_2.txt:md5,612e7087fc86ed6d75e0270229c62fe2", + "multiqc_genes_section_1_3.txt:md5,ccf336e4048a4f9362506062fe24d288", + "multiqc_genes_section_1_4.txt:md5,a257d22bb9e30f84091fc6115c7e1c43", + "multiqc_genes_section_1_5.txt:md5,d504775081525482502a0739e2ad20f4", + "multiqc_genes_section_1_6.txt:md5,627ce211d1cf38e27dbce19e20ea1f91", + "multiqc_genes_section_1_7.txt:md5,c5ac5195005627044ce4d3a4f5b9d80a", + "multiqc_genes_section_1_8.txt:md5,64bb30a62c0488428f01b06e059f9e31", + "multiqc_genes_section_1_9.txt:md5,c5b8dae49e1c122ab3f2529ddf224c2e", "multiqc_id_mapping_stats.txt:md5,d7c6d500c8ea91c32da4980b5557d15e", - "multiqc_normalised_expr_distrib_section_1.txt:md5,fe7c9f8eff636a38deee18a05e17ed4d", - "multiqc_normalised_expr_distrib_section_1_1.txt:md5,7578a930f8750ecb56e892a54211e28f", - "multiqc_normalised_expr_distrib_section_1_10.txt:md5,696c5b24d54057e4738bbd0b351c5d28", - "multiqc_normalised_expr_distrib_section_1_11.txt:md5,94ef2626cd23a3395ba0f53be43b529e", - "multiqc_normalised_expr_distrib_section_1_12.txt:md5,cf62d3846d7d00b438719e75551bd3fa", - "multiqc_normalised_expr_distrib_section_1_13.txt:md5,825766b14187d801ae2284dffd562ac4", - "multiqc_normalised_expr_distrib_section_1_14.txt:md5,b18a4df24ed61f0315d41d4cddfd6539", - "multiqc_normalised_expr_distrib_section_1_15.txt:md5,4d99b3d87c9a25b18fa5ed2061dfb71c", - "multiqc_normalised_expr_distrib_section_1_16.txt:md5,82305a3ca8a54e44a558d0c83dfca9f3", + "multiqc_normalised_expr_distrib_section_1.txt:md5,742ccc1ee5e91b0dc6abc1ea03453f5f", + "multiqc_normalised_expr_distrib_section_1_1.txt:md5,64507a6e6dd6f14f3aa763d1f77b4a8c", + "multiqc_normalised_expr_distrib_section_1_10.txt:md5,a3d91fcfac1232b065eb4e722fe62849", + "multiqc_normalised_expr_distrib_section_1_11.txt:md5,2795f2d91a8205eb6d4a81a9b56a7c15", + "multiqc_normalised_expr_distrib_section_1_12.txt:md5,2362b16331018e749e91be11fbfc9009", + "multiqc_normalised_expr_distrib_section_1_13.txt:md5,8dfc7918253a31741a56375356eb8078", + "multiqc_normalised_expr_distrib_section_1_14.txt:md5,8a356465688a1bc2a095aeb03237c667", + "multiqc_normalised_expr_distrib_section_1_15.txt:md5,2f0035f0cd8c8bec49e0135f6f3ffa5b", + "multiqc_normalised_expr_distrib_section_1_16.txt:md5,f43c4c45dc455eb748be3fa213fa9a4b", "multiqc_normalised_expr_distrib_section_1_17.txt:md5,adf99bc87dd29499a1bfc50c3c26488c", "multiqc_normalised_expr_distrib_section_1_18.txt:md5,8b64cbab2e0cca85575b18b41f973aa5", "multiqc_normalised_expr_distrib_section_1_19.txt:md5,4544499f66cd9de554f2d26944028cd5", - "multiqc_normalised_expr_distrib_section_1_2.txt:md5,d74f1b40545293b2dba02a0ff167119d", - "multiqc_normalised_expr_distrib_section_1_3.txt:md5,e5701cd16921b4ce657ac131418e04d1", - "multiqc_normalised_expr_distrib_section_1_4.txt:md5,fd093b2d0d535ff16ba846bde129f690", - "multiqc_normalised_expr_distrib_section_1_5.txt:md5,4dbddb8d44680d3cc45a3053c510ca2d", - "multiqc_normalised_expr_distrib_section_1_6.txt:md5,497c20bb2f2d2c03595c897f30775411", - "multiqc_normalised_expr_distrib_section_1_7.txt:md5,5c3fb8ff5e1b90d0a9904712204fc36d", - "multiqc_normalised_expr_distrib_section_1_8.txt:md5,9e5d9c6fb87d348a893bfed6b24f01ce", - "multiqc_normalised_expr_distrib_section_1_9.txt:md5,6a40889210cec540d4b3a2e903454003", + "multiqc_normalised_expr_distrib_section_1_2.txt:md5,56785d700b9dab4e0f76388b5ba7326d", + "multiqc_normalised_expr_distrib_section_1_3.txt:md5,d6dab8574d1ba20e88149b06b448149e", + "multiqc_normalised_expr_distrib_section_1_4.txt:md5,89fa7f20230e3d2cd4fbfd48503532c8", + "multiqc_normalised_expr_distrib_section_1_5.txt:md5,77c267197ed771327b432676ed94ca71", + "multiqc_normalised_expr_distrib_section_1_6.txt:md5,d25fceb61f039dcd40a84849a7db21ff", + "multiqc_normalised_expr_distrib_section_1_7.txt:md5,42eecb6e4205931b84a8b4c66ff2612f", + "multiqc_normalised_expr_distrib_section_1_8.txt:md5,dd5711a7668ce35b2a784d1dcc7817c7", + "multiqc_normalised_expr_distrib_section_1_9.txt:md5,ebe970fe4f7722b3f657ad33e07ef5cf", "multiqc_null_values_filter.txt:md5,88b2d9e16cd8ab52f58a48fd5d915b8c", "multiqc_ratio_nulls.txt:md5,c9ac04a67937c7bacfebc33fcd50aab1", "multiqc_ratio_zeros.txt:md5,9f50cd64ea4afe3723c7e222182981f6", @@ -1638,11 +1638,11 @@ "zero_values_filter_stats.csv:md5,17fc6d525450d34445bf9cc25defe18a" ] ], + "timestamp": "2026-06-10T20:33:00.119363766", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" - }, - "timestamp": "2026-04-16T11:58:29.889348049" + "nf-test": "0.9.5", + "nextflow": "26.04.3" + } }, "-profile test_download_only": { "content": [ @@ -1695,10 +1695,10 @@ "E_MTAB_5309_rnaseq.rnaseq.raw.counts.csv:md5,5c45a59ce7fbc59e5784f40dfb8c3b71" ] ], + "timestamp": "2026-04-16T11:59:27.717850311", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-16T11:59:27.717850311" + } } } \ No newline at end of file diff --git a/tests/modules/local/aggregate_results/main.nf.test.snap b/tests/modules/local/aggregate_results/main.nf.test.snap index bfa2a9aa..ef6e609a 100644 --- a/tests/modules/local/aggregate_results/main.nf.test.snap +++ b/tests/modules/local/aggregate_results/main.nf.test.snap @@ -61,11 +61,11 @@ ] } ], + "timestamp": "2026-04-04T09:38:02.365611798", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-04T09:38:02.365611798" + } }, "Without microarray": { "content": [ @@ -129,11 +129,11 @@ ] } ], + "timestamp": "2026-03-30T14:06:37.615799808", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T14:06:37.615799808" + } }, "One invalid target gene": { "content": [ @@ -197,11 +197,11 @@ ] } ], + "timestamp": "2026-03-30T14:47:07.501875225", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T14:47:07.501875225" + } }, "One section": { "content": [ @@ -253,11 +253,11 @@ ] } ], + "timestamp": "2026-03-30T14:47:13.474058057", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T14:47:13.474058057" + } }, "With microarray": { "content": [ @@ -321,10 +321,10 @@ ] } ], + "timestamp": "2026-03-30T14:46:55.231695582", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T14:46:55.231695582" + } } } \ No newline at end of file diff --git a/tests/modules/local/compute_gene_statistics/main.nf.test.snap b/tests/modules/local/compute_gene_statistics/main.nf.test.snap index 0e7756f2..9db76e85 100644 --- a/tests/modules/local/compute_gene_statistics/main.nf.test.snap +++ b/tests/modules/local/compute_gene_statistics/main.nf.test.snap @@ -24,11 +24,11 @@ ] } ], + "timestamp": "2026-03-30T14:48:46.011713833", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T14:48:46.011713833" + } }, "No platform": { "content": [ @@ -55,11 +55,11 @@ ] } ], + "timestamp": "2026-03-30T14:48:33.525954126", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T14:48:33.525954126" + } }, "RNAseq platform": { "content": [ @@ -86,10 +86,10 @@ ] } ], + "timestamp": "2026-03-30T14:48:39.77826003", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T14:48:39.77826003" + } } } \ No newline at end of file diff --git a/tests/modules/local/compute_stability_scores/main.nf.test.snap b/tests/modules/local/compute_stability_scores/main.nf.test.snap index 5b386ca1..042578f7 100644 --- a/tests/modules/local/compute_stability_scores/main.nf.test.snap +++ b/tests/modules/local/compute_stability_scores/main.nf.test.snap @@ -3,7 +3,7 @@ "content": [ { "0": [ - "section_1.stats_with_scores.csv:md5,7b1dd3c6e4a666561ca6ebe14aae7b74" + "section_1.stats_with_scores.csv:md5,e78b6a9fdc451be6c6c6831d9885078a" ], "1": [ [ @@ -20,21 +20,21 @@ ] ], "stats_with_stability_scores": [ - "section_1.stats_with_scores.csv:md5,7b1dd3c6e4a666561ca6ebe14aae7b74" + "section_1.stats_with_scores.csv:md5,e78b6a9fdc451be6c6c6831d9885078a" ] } ], + "timestamp": "2026-06-10T20:55:21.077439961", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T15:20:22.075756497" + "nf-test": "0.9.5", + "nextflow": "26.04.3" + } }, "Without Genorm": { "content": [ { "0": [ - "section_1.stats_with_scores.csv:md5,bdf823d07ed6fed0313e5cf2ce1811a6" + "section_1.stats_with_scores.csv:md5,227d924080d1115b380328d6d9f50456" ], "1": [ [ @@ -51,14 +51,14 @@ ] ], "stats_with_stability_scores": [ - "section_1.stats_with_scores.csv:md5,bdf823d07ed6fed0313e5cf2ce1811a6" + "section_1.stats_with_scores.csv:md5,227d924080d1115b380328d6d9f50456" ] } ], + "timestamp": "2026-06-10T20:55:30.462849706", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T15:20:28.206402711" + "nf-test": "0.9.5", + "nextflow": "26.04.3" + } } } \ No newline at end of file diff --git a/tests/modules/local/expressionatlas/getaccessions/main.nf.test.snap b/tests/modules/local/expressionatlas/getaccessions/main.nf.test.snap index f784b39f..01391db2 100644 --- a/tests/modules/local/expressionatlas/getaccessions/main.nf.test.snap +++ b/tests/modules/local/expressionatlas/getaccessions/main.nf.test.snap @@ -57,11 +57,11 @@ ] } ], + "timestamp": "2026-02-19T10:19:07.035607232", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-02-19T10:19:07.035607232" + } }, "Solanum tuberosum no keyword": { "content": [ @@ -121,10 +121,10 @@ ] } ], + "timestamp": "2026-02-19T10:19:20.628916067", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-02-19T10:19:20.628916067" + } } } \ No newline at end of file diff --git a/tests/modules/local/expressionatlas/getdata/main.nf.test.snap b/tests/modules/local/expressionatlas/getdata/main.nf.test.snap index cc3b5be5..74bcd293 100644 --- a/tests/modules/local/expressionatlas/getdata/main.nf.test.snap +++ b/tests/modules/local/expressionatlas/getdata/main.nf.test.snap @@ -36,11 +36,11 @@ ] } ], + "timestamp": "2026-03-19T12:17:31.898448037", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-19T12:17:31.898448037" + } }, "Arabidopsis Geo dataset": { "content": [ @@ -79,11 +79,11 @@ ] } ], + "timestamp": "2026-03-29T16:45:22.368557567", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-29T16:45:22.368557567" + } }, "Transcription profiling by array of Arabidopsis mutant for fis2 (microarray)": { "content": [ @@ -122,10 +122,10 @@ ] } ], + "timestamp": "2026-03-19T12:17:45.546042421", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-19T12:17:45.546042421" + } } } \ No newline at end of file diff --git a/tests/modules/local/filter_and_rename_genes/main.nf.test.snap b/tests/modules/local/filter_and_rename_genes/main.nf.test.snap index 874f066c..75e4833a 100644 --- a/tests/modules/local/filter_and_rename_genes/main.nf.test.snap +++ b/tests/modules/local/filter_and_rename_genes/main.nf.test.snap @@ -7,7 +7,9 @@ ], "1": [ [ - "test", + [ + + ], "failure_reason.txt:md5,0eea8256c81d0362f3f10979ab2de23e" ] ], @@ -16,7 +18,9 @@ ], "3": [ [ - "test", + [ + + ], "0", "0", "3", @@ -42,11 +46,11 @@ ] } ], + "timestamp": "2026-04-17T09:04:45.840061804", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-17T09:04:45.840061804" + } }, "Map Ensembl IDs": { "content": [ @@ -54,7 +58,9 @@ "0": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "counts.ensembl_ids.renamed.parquet:md5,1fe83a8ee993d02c9df18f7412d20f0f" ] @@ -67,7 +73,9 @@ ], "3": [ [ - "test", + [ + + ], "2", "1", "1", @@ -91,18 +99,20 @@ "counts": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "counts.ensembl_ids.renamed.parquet:md5,1fe83a8ee993d02c9df18f7412d20f0f" ] ] } ], + "timestamp": "2026-04-17T09:04:26.849187591", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-17T09:04:26.849187591" + } }, "No valid gene": { "content": [ @@ -112,7 +122,9 @@ ], "1": [ [ - "test", + [ + + ], "failure_reason.txt:md5,0eea8256c81d0362f3f10979ab2de23e" ] ], @@ -121,7 +133,9 @@ ], "3": [ [ - "test", + [ + + ], "0", "0", "3", @@ -147,10 +161,10 @@ ] } ], + "timestamp": "2026-04-17T09:04:36.329611443", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-17T09:04:36.329611443" + } } } \ No newline at end of file diff --git a/tests/modules/local/genorm/compute_m_measure/main.nf.test.snap b/tests/modules/local/genorm/compute_m_measure/main.nf.test.snap index 767f3dd7..f8ea8893 100644 --- a/tests/modules/local/genorm/compute_m_measure/main.nf.test.snap +++ b/tests/modules/local/genorm/compute_m_measure/main.nf.test.snap @@ -34,10 +34,10 @@ ] } ], + "timestamp": "2026-03-30T15:40:23.09370734", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T15:40:23.09370734" + } } } \ No newline at end of file diff --git a/tests/modules/local/genorm/cross_join/main.nf.test.snap b/tests/modules/local/genorm/cross_join/main.nf.test.snap index 50d11bc4..b11d3254 100644 --- a/tests/modules/local/genorm/cross_join/main.nf.test.snap +++ b/tests/modules/local/genorm/cross_join/main.nf.test.snap @@ -38,10 +38,10 @@ ] } ], + "timestamp": "2026-03-30T15:40:29.248178717", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T15:40:29.248178717" + } } } \ No newline at end of file diff --git a/tests/modules/local/genorm/expression_ratio/main.nf.test.snap b/tests/modules/local/genorm/expression_ratio/main.nf.test.snap index a9e492ef..f0347aba 100644 --- a/tests/modules/local/genorm/expression_ratio/main.nf.test.snap +++ b/tests/modules/local/genorm/expression_ratio/main.nf.test.snap @@ -38,10 +38,10 @@ ] } ], + "timestamp": "2026-04-01T09:41:39.459415462", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-01T09:41:39.459415462" + } } } \ No newline at end of file diff --git a/tests/modules/local/genorm/make_chunks/main.nf.test.snap b/tests/modules/local/genorm/make_chunks/main.nf.test.snap index 5b2f00be..6cb9d08f 100644 --- a/tests/modules/local/genorm/make_chunks/main.nf.test.snap +++ b/tests/modules/local/genorm/make_chunks/main.nf.test.snap @@ -56,10 +56,10 @@ ] } ], + "timestamp": "2026-03-30T15:40:46.563584649", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T15:40:46.563584649" + } } } \ No newline at end of file diff --git a/tests/modules/local/genorm/ratio_standard_variation/main.nf.test.snap b/tests/modules/local/genorm/ratio_standard_variation/main.nf.test.snap index 6f29543d..a16d5709 100644 --- a/tests/modules/local/genorm/ratio_standard_variation/main.nf.test.snap +++ b/tests/modules/local/genorm/ratio_standard_variation/main.nf.test.snap @@ -38,10 +38,10 @@ ] } ], + "timestamp": "2026-04-01T09:41:51.590963847", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-01T09:41:51.590963847" + } } } \ No newline at end of file diff --git a/tests/modules/local/get_candidate_genes/main.nf.test.snap b/tests/modules/local/get_candidate_genes/main.nf.test.snap index 7b869fd2..c9e2ede4 100644 --- a/tests/modules/local/get_candidate_genes/main.nf.test.snap +++ b/tests/modules/local/get_candidate_genes/main.nf.test.snap @@ -46,11 +46,11 @@ ] } ], + "timestamp": "2026-03-30T17:07:03.292271274", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T17:07:03.292271274" + } }, "Too many sections": { "content": [ @@ -123,10 +123,10 @@ ] } ], + "timestamp": "2026-03-30T17:07:09.643611957", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T17:07:09.643611957" + } } } \ No newline at end of file diff --git a/tests/modules/local/gprofiler/idmapping/main.nf.test.snap b/tests/modules/local/gprofiler/idmapping/main.nf.test.snap index 850dae54..33550d23 100644 --- a/tests/modules/local/gprofiler/idmapping/main.nf.test.snap +++ b/tests/modules/local/gprofiler/idmapping/main.nf.test.snap @@ -34,10 +34,10 @@ ] } ], + "timestamp": "2026-02-19T10:26:01.249646558", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-02-19T10:26:01.249646558" + } } } \ No newline at end of file diff --git a/tests/modules/local/merge_counts/main.nf.test.snap b/tests/modules/local/merge_counts/main.nf.test.snap index 6e773d44..7290c51d 100644 --- a/tests/modules/local/merge_counts/main.nf.test.snap +++ b/tests/modules/local/merge_counts/main.nf.test.snap @@ -34,11 +34,11 @@ ] } ], + "timestamp": "2026-03-30T16:41:25.646239587", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T16:41:25.646239587" + } }, "3 files": { "content": [ @@ -75,10 +75,10 @@ ] } ], + "timestamp": "2026-03-30T16:39:46.447995126", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T16:39:46.447995126" + } } } \ No newline at end of file diff --git a/tests/modules/local/normalisation/compute_cpm/main.nf.test.snap b/tests/modules/local/normalisation/compute_cpm/main.nf.test.snap index 6f3d7957..d2065f0e 100644 --- a/tests/modules/local/normalisation/compute_cpm/main.nf.test.snap +++ b/tests/modules/local/normalisation/compute_cpm/main.nf.test.snap @@ -5,7 +5,9 @@ "0": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "counts.cpm.parquet:md5,8802fdfa77c0da39062bf357dccdd3cd" ] @@ -33,18 +35,20 @@ "counts": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "counts.cpm.parquet:md5,8802fdfa77c0da39062bf357dccdd3cd" ] ] } ], + "timestamp": "2026-04-17T09:07:24.246785277", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-17T09:07:24.246785277" + } }, "One group": { "content": [ @@ -87,11 +91,11 @@ ] } ], + "timestamp": "2026-03-19T12:23:45.874853063", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-19T12:23:45.874853063" + } }, "TSV files": { "content": [ @@ -134,11 +138,11 @@ ] } ], + "timestamp": "2026-03-19T12:23:54.407797312", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-19T12:23:54.407797312" + } }, "Rows with many zeros": { "content": [ @@ -146,7 +150,9 @@ "0": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "counts.cpm.parquet:md5,ab2596a5bb8b3b2e39754191a2dce2aa" ] @@ -174,17 +180,19 @@ "counts": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "counts.cpm.parquet:md5,ab2596a5bb8b3b2e39754191a2dce2aa" ] ] } ], + "timestamp": "2026-04-17T09:07:34.001566313", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-17T09:07:34.001566313" + } } } \ No newline at end of file diff --git a/tests/modules/local/normalisation/compute_tpm/main.nf.test.snap b/tests/modules/local/normalisation/compute_tpm/main.nf.test.snap index 287c19f0..2591289e 100644 --- a/tests/modules/local/normalisation/compute_tpm/main.nf.test.snap +++ b/tests/modules/local/normalisation/compute_tpm/main.nf.test.snap @@ -5,7 +5,9 @@ "0": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "counts.tpm.parquet:md5,e8e08e6af6b76fe41793259203925e37" ] @@ -33,18 +35,20 @@ "counts": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "counts.tpm.parquet:md5,e8e08e6af6b76fe41793259203925e37" ] ] } ], + "timestamp": "2026-04-17T09:08:02.882187442", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-17T09:08:02.882187442" + } }, "One group": { "content": [ @@ -52,7 +56,9 @@ "0": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "counts.tpm.parquet:md5,2bb5797b24bcd02a06b2794c94567638" ] @@ -80,18 +86,20 @@ "counts": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "counts.tpm.parquet:md5,2bb5797b24bcd02a06b2794c94567638" ] ] } ], + "timestamp": "2026-04-17T09:08:21.950858405", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-17T09:08:21.950858405" + } }, "TSV files": { "content": [ @@ -99,7 +107,9 @@ "0": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "counts.tpm.parquet:md5,e8e08e6af6b76fe41793259203925e37" ] @@ -127,18 +137,20 @@ "counts": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "counts.tpm.parquet:md5,e8e08e6af6b76fe41793259203925e37" ] ] } ], + "timestamp": "2026-04-17T09:08:31.427239077", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-17T09:08:31.427239077" + } }, "Rows with many zeros": { "content": [ @@ -146,7 +158,9 @@ "0": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "counts.tpm.parquet:md5,95563b1ba1083cfc31c2b9c18c5aeaaa" ] @@ -174,17 +188,19 @@ "counts": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "counts.tpm.parquet:md5,95563b1ba1083cfc31c2b9c18c5aeaaa" ] ] } ], + "timestamp": "2026-04-17T09:08:12.502224484", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-17T09:08:12.502224484" + } } } \ No newline at end of file diff --git a/tests/modules/local/normfinder/main.nf.test.snap b/tests/modules/local/normfinder/main.nf.test.snap index 0b2298f7..4e90417c 100644 --- a/tests/modules/local/normfinder/main.nf.test.snap +++ b/tests/modules/local/normfinder/main.nf.test.snap @@ -55,11 +55,11 @@ ] } ], + "timestamp": "2026-03-30T15:45:00.995645591", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T15:45:00.995645591" + } }, "Very small dataset - Cq values": { "content": [ @@ -117,10 +117,10 @@ ] } ], + "timestamp": "2026-03-30T15:44:51.060894512", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-30T15:44:51.060894512" + } } } \ No newline at end of file diff --git a/tests/modules/local/quantile_normalisation/main.nf.test.snap b/tests/modules/local/quantile_normalisation/main.nf.test.snap index 1e2bce1c..c72c83e0 100644 --- a/tests/modules/local/quantile_normalisation/main.nf.test.snap +++ b/tests/modules/local/quantile_normalisation/main.nf.test.snap @@ -5,7 +5,9 @@ "0": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "count.raw.cpm.quant_norm.parquet:md5,4ceb116e0a52b92ab31ec4e122ed12a1" ] @@ -34,18 +36,20 @@ "counts": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "count.raw.cpm.quant_norm.parquet:md5,4ceb116e0a52b92ab31ec4e122ed12a1" ] ] } ], + "timestamp": "2026-04-17T09:09:10.597987851", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-17T09:09:10.597987851" + } }, "Normal target distribution": { "content": [ @@ -53,7 +57,9 @@ "0": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "count.raw.cpm.quant_norm.parquet:md5,10c118fd62dad210b585f30620679732" ] @@ -82,17 +88,19 @@ "counts": [ [ { - "dataset": "test" + "dataset": [ + + ] }, "count.raw.cpm.quant_norm.parquet:md5,10c118fd62dad210b585f30620679732" ] ] } ], + "timestamp": "2026-04-17T09:09:22.718260106", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-17T09:09:22.718260106" + } } } \ No newline at end of file diff --git a/tests/subworkflows/local/download_public_datasets/main.nf.test.snap b/tests/subworkflows/local/download_public_datasets/main.nf.test.snap index 3e299483..f02a885b 100644 --- a/tests/subworkflows/local/download_public_datasets/main.nf.test.snap +++ b/tests/subworkflows/local/download_public_datasets/main.nf.test.snap @@ -26,11 +26,11 @@ ] } ], + "timestamp": "2025-12-16T15:18:21.726044151", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.2" - }, - "timestamp": "2025-12-16T15:18:21.726044151" + } }, "Beta vulgaris - Eatlas + GEO - all accessions": { "content": [ @@ -77,10 +77,10 @@ ] } ], + "timestamp": "2025-12-16T15:18:08.622422246", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.2" - }, - "timestamp": "2025-12-16T15:18:08.622422246" + } } } \ No newline at end of file diff --git a/tests/subworkflows/local/expression_normalisation/main.nf.test.snap b/tests/subworkflows/local/expression_normalisation/main.nf.test.snap index 04a5c4ec..0b893abd 100644 --- a/tests/subworkflows/local/expression_normalisation/main.nf.test.snap +++ b/tests/subworkflows/local/expression_normalisation/main.nf.test.snap @@ -44,11 +44,11 @@ ] } ], + "timestamp": "2026-03-19T12:27:13.766132141", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-19T12:27:13.766132141" + } }, "No rnaseq normalisation": { "content": [ @@ -77,11 +77,11 @@ ] } ], + "timestamp": "2026-03-19T12:27:25.897836784", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-19T12:27:25.897836784" + } }, "TPM Normalisation with gene length": { "content": [ @@ -128,11 +128,11 @@ ] } ], + "timestamp": "2026-03-19T12:27:00.268510601", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-19T12:27:00.268510601" + } }, "TPM Normalisation": { "content": [ @@ -179,10 +179,10 @@ ] } ], + "timestamp": "2026-03-19T12:26:44.852023368", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-03-19T12:26:44.852023368" + } } } \ No newline at end of file diff --git a/tests/subworkflows/local/genorm/main.nf.test.snap b/tests/subworkflows/local/genorm/main.nf.test.snap index 411b8f60..813be1cf 100644 --- a/tests/subworkflows/local/genorm/main.nf.test.snap +++ b/tests/subworkflows/local/genorm/main.nf.test.snap @@ -20,11 +20,11 @@ ] } ], + "timestamp": "2026-04-01T09:56:47.48692894", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-01T09:56:47.48692894" + } }, "10 genes": { "content": [ @@ -47,10 +47,10 @@ ] } ], + "timestamp": "2026-04-01T09:55:53.207791305", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-01T09:55:53.207791305" + } } } \ No newline at end of file diff --git a/tests/subworkflows/local/get_public_accessions/main.nf.test.snap b/tests/subworkflows/local/get_public_accessions/main.nf.test.snap index d19a70fb..2b7fbbad 100644 --- a/tests/subworkflows/local/get_public_accessions/main.nf.test.snap +++ b/tests/subworkflows/local/get_public_accessions/main.nf.test.snap @@ -18,11 +18,11 @@ ] } ], + "timestamp": "2026-04-16T12:25:30.194867058", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-16T12:25:30.194867058" + } }, "No GEO + accessions provided": { "content": [ @@ -43,11 +43,11 @@ ] } ], + "timestamp": "2026-04-16T12:25:15.508377196", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-16T12:25:15.508377196" + } }, "Fetch eatlas accessions without keywords": { "content": [ @@ -62,11 +62,11 @@ ] } ], + "timestamp": "2026-04-16T12:25:00.873486754", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-16T12:25:00.873486754" + } }, "With samplling size": { "content": [ @@ -79,10 +79,10 @@ ] } ], + "timestamp": "2026-04-01T14:53:02.05138484", "meta": { "nf-test": "0.9.3", "nextflow": "25.10.4" - }, - "timestamp": "2026-04-01T14:53:02.05138484" + } } } \ No newline at end of file From df434b107b25e37908a270de6a6eca4da31b8e34 Mon Sep 17 00:00:00 2001 From: Olivier Date: Thu, 11 Jun 2026 09:23:03 +0200 Subject: [PATCH 11/31] Update nextflow_schema.json --- nextflow_schema.json | 65 ++++++++++++++++++++++++-------------------- 1 file changed, 35 insertions(+), 30 deletions(-) diff --git a/nextflow_schema.json b/nextflow_schema.json index 8109b426..8f36e024 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -46,7 +46,7 @@ "target_genes": { "type": "string", "description": "Target genes", - "fa_icon": "fas fa-arrows-alt-h", + "fa_icon": "fas fa-bullseye", "help_text": "One or multiple target genes (separated by commas). These can be gene IDs (as provided in your input datasets), Ensembl gene IDs, or gene symbols." }, "target_gene_file": { @@ -54,26 +54,26 @@ "description": "File containing target genes", "format": "file-path", "exists": true, - "fa_icon": "fas fa-arrows-alt-h", + "fa_icon": "fas fa-file-word", "help_text": "File containing one or multiple target genes (one ID per line). These can be gene IDs (as provided in your input datasets), Ensembl gene IDs, or gene symbols." }, "platform": { "type": "string", "enum": ["rnaseq", "microarray"], "description": "Only download from this platform", - "fa_icon": "fas fa-arrows-alt-h", + "fa_icon": "fas fa-caravan", "help_text": "By default, data from both RNA-seq and Microarray platforms are downloaded. Setting this parameter applies a filter to get data from only one of the two platforms. This filter is only used while fetching appropriate Expression atlas / GEO accessions. It will not filter accessions provided directly by the user." }, "accessions_only": { "type": "boolean", "description": "Only get accessions from Expression Atlas / GEO and exit.", - "fa_icon": "far fa-stop-circle", + "fa_icon": "fas fa-align-center", "help_text": "Use this option if you only want to get Expression Atlas accessions and skip the rest of the pipeline." }, "download_only": { "type": "boolean", "description": "Only get accessions from Expression Atlas / GEO and download the selected datasets.", - "fa_icon": "far fa-stop-circle", + "fa_icon": "fas fa-download", "help_text": "Use this option if you only want to get Expression Atlas / GEO accessions, download the selected data, and skip the rest of the pipeline." }, "email": { @@ -98,13 +98,13 @@ "properties": { "skip_fetch_eatlas_accessions": { "type": "boolean", - "fa_icon": "fas fa-cloud-arrow-down", + "fa_icon": "fas fa-ban", "description": "Skip fetching Expression Atlas accessions", "help_text": "Expression Atlas accessions are automatically fetched by default. Set this parameter to skip this step." }, "fetch_geo_accessions": { "type": "boolean", - "fa_icon": "fas fa-cloud-arrow-down", + "fa_icon": "fas fa-cloud-download-alt", "description": "Fetch GEO accessions from NCBI [Experimental]", "help_text": "Set this parameter to fetch GEO accessions from NCBI. **This feature is experimental and may not work as expected**. Please report any issues to https://github.com/nf-core/stableexpression/issues." }, @@ -120,7 +120,7 @@ "format": "file-path", "exists": true, "description": "File containing Expression Atlas / GEO accession(s) to download", - "fa_icon": "fas fa-file", + "fa_icon": "fas fa-file-alt", "help_text": "File containing Expression Atlas / GEO accession(s) that you want to download. One accession per line. Example: `--accessions_file included_accessions.txt`. Combine with --skip_fetch_accessions if you want only these accessions to be used. User provided accessions are prioritised over excluded accessions." }, "excluded_accessions": { @@ -135,7 +135,7 @@ "format": "file-path", "exists": true, "description": "File containing Expression Atlas accession(s) to exclude", - "fa_icon": "fas fa-file", + "fa_icon": "fas fa-file-alt", "help_text": "File containing Expression Atlas / GEO accession(s) that you want to exclude. One accession per line. Example: `--excluded_accessions_file excluded_accessions.txt`." } } @@ -161,7 +161,7 @@ "gprofiler_target_db": { "type": "string", "description": "Experimental: target database for g:Profiler", - "fa_icon": "fas fa-divide", + "fa_icon": "far fa-dot-circle", "enum": ["ENSG", "ENTREZGENE", "UNIPROTSPTREMBL", "UNIPROTSWISSPROT"], "default": "ENSG", "help_text": "Experimental: target database for g:Profiler. You can see the full list of available target databases at https://biit.cs.ut.ee/gprofiler/convert." @@ -175,7 +175,7 @@ "pattern": "^\\S+\\.(csv|dat)$", "description": "Custom gene id mapping file", "help_text": "Path to comma-separated file containing custom gene id mappings. Each row represents a mapping from the original gene ID in your count datasets to a prefered gene ID. The mapping file should be a comma-separated file with 2 columns (original_gene_id and gene_id) and a header row.", - "fa_icon": "fas fa-file" + "fa_icon": "fas fa-file-alt" }, "gene_metadata": { "type": "string", @@ -186,12 +186,12 @@ "pattern": "^\\S+\\.(csv|dat)$", "description": "Custom gene metadata file", "help_text": "Path to comma-separated file containing custom gene metadata information. Each row represents a gene and links its gene ID to its name and description. The metadata file should be a comma-separated file with 3 columns (gene_id, name and description) and a header row.", - "fa_icon": "fas fa-file" + "fa_icon": "fas fa-file-alt" }, "min_occurrence_quantile": { "type": "number", "description": "Minimum quantile for the frequency of occurrence", - "fa_icon": "fas fa-battery-three-quarters", + "fa_icon": "far fa-chart-bar", "minimum": 0, "maximum": 1, "default": 0.2, @@ -200,7 +200,7 @@ "min_occurrence_freq": { "type": "number", "description": "Minimum frequency of occurrence among all datasets", - "fa_icon": "fas fa-battery-three-quarters", + "fa_icon": "fas fa-chart-bar", "minimum": 0, "maximum": 1, "default": 0.1, @@ -217,7 +217,7 @@ "max_zero_ratio": { "type": "number", "description": "Maximum ratio of zero counts to total counts", - "fa_icon": "fas fa-divide", + "fa_icon": "fab fa-creative-commons-zero", "minimum": 0, "maximum": 1, "default": 0.9, @@ -226,7 +226,7 @@ "max_null_ratio": { "type": "number", "description": "Maximum ratio of null values", - "fa_icon": "fas fa-divide", + "fa_icon": "fas fa-dizzy", "minimum": 0, "maximum": 1, "default": 0.9, @@ -235,7 +235,7 @@ "max_null_ratio_valid_sample": { "type": "number", "description": "Maximum ratio of null values in a sample for it to be considered in the computation of the null value malus", - "fa_icon": "fas fa-divide", + "fa_icon": "far fa-dizzy", "minimum": 0, "maximum": 1, "default": 0.75, @@ -265,7 +265,7 @@ "pattern": "^\\S+\\.(gff|dat)$", "description": "Genome annotation file (GFF format)", "help_text": "Path to genome annotation file (GFF format). Cannot be compressed.", - "fa_icon": "fas fa-file" + "fa_icon": "fas fa-file-alt" }, "gene_length": { "type": "string", @@ -276,7 +276,7 @@ "pattern": "^\\S+\\.(csv|tsv|dat)$", "description": "Gene length file", "help_text": "Path to comma-separated file containing gene lengths. Each row represents a gene and gives the length of its longest transcript. The file should be a comma-separated file with 2 columns (gene_id and length) and a header row.", - "fa_icon": "fas fa-file" + "fa_icon": "fas fa-file-alt" }, "quantile_norm_target_distrib": { "type": "string", @@ -289,7 +289,7 @@ "missing_value_imputer": { "type": "string", "description": "Type of imputation method to use for missing values", - "fa_icon": "fas fa-battery-three-quarters", + "fa_icon": "fas fa-bezier-curve", "enum": ["iterative", "knn", "gene_mean"], "default": "iterative", "help_text": "The pipeline provides three options for imputing missing values: iterative, k-nearest neighbors, and gene mean. Iterative imputation uses a bayesian iterative algorithm to fill in missing values. K-nearest neighbors imputation uses a k-nearest neighbors algorithm to fill in missing values. Gene mean imputation is a very basic method that replaces missing values with the mean expression level of the gene across all samples." @@ -305,21 +305,23 @@ "nb_sections": { "type": "integer", "description": "Number of sections to divide genes into for stability scoring.", - "fa_icon": "fas fa-sort-numeric-up-alt", + "fa_icon": "fas fa-list-ol", "minimum": 1, - "help_text": "All genes are divided into sections based on their expression levels. Set this parameter to modify the number of sections." + "help_text": "All genes are divided into sections based on their expression levels. Set this parameter to modify the number of sections.", + "default": 20 }, "nb_candidates_per_section": { "type": "integer", "description": "Number of candidate genes to keep for stability scoring in each section", - "fa_icon": "fas fa-sort-numeric-up-alt", + "fa_icon": "fas fa-sort-numeric-down", "minimum": 1, - "help_text": "Number of candidate genes to keep in each section for stability scoring. Within each section, the top candidates are selected based on the descriptor chosen with `--candidate_selection_descriptor`." + "help_text": "Number of candidate genes to keep in each section for stability scoring. Within each section, the top candidates are selected based on the descriptor chosen with `--candidate_selection_descriptor`.", + "default": 250 }, "skip_genorm": { "type": "boolean", "description": "Run Genorm", - "fa_icon": "fas fa-check", + "fa_icon": "fas fa-ban", "help": "Skip Genorm by setting this parameter to true. In this case, by default, only Normfinder will participate in the stability score." }, "stability_score_weights": { @@ -327,7 +329,8 @@ "description": "Weights for stability score calculation", "fa_icon": "fas fa-balance-scale", "help_text": "Weights for Normfinder / Genorm / Coefficient of Variation (CV) / Robust Coefficient of Variation on Median (RCVM) respectively. Must be a comma-separated string. Example: 0.5,0.5,0.0,0", - "pattern": "^\\d+(\\.\\d+)?,\\d+(\\.\\d+)?,\\d+(\\.\\d+)?,\\d+(\\.\\d+)?$" + "pattern": "^\\d+(\\.\\d+)?,\\d+(\\.\\d+)?,\\d+(\\.\\d+)?,\\d+(\\.\\d+)?$", + "default": "0.5,0.5,0,0" } } }, @@ -340,16 +343,18 @@ "random_sampling_size": { "type": "integer", "description": "Number of public dataset samples to choose randomly before downloading.", - "fa_icon": "fas fa-sort-numeric-up-alt", + "fa_icon": "fas fa-random", "minimum": 1, - "help_text": "When dealing with species for which there is a large number (eg. >10000) of samples considering all the downloaded datasets, users may encounter RAM issues (eg. errors with `137` exit codes). In such cases, it is recommended to sample a random subset of these datasets to reduce the computational load. A first subsampling is performedduring the search for Expression Atlas accessions. In case there is still room for datasets and if the `--fetch_geo_accessions` flag was set, a second ssubsampling is performed during the search for NCBI GEO accessions." + "help_text": "When dealing with species for which there is a large number (eg. >10000) of samples considering all the downloaded datasets, users may encounter RAM issues (eg. errors with `137` exit codes). In such cases, it is recommended to sample a random subset of these datasets to reduce the computational load. A first subsampling is performedduring the search for Expression Atlas accessions. In case there is still room for datasets and if the `--fetch_geo_accessions` flag was set, a second ssubsampling is performed during the search for NCBI GEO accessions.", + "default": 5000 }, "random_sampling_seed": { "type": "integer", "description": "Seed for dataset random sampling.", - "fa_icon": "fas fa-sort-numeric-up-alt", + "fa_icon": "fas fa-random", "minimum": 0, - "help_text": "Seed for dataset random sampling. This ensures reproducibility of the random sampling process. Changing the seed will result in a different random sample being selected." + "help_text": "Seed for dataset random sampling. This ensures reproducibility of the random sampling process. Changing the seed will result in a different random sample being selected.", + "default": 42 } } }, From c26ec008b11dec97473bb2b315e6ab44d8083c0c Mon Sep 17 00:00:00 2001 From: Olivier Date: Thu, 11 Jun 2026 10:33:51 +0200 Subject: [PATCH 12/31] pass pre-commit --- bin/compute_gene_statistics.py | 41 +++++++++++++-------- bin/compute_stability_scores.py | 2 +- subworkflows/local/sample_filtering/main.nf | 2 +- 3 files changed, 27 insertions(+), 18 deletions(-) diff --git a/bin/compute_gene_statistics.py b/bin/compute_gene_statistics.py index 5c1e0357..9a9b0c64 100755 --- a/bin/compute_gene_statistics.py +++ b/bin/compute_gene_statistics.py @@ -127,35 +127,46 @@ def get_valid_samples( def compute_ratios_null_values( lf: pl.LazyFrame, valid_samples: list[str], platform: str | None ) -> pl.LazyFrame: - - samples_cols = [col for col in lf.collect_schema().names() if col != config.GENE_ID_COLNAME] + samples_cols = [ + col for col in lf.collect_schema().names() if col != config.GENE_ID_COLNAME + ] nb_samples = len(samples_cols) - 1 found_valid_samples = [sample for sample in valid_samples if sample in samples_cols] - + # the samples showing a low gene count will not be taken into account for the zero count penalty nb_nulls = ( - lf - .select(pl.exclude(config.GENE_ID_COLNAME).is_null()) # select all columns except GENE_ID_COLNAME and check if they are null - .select(pl.sum_horizontal(pl.all()).alias("nb_nulls_all_samples")) # sum the number of null values across all columns + lf.select( + pl.exclude(config.GENE_ID_COLNAME).is_null() + ) # select all columns except GENE_ID_COLNAME and check if they are null + .select( + pl.sum_horizontal(pl.all()).alias("nb_nulls_all_samples") + ) # sum the number of null values across all columns .collect() .to_series() ) - + if found_valid_samples: nb_nulls_valid_samples = ( - lf - .select(pl.col(found_valid_samples).is_null()) # select all columns in valid_samples and check if they are null - .select(pl.sum_horizontal(pl.all()).alias("nb_nulls_valid_samples")) # sum the number of null values across all columns + lf.select( + pl.col(found_valid_samples).is_null() + ) # select all columns in valid_samples and check if they are null + .select( + pl.sum_horizontal(pl.all()).alias("nb_nulls_valid_samples") + ) # sum the number of null values across all columns .collect() .to_series() ) else: nb_nulls_valid_samples = nb_nulls - + return lf.select( pl.col(config.GENE_ID_COLNAME), - (nb_nulls / nb_samples).alias(get_colname(config.RATIO_NULLS_COLNAME, platform)), - (nb_nulls_valid_samples / len(found_valid_samples)).alias(get_colname(config.RATIO_NULLS_VALID_SAMPLES_COLNAME, platform)), + (nb_nulls / nb_samples).alias( + get_colname(config.RATIO_NULLS_COLNAME, platform) + ), + (nb_nulls_valid_samples / len(found_valid_samples)).alias( + get_colname(config.RATIO_NULLS_VALID_SAMPLES_COLNAME, platform) + ), ) @@ -274,9 +285,7 @@ def main(): stat_lf = get_main_statistics(count_lf, args.platform) # adding column for nb of null values for each gene - stat_lf = stat_lf.join( - ratio_nulls_lf, on=config.GENE_ID_COLNAME, how="inner" - ) + stat_lf = stat_lf.join(ratio_nulls_lf, on=config.GENE_ID_COLNAME, how="inner") # adding a column for the frequency of zero values stat_lf = compute_ratio_zeros(count_lf, stat_lf, args.platform) diff --git a/bin/compute_stability_scores.py b/bin/compute_stability_scores.py index e3a284de..678d8d08 100755 --- a/bin/compute_stability_scores.py +++ b/bin/compute_stability_scores.py @@ -120,7 +120,7 @@ def compute_stability_score(self): pl.col(config.RATIO_NULLS_VALID_SAMPLES_COLNAME) * self.WEIGHT_RATIO_NB_NULLS_TO_SCORING ) - + for col, weight in self.weights.items(): if col not in self.df.columns: logger.warning(f"Column {col} not found in dataframe") diff --git a/subworkflows/local/sample_filtering/main.nf b/subworkflows/local/sample_filtering/main.nf index c6d87039..bcdaccc9 100644 --- a/subworkflows/local/sample_filtering/main.nf +++ b/subworkflows/local/sample_filtering/main.nf @@ -52,7 +52,7 @@ workflow SAMPLE_FILTERING { storeDir: "${outdir}/statistics/", sort: true ) - + emit: counts = TOO_MANY_MISSING_VALUES.out.counts From 90d745b1261f2f9ad2cb026d5778975927d1e8c4 Mon Sep 17 00:00:00 2001 From: Olivier Date: Thu, 11 Jun 2026 10:37:01 +0200 Subject: [PATCH 13/31] Update nextflow_schema.json --- nextflow_schema.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nextflow_schema.json b/nextflow_schema.json index 8f36e024..6bdbb562 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -330,7 +330,7 @@ "fa_icon": "fas fa-balance-scale", "help_text": "Weights for Normfinder / Genorm / Coefficient of Variation (CV) / Robust Coefficient of Variation on Median (RCVM) respectively. Must be a comma-separated string. Example: 0.5,0.5,0.0,0", "pattern": "^\\d+(\\.\\d+)?,\\d+(\\.\\d+)?,\\d+(\\.\\d+)?,\\d+(\\.\\d+)?$", - "default": "0.5,0.5,0,0" + "default": "0.25,0.25,0.25,0.25" } } }, From f78eed0ce32eed6278fad7b26eb4dbda7d6a3176 Mon Sep 17 00:00:00 2001 From: Olivier Date: Thu, 11 Jun 2026 13:59:04 +0200 Subject: [PATCH 14/31] update config --- .nf-core.yml | 1 - nextflow.config | 5 ----- 2 files changed, 6 deletions(-) diff --git a/.nf-core.yml b/.nf-core.yml index 9d83d644..27e1378f 100644 --- a/.nf-core.yml +++ b/.nf-core.yml @@ -15,7 +15,6 @@ lint: - tests/test_data/genorm/compute_m_measure/input/std.0.0.parquet - tests/test_data/genorm/compute_m_measure/input/std.1.2.parquet - tests/test_data/genorm/compute_m_measure/input/std.1.2.parquet - schema_lint: false nf_core_version: 3.5.2 repository_type: pipeline diff --git a/nextflow.config b/nextflow.config index 8c08dbd8..40bb9c7f 100644 --- a/nextflow.config +++ b/nextflow.config @@ -316,10 +316,5 @@ plugins { id 'nf-schema@2.5.1' // Validation of pipeline parameters and creation of an input channel from a sample sheet } -validation { - defaultIgnoreParams = ["genomes"] - monochromeLogs = params.monochrome_logs -} - // Load modules.config for DSL2 module specific options includeConfig 'conf/modules.config' From f74bbb5f499f5b8377d8c803e5723d8c084a25d8 Mon Sep 17 00:00:00 2001 From: Olivier Date: Thu, 11 Jun 2026 16:35:36 +0200 Subject: [PATCH 15/31] set knn as default missing value imputer and expose some imputation parameters --- bin/impute_missing_values.py | 61 ++++++++++++++++----- modules/local/impute_missing_values/main.nf | 8 ++- nextflow.config | 7 ++- nextflow_schema.json | 43 +++++++++++++-- subworkflows/local/merge_data/main.nf | 8 ++- workflows/stableexpression.nf | 3 + 6 files changed, 109 insertions(+), 21 deletions(-) diff --git a/bin/impute_missing_values.py b/bin/impute_missing_values.py index f8316ffb..5820ce79 100755 --- a/bin/impute_missing_values.py +++ b/bin/impute_missing_values.py @@ -17,8 +17,6 @@ OUTFILE_SUFFIX = ".imputed.parquet" -THRESHOLD_RATIO_ZEROS = 0.9 - # KNN N_NEIGHBORS = 10 @@ -39,9 +37,37 @@ def parse_args(): parser = argparse.ArgumentParser(description="Perform KNN imputation on count data") parser.add_argument( - "--counts", type=Path, dest="count_file", required=True, help="Count file" + "--counts", + type=Path, + dest="count_file", + required=True, + help="Count file" + ) + parser.add_argument( + "--imputer", + choices=IMPUTERS, + required=True, + dest="imputer", + help="Imputer to use" + ) + parser.add_argument( + "--knn-n-neighbours", + type=int, + dest="knn_n_neighbours", + help="Number of neighbours to use for KNN imputation" + ) + parser.add_argument( + "--iterative-max-iter", + type=int, + dest="iterative_max_iter", + help="Number of iterations to use for iterative imputation" + ) + parser.add_argument( + "--iterative-n-nearest-features", + type=int, + dest="iterative_n_nearest_features", + help="Number of nearest features to use for iterative imputation" ) - parser.add_argument("--imputer", choices=IMPUTERS, required=True, dest="imputer") return parser.parse_args() @@ -61,16 +87,16 @@ def apply_simle_imputer(df: pl.DataFrame): return apply_imputer(df, imputer) -def apply_knn_imputer(df: pl.DataFrame) -> pl.DataFrame: - imputer = KNNImputer(n_neighbors=N_NEIGHBORS, weights="distance") +def apply_knn_imputer(df: pl.DataFrame, n_neighbours: int) -> pl.DataFrame: + imputer = KNNImputer(n_neighbors=n_neighbours, weights="distance") return apply_imputer(df, imputer) -def apply_iterative_imputer(df: pl.DataFrame) -> pl.DataFrame: +def apply_iterative_imputer(df: pl.DataFrame, max_iter: int, n_nearest_features: int) -> pl.DataFrame: imputer = IterativeImputer( - max_iter=MAX_ITERATIONS, + max_iter=max_iter, sample_posterior=True, - n_nearest_features=N_NEAREST_FEATURES, + n_nearest_features=n_nearest_features, random_state=0, initial_strategy="mean", min_value=0, @@ -97,12 +123,19 @@ def main(): # logger.info("Separating genes with high number of zeros") # df, high_zero_genes_df = separate_genes_with_high_number_of_zeros(count_df) - if args.imputer == "iterative": - logger.info("Applying iterative imputation") - df = apply_iterative_imputer(df) - elif args.imputer == "knn": + if args.imputer == "knn": logger.info("Applying KNN imputation") - df = apply_knn_imputer(df) + df = apply_knn_imputer( + df, + args.knn_n_neighbours + ) + elif args.imputer == "iterative": + logger.info("Applying iterative imputation") + df = apply_iterative_imputer( + df, + args.iterative_max_iter, + args.iterative_n_nearest_features + ) elif args.imputer == "gene_mean": logger.info("Applying simple imputation") df = apply_simle_imputer(df) diff --git a/modules/local/impute_missing_values/main.nf b/modules/local/impute_missing_values/main.nf index d2618d0e..ef8a9734 100644 --- a/modules/local/impute_missing_values/main.nf +++ b/modules/local/impute_missing_values/main.nf @@ -10,6 +10,9 @@ process IMPUTE_MISSING_VALUES { input: tuple val(meta), path(count_file) val missing_value_imputer + val knn_n_neighbours + val iterative_max_iter + val iterative_n_nearest_features output: tuple val(meta), path('*.imputed.parquet'), emit: counts @@ -21,7 +24,10 @@ process IMPUTE_MISSING_VALUES { """ impute_missing_values.py \\ --counts $count_file \\ - --imputer $missing_value_imputer + --imputer $missing_value_imputer \\ + --knn-n-neighbours $knn_n_neighbours \\ + --iterative-max-iter $iterative_max_iter \\ + --iterative-n-nearest-features $iterative_n_nearest_features """ } diff --git a/nextflow.config b/nextflow.config index 40bb9c7f..47cd67ab 100644 --- a/nextflow.config +++ b/nextflow.config @@ -52,7 +52,12 @@ params { quantile_norm_target_distrib = 'uniform' nb_sections = 20 nb_candidates_per_section = 250 - missing_value_imputer = 'iterative' + + // missing value imputation + missing_value_imputer = 'knn' + iterative_imputer_max_iter = 10 + knn_imputer_n_neighbours = 20 + iterative_imputer_n_nearest_features = 100 // stability scoring skip_genorm = false diff --git a/nextflow_schema.json b/nextflow_schema.json index 6bdbb562..e5462244 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -285,14 +285,46 @@ "enum": ["uniform", "normal"], "default": "uniform", "help_text": "In order to compare counts between samples and different datasets, all normalised counts are quantile normalised and mapped to a specific distribution. The pipeline uses scikit-learn's quantile_transform function. You can select the target distribution to map counts to." - }, + } + } + }, + "missing_value_imputation_options": { + "title": "Missing value imputation options", + "type": "object", + "fa_icon": "fas fa-chart-line", + "description": "Options related to missing value imputation.", + "properties": { "missing_value_imputer": { "type": "string", "description": "Type of imputation method to use for missing values", - "fa_icon": "fas fa-bezier-curve", - "enum": ["iterative", "knn", "gene_mean"], - "default": "iterative", + "fa_icon": "fas fa-cogs", + "enum": ["knn", "iterative", "gene_mean"], + "default": "knn", "help_text": "The pipeline provides three options for imputing missing values: iterative, k-nearest neighbors, and gene mean. Iterative imputation uses a bayesian iterative algorithm to fill in missing values. K-nearest neighbors imputation uses a k-nearest neighbors algorithm to fill in missing values. Gene mean imputation is a very basic method that replaces missing values with the mean expression level of the gene across all samples." + }, + "knn_imputer_n_neighbours": { + "type": "integer", + "description": "Number of neighbors for KNN imputation", + "fa_icon": "fas fa-people-arrows", + "minimum": 1, + "help_text": "Number of neighbors for KNN imputation.", + "default": 20 + }, + "iterative_imputer_max_iter": { + "type": "integer", + "description": "Number of iterations for iterative imputation", + "fa_icon": "fas fa-undo", + "minimum": 1, + "help_text": "Number of iterations for iterative imputation. Increasing this value may improve imputation quality but will also increase runtime.", + "default": 10 + }, + "iterative_imputer_n_nearest_features": { + "type": "integer", + "description": "Number of nearest features for iterative imputation", + "fa_icon": "fas fa-users", + "minimum": 1, + "help_text": "Number of nearest features for iterative imputation.", + "default": 100 } } }, @@ -532,6 +564,9 @@ { "$ref": "#/$defs/statistical_options" }, + { + "$ref": "#/$defs/missing_value_imputation_options" + }, { "$ref": "#/$defs/stability_scoring_options" }, diff --git a/subworkflows/local/merge_data/main.nf b/subworkflows/local/merge_data/main.nf index a315e76b..25a24256 100644 --- a/subworkflows/local/merge_data/main.nf +++ b/subworkflows/local/merge_data/main.nf @@ -13,6 +13,9 @@ workflow MERGE_DATA { take: ch_normalised_counts missing_value_imputer + knn_imputer_n_neighbours + iterative_imputer_max_iter + iterative_imputer_n_nearest_features outdir main: @@ -59,7 +62,10 @@ workflow MERGE_DATA { IMPUTE_MISSING_VALUES( ch_all_counts.collect(), - missing_value_imputer + missing_value_imputer, + knn_imputer_n_neighbours, + iterative_imputer_max_iter, + iterative_imputer_n_nearest_features ) // ----------------------------------------------------------------- diff --git a/workflows/stableexpression.nf b/workflows/stableexpression.nf index a823a320..f036b74d 100644 --- a/workflows/stableexpression.nf +++ b/workflows/stableexpression.nf @@ -152,6 +152,9 @@ workflow STABLEEXPRESSION { MERGE_DATA ( ch_normalised_counts, params.missing_value_imputer, + params.knn_imputer_n_neighbours, + params.iterative_imputer_max_iter, + params.iterative_imputer_n_nearest_features, params.outdir ) From f83b742950c561277997b9a199669ec44e676506 Mon Sep 17 00:00:00 2001 From: Olivier Date: Thu, 11 Jun 2026 18:46:36 +0200 Subject: [PATCH 16/31] replace all float64 casts to float32 --- bin/aggregate_results.py | 2 +- bin/common.py | 2 +- bin/get_candidate_genes.py | 2 +- bin/make_parquet_chunks.py | 2 +- bin/merge_counts.py | 6 +++--- bin/normfinder.py | 4 ++-- bin/quantile_normalise.py | 2 +- 7 files changed, 10 insertions(+), 10 deletions(-) diff --git a/bin/aggregate_results.py b/bin/aggregate_results.py index fd536674..53067ed0 100755 --- a/bin/aggregate_results.py +++ b/bin/aggregate_results.py @@ -115,7 +115,7 @@ def concat_cast_to_string_and_drop_duplicates(files: list[Path]) -> pl.DataFrame def cast_count_columns_to_float(df: pl.DataFrame) -> pl.DataFrame: return df.select( pl.col(config.GENE_ID_COLNAME), - pl.exclude(config.GENE_ID_COLNAME).cast(pl.Float64), + pl.exclude(config.GENE_ID_COLNAME).cast(pl.Float32), ) diff --git a/bin/common.py b/bin/common.py index 59e1bb7e..b9301a49 100644 --- a/bin/common.py +++ b/bin/common.py @@ -52,7 +52,7 @@ def parse_count_table(file: Path): # whatever the name of the first col, rename it to "gene_id" return df.rename({first_col: config.GENE_ID_COLNAME}).select( pl.col(config.GENE_ID_COLNAME).cast(pl.String()), - pl.exclude(config.GENE_ID_COLNAME).cast(pl.Float64()), + pl.exclude(config.GENE_ID_COLNAME).cast(pl.Float32()), ) diff --git a/bin/get_candidate_genes.py b/bin/get_candidate_genes.py index c0f8c58b..b2efbd54 100755 --- a/bin/get_candidate_genes.py +++ b/bin/get_candidate_genes.py @@ -62,7 +62,7 @@ def parse_args(): def parse_stats(file: Path) -> pl.DataFrame: return pl.read_csv(file).select( pl.col(config.GENE_ID_COLNAME).cast(pl.String()), - pl.exclude(config.GENE_ID_COLNAME).cast(pl.Float64()), + pl.exclude(config.GENE_ID_COLNAME).cast(pl.Float32()), ) diff --git a/bin/make_parquet_chunks.py b/bin/make_parquet_chunks.py index 59b8df3a..4aa36a5e 100755 --- a/bin/make_parquet_chunks.py +++ b/bin/make_parquet_chunks.py @@ -51,7 +51,7 @@ def parse_count_dataset(file: Path, low_memory: bool) -> pl.LazyFrame: lf = pl.scan_parquet(file, low_memory=low_memory).fill_null(0).fill_nan(0) count_columns = get_count_columns(lf) cols = [pl.col(config.GENE_ID_COLNAME)] + [ - pl.col(column).replace({0: ZERO_REPLACE_VALUE}).cast(pl.Float64) + pl.col(column).replace({0: ZERO_REPLACE_VALUE}).cast(pl.Float32) for column in count_columns ] return lf.select(cols) diff --git a/bin/merge_counts.py b/bin/merge_counts.py index fbd8e03a..4cd06dd8 100755 --- a/bin/merge_counts.py +++ b/bin/merge_counts.py @@ -124,15 +124,15 @@ def make_tmp_sorted_dataframes( def formating_counts(lf: pl.LazyFrame): """ The config.GENE_ID_COLNAME column is cast - to String, and all other columns are cast to Float64. + to String, and all other columns are cast to Float32. """ - # casting count columns to Float64 + # casting count columns to Float32 # casting gene id column to String # replacing nans with nulls logger.info("Cleaning merged lazyframe") return lf.select( [pl.col(config.GENE_ID_COLNAME).cast(pl.String)] - + [pl.col(column).cast(pl.Float64) for column in get_count_columns(lf)] + + [pl.col(column).cast(pl.Float32) for column in get_count_columns(lf)] ).fill_nan(None) diff --git a/bin/normfinder.py b/bin/normfinder.py index 7cd49282..1f7be649 100755 --- a/bin/normfinder.py +++ b/bin/normfinder.py @@ -66,7 +66,7 @@ def compute_minvars(z: np.ndarray, target_idx: np.ndarray) -> np.ndarray: if nsamples < 2: raise ValueError("Number of samples must be at least 2") - minvars = np.empty(len(target_idx), dtype=np.float64) + minvars = np.empty(len(target_idx), dtype=np.float32) for k in prange(len(target_idx)): i = target_idx[k] # checking if counts for this gene are all nans @@ -305,7 +305,7 @@ def get_unbiased_intragroup_variances(self): # cast all values to float (to avoid issues when concat) unbiased_intragroup_variance_dfs = [ - df.select([pl.col(col).cast(pl.Float64) for col in df.columns]) + df.select([pl.col(col).cast(pl.Float32) for col in df.columns]) for df in unbiased_intragroup_variance_dfs ] diff --git a/bin/quantile_normalise.py b/bin/quantile_normalise.py index 5b26f4d9..28fd110a 100755 --- a/bin/quantile_normalise.py +++ b/bin/quantile_normalise.py @@ -56,7 +56,7 @@ def quantile_normalise(df: pl.DataFrame, target_distribution: str): return df.with_columns( pl.exclude(config.GENE_ID_COLNAME).map_batches( lambda x: quantile_transform(x.to_frame(), **kwargs).flatten(), - return_dtype=pl.Float64, + return_dtype=pl.Float32, ) ) From ef4ef9110e647c88ecd390de84c2ff76b929baf1 Mon Sep 17 00:00:00 2001 From: Olivier Date: Fri, 12 Jun 2026 07:24:35 +0200 Subject: [PATCH 17/31] add batch k means clustering before knn imputation for more scalability --- bin/impute_missing_values.py | 145 ++++++++++++------ .../tool/nf_core_stableexpression.xml | 2 +- modules/local/impute_missing_values/main.nf | 8 +- nextflow.config | 3 - nextflow_schema.json | 28 +--- subworkflows/local/merge_data/main.nf | 8 +- workflows/stableexpression.nf | 3 - 7 files changed, 106 insertions(+), 91 deletions(-) diff --git a/bin/impute_missing_values.py b/bin/impute_missing_values.py index 5820ce79..c38e4504 100755 --- a/bin/impute_missing_values.py +++ b/bin/impute_missing_values.py @@ -7,24 +7,31 @@ from pathlib import Path import config +import numpy as np import polars as pl from common import export_parquet, parse_count_table from sklearn.experimental import enable_iterative_imputer # noqa from sklearn.impute import IterativeImputer, KNNImputer, SimpleImputer +from sklearn.cluster import MiniBatchKMeans logging.basicConfig(level=logging.INFO) logger = logging.getLogger(__name__) OUTFILE_SUFFIX = ".imputed.parquet" -# KNN -N_NEIGHBORS = 10 +IMPUTERS = ["knn", "iterative", "gene_mean"] -# ITERATIVE -MAX_ITERATIONS = 10 -N_NEAREST_FEATURES = 100 +MAX_ITER = 10 +N_NEAREST_FEATURES = 50 -IMPUTERS = ["knn", "iterative", "gene_mean"] +MIN_NEIGHBOURS = 10 +MAX_NEIGHBOURS = 50 + +FACTOR_N_SAMPLES_TO_K = 2 + +N_CLUSTERS = 10 + +KEEP_EMPTY_FEATURES = True ##################################################### @@ -50,24 +57,6 @@ def parse_args(): dest="imputer", help="Imputer to use" ) - parser.add_argument( - "--knn-n-neighbours", - type=int, - dest="knn_n_neighbours", - help="Number of neighbours to use for KNN imputation" - ) - parser.add_argument( - "--iterative-max-iter", - type=int, - dest="iterative_max_iter", - help="Number of iterations to use for iterative imputation" - ) - parser.add_argument( - "--iterative-n-nearest-features", - type=int, - dest="iterative_n_nearest_features", - help="Number of nearest features to use for iterative imputation" - ) return parser.parse_args() @@ -77,31 +66,106 @@ def get_count_columns(df: pl.DataFrame): def apply_imputer(df: pl.DataFrame, imputer): # convert to numpy, impute, then convert back - count_matrix = df.select(get_count_columns(df)).to_numpy() - imputed_array = imputer.fit_transform(count_matrix) - return df.with_columns(pl.DataFrame(imputed_array, schema=get_count_columns(df))) + # we transpose the matrix so that each row is a sample and each column is a gene + # this is so that the imputer can use the gene expression values as features + # we transpose once it is a numpy array because numpty transposition is zero-copy transpose (just changes memory strides) + # the to_numpy method should be zero copy too, since all count columns have a float dtype + count_matrix = df.select(get_count_columns(df)).to_numpy().T # (n_samples, n_genes) + imputed_array = imputer.fit_transform(count_matrix) + return df.with_columns(pl.DataFrame(imputed_array.T, schema=get_count_columns(df))) def apply_simle_imputer(df: pl.DataFrame): - imputer = SimpleImputer() + imputer = SimpleImputer( + strategy="median", + copy=False, + keep_empty_features=KEEP_EMPTY_FEATURES, + ) return apply_imputer(df, imputer) -def apply_knn_imputer(df: pl.DataFrame, n_neighbours: int) -> pl.DataFrame: - imputer = KNNImputer(n_neighbors=n_neighbours, weights="distance") - return apply_imputer(df, imputer) +def get_number_of_neighbours(df: pl.DataFrame, k_min: int, k_max: int) -> int: + # proportion of missing values in the dataframe + nb_missing_values = ( + df.select(pl.exclude(config.GENE_ID_COLNAME)) + .null_count() + .sum_horizontal() + .item() + ) + n_genes = len(df) + n_samples = df.select(pl.exclude(config.GENE_ID_COLNAME)).width + missing_fraction = nb_missing_values / (n_genes * n_samples) + # return k as a function of the number of samples and missing values, with bounds + return int(np.clip( + int(np.sqrt(n_samples) / FACTOR_N_SAMPLES_TO_K * (1 + missing_fraction)), + k_min, k_max + )) + + +def cluster_dataframe(df: pl.DataFrame, n_clusters: int) -> pl.Series: + """ + Cluster the dataframe using MiniBatchKMeans. + + Returns + ------- + pl.Series + Cluster labels for each gene. + """ + # replace missing values with mean values accross samples (for clustering only) + df_for_clustering = ( + df.select(pl.exclude(config.GENE_ID_COLNAME)) + .with_columns( + mean_expression=pl.mean_horizontal(pl.all()) + ) + .fill_null(pl.col("mean_expression")) + .drop("mean_expression") + ) + + # cluster — MiniBatchKMeans scales well + kmeans = MiniBatchKMeans( + n_clusters=n_clusters, + random_state=42, + ) + # return cluster labels (gene per gene) + return pl.Series(kmeans.fit_predict(df_for_clustering)) + + +def apply_knn_imputer(df: pl.DataFrame) -> pl.DataFrame: + n_neighbours = get_number_of_neighbours(df, MIN_NEIGHBOURS, MAX_NEIGHBOURS) + logger.info(f"Using {n_neighbours} neighbours") + imputer = KNNImputer( + n_neighbors=n_neighbours, + weights="distance", + copy=False, + keep_empty_features=KEEP_EMPTY_FEATURES, + ) + logger.info(f"Making {N_CLUSTERS} clusters using MiniBatchKMeans") + labels = cluster_dataframe(df, n_clusters=N_CLUSTERS) -def apply_iterative_imputer(df: pl.DataFrame, max_iter: int, n_nearest_features: int) -> pl.DataFrame: + unique_labels = labels.unique() + for label in unique_labels: + cluster_mask = labels == label + cluster_df = df.filter(cluster_mask) + logger.info(f"Imputing cluster {label} ({cluster_df.shape[0]} genes)") + imputed_cluster_df = apply_imputer(cluster_df, imputer) + imputed_cluster_df.write_parquet(f"imputed_cluster_{label}.parquet") + + del df + return pl.concat([pl.read_parquet(f"imputed_cluster_{label}.parquet") for label in unique_labels]) + + +def apply_iterative_imputer(df: pl.DataFrame) -> pl.DataFrame: imputer = IterativeImputer( - max_iter=max_iter, + max_iter=MAX_ITER, sample_posterior=True, - n_nearest_features=n_nearest_features, - random_state=0, + n_nearest_features=N_NEAREST_FEATURES, + random_state=42, initial_strategy="mean", min_value=0, max_value=1, imputation_order="random", + keep_empty_features=KEEP_EMPTY_FEATURES, verbose=1, ) return apply_imputer(df, imputer) @@ -125,17 +189,10 @@ def main(): if args.imputer == "knn": logger.info("Applying KNN imputation") - df = apply_knn_imputer( - df, - args.knn_n_neighbours - ) + df = apply_knn_imputer(df) elif args.imputer == "iterative": logger.info("Applying iterative imputation") - df = apply_iterative_imputer( - df, - args.iterative_max_iter, - args.iterative_n_nearest_features - ) + df = apply_iterative_imputer(df) elif args.imputer == "gene_mean": logger.info("Applying simple imputation") df = apply_simle_imputer(df) diff --git a/galaxy/tool_shed/tool/nf_core_stableexpression.xml b/galaxy/tool_shed/tool/nf_core_stableexpression.xml index 27ccaa5e..50ddc0f9 100644 --- a/galaxy/tool_shed/tool/nf_core_stableexpression.xml +++ b/galaxy/tool_shed/tool/nf_core_stableexpression.xml @@ -469,7 +469,7 @@ VERSION="1.1dev"; echo "$VERSION" name="missing_value_imputer" type="select" label="Type of imputation method to use for missing values" - help="The pipeline provides three options for imputing missing values: iterative, k-nearest neighbors, and gene mean. Iterative imputation uses a bayesian iterative algorithm to fill in missing values. K-nearest neighbors imputation uses a k-nearest neighbors algorithm to fill in missing values. Gene mean imputation is a very basic method that replaces missing values with the mean expression level of the gene across all samples." + help="The pipeline provides three options for imputing missing values: iterative, k-nearest neighbours, and gene mean. Iterative imputation uses a bayesian iterative algorithm to fill in missing values. K-nearest neighbors imputation uses a k-nearest neighbors algorithm to fill in missing values. Gene mean imputation is a very basic method that replaces missing values with the mean expression level of the gene across all samples." optional="true" > diff --git a/modules/local/impute_missing_values/main.nf b/modules/local/impute_missing_values/main.nf index ef8a9734..d2618d0e 100644 --- a/modules/local/impute_missing_values/main.nf +++ b/modules/local/impute_missing_values/main.nf @@ -10,9 +10,6 @@ process IMPUTE_MISSING_VALUES { input: tuple val(meta), path(count_file) val missing_value_imputer - val knn_n_neighbours - val iterative_max_iter - val iterative_n_nearest_features output: tuple val(meta), path('*.imputed.parquet'), emit: counts @@ -24,10 +21,7 @@ process IMPUTE_MISSING_VALUES { """ impute_missing_values.py \\ --counts $count_file \\ - --imputer $missing_value_imputer \\ - --knn-n-neighbours $knn_n_neighbours \\ - --iterative-max-iter $iterative_max_iter \\ - --iterative-n-nearest-features $iterative_n_nearest_features + --imputer $missing_value_imputer """ } diff --git a/nextflow.config b/nextflow.config index 47cd67ab..0f949dc6 100644 --- a/nextflow.config +++ b/nextflow.config @@ -55,9 +55,6 @@ params { // missing value imputation missing_value_imputer = 'knn' - iterative_imputer_max_iter = 10 - knn_imputer_n_neighbours = 20 - iterative_imputer_n_nearest_features = 100 // stability scoring skip_genorm = false diff --git a/nextflow_schema.json b/nextflow_schema.json index e5462244..af87e98e 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -298,33 +298,9 @@ "type": "string", "description": "Type of imputation method to use for missing values", "fa_icon": "fas fa-cogs", - "enum": ["knn", "iterative", "gene_mean"], + "enum": ["knn", "iterative", "simple"], "default": "knn", - "help_text": "The pipeline provides three options for imputing missing values: iterative, k-nearest neighbors, and gene mean. Iterative imputation uses a bayesian iterative algorithm to fill in missing values. K-nearest neighbors imputation uses a k-nearest neighbors algorithm to fill in missing values. Gene mean imputation is a very basic method that replaces missing values with the mean expression level of the gene across all samples." - }, - "knn_imputer_n_neighbours": { - "type": "integer", - "description": "Number of neighbors for KNN imputation", - "fa_icon": "fas fa-people-arrows", - "minimum": 1, - "help_text": "Number of neighbors for KNN imputation.", - "default": 20 - }, - "iterative_imputer_max_iter": { - "type": "integer", - "description": "Number of iterations for iterative imputation", - "fa_icon": "fas fa-undo", - "minimum": 1, - "help_text": "Number of iterations for iterative imputation. Increasing this value may improve imputation quality but will also increase runtime.", - "default": 10 - }, - "iterative_imputer_n_nearest_features": { - "type": "integer", - "description": "Number of nearest features for iterative imputation", - "fa_icon": "fas fa-users", - "minimum": 1, - "help_text": "Number of nearest features for iterative imputation.", - "default": 100 + "help_text": "The pipeline provides three options for imputing missing values: iterative, k-nearest neighbours, and gene mean. Iterative imputation uses a bayesian iterative algorithm to fill in missing values. K-nearest neighbors imputation uses a k-nearest neighbors algorithm to fill in missing values. Simple imputation is a very basic method that replaces missing values with the median expression level of the gene across all samples. In terms of memory usage, iterative >> knn x > simple. In cases where memory usage is a concern, consider decreasing the number of neighbours for KNN imputation or the number of nearest features for iterative imputation. On the contrary, you may want to increase these parameters if you want more accuracy." } } }, diff --git a/subworkflows/local/merge_data/main.nf b/subworkflows/local/merge_data/main.nf index 25a24256..a315e76b 100644 --- a/subworkflows/local/merge_data/main.nf +++ b/subworkflows/local/merge_data/main.nf @@ -13,9 +13,6 @@ workflow MERGE_DATA { take: ch_normalised_counts missing_value_imputer - knn_imputer_n_neighbours - iterative_imputer_max_iter - iterative_imputer_n_nearest_features outdir main: @@ -62,10 +59,7 @@ workflow MERGE_DATA { IMPUTE_MISSING_VALUES( ch_all_counts.collect(), - missing_value_imputer, - knn_imputer_n_neighbours, - iterative_imputer_max_iter, - iterative_imputer_n_nearest_features + missing_value_imputer ) // ----------------------------------------------------------------- diff --git a/workflows/stableexpression.nf b/workflows/stableexpression.nf index f036b74d..a823a320 100644 --- a/workflows/stableexpression.nf +++ b/workflows/stableexpression.nf @@ -152,9 +152,6 @@ workflow STABLEEXPRESSION { MERGE_DATA ( ch_normalised_counts, params.missing_value_imputer, - params.knn_imputer_n_neighbours, - params.iterative_imputer_max_iter, - params.iterative_imputer_n_nearest_features, params.outdir ) From 1ec67901474d957d0ba5e0c5a224f8d995627a42 Mon Sep 17 00:00:00 2001 From: Olivier Date: Fri, 12 Jun 2026 08:22:17 +0200 Subject: [PATCH 18/31] Update impute_missing_values.py --- bin/impute_missing_values.py | 42 +++++++++++++++++++++++++++++++++--- 1 file changed, 39 insertions(+), 3 deletions(-) diff --git a/bin/impute_missing_values.py b/bin/impute_missing_values.py index c38e4504..8e23411d 100755 --- a/bin/impute_missing_values.py +++ b/bin/impute_missing_values.py @@ -29,7 +29,7 @@ FACTOR_N_SAMPLES_TO_K = 2 -N_CLUSTERS = 10 +BASE_N_CLUSTERS = 10 KEEP_EMPTY_FEATURES = True @@ -85,6 +85,23 @@ def apply_simle_imputer(df: pl.DataFrame): def get_number_of_neighbours(df: pl.DataFrame, k_min: int, k_max: int) -> int: + """ + Returns the number of neighbours to use for KNN-imputation based on the number of samples and missing values. + + Parameters + ---------- + df : pl.DataFrame + The input dataframe. + k_min : int + The minimum number of neighbours. + k_max : int + The maximum number of neighbours. + + Returns + ------- + int + The number of neighbours to use for KNN-imputation. + """ # proportion of missing values in the dataframe nb_missing_values = ( df.select(pl.exclude(config.GENE_ID_COLNAME)) @@ -130,6 +147,24 @@ def cluster_dataframe(df: pl.DataFrame, n_clusters: int) -> pl.Series: return pl.Series(kmeans.fit_predict(df_for_clustering)) +def get_number_of_clusters(df: pl.DataFrame) -> int: + """ + Returns the number of clusters to use for KNN-imputation based on the number of samples and missing values. + In the very rare case where the number of samples is less than the base number of clusters, the number of clusters is set to the number of samples. + This is especially useful for some specific test cases where the number of samples is very small. + Parameters + ---------- + df : pl.DataFrame + The input dataframe. + + Returns + ------- + int + The number of clusters to use for KNN-imputation. + """ + return min(BASE_N_CLUSTERS, df.height) + + def apply_knn_imputer(df: pl.DataFrame) -> pl.DataFrame: n_neighbours = get_number_of_neighbours(df, MIN_NEIGHBOURS, MAX_NEIGHBOURS) logger.info(f"Using {n_neighbours} neighbours") @@ -140,8 +175,9 @@ def apply_knn_imputer(df: pl.DataFrame) -> pl.DataFrame: keep_empty_features=KEEP_EMPTY_FEATURES, ) - logger.info(f"Making {N_CLUSTERS} clusters using MiniBatchKMeans") - labels = cluster_dataframe(df, n_clusters=N_CLUSTERS) + n_clusters = get_number_of_clusters(df) + logger.info(f"Making {n_clusters} clusters using MiniBatchKMeans") + labels = cluster_dataframe(df, n_clusters=n_clusters) unique_labels = labels.unique() for label in unique_labels: From 19d50a7c8e2982265d80f739a6934a158ccf7a9e Mon Sep 17 00:00:00 2001 From: Olivier Date: Fri, 12 Jun 2026 08:22:34 +0200 Subject: [PATCH 19/31] update nf-test snapshots --- tests/default.nf.test.snap | 609 +++++++++--------- .../filter_and_rename_genes/main.nf.test.snap | 50 +- .../genorm/make_chunks/main.nf.test.snap | 46 +- .../get_candidate_genes/main.nf.test.snap | 60 +- .../local/merge_counts/main.nf.test.snap | 20 +- .../compute_cpm/main.nf.test.snap | 56 +- .../compute_tpm/main.nf.test.snap | 56 +- .../quantile_normalisation/main.nf.test.snap | 36 +- .../main.nf.test.snap | 52 +- .../local/genorm/main.nf.test.snap | 10 +- 10 files changed, 482 insertions(+), 513 deletions(-) diff --git a/tests/default.nf.test.snap b/tests/default.nf.test.snap index b72dac7b..3450e60c 100644 --- a/tests/default.nf.test.snap +++ b/tests/default.nf.test.snap @@ -216,8 +216,11 @@ "idmapping/gprofiler/mapped_gene_ids.csv", "idmapping/renamed", "idmapping/renamed/SRP254919.salmon.merged.gene_counts.top1000cov.assay.cleaned.renamed.parquet", - "merged_datasets", - "merged_datasets/whole_design.csv", + "merged_counts", + "merged_counts/all_counts.parquet", + "merged_data", + "merged_data/all_counts.missing_values_imputed.parquet", + "merged_data/whole_design.csv", "multiqc", "multiqc/multiqc_data", "multiqc/multiqc_data/llms-full.txt", @@ -308,50 +311,50 @@ "warnings/renaming_warning_reasons.tsv" ], [ - "all_genes_summary.csv:md5,7a05f123348f6fe44bbccbfa8006141a", + "all_genes_summary.csv:md5,5538e690bd3451cc048c19e5ee85a78c", "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", - "section_1.most_stable_genes_summary.csv:md5,1875d2074dca643a1ffa6f05e6fe322f", - "section_1.most_stable_genes_transposed_counts.csv:md5,f0aa2ebe8060c9588f613cad96719e52", - "section_10.most_stable_genes_summary.csv:md5,0eba91c8cceb89aae830f67d8f815b63", - "section_10.most_stable_genes_transposed_counts.csv:md5,c37f10ace6e600d6da7f38b8f7bb6aab", - "section_11.most_stable_genes_summary.csv:md5,b791fef8fae7ad37f765b82d6184b8f2", - "section_11.most_stable_genes_transposed_counts.csv:md5,d1bbab66c208ad799a63de4aa436f225", - "section_12.most_stable_genes_summary.csv:md5,f5adbe6824eb8df9cd4869ac97022b29", - "section_12.most_stable_genes_transposed_counts.csv:md5,d2ed9bc7016d79a717d215fa63ea09a6", - "section_13.most_stable_genes_summary.csv:md5,86c1287421c650d64d0b6bfea5c24b4f", - "section_13.most_stable_genes_transposed_counts.csv:md5,95ccfb3e5c438b69abe6d801cd769e95", - "section_14.most_stable_genes_summary.csv:md5,5d96c2e2e6b5959b90a20dfb452d22da", - "section_14.most_stable_genes_transposed_counts.csv:md5,e5205e234aaab1798f864c47201a07cd", - "section_15.most_stable_genes_summary.csv:md5,e433c354001b093067e222e4eedfed2d", - "section_15.most_stable_genes_transposed_counts.csv:md5,2c8727aee96e59c4e12848cc30426271", - "section_16.most_stable_genes_summary.csv:md5,a03738fbf51db8e2ecea10724c9c9dfc", - "section_16.most_stable_genes_transposed_counts.csv:md5,dc586fea605dd682246045f22753f357", - "section_17.most_stable_genes_summary.csv:md5,301cd19e3d87d645343824f0dbd7fe41", - "section_17.most_stable_genes_transposed_counts.csv:md5,33da9c08ab89ef93aa12c4fbd59b0bbf", - "section_18.most_stable_genes_summary.csv:md5,07bc8d1d6887949026baf2f56ab8cc3e", - "section_18.most_stable_genes_transposed_counts.csv:md5,103f7fc3d836719599e8fd4347dde840", - "section_19.most_stable_genes_summary.csv:md5,a67a66be4263248aba4c745d1f8bfd7a", - "section_19.most_stable_genes_transposed_counts.csv:md5,cfd43c3c9a6bc1833430bad191912e04", - "section_2.most_stable_genes_summary.csv:md5,f3e9081a79f12aa76d9966b7b816def8", - "section_2.most_stable_genes_transposed_counts.csv:md5,f001d1b66eab6232a5aa3c1252856204", - "section_20.most_stable_genes_summary.csv:md5,3da0fb75961fc73c19f5cbefb656f126", - "section_20.most_stable_genes_transposed_counts.csv:md5,8c1897be3310417adb83b864d3fe7653", - "section_3.most_stable_genes_summary.csv:md5,48620b74e53c44bd37b780797c48d525", - "section_3.most_stable_genes_transposed_counts.csv:md5,fb02ae7c69383dac84611ca88a892795", - "section_4.most_stable_genes_summary.csv:md5,c07113aa994cd77c7d85a95897045cf6", - "section_4.most_stable_genes_transposed_counts.csv:md5,5cfcc0b503c0d716cceed28977eb1a5a", - "section_5.most_stable_genes_summary.csv:md5,6edfa7465269a68b82e7ecdd90933ced", - "section_5.most_stable_genes_transposed_counts.csv:md5,ebac4d228a4138ec7aed06063f1135f0", - "section_6.most_stable_genes_summary.csv:md5,3ceb7ee2ca0e300eca722938a555bc36", - "section_6.most_stable_genes_transposed_counts.csv:md5,154bda2945835afb944997a057986b7b", - "section_7.most_stable_genes_summary.csv:md5,7009d971071a4989df5e65855c675459", - "section_7.most_stable_genes_transposed_counts.csv:md5,ecb2db18fef826caa930f8b9493496b7", - "section_8.most_stable_genes_summary.csv:md5,efe7d6aba9d17bb1f45c4b1447414541", - "section_8.most_stable_genes_transposed_counts.csv:md5,e875b107e29fbde0dfd94b747c57c669", - "section_9.most_stable_genes_summary.csv:md5,c889f1266ad0baba53d542a1fd55c2dd", - "section_9.most_stable_genes_transposed_counts.csv:md5,6cd3306ce043bf45d664d4ecc178bb78", + "section_1.most_stable_genes_summary.csv:md5,235bb293b13df9eb04a643bcc57b28ca", + "section_1.most_stable_genes_transposed_counts.csv:md5,aced62f5447fed2ad80a42b424159078", + "section_10.most_stable_genes_summary.csv:md5,96da41a116f7a9038870607156e2f986", + "section_10.most_stable_genes_transposed_counts.csv:md5,92fc5929d40316ed4295d28007f27141", + "section_11.most_stable_genes_summary.csv:md5,7ec74734f0b60a397d3e8b964960a5fc", + "section_11.most_stable_genes_transposed_counts.csv:md5,08c786a9859eeae873dacbec33bb2e9e", + "section_12.most_stable_genes_summary.csv:md5,277fad4182321646491966f3a046a7c9", + "section_12.most_stable_genes_transposed_counts.csv:md5,849139a7f1d548e5560d5e3dfaa96bf0", + "section_13.most_stable_genes_summary.csv:md5,31763653319479eeea85aeeba8f28d16", + "section_13.most_stable_genes_transposed_counts.csv:md5,93070ff7b4e36a2486a4b8b45f957ac8", + "section_14.most_stable_genes_summary.csv:md5,665204d7f41048424848193fc970ebdb", + "section_14.most_stable_genes_transposed_counts.csv:md5,dd80d0a9118f20f47b3d06e479423713", + "section_15.most_stable_genes_summary.csv:md5,5d96df87df0f9547abcf61f134da582a", + "section_15.most_stable_genes_transposed_counts.csv:md5,ff3f4767f8372f633e9bffc4e54dd2b9", + "section_16.most_stable_genes_summary.csv:md5,42e5ba0db9832a59d1a9f617ddc30152", + "section_16.most_stable_genes_transposed_counts.csv:md5,2cc1927b06aef353df30a6f3e1172da6", + "section_17.most_stable_genes_summary.csv:md5,7ecadaae7f27dcd47550f724e9b6ec7d", + "section_17.most_stable_genes_transposed_counts.csv:md5,85a7c2959d89324cc6f250493d4520a7", + "section_18.most_stable_genes_summary.csv:md5,1424be59b8dab7792b90a34307fe3fec", + "section_18.most_stable_genes_transposed_counts.csv:md5,69a36fb3843257e1c67fe06282a22671", + "section_19.most_stable_genes_summary.csv:md5,d2540346e52679df9a3ddc2328f8a766", + "section_19.most_stable_genes_transposed_counts.csv:md5,4e4b2100fca4c6d461333edf6e5fd9e7", + "section_2.most_stable_genes_summary.csv:md5,98785f159ef342146b5f38e46ca7db41", + "section_2.most_stable_genes_transposed_counts.csv:md5,3b6cf1ced09a0f13588f8d48890b5f98", + "section_20.most_stable_genes_summary.csv:md5,d370e295f0a9ab69f347868ae9bc795a", + "section_20.most_stable_genes_transposed_counts.csv:md5,5691275bafee54ec2520d82011295495", + "section_3.most_stable_genes_summary.csv:md5,1e24fc57b9c0d016464ecef31aa6175b", + "section_3.most_stable_genes_transposed_counts.csv:md5,35a2874cff7099001a6e45577b36817f", + "section_4.most_stable_genes_summary.csv:md5,389f7475433841bf56dc604ea2b3074e", + "section_4.most_stable_genes_transposed_counts.csv:md5,2794b4e29fa21c53604cfc189ce6ecdf", + "section_5.most_stable_genes_summary.csv:md5,d840d8b9235c71b35a6bb6c706439adb", + "section_5.most_stable_genes_transposed_counts.csv:md5,4d4395309a84a820d6c3169906824657", + "section_6.most_stable_genes_summary.csv:md5,3bd987f7861d38bf2e8a1258d148d7aa", + "section_6.most_stable_genes_transposed_counts.csv:md5,73806b0e960342be7378aface0618229", + "section_7.most_stable_genes_summary.csv:md5,91d4d3fe465bb5f7b72bc7b0352cf5ab", + "section_7.most_stable_genes_transposed_counts.csv:md5,2067a0574e51f1fe8bf590addbfd6ea9", + "section_8.most_stable_genes_summary.csv:md5,8488e6bb76de4d4dd56443f783fc0517", + "section_8.most_stable_genes_transposed_counts.csv:md5,da4a0fc57e3969d39d4271dee8bda0c3", + "section_9.most_stable_genes_summary.csv:md5,909e8c24a654a028d4d367a4a6befcb8", + "section_9.most_stable_genes_transposed_counts.csv:md5,19f9c3e887fafd82b8e2fdfb7209b98a", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,7a05f123348f6fe44bbccbfa8006141a", + "all_genes_summary.csv:md5,5538e690bd3451cc048c19e5ee85a78c", "whole_design.csv:md5,f29515bc2c783e593fb9028127342593", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", "Mus_musculus.GRCm39.116.chr.gff3.gz:md5,8db25f5186d0671a328b41b650af667f", @@ -362,48 +365,48 @@ "mapped_gene_ids.csv:md5,78934d2ac5fe7d863f114c5703f57a06", "whole_design.csv:md5,f29515bc2c783e593fb9028127342593", "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", - "multiqc_gene_statistics.txt:md5,af3ea257f6449837b490a4b2ed28ca32", - "multiqc_genes_section_1.txt:md5,98ad704d2d7cdf04da4dd50a2f154ede", - "multiqc_genes_section_1_1.txt:md5,4864390039388103ec51851517996976", - "multiqc_genes_section_1_10.txt:md5,ea599e1b5c33e05c7a0b330f5ab42908", - "multiqc_genes_section_1_11.txt:md5,33887b7c1d9c96e49fd4e74c04fed0f0", - "multiqc_genes_section_1_12.txt:md5,c3cef1394f448939be8daa546a852551", - "multiqc_genes_section_1_13.txt:md5,68d3e235ac209a0e85d6ac0b17767b81", - "multiqc_genes_section_1_14.txt:md5,592d6408eb1349b16fbeb90262556819", - "multiqc_genes_section_1_15.txt:md5,4df1e145fad48d5299e01bf37b3bdc9c", - "multiqc_genes_section_1_16.txt:md5,ba8097cd6cfb2b412bdeef2f3ce74f9b", - "multiqc_genes_section_1_17.txt:md5,dbbac6c02156a5e447b56578f939a66d", - "multiqc_genes_section_1_18.txt:md5,b2a65f123f62eec29e1f1b5ac8dfffae", - "multiqc_genes_section_1_19.txt:md5,4f92a36a536bcd64ffd0b0d5b12eb51b", - "multiqc_genes_section_1_2.txt:md5,c758ea7d7d677088c2b24d6eb1f35f39", - "multiqc_genes_section_1_3.txt:md5,b526025449711a828d78dd8f9b07370d", - "multiqc_genes_section_1_4.txt:md5,1c237f2e3a327ead6999b8beb9cf91c3", - "multiqc_genes_section_1_5.txt:md5,cc24c7bb99373b4b50668cb448388fc3", - "multiqc_genes_section_1_6.txt:md5,332583d3762d95a1d96b620b8bab5e5e", - "multiqc_genes_section_1_7.txt:md5,f3d629bd519a9dccb2c2b4f9d9525aa5", - "multiqc_genes_section_1_8.txt:md5,aa3a641ebffa065777bb35e61c209309", - "multiqc_genes_section_1_9.txt:md5,9e6e41dbfed795908fb4a346454c5694", + "multiqc_gene_statistics.txt:md5,f735a80afab6c5f8e73a7ec978a80346", + "multiqc_genes_section_1.txt:md5,6fe6a9d8eccd453f0332ab231a92460a", + "multiqc_genes_section_1_1.txt:md5,077e8f91f216b4c0984dad2fdf635163", + "multiqc_genes_section_1_10.txt:md5,dab0146e86c115fac2f113caf239698a", + "multiqc_genes_section_1_11.txt:md5,3bdb3251c00eba444633beeea3400034", + "multiqc_genes_section_1_12.txt:md5,ecc01f757c9880a6eb9c38b840133942", + "multiqc_genes_section_1_13.txt:md5,cfdd3d0757d40fa1f7d308e5c5d278b0", + "multiqc_genes_section_1_14.txt:md5,b479ef261fc3df454c21e9eb8da0207f", + "multiqc_genes_section_1_15.txt:md5,2abb3db1579481995562814fac7a02c8", + "multiqc_genes_section_1_16.txt:md5,da9cddd1b2f639851cd999618502e80c", + "multiqc_genes_section_1_17.txt:md5,3348bc365ffdd18551e7298b0c18b325", + "multiqc_genes_section_1_18.txt:md5,ecc3cba3edc03920b2dd44b4c1248ea2", + "multiqc_genes_section_1_19.txt:md5,d8a301fe9488aca442e8b95356025023", + "multiqc_genes_section_1_2.txt:md5,1c23c272b77d3eadfa2551b16dcc3a82", + "multiqc_genes_section_1_3.txt:md5,9062a511786c971bd09d7e24d32b2ab6", + "multiqc_genes_section_1_4.txt:md5,e102660577e5e91fda803d5d3b015379", + "multiqc_genes_section_1_5.txt:md5,35ad039a1269cd686173a17f7db073ca", + "multiqc_genes_section_1_6.txt:md5,9facf0b0c8910de9126421ecd93315e8", + "multiqc_genes_section_1_7.txt:md5,c03683d3a0e04f3351fb3b537968a117", + "multiqc_genes_section_1_8.txt:md5,a8dfb398d33c679b54b60856402f21a1", + "multiqc_genes_section_1_9.txt:md5,789c7709b67e8e4ff03d83cce648eb0f", "multiqc_id_mapping_stats.txt:md5,600e9fa5656a06a3288ea7e6d9fef647", - "multiqc_normalised_expr_distrib_section_1.txt:md5,89415fc6e1439b74fd7dd3b105a18d82", - "multiqc_normalised_expr_distrib_section_1_1.txt:md5,ebb8be92a4abeffcea92e4e7ca25b7a0", - "multiqc_normalised_expr_distrib_section_1_10.txt:md5,64b2d4ba9046bf47c3c3817930123381", - "multiqc_normalised_expr_distrib_section_1_11.txt:md5,53bf17f93cd37a1c54a06acb5d9104f0", - "multiqc_normalised_expr_distrib_section_1_12.txt:md5,ca1390ebdfcaa9fa8b01c4b90e0295e0", - "multiqc_normalised_expr_distrib_section_1_13.txt:md5,33054b9a198b20d404e28ecaf956a091", - "multiqc_normalised_expr_distrib_section_1_14.txt:md5,11db8dc453c18bcb1fac133ba825f63f", - "multiqc_normalised_expr_distrib_section_1_15.txt:md5,a15013140a4a77850a4453dd19ce5b25", - "multiqc_normalised_expr_distrib_section_1_16.txt:md5,d259e46df12b50d915ab9822d2f8bf3d", - "multiqc_normalised_expr_distrib_section_1_17.txt:md5,043eacbfb4c883c07f29f005a22f5fd7", - "multiqc_normalised_expr_distrib_section_1_18.txt:md5,c5d4cf7f39f5a7aa8075b74ddac2a402", - "multiqc_normalised_expr_distrib_section_1_19.txt:md5,28a16f8e774c618c4aeaac8aed949705", - "multiqc_normalised_expr_distrib_section_1_2.txt:md5,286dcbc6133b3b4fb37033892298ac25", - "multiqc_normalised_expr_distrib_section_1_3.txt:md5,8cffb578d250586067815f9ab8038e69", - "multiqc_normalised_expr_distrib_section_1_4.txt:md5,a3166f54f6da7698c01cf35bc0b0626b", + "multiqc_normalised_expr_distrib_section_1.txt:md5,7bc06c09f84f48a7409da419b6dd71a7", + "multiqc_normalised_expr_distrib_section_1_1.txt:md5,84ab9626d86e90ee14fbaec3b58b0883", + "multiqc_normalised_expr_distrib_section_1_10.txt:md5,69d9ea655368e4b61ea3c49dc336ccc3", + "multiqc_normalised_expr_distrib_section_1_11.txt:md5,d410138157de726d67350f46d9494953", + "multiqc_normalised_expr_distrib_section_1_12.txt:md5,e0767d376933c8849a08ba998acaee39", + "multiqc_normalised_expr_distrib_section_1_13.txt:md5,76d7fd5652e923ad09000bc80f9aa4ca", + "multiqc_normalised_expr_distrib_section_1_14.txt:md5,c2f5d8df152814685c6f559ed0bfe475", + "multiqc_normalised_expr_distrib_section_1_15.txt:md5,6f0420b26e1bdba0dd53604bd6e82989", + "multiqc_normalised_expr_distrib_section_1_16.txt:md5,1a5a56d8661bcc0f986058a90ebb81b0", + "multiqc_normalised_expr_distrib_section_1_17.txt:md5,8c4c83bdcc648b4cbd5876c58d8c30d8", + "multiqc_normalised_expr_distrib_section_1_18.txt:md5,832ad87d6f4689a459e443a032f67f9d", + "multiqc_normalised_expr_distrib_section_1_19.txt:md5,83be81b32d7c48685015c2ede21fb511", + "multiqc_normalised_expr_distrib_section_1_2.txt:md5,4540363f2bdb14b432e9cf3b1567db5a", + "multiqc_normalised_expr_distrib_section_1_3.txt:md5,9e190919da3fc866beb78076ad8c4a33", + "multiqc_normalised_expr_distrib_section_1_4.txt:md5,3712b42a48fa257ad75f2deba10f631d", "multiqc_normalised_expr_distrib_section_1_5.txt:md5,d927439c8e03a2e6f2ad18f16a90afff", - "multiqc_normalised_expr_distrib_section_1_6.txt:md5,b9d863f24a52af1ea1b44769c6790893", - "multiqc_normalised_expr_distrib_section_1_7.txt:md5,b55d52062f11ffa588d885c61a313fba", - "multiqc_normalised_expr_distrib_section_1_8.txt:md5,23b0e6eadf37679ac3c55e9c80e0a041", - "multiqc_normalised_expr_distrib_section_1_9.txt:md5,5f3231dc5fb9c1aa1b6fc89136f76a37", + "multiqc_normalised_expr_distrib_section_1_6.txt:md5,b2d87c20485c9ffdd0237c4372d9d6e9", + "multiqc_normalised_expr_distrib_section_1_7.txt:md5,a090c91cfac6846434956fbf4a546ada", + "multiqc_normalised_expr_distrib_section_1_8.txt:md5,fc38f369649cd2f78c9eda4538a6e458", + "multiqc_normalised_expr_distrib_section_1_9.txt:md5,3baea1b3e3a0c3dff2f16e2213c132e4", "multiqc_null_values_filter.txt:md5,64ca3e3acc613e1b85733fd847712a37", "multiqc_ratio_nulls.txt:md5,7063b06cadcf854671bc9cefb51a6fe3", "multiqc_ratio_zeros.txt:md5,7063b06cadcf854671bc9cefb51a6fe3", @@ -419,10 +422,10 @@ "renaming_warning_reasons.tsv:md5,0a11a59b5b547a39ab7a0e4dac622173" ] ], - "timestamp": "2026-06-10T20:15:14.835851129", + "timestamp": "2026-06-12T07:42:00.944280889", "meta": { "nf-test": "0.9.5", - "nextflow": "26.04.3" + "nextflow": "25.04.0" } }, "-profile test_skip_id_mapping": { @@ -434,8 +437,11 @@ "gene_length/gene_transcript_lengths.csv", "idmapping", "idmapping/gene_ids.txt", - "merged_datasets", - "merged_datasets/whole_design.csv", + "merged_counts", + "merged_counts/all_counts.parquet", + "merged_data", + "merged_data/all_counts.missing_values_imputed.parquet", + "merged_data/whole_design.csv", "multiqc", "multiqc/multiqc_data", "multiqc/multiqc_data/llms-full.txt", @@ -479,10 +485,10 @@ "zero_values_filter_stats.csv:md5,ebad5386e7c670ff04887eff67c8faae" ] ], - "timestamp": "2026-06-10T20:53:13.223083446", + "timestamp": "2026-06-12T08:21:57.94155834", "meta": { "nf-test": "0.9.5", - "nextflow": "26.04.3" + "nextflow": "25.04.0" } }, "-profile test_dataset_custom_mapping_and_gene_length": { @@ -508,7 +514,7 @@ "idmapping/global_gene_id_mapping.csv", "idmapping/global_gene_metadata.csv", "idmapping/renamed", - "merged_datasets", + "merged_data", "multiqc", "multiqc/multiqc_data", "multiqc/multiqc_data/llms-full.txt", @@ -534,10 +540,10 @@ "id_mapping_stats.csv:md5,20bd1443c864cb013c97efc760465e9c" ] ], - "timestamp": "2026-03-21T12:53:02.926804675", + "timestamp": "2026-06-12T08:03:51.859316293", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } }, "-profile test": { @@ -627,8 +633,11 @@ "idmapping/gprofiler/mapped_gene_ids.csv", "idmapping/renamed", "idmapping/renamed/E_ENAD_3_rnaseq.rnaseq.raw.counts.cleaned.renamed.parquet", - "merged_datasets", - "merged_datasets/whole_design.csv", + "merged_counts", + "merged_counts/all_counts.parquet", + "merged_data", + "merged_data/all_counts.missing_values_imputed.parquet", + "merged_data/whole_design.csv", "multiqc", "multiqc/multiqc_data", "multiqc/multiqc_data/llms-full.txt", @@ -728,50 +737,50 @@ "warnings" ], [ - "all_genes_summary.csv:md5,d5624bf709334c22a3e5c81bc65617d6", + "all_genes_summary.csv:md5,8d09effa90815a295fe47fcb276f73eb", "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", - "section_1.most_stable_genes_summary.csv:md5,e604d30bdf8713182366544ccc18000e", - "section_1.most_stable_genes_transposed_counts.csv:md5,e96d0b9352df7050eaca1cbf03453ad5", - "section_10.most_stable_genes_summary.csv:md5,fd93a8e6016b8b661fec411ec57d9c6a", - "section_10.most_stable_genes_transposed_counts.csv:md5,2a14b91edad838a8e41c87ac4b5ba9c2", - "section_11.most_stable_genes_summary.csv:md5,35e1f8aaacbaa9d1cea7ff2856e19420", - "section_11.most_stable_genes_transposed_counts.csv:md5,7a72b5afb53f9254984a79d27fb1addb", - "section_12.most_stable_genes_summary.csv:md5,ae77af1e0b76cdf253e8be3d498a6731", - "section_12.most_stable_genes_transposed_counts.csv:md5,552dfbfd725b0daa4c80b9ca56deca88", - "section_13.most_stable_genes_summary.csv:md5,1b34eaed54b4d1ed7d87f73189d53bd7", - "section_13.most_stable_genes_transposed_counts.csv:md5,c48afdbc524aba28ade9f4302eae5a79", - "section_14.most_stable_genes_summary.csv:md5,2fdf1e8288e42f5658e3bbb342833a13", - "section_14.most_stable_genes_transposed_counts.csv:md5,0efa64fe7ceaa6a2f48855b838c69cb5", - "section_15.most_stable_genes_summary.csv:md5,be7632ac54e53296e03f55c621519181", - "section_15.most_stable_genes_transposed_counts.csv:md5,f95ef7a986e0608e0ad2d04841eda938", - "section_16.most_stable_genes_summary.csv:md5,77a012e88f1e37a00911bda93ae775cd", - "section_16.most_stable_genes_transposed_counts.csv:md5,2a88d1b989aa4613f79c5ab6d9ffed86", - "section_17.most_stable_genes_summary.csv:md5,81cdac028b5dcd67ce9d27e4fb44c0dc", - "section_17.most_stable_genes_transposed_counts.csv:md5,9ee009023853786771765f802e95f818", - "section_18.most_stable_genes_summary.csv:md5,af5ac149647a38b76e54c67319b9649b", - "section_18.most_stable_genes_transposed_counts.csv:md5,b08d66dbe529a0038a09cd6c435a604c", + "section_1.most_stable_genes_summary.csv:md5,3c88cab0d830f031acc3d5719dd2b9bd", + "section_1.most_stable_genes_transposed_counts.csv:md5,70ec8441edfc5823446ce3e6665dceda", + "section_10.most_stable_genes_summary.csv:md5,d09a8c52640ef4548fb6a7acef3c5c0f", + "section_10.most_stable_genes_transposed_counts.csv:md5,5fdc629e390cc4475a86d147b0edcf6a", + "section_11.most_stable_genes_summary.csv:md5,e33ec7e62082291a51b5385b1751accb", + "section_11.most_stable_genes_transposed_counts.csv:md5,516be6d5af3ec4779eed1c380b78cf1b", + "section_12.most_stable_genes_summary.csv:md5,5980cc54da1daa0de5927bf935e46b88", + "section_12.most_stable_genes_transposed_counts.csv:md5,00da764d69da470ddff776af06ecfebb", + "section_13.most_stable_genes_summary.csv:md5,5cb25797abf899d36b29c3074bbd7807", + "section_13.most_stable_genes_transposed_counts.csv:md5,ec7803b3ad2840f04eec1cf61491940c", + "section_14.most_stable_genes_summary.csv:md5,b3dc34744ad2c05920f5cd22d74dad2a", + "section_14.most_stable_genes_transposed_counts.csv:md5,b61dcee6f349a0e2c51374b5248f68ed", + "section_15.most_stable_genes_summary.csv:md5,15eb7a1e69c9d71bba7835dc7b40ee5d", + "section_15.most_stable_genes_transposed_counts.csv:md5,9402e35fb495d4bab3adc53afde03c7a", + "section_16.most_stable_genes_summary.csv:md5,db730a65af6650a4c46427d06da182e9", + "section_16.most_stable_genes_transposed_counts.csv:md5,830cbb42639e72a1fc4f790f0310ff5e", + "section_17.most_stable_genes_summary.csv:md5,2f823c86ca06f8ba1e760033a8fd32a3", + "section_17.most_stable_genes_transposed_counts.csv:md5,38b0d132084d5aa1f32b02a9448f66c3", + "section_18.most_stable_genes_summary.csv:md5,bd6ef178e6b23b8e96ea6b9051174492", + "section_18.most_stable_genes_transposed_counts.csv:md5,69d877a5fa9f5ca6886c939f736d48e2", "section_19.most_stable_genes_summary.csv:md5,d6ebc49aba6db637c09e973b7e2a1cd4", "section_19.most_stable_genes_transposed_counts.csv:md5,3e13b4a9e1564e1b23106f7b5b6588ae", - "section_2.most_stable_genes_summary.csv:md5,f8519a4595a7f15ae45f8fb366b61e99", - "section_2.most_stable_genes_transposed_counts.csv:md5,b4088c96790b85f2b95d99f10083f7b6", + "section_2.most_stable_genes_summary.csv:md5,32a6e93631bcd37a1d3a478f30c70cac", + "section_2.most_stable_genes_transposed_counts.csv:md5,a16c3566aec9d423fd1dc57aec7bc2ac", "section_20.most_stable_genes_summary.csv:md5,41b8421059ca95352617184211753e86", "section_20.most_stable_genes_transposed_counts.csv:md5,f3715dd47e78d261c38339135703cf12", - "section_3.most_stable_genes_summary.csv:md5,e35a7c5b9bb4ca1da415706f54426980", - "section_3.most_stable_genes_transposed_counts.csv:md5,33b5e74a890b2816a212282103e6eb9f", - "section_4.most_stable_genes_summary.csv:md5,c8bbd11b38f45118287e36b90f02ec72", - "section_4.most_stable_genes_transposed_counts.csv:md5,d2f7c58e9f8411123fd00e11737b90e0", - "section_5.most_stable_genes_summary.csv:md5,9cbc2fd2b0fcc74411e164da330814d2", - "section_5.most_stable_genes_transposed_counts.csv:md5,877aefb00c4102c2948e49e4c2bb7604", - "section_6.most_stable_genes_summary.csv:md5,2fca0a63f47f32f298c889266387c739", - "section_6.most_stable_genes_transposed_counts.csv:md5,3bc07946c07cda995210b5c865f36607", - "section_7.most_stable_genes_summary.csv:md5,4ff0d5a49986a8777045f9f37973c5d2", - "section_7.most_stable_genes_transposed_counts.csv:md5,97d77b38e839c45dfc2a38001ebde008", - "section_8.most_stable_genes_summary.csv:md5,5c38cd095f552543ea2ef5bd4740a938", - "section_8.most_stable_genes_transposed_counts.csv:md5,cc798e77c90bdfe28ac9f7dd12ba73f5", - "section_9.most_stable_genes_summary.csv:md5,0892240881815f7bd44c6961c9e918e2", - "section_9.most_stable_genes_transposed_counts.csv:md5,ec3417f9ff4db1ce52950623340390b3", + "section_3.most_stable_genes_summary.csv:md5,8bc1688d4c925411a9d4f74c67214d98", + "section_3.most_stable_genes_transposed_counts.csv:md5,a888a033970145b2ff17502a4b5512d8", + "section_4.most_stable_genes_summary.csv:md5,df9875dd4526cf1920e2834c7abf10e3", + "section_4.most_stable_genes_transposed_counts.csv:md5,7ac1621aae02b610d4bb603dc33614d9", + "section_5.most_stable_genes_summary.csv:md5,dc702edb9ecfcdbc78a2e7806aa2f22a", + "section_5.most_stable_genes_transposed_counts.csv:md5,8af0614e4b1f04add84940f839a23169", + "section_6.most_stable_genes_summary.csv:md5,bb8cc44a39d1036adaaab93365556328", + "section_6.most_stable_genes_transposed_counts.csv:md5,a349e706a72425dbfb7b6380d661e28e", + "section_7.most_stable_genes_summary.csv:md5,5ba49bd8da73cfa7090109f556b9c30b", + "section_7.most_stable_genes_transposed_counts.csv:md5,4690507b6bb16d10a0060eb6e1ea74af", + "section_8.most_stable_genes_summary.csv:md5,646b9183b3a1ef498392c99b00407d15", + "section_8.most_stable_genes_transposed_counts.csv:md5,bdcfd047b16d31cad5cd0a002976c273", + "section_9.most_stable_genes_summary.csv:md5,dab8e7a3b9eb43c39724e3c1350ee853", + "section_9.most_stable_genes_transposed_counts.csv:md5,f80b3610184fa88b3daf24eaef5b73e7", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,d5624bf709334c22a3e5c81bc65617d6", + "all_genes_summary.csv:md5,8d09effa90815a295fe47fcb276f73eb", "whole_design.csv:md5,e6b2a08b65fa02b470829a652593e161", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", "Prunus_persica.Prunus_persica_NCBIv2.63.chr.gff3.gz:md5,b6503b872c8f9f6ee573f9910450a12b", @@ -784,48 +793,48 @@ "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", "multiqc_eatlas_all_experiments_metadata.txt:md5,e3c379628a87ad8b3f1e5cfe7310fcb0", "multiqc_eatlas_selected_experiments_metadata.txt:md5,e3c379628a87ad8b3f1e5cfe7310fcb0", - "multiqc_gene_statistics.txt:md5,60e0a77b6edf55ebbcc4eca43ab536b1", - "multiqc_genes_section_1.txt:md5,ec91374cb52d2b85c9f784a02dc9d895", - "multiqc_genes_section_1_1.txt:md5,61e181003037c67bb54cc326eb4b4703", - "multiqc_genes_section_1_10.txt:md5,ece61a930b40ba5fb5bb7e07903cbb29", - "multiqc_genes_section_1_11.txt:md5,4e159fa8b3e3c9b56143305a470fe2c0", - "multiqc_genes_section_1_12.txt:md5,64affb5e596cae4e968252861a82feb5", - "multiqc_genes_section_1_13.txt:md5,8ad30b8b22f9b574296e32e9ff1dfdd1", - "multiqc_genes_section_1_14.txt:md5,b5a2aff38ca935dabe9f39d19f2cf555", - "multiqc_genes_section_1_15.txt:md5,86e9e33ed5ff6c00984a05d24ecb7535", - "multiqc_genes_section_1_16.txt:md5,135633f886bbd0392c446494abe77cdc", - "multiqc_genes_section_1_17.txt:md5,ee5628ca58bd2e73d2c3a2e7f9600be0", + "multiqc_gene_statistics.txt:md5,ea70380e8d8f58db9952c86cfd2a9d0d", + "multiqc_genes_section_1.txt:md5,faa541e84cb889164ce98103252040f8", + "multiqc_genes_section_1_1.txt:md5,8c7682df2ae553fd009db3bece89cd08", + "multiqc_genes_section_1_10.txt:md5,b2c20eb280dbab1d694346f3b1056336", + "multiqc_genes_section_1_11.txt:md5,4159170abea59d91f45fe11d0cc56096", + "multiqc_genes_section_1_12.txt:md5,3dc42a00b83bccd6946c6d433b872865", + "multiqc_genes_section_1_13.txt:md5,ed9407ec01579a233241cf5a621fc45f", + "multiqc_genes_section_1_14.txt:md5,415cd365822764d05a08ba8cd0e75e9a", + "multiqc_genes_section_1_15.txt:md5,dad1c0bfe6a031ae817e3a02b633dd85", + "multiqc_genes_section_1_16.txt:md5,0ababbdf9eb525082ca6eee42672c883", + "multiqc_genes_section_1_17.txt:md5,f750b0813c769019af9eb7b36b6e4019", "multiqc_genes_section_1_18.txt:md5,f41528e9d8a43b4184ab64d2f17bb52a", "multiqc_genes_section_1_19.txt:md5,2b8ae5d9a6f2562a29e153325c0813ae", - "multiqc_genes_section_1_2.txt:md5,68d8d0a8d1910eef01013a5480ee13f7", - "multiqc_genes_section_1_3.txt:md5,146057fb0f8adad37b62809638af9dc4", - "multiqc_genes_section_1_4.txt:md5,1dd21a76223f205fc6b085e149f02dbb", - "multiqc_genes_section_1_5.txt:md5,9624fd9d6921bfed4e66408dd1cfbd9e", - "multiqc_genes_section_1_6.txt:md5,891edc03c3aa134548dfa9779af137a2", - "multiqc_genes_section_1_7.txt:md5,2320b884fcc25a65e666080f13693ccc", - "multiqc_genes_section_1_8.txt:md5,89bd59ff0c011a9545a08d4cd205ae2c", - "multiqc_genes_section_1_9.txt:md5,2d77a81bed67c085750cc603e95baa98", + "multiqc_genes_section_1_2.txt:md5,a85eca4b1692de0fb0edfa64485937d7", + "multiqc_genes_section_1_3.txt:md5,038872f1bee0e1bc1f18faea0293e8c6", + "multiqc_genes_section_1_4.txt:md5,09b098fd3ab96bef75b7730489b237d5", + "multiqc_genes_section_1_5.txt:md5,b06a67bbf9db39484ce30eb39ace8a11", + "multiqc_genes_section_1_6.txt:md5,edfb91ae8a7bc00e65202da4ca78f7f6", + "multiqc_genes_section_1_7.txt:md5,6e27ca13b9737d18a6794c206cf68652", + "multiqc_genes_section_1_8.txt:md5,d158a544eec0cba563517ac6cb1c515b", + "multiqc_genes_section_1_9.txt:md5,6c0696f08d40e1670574046cefaac723", "multiqc_id_mapping_stats.txt:md5,eebd614817761551497a4210022da830", - "multiqc_normalised_expr_distrib_section_1.txt:md5,8bdaffc580faa0a1b122f8a0c826a4b9", - "multiqc_normalised_expr_distrib_section_1_1.txt:md5,f5e48c930106878cc29ecc0528661a9f", - "multiqc_normalised_expr_distrib_section_1_10.txt:md5,a403cea246ad313b02d81e9a4687abd4", - "multiqc_normalised_expr_distrib_section_1_11.txt:md5,3369257ccaa49e80d15c80be4a263f16", - "multiqc_normalised_expr_distrib_section_1_12.txt:md5,b39a6fffb076d41612852e5921150023", - "multiqc_normalised_expr_distrib_section_1_13.txt:md5,53dcbc4bd9276d29b2ceaf77eae25950", - "multiqc_normalised_expr_distrib_section_1_14.txt:md5,958b9b3fedcb53e36bcc4949680c9564", - "multiqc_normalised_expr_distrib_section_1_15.txt:md5,936e98045097e24135a4f1d32261ea9c", - "multiqc_normalised_expr_distrib_section_1_16.txt:md5,9e045e770e6e548dcdcae9ef4d28679e", - "multiqc_normalised_expr_distrib_section_1_17.txt:md5,02bdf8ead4c248f5fcb0f80837d01140", + "multiqc_normalised_expr_distrib_section_1.txt:md5,8f85d4ecae3f0b26cb57cdf3643db5f7", + "multiqc_normalised_expr_distrib_section_1_1.txt:md5,e6e3d6b03c9de79e148ea7433cec94a8", + "multiqc_normalised_expr_distrib_section_1_10.txt:md5,dd25c8c845c483bb05d753c34009ca6f", + "multiqc_normalised_expr_distrib_section_1_11.txt:md5,adda0dcc413995f9510cc14dfb8ca52a", + "multiqc_normalised_expr_distrib_section_1_12.txt:md5,0f01feacad5c561da38d26b3a9f5965e", + "multiqc_normalised_expr_distrib_section_1_13.txt:md5,85cd7d39e591fabb8f0796e6b9d61473", + "multiqc_normalised_expr_distrib_section_1_14.txt:md5,66e241895dc452e763e002e33103a7d2", + "multiqc_normalised_expr_distrib_section_1_15.txt:md5,3b1fed7e7266a09ca883d235cab7146d", + "multiqc_normalised_expr_distrib_section_1_16.txt:md5,289b63cd2b4ed35780597b3db595a506", + "multiqc_normalised_expr_distrib_section_1_17.txt:md5,d9dcfd888efc2ddda09e6eb2d25e7773", "multiqc_normalised_expr_distrib_section_1_18.txt:md5,2f8835d4cf0ecc6cdff09368f511aceb", "multiqc_normalised_expr_distrib_section_1_19.txt:md5,d3ca94b2b22de241043d0dc8427cd916", - "multiqc_normalised_expr_distrib_section_1_2.txt:md5,b6ac24eedda0bb76cf432914ad44b363", - "multiqc_normalised_expr_distrib_section_1_3.txt:md5,49ca3c92088a2f17ebc92cce9e9f5429", - "multiqc_normalised_expr_distrib_section_1_4.txt:md5,2fefecb5f0da97000b31587380c14bd6", - "multiqc_normalised_expr_distrib_section_1_5.txt:md5,82d0cf537a84f6bfbe55a0380e7c2450", - "multiqc_normalised_expr_distrib_section_1_6.txt:md5,3da0ee76edb1869ad52d3fa215f55ec0", - "multiqc_normalised_expr_distrib_section_1_7.txt:md5,03833c145b92da7fee4e437b66b974d9", - "multiqc_normalised_expr_distrib_section_1_8.txt:md5,dcb0a0940dfd3cff35ee861db117c2ba", - "multiqc_normalised_expr_distrib_section_1_9.txt:md5,80ebf9f7dbeb0234d99f3943be2760b3", + "multiqc_normalised_expr_distrib_section_1_2.txt:md5,fed5010377600e63258d6e03dad528fe", + "multiqc_normalised_expr_distrib_section_1_3.txt:md5,9e23c4472a1c8605512772cb2fe5f9d4", + "multiqc_normalised_expr_distrib_section_1_4.txt:md5,a9576ff877a12a840af8d8e740fa7802", + "multiqc_normalised_expr_distrib_section_1_5.txt:md5,73fb54f3ed1e84fc9266f482a158296e", + "multiqc_normalised_expr_distrib_section_1_6.txt:md5,ffb374331eeb46daa62a76db2a9ad4e0", + "multiqc_normalised_expr_distrib_section_1_7.txt:md5,bd4637554ab28e511252d657117a4018", + "multiqc_normalised_expr_distrib_section_1_8.txt:md5,3089cfe2da39d9e9d822bba86d60fc94", + "multiqc_normalised_expr_distrib_section_1_9.txt:md5,c3df3cc76e4b8160b6829aa4fce1b69b", "multiqc_null_values_filter.txt:md5,9f39dde761d2be72b989b3da51d9b768", "multiqc_ratio_nulls.txt:md5,fd9acca0d6995183d30b6ef2489a596e", "multiqc_ratio_zeros.txt:md5,7de1385d524ab670ffa9ddaf4cb8735b", @@ -844,10 +853,10 @@ "zero_values_filter_stats.csv:md5,a6fdf3c5250dc46a43f79a9ec5a1355d" ] ], - "timestamp": "2026-06-10T20:09:19.125984906", + "timestamp": "2026-06-12T07:35:43.615285389", "meta": { "nf-test": "0.9.5", - "nextflow": "26.04.3" + "nextflow": "25.04.0" } }, "-profile test_accessions_only": { @@ -1121,8 +1130,11 @@ "idmapping/gprofiler/mapped_gene_ids.csv", "idmapping/renamed", "idmapping/renamed/E_GEOD_51720_rnaseq.rnaseq.raw.counts.cleaned.renamed.parquet", - "merged_datasets", - "merged_datasets/whole_design.csv", + "merged_counts", + "merged_counts/all_counts.parquet", + "merged_data", + "merged_data/all_counts.missing_values_imputed.parquet", + "merged_data/whole_design.csv", "multiqc", "multiqc/multiqc_data", "multiqc/multiqc_data/llms-full.txt", @@ -1216,13 +1228,13 @@ "warnings" ], [ - "all_genes_summary.csv:md5,c0bc9c5291ae1bf09b9aa48494c94896", + "all_genes_summary.csv:md5,9400b978a5605ca7650f16dbc121ccaa", "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", - "section_1.most_stable_genes_summary.csv:md5,38688ecb98f03c9b0be25828bdcc45c1", - "section_1.most_stable_genes_transposed_counts.csv:md5,20f06de606f552389a4a44bce3c8e4ff", - "section_10.most_stable_genes_summary.csv:md5,cbb8b7793be6b3742e1436c3ccc187fd", - "section_10.most_stable_genes_transposed_counts.csv:md5,e2acad1bb821b6b3aa17293248d9dadd", - "section_11.most_stable_genes_summary.csv:md5,de89f2d123f3ea6238b47b528f1b2722", + "section_1.most_stable_genes_summary.csv:md5,039abc51f8a55169266acdcdfe9fd9d7", + "section_1.most_stable_genes_transposed_counts.csv:md5,74eb6fded57dec64fa571bf943385217", + "section_10.most_stable_genes_summary.csv:md5,9b38c3c963414d6e6b25b700f588a0d3", + "section_10.most_stable_genes_transposed_counts.csv:md5,97f9b07eb89ed91f3d1208af35301225", + "section_11.most_stable_genes_summary.csv:md5,8d93da3bebdffdf9f6a2fecff4fd2256", "section_11.most_stable_genes_transposed_counts.csv:md5,705e2b4becb685f21490948f648cee0a", "section_12.most_stable_genes_summary.csv:md5,6e49cbc5af4a45fcd62f9a9c9d1c82ad", "section_12.most_stable_genes_transposed_counts.csv:md5,a757cf115a30079e4dea9ebe44e587d5", @@ -1240,26 +1252,26 @@ "section_18.most_stable_genes_transposed_counts.csv:md5,2f633511784b3babc159c4ecfed76fa2", "section_19.most_stable_genes_summary.csv:md5,b32ed5d4a50671ac38a4a616dc81b2b9", "section_19.most_stable_genes_transposed_counts.csv:md5,b507a8bbe8e2d3852e7952e932917751", - "section_2.most_stable_genes_summary.csv:md5,bceec4ac92ed4844be087bb1100d6010", - "section_2.most_stable_genes_transposed_counts.csv:md5,2e96c423eb31bf1af3f2bf36b0e85a25", + "section_2.most_stable_genes_summary.csv:md5,3bf6df70a260e375dd0e66298439894e", + "section_2.most_stable_genes_transposed_counts.csv:md5,deea26701b85823a9b9eaa37d89eb6f3", "section_20.most_stable_genes_summary.csv:md5,0d82b5d34b415947bdda4d016fa52f71", "section_20.most_stable_genes_transposed_counts.csv:md5,3a1ae07c51acb0a1672e210a8a137121", - "section_3.most_stable_genes_summary.csv:md5,7421c22fd4343e95ba549dca21934753", - "section_3.most_stable_genes_transposed_counts.csv:md5,774433a6c1281d7011f0e9e7b11295b2", - "section_4.most_stable_genes_summary.csv:md5,6b7cb8291079453114aa1a42d25bdcc0", - "section_4.most_stable_genes_transposed_counts.csv:md5,d42732b4a961fcadaacf35d76df0ceb7", - "section_5.most_stable_genes_summary.csv:md5,9cd36d1b86d4378e87f43aec9241b5d3", - "section_5.most_stable_genes_transposed_counts.csv:md5,ac653c2f2fe4576c2ec06e3272f2bfa8", - "section_6.most_stable_genes_summary.csv:md5,599623b9b2e05396928bd93e7b23576f", - "section_6.most_stable_genes_transposed_counts.csv:md5,c8f33c5e870dcfd23f8872fec81080c3", - "section_7.most_stable_genes_summary.csv:md5,7a072dec898986397b7a5233e9c5be90", - "section_7.most_stable_genes_transposed_counts.csv:md5,e246bbb1441e1978839b2574e607b378", - "section_8.most_stable_genes_summary.csv:md5,ecbd4eacebf8a950d142300f51430644", - "section_8.most_stable_genes_transposed_counts.csv:md5,938c0a2ec6a484870b3a468af71006e0", - "section_9.most_stable_genes_summary.csv:md5,d6a13dd430fc508ca0226798d1977c17", - "section_9.most_stable_genes_transposed_counts.csv:md5,750a2e252a0b31de32ade9c7daa0f2cc", + "section_3.most_stable_genes_summary.csv:md5,581b7ac72499bcfcdf9e36b86d98edb4", + "section_3.most_stable_genes_transposed_counts.csv:md5,3b0725d8a3685ed73cafdc2c1ea2d79a", + "section_4.most_stable_genes_summary.csv:md5,46a7370a62bd2cacde3528cbf3879ffd", + "section_4.most_stable_genes_transposed_counts.csv:md5,b72a7d37e0b3b6e0ce0826c0393c1bf2", + "section_5.most_stable_genes_summary.csv:md5,f86bf58154e321b3667f26ed9a8af18a", + "section_5.most_stable_genes_transposed_counts.csv:md5,f1c01ec3e740ab5bdbbdd76d3c28122d", + "section_6.most_stable_genes_summary.csv:md5,61e9875cbeeba875c992e47a5b313b33", + "section_6.most_stable_genes_transposed_counts.csv:md5,b53c38a225dbb25f51b5412aa8b01189", + "section_7.most_stable_genes_summary.csv:md5,2b03bf501ce0d51cd8e235c52e980ca4", + "section_7.most_stable_genes_transposed_counts.csv:md5,28ee3735897556cc7e11ba0049f31e2b", + "section_8.most_stable_genes_summary.csv:md5,6221023504dcfd455f8117ec2c3d8070", + "section_8.most_stable_genes_transposed_counts.csv:md5,c1a29fb22b08a8d00eb6bbcc6d7739f0", + "section_9.most_stable_genes_summary.csv:md5,f19b5f793f45366aef7ab33a99486145", + "section_9.most_stable_genes_transposed_counts.csv:md5,c3be7a4a0214169f637ac1256f5681ac", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,c0bc9c5291ae1bf09b9aa48494c94896", + "all_genes_summary.csv:md5,9400b978a5605ca7650f16dbc121ccaa", "whole_design.csv:md5,d3aa542c4ad07d0051a84482fe6cd81c", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", "Arabidopsis_thaliana.TAIR10.63.gff3.gz:md5,ee02d70eb655f0440af19a3f3f40b15c", @@ -1270,10 +1282,10 @@ "mapped_gene_ids.csv:md5,42491ef436cce231258c0358e1af5745", "whole_design.csv:md5,d3aa542c4ad07d0051a84482fe6cd81c", "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", - "multiqc_gene_statistics.txt:md5,939507106bc44c3fe2fd2e29ed9c610a", - "multiqc_genes_section_1.txt:md5,0d95391e54df056de6d40079391b3fe4", - "multiqc_genes_section_1_1.txt:md5,d56c5246b4704de5852e3ac23b8bda9a", - "multiqc_genes_section_1_10.txt:md5,fd0b9aec3f3c3e55ce579293109434b7", + "multiqc_gene_statistics.txt:md5,7074b27046ac211f49e518606c62c807", + "multiqc_genes_section_1.txt:md5,3afaa17fe0b82a54f90385937178f2ab", + "multiqc_genes_section_1_1.txt:md5,16e2a2acbee99a45a5d7853490d3e691", + "multiqc_genes_section_1_10.txt:md5,b6d14f401f9be31e5b3cdcafbd52b1d7", "multiqc_genes_section_1_11.txt:md5,f0b8df84a99b2d5ef557ee8896217095", "multiqc_genes_section_1_12.txt:md5,89e8c3dcd3d970735de56ed6dd618caf", "multiqc_genes_section_1_13.txt:md5,b7b1b4265c236ba1c8ed7358e34a6dd6", @@ -1283,17 +1295,17 @@ "multiqc_genes_section_1_17.txt:md5,920067a6137cbded388b393f4a84d0bf", "multiqc_genes_section_1_18.txt:md5,e46e3add55d144e8dc04087498b73b65", "multiqc_genes_section_1_19.txt:md5,72e10039958b0d2667136688b35411cf", - "multiqc_genes_section_1_2.txt:md5,cbdbff5fe9d0bf77fd1f09198a356b6e", - "multiqc_genes_section_1_3.txt:md5,ec60c449d8378b5c60aad683f9d9eca5", - "multiqc_genes_section_1_4.txt:md5,9ab5db00a0b47a9bae4afe750a384040", - "multiqc_genes_section_1_5.txt:md5,35ab04ba4f31fc692b80835218fecfed", - "multiqc_genes_section_1_6.txt:md5,e5a4c446ad7d7c4008845e8d458f9749", - "multiqc_genes_section_1_7.txt:md5,d84ae037fc399f432ee39e078d0ccf9f", - "multiqc_genes_section_1_8.txt:md5,cb07a3dc033d0f064a91e48623fe8c9c", - "multiqc_genes_section_1_9.txt:md5,33cc88168ebf116fae87a702f7318006", + "multiqc_genes_section_1_2.txt:md5,75e88536b87f63c3ef40be3791aa5144", + "multiqc_genes_section_1_3.txt:md5,4e9678ce45ab2700a96492e490fa6bc3", + "multiqc_genes_section_1_4.txt:md5,02701998e97f8f71c98cef3156bb5197", + "multiqc_genes_section_1_5.txt:md5,98f825f8470819438c22817248119f75", + "multiqc_genes_section_1_6.txt:md5,a62c5838ead06707acbe221585934d15", + "multiqc_genes_section_1_7.txt:md5,7dd1e3501424629f9d12f5ed06394ad1", + "multiqc_genes_section_1_8.txt:md5,3c774951030df640b53e9bdb2e4e1ebc", + "multiqc_genes_section_1_9.txt:md5,30c2d07944437b1c48050acaf79b1ca0", "multiqc_id_mapping_stats.txt:md5,49023d9842e01da40e2c50e9659802d5", - "multiqc_normalised_expr_distrib_section_1.txt:md5,ceb1e5505f1890c1661bc596c647f5ca", - "multiqc_normalised_expr_distrib_section_1_1.txt:md5,dddc7221434003069dc1f5b261771ee5", + "multiqc_normalised_expr_distrib_section_1.txt:md5,267d211497397da567db93c52cc1b72a", + "multiqc_normalised_expr_distrib_section_1_1.txt:md5,b2f09bff1ecf704052e19187632aae0b", "multiqc_normalised_expr_distrib_section_1_10.txt:md5,f89a15a3af0047f9bd0f5d01ca9ccb33", "multiqc_normalised_expr_distrib_section_1_11.txt:md5,fead0770f22c316593d6d2353d94e9f7", "multiqc_normalised_expr_distrib_section_1_12.txt:md5,8cacaee9d1bedf3ec8a4d66f3bab1f7f", @@ -1304,14 +1316,14 @@ "multiqc_normalised_expr_distrib_section_1_17.txt:md5,c86c0cf8c3e4eab7a61979f622f126d7", "multiqc_normalised_expr_distrib_section_1_18.txt:md5,17554bf8a45621ecdedefe2a9b79835e", "multiqc_normalised_expr_distrib_section_1_19.txt:md5,28b90411fa811ba678f237e9ee6f20a2", - "multiqc_normalised_expr_distrib_section_1_2.txt:md5,a5de085be1fc18182465068dade27e7d", - "multiqc_normalised_expr_distrib_section_1_3.txt:md5,f8cc673495837035789260f274146ddd", - "multiqc_normalised_expr_distrib_section_1_4.txt:md5,43a2f30491e4215387c369a1e4db9b99", - "multiqc_normalised_expr_distrib_section_1_5.txt:md5,ca13c9e4388290456c92df986fc6f1a1", - "multiqc_normalised_expr_distrib_section_1_6.txt:md5,1d35f7a55e03abcd684ea3b9f1557a31", - "multiqc_normalised_expr_distrib_section_1_7.txt:md5,fe36ab4ab11c35fbd94fe75d7791ae93", - "multiqc_normalised_expr_distrib_section_1_8.txt:md5,56d92dc7ec7576e378deff07e98a5111", - "multiqc_normalised_expr_distrib_section_1_9.txt:md5,72d4fa17e2ea16cb77297995fa4a1008", + "multiqc_normalised_expr_distrib_section_1_2.txt:md5,0e97b8cfc3ff840560d8e6be97e6e98f", + "multiqc_normalised_expr_distrib_section_1_3.txt:md5,ea789dd09fb9b8f186c971197f56e23c", + "multiqc_normalised_expr_distrib_section_1_4.txt:md5,8a1f94545a829f3d8bda146418c385ae", + "multiqc_normalised_expr_distrib_section_1_5.txt:md5,72e8e94b2ba9fe15b9813dd1f2e27ee7", + "multiqc_normalised_expr_distrib_section_1_6.txt:md5,f619663f1b01544a9f96c23ba3e09438", + "multiqc_normalised_expr_distrib_section_1_7.txt:md5,8899ddfca4d1cbebdd5863c325e462c2", + "multiqc_normalised_expr_distrib_section_1_8.txt:md5,31d0717d221dcef90e4658883ee0d5ef", + "multiqc_normalised_expr_distrib_section_1_9.txt:md5,d444233cf608c17cfdc7cc8ebf2c2fe9", "multiqc_null_values_filter.txt:md5,91eb32460cdebb4e08ae0b1ee559cf59", "multiqc_ratio_nulls.txt:md5,bcf9aa423c404f2e7f8ea84735810959", "multiqc_ratio_zeros.txt:md5,c743a773da2858b59923eff1873c26d0", @@ -1327,10 +1339,10 @@ "zero_values_filter_stats.csv:md5,766d888e41179e8a785f634b3b606bc9" ] ], - "timestamp": "2026-06-10T20:51:17.884124517", + "timestamp": "2026-06-12T08:02:06.406633821", "meta": { "nf-test": "0.9.5", - "nextflow": "26.04.3" + "nextflow": "25.04.0" } }, "-profile test_public_and_dataset": { @@ -1421,8 +1433,11 @@ "idmapping/renamed", "idmapping/renamed/E_MTAB_8187_rnaseq.rnaseq.raw.counts.cleaned.renamed.parquet", "idmapping/renamed/beta_vulgaris.rnaseq.raw.counts.cleaned.renamed.parquet", - "merged_datasets", - "merged_datasets/whole_design.csv", + "merged_counts", + "merged_counts/all_counts.parquet", + "merged_data", + "merged_data/all_counts.missing_values_imputed.parquet", + "merged_data/whole_design.csv", "multiqc", "multiqc/multiqc_data", "multiqc/multiqc_data/llms-full.txt", @@ -1522,50 +1537,50 @@ "warnings" ], [ - "all_genes_summary.csv:md5,a8e6d99f3d9579cc4dab79a235d4c23c", + "all_genes_summary.csv:md5,a3c4d2d725a0f65eefa24b218d24ec95", "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", - "section_1.most_stable_genes_summary.csv:md5,693f381232e9e4deceb411443a86f17d", - "section_1.most_stable_genes_transposed_counts.csv:md5,d23170ac1505db73a05c94b541b19d76", - "section_10.most_stable_genes_summary.csv:md5,8b37cd237c6d7d53bc344cc03929c131", - "section_10.most_stable_genes_transposed_counts.csv:md5,0e38a3d8ef82160f75d88c07c90f675f", - "section_11.most_stable_genes_summary.csv:md5,ea11810a179fa2047a75705abaec1e51", - "section_11.most_stable_genes_transposed_counts.csv:md5,0c3c54a830ab82ea9bf3513cd0911e21", - "section_12.most_stable_genes_summary.csv:md5,e61aa6f132dbb4d70ea87e8560ac6bfe", - "section_12.most_stable_genes_transposed_counts.csv:md5,b01652b330c30737b064019c82b54edc", - "section_13.most_stable_genes_summary.csv:md5,b49c5516c67a18a8aa88efbb2c4b6851", - "section_13.most_stable_genes_transposed_counts.csv:md5,2115e08cd0ca5687f3f51df30d8713f6", - "section_14.most_stable_genes_summary.csv:md5,63d585b48ba1427408ceeba1eb8e21f3", - "section_14.most_stable_genes_transposed_counts.csv:md5,61447a0e829a5b6d478aab2729773480", - "section_15.most_stable_genes_summary.csv:md5,4b44b25d58b69d457bd4362c6d0fed0b", - "section_15.most_stable_genes_transposed_counts.csv:md5,0910fbe3560684cb2a04c024681e3154", - "section_16.most_stable_genes_summary.csv:md5,681322bb7859dff570c40291c29b283b", - "section_16.most_stable_genes_transposed_counts.csv:md5,b0016bea58a5ebd79c8973b30700f60e", - "section_17.most_stable_genes_summary.csv:md5,db2c9e3d248fc5a99310ddf3914669d2", - "section_17.most_stable_genes_transposed_counts.csv:md5,9ee50f3d9ba4dadf8aa6dbfe32edb1de", + "section_1.most_stable_genes_summary.csv:md5,e869345103f8ff8d03b83d9f97ed63e2", + "section_1.most_stable_genes_transposed_counts.csv:md5,9fe152dcd902a8a50f5390f7f6e41c05", + "section_10.most_stable_genes_summary.csv:md5,80f908bae5a03a1b73489bf8af3e9b56", + "section_10.most_stable_genes_transposed_counts.csv:md5,ce6cdc012dbf57afba6f2d9d4f50dd9f", + "section_11.most_stable_genes_summary.csv:md5,983fdb17fc48d16f5434be4b40cb474a", + "section_11.most_stable_genes_transposed_counts.csv:md5,870bdd2774217f46f402d0af2ddf3e59", + "section_12.most_stable_genes_summary.csv:md5,27d33cf63f6b25d8a8f01910d8c14e1e", + "section_12.most_stable_genes_transposed_counts.csv:md5,269fc876a6177414a24874d44691e9c5", + "section_13.most_stable_genes_summary.csv:md5,580b28cb5c9c157072183fff567a8014", + "section_13.most_stable_genes_transposed_counts.csv:md5,0c25255c7f08429c36fe52fd713067fd", + "section_14.most_stable_genes_summary.csv:md5,2c0bfea455c5ffe297b823c6126d57d0", + "section_14.most_stable_genes_transposed_counts.csv:md5,270f415b53f98e9a67bcecc29c57df31", + "section_15.most_stable_genes_summary.csv:md5,a2d7fddf531afa387101f84b954bfbee", + "section_15.most_stable_genes_transposed_counts.csv:md5,f3618ba2a26a242ceac2507c3a09efab", + "section_16.most_stable_genes_summary.csv:md5,d8305b0d7a51ca5eebe2839aeb5123f6", + "section_16.most_stable_genes_transposed_counts.csv:md5,3d261950768c0dd37ab3975bf465693f", + "section_17.most_stable_genes_summary.csv:md5,4a514c2f58e6eaa453b97bb068154987", + "section_17.most_stable_genes_transposed_counts.csv:md5,af06eab6bc04fc315544fcd0176da4cd", "section_18.most_stable_genes_summary.csv:md5,5f21148626ed40d0d64b393babcf160d", "section_18.most_stable_genes_transposed_counts.csv:md5,29fc2248ad428cb3ac8898b0a5471eec", "section_19.most_stable_genes_summary.csv:md5,5acc2a1b1980004f88c0584a8cf0784e", "section_19.most_stable_genes_transposed_counts.csv:md5,9586c452f93c486ed667fb343af3b13c", - "section_2.most_stable_genes_summary.csv:md5,15998b75df4ae1f6fc7f9ff8ec87965b", - "section_2.most_stable_genes_transposed_counts.csv:md5,6f4cfa670ff7a30357549572b2409e9e", + "section_2.most_stable_genes_summary.csv:md5,47a6a375e8e6ad73a358a245ac4632b6", + "section_2.most_stable_genes_transposed_counts.csv:md5,ad1cba4a6c50de2c6f1207b619488443", "section_20.most_stable_genes_summary.csv:md5,9d9c5cd95d1d1a350a8d1f2ce363f882", "section_20.most_stable_genes_transposed_counts.csv:md5,e9f4187bdc7079c3130bdff1e4ebf575", - "section_3.most_stable_genes_summary.csv:md5,e30f8d04d85f2782b5742020dfd0044a", - "section_3.most_stable_genes_transposed_counts.csv:md5,fcb1c0943cdf34ffca3da97373c47cc5", - "section_4.most_stable_genes_summary.csv:md5,64d72e6b587ff51ddb3456ae1ca2a6ba", - "section_4.most_stable_genes_transposed_counts.csv:md5,9a2c49e697021134b2fd3c8b6da7dcd6", - "section_5.most_stable_genes_summary.csv:md5,9ef654cd6e343710bded8f3d9bd543a0", - "section_5.most_stable_genes_transposed_counts.csv:md5,429bc1af92af063cf4dd84e94765dfa7", - "section_6.most_stable_genes_summary.csv:md5,bc27938c6c99268de4b75e3e3765cf06", - "section_6.most_stable_genes_transposed_counts.csv:md5,e52102f58aa7c190d20644fdf2cd93fd", - "section_7.most_stable_genes_summary.csv:md5,cda963dbec1cfee62b8794d089275982", - "section_7.most_stable_genes_transposed_counts.csv:md5,b81616f12ad783cbb71dec9f061a0d47", - "section_8.most_stable_genes_summary.csv:md5,9b3e62491d7c9012e3c60ad4a921e039", - "section_8.most_stable_genes_transposed_counts.csv:md5,063a5dc2323321f17aa628a9aac61b52", - "section_9.most_stable_genes_summary.csv:md5,c780aed4e96a132a3a4c90086a5dfbd1", - "section_9.most_stable_genes_transposed_counts.csv:md5,cbde52f4d7eeeaf15f9fbfacfa9e17bb", + "section_3.most_stable_genes_summary.csv:md5,1ce5e68a42217da6c3421c3207893732", + "section_3.most_stable_genes_transposed_counts.csv:md5,e002829d978f760203d549aa6f763fb3", + "section_4.most_stable_genes_summary.csv:md5,05241694011966d200b3ae6462d674ae", + "section_4.most_stable_genes_transposed_counts.csv:md5,ef0bf15a5710225ce0bbe29b1c4c6f4d", + "section_5.most_stable_genes_summary.csv:md5,518ec5a0fad9d5e2af38b9c551ec2ecf", + "section_5.most_stable_genes_transposed_counts.csv:md5,3332f41449d3043372884c0ade11119e", + "section_6.most_stable_genes_summary.csv:md5,a203a9eda5ea9145e6efa3aba77fcb6e", + "section_6.most_stable_genes_transposed_counts.csv:md5,70dc01026ecf80cf1f1a116e83cb17d8", + "section_7.most_stable_genes_summary.csv:md5,47294ce86d074cca2b92c512482d7637", + "section_7.most_stable_genes_transposed_counts.csv:md5,be90b6baa49e15e10a789fdd766f19fa", + "section_8.most_stable_genes_summary.csv:md5,91f7367868ebefeff73f992e336d5a69", + "section_8.most_stable_genes_transposed_counts.csv:md5,6934c36b8617f6b7bf34fa634be6056e", + "section_9.most_stable_genes_summary.csv:md5,ca47c56eb5d99ae2aaeb27fa5adab73f", + "section_9.most_stable_genes_transposed_counts.csv:md5,b9de6d0841bfc0456f1b08c3105296c6", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,a8e6d99f3d9579cc4dab79a235d4c23c", + "all_genes_summary.csv:md5,a3c4d2d725a0f65eefa24b218d24ec95", "whole_design.csv:md5,fbd18d011d7d855452e5a30a303afcbf", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", "Beta_vulgaris.RefBeet-1.2.2.63.gff3.gz:md5,e711481dc9292c4b7c6422b9b4dc7d9d", @@ -1578,48 +1593,48 @@ "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", "multiqc_eatlas_all_experiments_metadata.txt:md5,6ea661253a55d41687e32fea72961063", "multiqc_eatlas_selected_experiments_metadata.txt:md5,8b7643e0ef8eaaa3fa72f7103fd7ccee", - "multiqc_gene_statistics.txt:md5,50ccceb54f210f7b61126cbe9e0a4ec1", - "multiqc_genes_section_1.txt:md5,3a31230289daa57751489f5fe86604d7", - "multiqc_genes_section_1_1.txt:md5,54f4d77c332007a1fa53e22e435e3e7a", - "multiqc_genes_section_1_10.txt:md5,0af94078f42a32d2edfe7cf3729f1628", - "multiqc_genes_section_1_11.txt:md5,ab2d0afb14d2fb7003d49968d13e7442", - "multiqc_genes_section_1_12.txt:md5,bc4e94e683ccc16146da4d2f7464be42", - "multiqc_genes_section_1_13.txt:md5,4f18cc626489ff9b3a26cba7cd2b13ee", - "multiqc_genes_section_1_14.txt:md5,bd518be5c3ec50c708515a3fc98e6a27", - "multiqc_genes_section_1_15.txt:md5,91757602c9d66bc49dc6e1809f77d749", - "multiqc_genes_section_1_16.txt:md5,9581898cabf368d36501dff58f81ca4c", + "multiqc_gene_statistics.txt:md5,b229526b1f2db42fb31e04d0d8a516ae", + "multiqc_genes_section_1.txt:md5,24aaef9ceb174f467b49c431fbeb5bbd", + "multiqc_genes_section_1_1.txt:md5,7a4b0b3405d531fc778219799f05c1ca", + "multiqc_genes_section_1_10.txt:md5,cb48d39caade7de823c85113dcc416fb", + "multiqc_genes_section_1_11.txt:md5,2b9e77c281e242799b8def589dc1d667", + "multiqc_genes_section_1_12.txt:md5,208674cb51f6474d1fe1f9020064d707", + "multiqc_genes_section_1_13.txt:md5,751b980b6e23f6d9adcdf7079a217c81", + "multiqc_genes_section_1_14.txt:md5,76f37bc218f9e00802c4244e9a19fc38", + "multiqc_genes_section_1_15.txt:md5,6fcac2eca7f2c8089c08d520b9ac5ac0", + "multiqc_genes_section_1_16.txt:md5,b764882294aa1a53ead05cbf2d00cead", "multiqc_genes_section_1_17.txt:md5,9f9f97f85d6605978b286942ac69ba2c", "multiqc_genes_section_1_18.txt:md5,ab6c6e6e1a658ba92baa6dd2b68f56bf", "multiqc_genes_section_1_19.txt:md5,5d4910983359e122e07fdbe2aeda10f7", - "multiqc_genes_section_1_2.txt:md5,612e7087fc86ed6d75e0270229c62fe2", - "multiqc_genes_section_1_3.txt:md5,ccf336e4048a4f9362506062fe24d288", - "multiqc_genes_section_1_4.txt:md5,a257d22bb9e30f84091fc6115c7e1c43", - "multiqc_genes_section_1_5.txt:md5,d504775081525482502a0739e2ad20f4", - "multiqc_genes_section_1_6.txt:md5,627ce211d1cf38e27dbce19e20ea1f91", - "multiqc_genes_section_1_7.txt:md5,c5ac5195005627044ce4d3a4f5b9d80a", - "multiqc_genes_section_1_8.txt:md5,64bb30a62c0488428f01b06e059f9e31", - "multiqc_genes_section_1_9.txt:md5,c5b8dae49e1c122ab3f2529ddf224c2e", + "multiqc_genes_section_1_2.txt:md5,6b9f67e08bca15ef41b65b804e366245", + "multiqc_genes_section_1_3.txt:md5,cc473d3664ec654d05e96e28a4d7f2f3", + "multiqc_genes_section_1_4.txt:md5,e53ccb0b3172923ef3c1a28a85f1cce7", + "multiqc_genes_section_1_5.txt:md5,705ed6f4cdd8045fa4597b5e8fa507f7", + "multiqc_genes_section_1_6.txt:md5,ca66c44744ae17e8f3d10a21921e7b52", + "multiqc_genes_section_1_7.txt:md5,f8c45e65bf5fa29d071a1d16e47e0705", + "multiqc_genes_section_1_8.txt:md5,00cf9e9ad3f48e82dad4b2b09c9b47d5", + "multiqc_genes_section_1_9.txt:md5,6bd9b741cd44148577e82fb80f0284b0", "multiqc_id_mapping_stats.txt:md5,d7c6d500c8ea91c32da4980b5557d15e", - "multiqc_normalised_expr_distrib_section_1.txt:md5,742ccc1ee5e91b0dc6abc1ea03453f5f", - "multiqc_normalised_expr_distrib_section_1_1.txt:md5,64507a6e6dd6f14f3aa763d1f77b4a8c", - "multiqc_normalised_expr_distrib_section_1_10.txt:md5,a3d91fcfac1232b065eb4e722fe62849", - "multiqc_normalised_expr_distrib_section_1_11.txt:md5,2795f2d91a8205eb6d4a81a9b56a7c15", - "multiqc_normalised_expr_distrib_section_1_12.txt:md5,2362b16331018e749e91be11fbfc9009", - "multiqc_normalised_expr_distrib_section_1_13.txt:md5,8dfc7918253a31741a56375356eb8078", - "multiqc_normalised_expr_distrib_section_1_14.txt:md5,8a356465688a1bc2a095aeb03237c667", - "multiqc_normalised_expr_distrib_section_1_15.txt:md5,2f0035f0cd8c8bec49e0135f6f3ffa5b", - "multiqc_normalised_expr_distrib_section_1_16.txt:md5,f43c4c45dc455eb748be3fa213fa9a4b", + "multiqc_normalised_expr_distrib_section_1.txt:md5,594872a9ec4b625be50226b0bb0aeec1", + "multiqc_normalised_expr_distrib_section_1_1.txt:md5,2ac9916aac7ccb248d27ffd49b24a523", + "multiqc_normalised_expr_distrib_section_1_10.txt:md5,5878fe29939640a9d5c495e1aa03a285", + "multiqc_normalised_expr_distrib_section_1_11.txt:md5,8c20fc18cae99037e3e2b5173008963c", + "multiqc_normalised_expr_distrib_section_1_12.txt:md5,ad37d3bee84bfd308d79620942c9cade", + "multiqc_normalised_expr_distrib_section_1_13.txt:md5,83de3a626b8e721e99ca1371f585a437", + "multiqc_normalised_expr_distrib_section_1_14.txt:md5,f349c13b41cc52f679e905b321eead82", + "multiqc_normalised_expr_distrib_section_1_15.txt:md5,941695b35ea4a495409b467f4c7a7fd0", + "multiqc_normalised_expr_distrib_section_1_16.txt:md5,82305a3ca8a54e44a558d0c83dfca9f3", "multiqc_normalised_expr_distrib_section_1_17.txt:md5,adf99bc87dd29499a1bfc50c3c26488c", "multiqc_normalised_expr_distrib_section_1_18.txt:md5,8b64cbab2e0cca85575b18b41f973aa5", "multiqc_normalised_expr_distrib_section_1_19.txt:md5,4544499f66cd9de554f2d26944028cd5", - "multiqc_normalised_expr_distrib_section_1_2.txt:md5,56785d700b9dab4e0f76388b5ba7326d", - "multiqc_normalised_expr_distrib_section_1_3.txt:md5,d6dab8574d1ba20e88149b06b448149e", - "multiqc_normalised_expr_distrib_section_1_4.txt:md5,89fa7f20230e3d2cd4fbfd48503532c8", - "multiqc_normalised_expr_distrib_section_1_5.txt:md5,77c267197ed771327b432676ed94ca71", - "multiqc_normalised_expr_distrib_section_1_6.txt:md5,d25fceb61f039dcd40a84849a7db21ff", - "multiqc_normalised_expr_distrib_section_1_7.txt:md5,42eecb6e4205931b84a8b4c66ff2612f", - "multiqc_normalised_expr_distrib_section_1_8.txt:md5,dd5711a7668ce35b2a784d1dcc7817c7", - "multiqc_normalised_expr_distrib_section_1_9.txt:md5,ebe970fe4f7722b3f657ad33e07ef5cf", + "multiqc_normalised_expr_distrib_section_1_2.txt:md5,65f8c85c81b0f16c2fb2efcf5804bd25", + "multiqc_normalised_expr_distrib_section_1_3.txt:md5,6fe59db23b91d2974e7cacfd16e4d35d", + "multiqc_normalised_expr_distrib_section_1_4.txt:md5,8e91f034aaea6dac7f2e4a9e0f37e903", + "multiqc_normalised_expr_distrib_section_1_5.txt:md5,20fad40135782a63b1210ec49eca85dd", + "multiqc_normalised_expr_distrib_section_1_6.txt:md5,d5b90abad1e9eadac88f7ba9a9b9d936", + "multiqc_normalised_expr_distrib_section_1_7.txt:md5,a84f31cfb7917e7e0c4a426f159b2abe", + "multiqc_normalised_expr_distrib_section_1_8.txt:md5,82c2d94fe42f37b467fcc599f4989a37", + "multiqc_normalised_expr_distrib_section_1_9.txt:md5,c4688a3d03c9b3ba3c45cea9bb5c76bd", "multiqc_null_values_filter.txt:md5,88b2d9e16cd8ab52f58a48fd5d915b8c", "multiqc_ratio_nulls.txt:md5,c9ac04a67937c7bacfebc33fcd50aab1", "multiqc_ratio_zeros.txt:md5,9f50cd64ea4afe3723c7e222182981f6", @@ -1638,10 +1653,10 @@ "zero_values_filter_stats.csv:md5,17fc6d525450d34445bf9cc25defe18a" ] ], - "timestamp": "2026-06-10T20:33:00.119363766", + "timestamp": "2026-06-12T07:51:14.563068608", "meta": { "nf-test": "0.9.5", - "nextflow": "26.04.3" + "nextflow": "25.04.0" } }, "-profile test_download_only": { diff --git a/tests/modules/local/filter_and_rename_genes/main.nf.test.snap b/tests/modules/local/filter_and_rename_genes/main.nf.test.snap index 75e4833a..d1d522cd 100644 --- a/tests/modules/local/filter_and_rename_genes/main.nf.test.snap +++ b/tests/modules/local/filter_and_rename_genes/main.nf.test.snap @@ -7,9 +7,7 @@ ], "1": [ [ - [ - - ], + "test", "failure_reason.txt:md5,0eea8256c81d0362f3f10979ab2de23e" ] ], @@ -18,9 +16,7 @@ ], "3": [ [ - [ - - ], + "test", "0", "0", "3", @@ -46,10 +42,10 @@ ] } ], - "timestamp": "2026-04-17T09:04:45.840061804", + "timestamp": "2026-06-12T08:09:46.615755143", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } }, "Map Ensembl IDs": { @@ -58,11 +54,9 @@ "0": [ [ { - "dataset": [ - - ] + "dataset": "test" }, - "counts.ensembl_ids.renamed.parquet:md5,1fe83a8ee993d02c9df18f7412d20f0f" + "counts.ensembl_ids.renamed.parquet:md5,240e4ecc8be3610bdf182c48f78426e2" ] ], "1": [ @@ -73,9 +67,7 @@ ], "3": [ [ - [ - - ], + "test", "2", "1", "1", @@ -99,19 +91,17 @@ "counts": [ [ { - "dataset": [ - - ] + "dataset": "test" }, - "counts.ensembl_ids.renamed.parquet:md5,1fe83a8ee993d02c9df18f7412d20f0f" + "counts.ensembl_ids.renamed.parquet:md5,240e4ecc8be3610bdf182c48f78426e2" ] ] } ], - "timestamp": "2026-04-17T09:04:26.849187591", + "timestamp": "2026-06-12T08:09:29.718088202", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } }, "No valid gene": { @@ -122,9 +112,7 @@ ], "1": [ [ - [ - - ], + "test", "failure_reason.txt:md5,0eea8256c81d0362f3f10979ab2de23e" ] ], @@ -133,9 +121,7 @@ ], "3": [ [ - [ - - ], + "test", "0", "0", "3", @@ -161,10 +147,10 @@ ] } ], - "timestamp": "2026-04-17T09:04:36.329611443", + "timestamp": "2026-06-12T08:09:38.20851685", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } } } \ No newline at end of file diff --git a/tests/modules/local/genorm/make_chunks/main.nf.test.snap b/tests/modules/local/genorm/make_chunks/main.nf.test.snap index 6cb9d08f..2444c0f2 100644 --- a/tests/modules/local/genorm/make_chunks/main.nf.test.snap +++ b/tests/modules/local/genorm/make_chunks/main.nf.test.snap @@ -8,16 +8,16 @@ "section": "section_1" }, [ - "count_chunk.0.parquet:md5,2b49edb51f57065edec0dbbc3b50cd03", - "count_chunk.1.parquet:md5,a229839cc11b60b51d75e69bda1b079e", - "count_chunk.2.parquet:md5,79e06a8d5438a1fd8c35bb7e861bbb2f", - "count_chunk.3.parquet:md5,b4b75fd8c257684914ea81acec63c7b2", - "count_chunk.4.parquet:md5,938d6eb757a2114fba7c37cb79917fdb", - "count_chunk.5.parquet:md5,7de0a7158eaf28de2728ad10ed68fea3", - "count_chunk.6.parquet:md5,b7bb9a8ed8578bbf661d60dc0cc43a09", - "count_chunk.7.parquet:md5,d424e46fbcab660f7994086d95d83955", - "count_chunk.8.parquet:md5,5411ffdabeda55de3d67ae8cc32e0276", - "count_chunk.9.parquet:md5,484ecc44837b0a0f3098bff5a8144853" + "count_chunk.0.parquet:md5,22be5d967ebe1fc85ca2ae89b0d4ace8", + "count_chunk.1.parquet:md5,7767448e1420f03dcd5bbecda253a80d", + "count_chunk.2.parquet:md5,c898285b5d27ea91c0623fe944ef199d", + "count_chunk.3.parquet:md5,aa7bac7ac4cbddba4a4dc24c7d27209f", + "count_chunk.4.parquet:md5,7cc111de4bb94ad1b28cf653e263f270", + "count_chunk.5.parquet:md5,0ac9382a38f3c3f588197cdcb5545756", + "count_chunk.6.parquet:md5,9980655eca04ab6f95b2a3e251838d41", + "count_chunk.7.parquet:md5,6981a1560d1aacf69946e9550352fa40", + "count_chunk.8.parquet:md5,8267efdcb52eb358154d3d7fabcce4bd", + "count_chunk.9.parquet:md5,cb0b98b55e25741209f4e8ff06f97c85" ] ] ], @@ -41,25 +41,25 @@ "section": "section_1" }, [ - "count_chunk.0.parquet:md5,2b49edb51f57065edec0dbbc3b50cd03", - "count_chunk.1.parquet:md5,a229839cc11b60b51d75e69bda1b079e", - "count_chunk.2.parquet:md5,79e06a8d5438a1fd8c35bb7e861bbb2f", - "count_chunk.3.parquet:md5,b4b75fd8c257684914ea81acec63c7b2", - "count_chunk.4.parquet:md5,938d6eb757a2114fba7c37cb79917fdb", - "count_chunk.5.parquet:md5,7de0a7158eaf28de2728ad10ed68fea3", - "count_chunk.6.parquet:md5,b7bb9a8ed8578bbf661d60dc0cc43a09", - "count_chunk.7.parquet:md5,d424e46fbcab660f7994086d95d83955", - "count_chunk.8.parquet:md5,5411ffdabeda55de3d67ae8cc32e0276", - "count_chunk.9.parquet:md5,484ecc44837b0a0f3098bff5a8144853" + "count_chunk.0.parquet:md5,22be5d967ebe1fc85ca2ae89b0d4ace8", + "count_chunk.1.parquet:md5,7767448e1420f03dcd5bbecda253a80d", + "count_chunk.2.parquet:md5,c898285b5d27ea91c0623fe944ef199d", + "count_chunk.3.parquet:md5,aa7bac7ac4cbddba4a4dc24c7d27209f", + "count_chunk.4.parquet:md5,7cc111de4bb94ad1b28cf653e263f270", + "count_chunk.5.parquet:md5,0ac9382a38f3c3f588197cdcb5545756", + "count_chunk.6.parquet:md5,9980655eca04ab6f95b2a3e251838d41", + "count_chunk.7.parquet:md5,6981a1560d1aacf69946e9550352fa40", + "count_chunk.8.parquet:md5,8267efdcb52eb358154d3d7fabcce4bd", + "count_chunk.9.parquet:md5,cb0b98b55e25741209f4e8ff06f97c85" ] ] ] } ], - "timestamp": "2026-03-30T15:40:46.563584649", + "timestamp": "2026-06-12T08:10:23.449640289", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } } } \ No newline at end of file diff --git a/tests/modules/local/get_candidate_genes/main.nf.test.snap b/tests/modules/local/get_candidate_genes/main.nf.test.snap index c9e2ede4..5ee95d53 100644 --- a/tests/modules/local/get_candidate_genes/main.nf.test.snap +++ b/tests/modules/local/get_candidate_genes/main.nf.test.snap @@ -11,9 +11,9 @@ ], "1": [ [ - "section_1.stats.parquet:md5,3414fd57e9bf4f221b2df93be2e890a2", - "section_2.stats.parquet:md5,99b7bcc7944c77eb569b688c640d70f2", - "section_3.stats.parquet:md5,752dbfb5699fbe6847ac17a4fb6da51a" + "section_1.stats.parquet:md5,d487f854f64ce2b01a6e6dd255b760b6", + "section_2.stats.parquet:md5,6dcd4004f6e4b39714955d64b1ffe420", + "section_3.stats.parquet:md5,f69355ed9438b82d054f4e5cbcc807c0" ] ], "2": [ @@ -39,17 +39,17 @@ ], "section_stats": [ [ - "section_1.stats.parquet:md5,3414fd57e9bf4f221b2df93be2e890a2", - "section_2.stats.parquet:md5,99b7bcc7944c77eb569b688c640d70f2", - "section_3.stats.parquet:md5,752dbfb5699fbe6847ac17a4fb6da51a" + "section_1.stats.parquet:md5,d487f854f64ce2b01a6e6dd255b760b6", + "section_2.stats.parquet:md5,6dcd4004f6e4b39714955d64b1ffe420", + "section_3.stats.parquet:md5,f69355ed9438b82d054f4e5cbcc807c0" ] ] } ], - "timestamp": "2026-03-30T17:07:03.292271274", + "timestamp": "2026-06-12T08:11:42.575272746", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } }, "Too many sections": { @@ -70,15 +70,15 @@ ], "1": [ [ - "section_12.stats.parquet:md5,069d23175be9d1a733b4996895d4a3ce", - "section_14.stats.parquet:md5,73e852a1083f86d2d99d4f93ab6228c0", - "section_16.stats.parquet:md5,6aa616308faf4403194f18fae7cd1024", - "section_18.stats.parquet:md5,0b17005fab7582663111ea77cefca427", - "section_20.stats.parquet:md5,03c52c419ff94b63d0b16b2e9e87fa26", - "section_3.stats.parquet:md5,14a121ecab4116935fa9df136afc997a", - "section_5.stats.parquet:md5,3a3700641343056feabac2aa76626556", - "section_7.stats.parquet:md5,d6af8c940d55e449397b7fc0c428fedf", - "section_9.stats.parquet:md5,eb375761c7111b78bf8779bf71f876ef" + "section_12.stats.parquet:md5,fb4b2180a8814488cf9bc0e0b0cbb0bf", + "section_14.stats.parquet:md5,c4c5420d2097643f1b501599c7ea2313", + "section_16.stats.parquet:md5,eaab929d8e085aecdd7f896bcb0556ac", + "section_18.stats.parquet:md5,8bf510663d700900fda943b028b93a11", + "section_20.stats.parquet:md5,a2b607d8c16362f7d7edaa971106811e", + "section_3.stats.parquet:md5,c224ee2861966e04bba67626aa23c3f8", + "section_5.stats.parquet:md5,f965b8acfdd5368c16cfc94eb2eb10c6", + "section_7.stats.parquet:md5,425a5a9cd47ea0694688789e22e18335", + "section_9.stats.parquet:md5,f898aa017c0babd634043172d8e8bf41" ] ], "2": [ @@ -110,23 +110,23 @@ ], "section_stats": [ [ - "section_12.stats.parquet:md5,069d23175be9d1a733b4996895d4a3ce", - "section_14.stats.parquet:md5,73e852a1083f86d2d99d4f93ab6228c0", - "section_16.stats.parquet:md5,6aa616308faf4403194f18fae7cd1024", - "section_18.stats.parquet:md5,0b17005fab7582663111ea77cefca427", - "section_20.stats.parquet:md5,03c52c419ff94b63d0b16b2e9e87fa26", - "section_3.stats.parquet:md5,14a121ecab4116935fa9df136afc997a", - "section_5.stats.parquet:md5,3a3700641343056feabac2aa76626556", - "section_7.stats.parquet:md5,d6af8c940d55e449397b7fc0c428fedf", - "section_9.stats.parquet:md5,eb375761c7111b78bf8779bf71f876ef" + "section_12.stats.parquet:md5,fb4b2180a8814488cf9bc0e0b0cbb0bf", + "section_14.stats.parquet:md5,c4c5420d2097643f1b501599c7ea2313", + "section_16.stats.parquet:md5,eaab929d8e085aecdd7f896bcb0556ac", + "section_18.stats.parquet:md5,8bf510663d700900fda943b028b93a11", + "section_20.stats.parquet:md5,a2b607d8c16362f7d7edaa971106811e", + "section_3.stats.parquet:md5,c224ee2861966e04bba67626aa23c3f8", + "section_5.stats.parquet:md5,f965b8acfdd5368c16cfc94eb2eb10c6", + "section_7.stats.parquet:md5,425a5a9cd47ea0694688789e22e18335", + "section_9.stats.parquet:md5,f898aa017c0babd634043172d8e8bf41" ] ] } ], - "timestamp": "2026-03-30T17:07:09.643611957", + "timestamp": "2026-06-12T08:11:51.520101198", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } } } \ No newline at end of file diff --git a/tests/modules/local/merge_counts/main.nf.test.snap b/tests/modules/local/merge_counts/main.nf.test.snap index 7290c51d..e80bb4ce 100644 --- a/tests/modules/local/merge_counts/main.nf.test.snap +++ b/tests/modules/local/merge_counts/main.nf.test.snap @@ -7,7 +7,7 @@ { "platform": "microarray" }, - "all_counts.parquet:md5,4ceb116e0a52b92ab31ec4e122ed12a1" + "all_counts.parquet:md5,f3234a9f680271996f806b7f0f34a11c" ] ], "1": [ @@ -29,15 +29,15 @@ { "platform": "microarray" }, - "all_counts.parquet:md5,4ceb116e0a52b92ab31ec4e122ed12a1" + "all_counts.parquet:md5,f3234a9f680271996f806b7f0f34a11c" ] ] } ], - "timestamp": "2026-03-30T16:41:25.646239587", + "timestamp": "2026-06-12T08:12:20.187397045", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } }, "3 files": { @@ -48,7 +48,7 @@ { "platform": "rnaseq" }, - "all_counts.parquet:md5,c519c7936217c9399081069a48539c07" + "all_counts.parquet:md5,e64b6447f373377c507ae4136228ffbb" ] ], "1": [ @@ -70,15 +70,15 @@ { "platform": "rnaseq" }, - "all_counts.parquet:md5,c519c7936217c9399081069a48539c07" + "all_counts.parquet:md5,e64b6447f373377c507ae4136228ffbb" ] ] } ], - "timestamp": "2026-03-30T16:39:46.447995126", + "timestamp": "2026-06-12T08:12:10.754546152", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } } } \ No newline at end of file diff --git a/tests/modules/local/normalisation/compute_cpm/main.nf.test.snap b/tests/modules/local/normalisation/compute_cpm/main.nf.test.snap index d2065f0e..78951fcb 100644 --- a/tests/modules/local/normalisation/compute_cpm/main.nf.test.snap +++ b/tests/modules/local/normalisation/compute_cpm/main.nf.test.snap @@ -5,11 +5,9 @@ "0": [ [ { - "dataset": [ - - ] + "dataset": "test" }, - "counts.cpm.parquet:md5,8802fdfa77c0da39062bf357dccdd3cd" + "counts.cpm.parquet:md5,2cd6ee764e06ca052fe11a41e2818e87" ] ], "1": [ @@ -35,19 +33,17 @@ "counts": [ [ { - "dataset": [ - - ] + "dataset": "test" }, - "counts.cpm.parquet:md5,8802fdfa77c0da39062bf357dccdd3cd" + "counts.cpm.parquet:md5,2cd6ee764e06ca052fe11a41e2818e87" ] ] } ], - "timestamp": "2026-04-17T09:07:24.246785277", + "timestamp": "2026-06-12T08:12:29.209053648", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } }, "One group": { @@ -58,7 +54,7 @@ { "dataset": "accession" }, - "counts.cpm.parquet:md5,c8855975f68aad3c3bb060a23c14e2f9" + "counts.cpm.parquet:md5,92565ffdb68131e1e218dfcc04a0a056" ] ], "1": [ @@ -86,15 +82,15 @@ { "dataset": "accession" }, - "counts.cpm.parquet:md5,c8855975f68aad3c3bb060a23c14e2f9" + "counts.cpm.parquet:md5,92565ffdb68131e1e218dfcc04a0a056" ] ] } ], - "timestamp": "2026-03-19T12:23:45.874853063", + "timestamp": "2026-06-12T08:12:47.72673362", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } }, "TSV files": { @@ -105,7 +101,7 @@ { "dataset": "accession" }, - "counts.cpm.parquet:md5,8802fdfa77c0da39062bf357dccdd3cd" + "counts.cpm.parquet:md5,2cd6ee764e06ca052fe11a41e2818e87" ] ], "1": [ @@ -133,15 +129,15 @@ { "dataset": "accession" }, - "counts.cpm.parquet:md5,8802fdfa77c0da39062bf357dccdd3cd" + "counts.cpm.parquet:md5,2cd6ee764e06ca052fe11a41e2818e87" ] ] } ], - "timestamp": "2026-03-19T12:23:54.407797312", + "timestamp": "2026-06-12T08:12:56.469186276", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } }, "Rows with many zeros": { @@ -150,11 +146,9 @@ "0": [ [ { - "dataset": [ - - ] + "dataset": "test" }, - "counts.cpm.parquet:md5,ab2596a5bb8b3b2e39754191a2dce2aa" + "counts.cpm.parquet:md5,b30ef63196202a42a06593b353f13891" ] ], "1": [ @@ -180,19 +174,17 @@ "counts": [ [ { - "dataset": [ - - ] + "dataset": "test" }, - "counts.cpm.parquet:md5,ab2596a5bb8b3b2e39754191a2dce2aa" + "counts.cpm.parquet:md5,b30ef63196202a42a06593b353f13891" ] ] } ], - "timestamp": "2026-04-17T09:07:34.001566313", + "timestamp": "2026-06-12T08:12:38.39403833", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } } } \ No newline at end of file diff --git a/tests/modules/local/normalisation/compute_tpm/main.nf.test.snap b/tests/modules/local/normalisation/compute_tpm/main.nf.test.snap index 2591289e..fd6a7dbc 100644 --- a/tests/modules/local/normalisation/compute_tpm/main.nf.test.snap +++ b/tests/modules/local/normalisation/compute_tpm/main.nf.test.snap @@ -5,9 +5,7 @@ "0": [ [ { - "dataset": [ - - ] + "dataset": "test" }, "counts.tpm.parquet:md5,e8e08e6af6b76fe41793259203925e37" ] @@ -35,19 +33,17 @@ "counts": [ [ { - "dataset": [ - - ] + "dataset": "test" }, "counts.tpm.parquet:md5,e8e08e6af6b76fe41793259203925e37" ] ] } ], - "timestamp": "2026-04-17T09:08:02.882187442", + "timestamp": "2026-06-12T08:13:05.279065574", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } }, "One group": { @@ -56,9 +52,7 @@ "0": [ [ { - "dataset": [ - - ] + "dataset": "test" }, "counts.tpm.parquet:md5,2bb5797b24bcd02a06b2794c94567638" ] @@ -86,19 +80,17 @@ "counts": [ [ { - "dataset": [ - - ] + "dataset": "test" }, "counts.tpm.parquet:md5,2bb5797b24bcd02a06b2794c94567638" ] ] } ], - "timestamp": "2026-04-17T09:08:21.950858405", + "timestamp": "2026-06-12T08:13:22.770937523", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } }, "TSV files": { @@ -107,9 +99,7 @@ "0": [ [ { - "dataset": [ - - ] + "dataset": "test" }, "counts.tpm.parquet:md5,e8e08e6af6b76fe41793259203925e37" ] @@ -137,19 +127,17 @@ "counts": [ [ { - "dataset": [ - - ] + "dataset": "test" }, "counts.tpm.parquet:md5,e8e08e6af6b76fe41793259203925e37" ] ] } ], - "timestamp": "2026-04-17T09:08:31.427239077", + "timestamp": "2026-06-12T08:13:33.01260406", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } }, "Rows with many zeros": { @@ -158,9 +146,7 @@ "0": [ [ { - "dataset": [ - - ] + "dataset": "test" }, "counts.tpm.parquet:md5,95563b1ba1083cfc31c2b9c18c5aeaaa" ] @@ -188,19 +174,17 @@ "counts": [ [ { - "dataset": [ - - ] + "dataset": "test" }, "counts.tpm.parquet:md5,95563b1ba1083cfc31c2b9c18c5aeaaa" ] ] } ], - "timestamp": "2026-04-17T09:08:12.502224484", + "timestamp": "2026-06-12T08:13:13.960170504", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } } } \ No newline at end of file diff --git a/tests/modules/local/quantile_normalisation/main.nf.test.snap b/tests/modules/local/quantile_normalisation/main.nf.test.snap index c72c83e0..9ebc6f46 100644 --- a/tests/modules/local/quantile_normalisation/main.nf.test.snap +++ b/tests/modules/local/quantile_normalisation/main.nf.test.snap @@ -5,11 +5,9 @@ "0": [ [ { - "dataset": [ - - ] + "dataset": "test" }, - "count.raw.cpm.quant_norm.parquet:md5,4ceb116e0a52b92ab31ec4e122ed12a1" + "count.raw.cpm.quant_norm.parquet:md5,f3234a9f680271996f806b7f0f34a11c" ] ], "1": [ @@ -36,19 +34,17 @@ "counts": [ [ { - "dataset": [ - - ] + "dataset": "test" }, - "count.raw.cpm.quant_norm.parquet:md5,4ceb116e0a52b92ab31ec4e122ed12a1" + "count.raw.cpm.quant_norm.parquet:md5,f3234a9f680271996f806b7f0f34a11c" ] ] } ], - "timestamp": "2026-04-17T09:09:10.597987851", + "timestamp": "2026-06-12T08:14:13.202512087", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } }, "Normal target distribution": { @@ -57,11 +53,9 @@ "0": [ [ { - "dataset": [ - - ] + "dataset": "test" }, - "count.raw.cpm.quant_norm.parquet:md5,10c118fd62dad210b585f30620679732" + "count.raw.cpm.quant_norm.parquet:md5,016bcee1dbaebcb6a90546b00f87ac95" ] ], "1": [ @@ -88,19 +82,17 @@ "counts": [ [ { - "dataset": [ - - ] + "dataset": "test" }, - "count.raw.cpm.quant_norm.parquet:md5,10c118fd62dad210b585f30620679732" + "count.raw.cpm.quant_norm.parquet:md5,016bcee1dbaebcb6a90546b00f87ac95" ] ] } ], - "timestamp": "2026-04-17T09:09:22.718260106", + "timestamp": "2026-06-12T08:14:25.271455593", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } } } \ No newline at end of file diff --git a/tests/subworkflows/local/expression_normalisation/main.nf.test.snap b/tests/subworkflows/local/expression_normalisation/main.nf.test.snap index 0b893abd..ccf56c89 100644 --- a/tests/subworkflows/local/expression_normalisation/main.nf.test.snap +++ b/tests/subworkflows/local/expression_normalisation/main.nf.test.snap @@ -10,7 +10,7 @@ "dataset": "rnaseq_raw", "platform": "rnaseq" }, - "rnaseq.raw.cpm.quant_norm.parquet:md5,9f7988ca916b47ed614c824e001d2512" + "rnaseq.raw.cpm.quant_norm.parquet:md5,cb63fdfcfad72d54f1bbef526674fa68" ], [ { @@ -19,7 +19,7 @@ "dataset": "microarray_normalised", "platform": "microarray" }, - "microarray.normalised.quant_norm.parquet:md5,0f9ed5a872e8c424a9ccc83b1c33753f" + "microarray.normalised.quant_norm.parquet:md5,362b17780fe521129f49a7e040beee64" ] ], "counts": [ @@ -30,7 +30,7 @@ "dataset": "rnaseq_raw", "platform": "rnaseq" }, - "rnaseq.raw.cpm.quant_norm.parquet:md5,9f7988ca916b47ed614c824e001d2512" + "rnaseq.raw.cpm.quant_norm.parquet:md5,cb63fdfcfad72d54f1bbef526674fa68" ], [ { @@ -39,15 +39,15 @@ "dataset": "microarray_normalised", "platform": "microarray" }, - "microarray.normalised.quant_norm.parquet:md5,0f9ed5a872e8c424a9ccc83b1c33753f" + "microarray.normalised.quant_norm.parquet:md5,362b17780fe521129f49a7e040beee64" ] ] } ], - "timestamp": "2026-03-19T12:27:13.766132141", + "timestamp": "2026-06-12T08:16:13.228280816", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } }, "No rnaseq normalisation": { @@ -61,7 +61,7 @@ "dataset": "microarray_normalised", "platform": "microarray" }, - "microarray.normalised.quant_norm.parquet:md5,0f9ed5a872e8c424a9ccc83b1c33753f" + "microarray.normalised.quant_norm.parquet:md5,362b17780fe521129f49a7e040beee64" ] ], "counts": [ @@ -72,15 +72,15 @@ "dataset": "microarray_normalised", "platform": "microarray" }, - "microarray.normalised.quant_norm.parquet:md5,0f9ed5a872e8c424a9ccc83b1c33753f" + "microarray.normalised.quant_norm.parquet:md5,362b17780fe521129f49a7e040beee64" ] ] } ], - "timestamp": "2026-03-19T12:27:25.897836784", + "timestamp": "2026-06-12T08:16:26.345933821", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } }, "TPM Normalisation with gene length": { @@ -94,7 +94,7 @@ "dataset": "rnaseq_raw", "platform": "rnaseq" }, - "rnaseq.raw.tpm.quant_norm.parquet:md5,590b3bd6ec2b09533ef75ce9950d3a92" + "rnaseq.raw.tpm.quant_norm.parquet:md5,f5ab4840f0313d30d51d5029f6f69c2d" ], [ { @@ -103,7 +103,7 @@ "dataset": "microarray_normalised", "platform": "microarray" }, - "microarray.normalised.quant_norm.parquet:md5,0f9ed5a872e8c424a9ccc83b1c33753f" + "microarray.normalised.quant_norm.parquet:md5,362b17780fe521129f49a7e040beee64" ] ], "counts": [ @@ -114,7 +114,7 @@ "dataset": "rnaseq_raw", "platform": "rnaseq" }, - "rnaseq.raw.tpm.quant_norm.parquet:md5,590b3bd6ec2b09533ef75ce9950d3a92" + "rnaseq.raw.tpm.quant_norm.parquet:md5,f5ab4840f0313d30d51d5029f6f69c2d" ], [ { @@ -123,15 +123,15 @@ "dataset": "microarray_normalised", "platform": "microarray" }, - "microarray.normalised.quant_norm.parquet:md5,0f9ed5a872e8c424a9ccc83b1c33753f" + "microarray.normalised.quant_norm.parquet:md5,362b17780fe521129f49a7e040beee64" ] ] } ], - "timestamp": "2026-03-19T12:27:00.268510601", + "timestamp": "2026-06-12T08:15:58.461993083", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } }, "TPM Normalisation": { @@ -145,7 +145,7 @@ "dataset": "rnaseq_raw", "platform": "rnaseq" }, - "rnaseq.raw.tpm.quant_norm.parquet:md5,d0e926a720de0803775b0dbd118b03ac" + "rnaseq.raw.tpm.quant_norm.parquet:md5,e6b853e4614ac4de5f4d00f657189355" ], [ { @@ -154,7 +154,7 @@ "dataset": "microarray_normalised", "platform": "microarray" }, - "microarray.normalised.quant_norm.parquet:md5,0f9ed5a872e8c424a9ccc83b1c33753f" + "microarray.normalised.quant_norm.parquet:md5,362b17780fe521129f49a7e040beee64" ] ], "counts": [ @@ -165,7 +165,7 @@ "dataset": "rnaseq_raw", "platform": "rnaseq" }, - "rnaseq.raw.tpm.quant_norm.parquet:md5,d0e926a720de0803775b0dbd118b03ac" + "rnaseq.raw.tpm.quant_norm.parquet:md5,e6b853e4614ac4de5f4d00f657189355" ], [ { @@ -174,15 +174,15 @@ "dataset": "microarray_normalised", "platform": "microarray" }, - "microarray.normalised.quant_norm.parquet:md5,0f9ed5a872e8c424a9ccc83b1c33753f" + "microarray.normalised.quant_norm.parquet:md5,362b17780fe521129f49a7e040beee64" ] ] } ], - "timestamp": "2026-03-19T12:26:44.852023368", + "timestamp": "2026-06-12T08:15:43.823757671", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } } } \ No newline at end of file diff --git a/tests/subworkflows/local/genorm/main.nf.test.snap b/tests/subworkflows/local/genorm/main.nf.test.snap index 813be1cf..978495e7 100644 --- a/tests/subworkflows/local/genorm/main.nf.test.snap +++ b/tests/subworkflows/local/genorm/main.nf.test.snap @@ -7,7 +7,7 @@ { "section": "section_1" }, - "m_measures.csv:md5,2119b16fe13e2d0bc0fedc3c9d3d1733" + "m_measures.csv:md5,3d6a1e0b6884f140ed9b8b0a3bbfc42d" ] ], "m_measures": [ @@ -15,15 +15,15 @@ { "section": "section_1" }, - "m_measures.csv:md5,2119b16fe13e2d0bc0fedc3c9d3d1733" + "m_measures.csv:md5,3d6a1e0b6884f140ed9b8b0a3bbfc42d" ] ] } ], - "timestamp": "2026-04-01T09:56:47.48692894", + "timestamp": "2026-06-12T08:18:09.899448871", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "25.04.0" } }, "10 genes": { From c5aa9b2a8f74104261a6888257e2a2d70db7ea3a Mon Sep 17 00:00:00 2001 From: Olivier Date: Fri, 12 Jun 2026 08:28:41 +0200 Subject: [PATCH 20/31] pass linters --- bin/impute_missing_values.py | 51 ++++++++++++++++++------------------ nextflow.config | 2 +- nextflow_schema.json | 2 +- 3 files changed, 27 insertions(+), 28 deletions(-) diff --git a/bin/impute_missing_values.py b/bin/impute_missing_values.py index 8e23411d..cfed2896 100755 --- a/bin/impute_missing_values.py +++ b/bin/impute_missing_values.py @@ -44,19 +44,15 @@ def parse_args(): parser = argparse.ArgumentParser(description="Perform KNN imputation on count data") parser.add_argument( - "--counts", - type=Path, - dest="count_file", - required=True, - help="Count file" + "--counts", type=Path, dest="count_file", required=True, help="Count file" ) parser.add_argument( - "--imputer", - choices=IMPUTERS, - required=True, + "--imputer", + choices=IMPUTERS, + required=True, dest="imputer", - help="Imputer to use" - ) + help="Imputer to use", + ) return parser.parse_args() @@ -70,8 +66,8 @@ def apply_imputer(df: pl.DataFrame, imputer): # this is so that the imputer can use the gene expression values as features # we transpose once it is a numpy array because numpty transposition is zero-copy transpose (just changes memory strides) # the to_numpy method should be zero copy too, since all count columns have a float dtype - count_matrix = df.select(get_count_columns(df)).to_numpy().T # (n_samples, n_genes) - imputed_array = imputer.fit_transform(count_matrix) + count_matrix = df.select(get_count_columns(df)).to_numpy().T # (n_samples, n_genes) + imputed_array = imputer.fit_transform(count_matrix) return df.with_columns(pl.DataFrame(imputed_array.T, schema=get_count_columns(df))) @@ -87,7 +83,7 @@ def apply_simle_imputer(df: pl.DataFrame): def get_number_of_neighbours(df: pl.DataFrame, k_min: int, k_max: int) -> int: """ Returns the number of neighbours to use for KNN-imputation based on the number of samples and missing values. - + Parameters ---------- df : pl.DataFrame @@ -96,7 +92,7 @@ def get_number_of_neighbours(df: pl.DataFrame, k_min: int, k_max: int) -> int: The minimum number of neighbours. k_max : int The maximum number of neighbours. - + Returns ------- int @@ -113,16 +109,19 @@ def get_number_of_neighbours(df: pl.DataFrame, k_min: int, k_max: int) -> int: n_samples = df.select(pl.exclude(config.GENE_ID_COLNAME)).width missing_fraction = nb_missing_values / (n_genes * n_samples) # return k as a function of the number of samples and missing values, with bounds - return int(np.clip( - int(np.sqrt(n_samples) / FACTOR_N_SAMPLES_TO_K * (1 + missing_fraction)), - k_min, k_max - )) + return int( + np.clip( + int(np.sqrt(n_samples) / FACTOR_N_SAMPLES_TO_K * (1 + missing_fraction)), + k_min, + k_max, + ) + ) def cluster_dataframe(df: pl.DataFrame, n_clusters: int) -> pl.Series: """ Cluster the dataframe using MiniBatchKMeans. - + Returns ------- pl.Series @@ -131,13 +130,11 @@ def cluster_dataframe(df: pl.DataFrame, n_clusters: int) -> pl.Series: # replace missing values with mean values accross samples (for clustering only) df_for_clustering = ( df.select(pl.exclude(config.GENE_ID_COLNAME)) - .with_columns( - mean_expression=pl.mean_horizontal(pl.all()) - ) + .with_columns(mean_expression=pl.mean_horizontal(pl.all())) .fill_null(pl.col("mean_expression")) .drop("mean_expression") ) - + # cluster — MiniBatchKMeans scales well kmeans = MiniBatchKMeans( n_clusters=n_clusters, @@ -156,7 +153,7 @@ def get_number_of_clusters(df: pl.DataFrame) -> int: ---------- df : pl.DataFrame The input dataframe. - + Returns ------- int @@ -169,7 +166,7 @@ def apply_knn_imputer(df: pl.DataFrame) -> pl.DataFrame: n_neighbours = get_number_of_neighbours(df, MIN_NEIGHBOURS, MAX_NEIGHBOURS) logger.info(f"Using {n_neighbours} neighbours") imputer = KNNImputer( - n_neighbors=n_neighbours, + n_neighbors=n_neighbours, weights="distance", copy=False, keep_empty_features=KEEP_EMPTY_FEATURES, @@ -188,7 +185,9 @@ def apply_knn_imputer(df: pl.DataFrame) -> pl.DataFrame: imputed_cluster_df.write_parquet(f"imputed_cluster_{label}.parquet") del df - return pl.concat([pl.read_parquet(f"imputed_cluster_{label}.parquet") for label in unique_labels]) + return pl.concat( + [pl.read_parquet(f"imputed_cluster_{label}.parquet") for label in unique_labels] + ) def apply_iterative_imputer(df: pl.DataFrame) -> pl.DataFrame: diff --git a/nextflow.config b/nextflow.config index 0f949dc6..749a8eca 100644 --- a/nextflow.config +++ b/nextflow.config @@ -10,7 +10,7 @@ params { // Mandatory inputs - species = null + species = "" // general options keywords = "" diff --git a/nextflow_schema.json b/nextflow_schema.json index af87e98e..d1ed6b4c 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -10,7 +10,7 @@ "type": "object", "fa_icon": "fas fa-terminal", "description": "Define where the pipeline should find input data and save output data.", - "required": ["species", "outdir"], + "required": ["outdir"], "properties": { "species": { "type": "string", From 719851a96a47fe0f4999fb4836485b203a43c7fd Mon Sep 17 00:00:00 2001 From: Olivier Date: Fri, 12 Jun 2026 08:29:49 +0200 Subject: [PATCH 21/31] update multiqc --- modules.json | 2 +- ... => linux_amd64-bd-c17fb751507e9dfc_1.txt} | 806 +++++++++--------- ... => linux_arm64-bd-5c84a5000a226ab5_1.txt} | 804 +++++++++-------- modules/nf-core/multiqc/environment.yml | 2 +- modules/nf-core/multiqc/main.nf | 6 +- modules/nf-core/multiqc/meta.yml | 28 +- .../nf-core/multiqc/tests/main.nf.test.snap | 10 +- 7 files changed, 803 insertions(+), 855 deletions(-) rename modules/nf-core/multiqc/.conda-lock/{linux_amd64-bd-c1f4a7982b743963_1.txt => linux_amd64-bd-c17fb751507e9dfc_1.txt} (75%) rename modules/nf-core/multiqc/.conda-lock/{linux_arm64-bd-40bf3b435e89dc22_1.txt => linux_arm64-bd-5c84a5000a226ab5_1.txt} (74%) diff --git a/modules.json b/modules.json index ca279222..28c3fe5e 100644 --- a/modules.json +++ b/modules.json @@ -7,7 +7,7 @@ "nf-core": { "multiqc": { "branch": "master", - "git_sha": "79b36b51048048374b642289bfe9e591ef56fe05", + "git_sha": "98403d15b0e50edae1f3fec5eae5e24982f1fade", "installed_by": ["modules"] } } diff --git a/modules/nf-core/multiqc/.conda-lock/linux_amd64-bd-c1f4a7982b743963_1.txt b/modules/nf-core/multiqc/.conda-lock/linux_amd64-bd-c17fb751507e9dfc_1.txt similarity index 75% rename from modules/nf-core/multiqc/.conda-lock/linux_amd64-bd-c1f4a7982b743963_1.txt rename to modules/nf-core/multiqc/.conda-lock/linux_amd64-bd-c17fb751507e9dfc_1.txt index 76190304..2a91c22d 100644 --- a/modules/nf-core/multiqc/.conda-lock/linux_amd64-bd-c1f4a7982b743963_1.txt +++ b/modules/nf-core/multiqc/.conda-lock/linux_amd64-bd-c17fb751507e9dfc_1.txt @@ -14,120 +14,118 @@ linux-64: - conda: https://conda.anaconda.org/conda-forge/noarch/_python_abi3_support-1.0-hd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.7.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-26.1.0-pyhcf101f3_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/backports.zstd-1.3.0-py314h680f03e_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/backports.zstd-1.5.0-py314h680f03e_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.2.0-py314h3de4e8d_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_9.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.2.25-pyhd8ed1ab_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.6-pyhd8ed1ab_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.5.20-hbd8a1cb_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.5.20-pyhd8ed1ab_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.7-pyhd8ed1ab_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/click-8.4.0-pyhc90fa1f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/coloredlogs-15.0.1-pyhd8ed1ab_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colormath-3.0.0-pyhd8ed1ab_4.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/cpython-3.14.3-py314hd8ed1ab_101.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/expat-2.7.4-hecca717_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/cpython-3.14.5-py314hd8ed1ab_100.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/expat-2.8.1-hecca717_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_3.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.17.1-h27c8c51_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.18.0-h27c8c51_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-hc364b38_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/humanfriendly-10.0-pyh707e725_8.conda - conda: https://conda.anaconda.org/conda-forge/noarch/humanize-4.15.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.3-h33c6efd_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-8.8.0-pyhcf101f3_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.15-pyhcf101f3_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-9.0.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.26.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2025.9.1-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/kaleido-core-0.2.1-h3644ca4_0.tar.bz2 -- conda: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.18-h0c24ade_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.19.1-h0c24ade_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_102.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.1.0-hdb68285_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-5_h4a7cf45_openblas.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.11.0-5_h0358290_openblas.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-7_h4a7cf45_openblas.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.11.0-7_h0358290_openblas.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.25-h17f619e_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.4-hecca717_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.8.1-hecca717_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h3435931_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libfreetype-2.14.3-ha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libfreetype6-2.14.3-h73754d4_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_18.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_18.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_18.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-h68bc16d_18.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_18.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.2-hb03c661_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-5_h47877c9_openblas.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_19.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_19.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_19.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-h68bc16d_19.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_19.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.4.1-hb03c661_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-7_h47877c9_openblas.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.3-hb03c661_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.30-pthreads_h94d23a6_4.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.55-h421ea60_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.52.0-hf4e2dac_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_18.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.33-pthreads_h94d23a6_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.58-h421ea60_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.53.1-h0c1763c_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_19.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h9d88235_1.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.3-h5347b49_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.42.1-h5347b49_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.6.0-hd42ef1d_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.17.0-h8a09558_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.2-h25fd6f3_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-3.10.2-pyhcf101f3_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-4.0.0-pyhd8ed1ab_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-4.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-3.0.3-py314h67df5f8_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/mathjax-2.7.7-ha770c72_3.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_1.conda -- conda: https://conda.anaconda.org/bioconda/noarch/multiqc-1.33-pyhdfd78af_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/narwhals-2.18.1-pyhcf101f3_1.conda +- conda: https://conda.anaconda.org/bioconda/noarch/multiqc-1.35-pyhdfd78af_1.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/narwhals-2.21.2-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/natsort-8.4.0-pyhcf101f3_2.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.6-hdb14827_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.6.1-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nspr-4.38-h29cc59b_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nss-3.118-h445c969_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-2.4.3-py314h2b28147_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-2.4.6-py314h2b28147_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.4-h55fea9a_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.1-h35e630c_1.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-12.1.1-py314h8ec4b1a_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.2-h35e630c_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.2-pyhc364b38_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-12.2.0-py314h8ec4b1a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-6.6.0-pyhd8ed1ab_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/polars-1.39.3-pyh58ad624_1.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/polars-lts-cpu-1.34.0.deprecated-hc364b38_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/polars-runtime-32-1.39.3-py310hffdcd12_1.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/polars-runtime-compat-1.39.3-py310hbcd5346_1.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/polars-1.41.0-pyh58ad624_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/polars-runtime-32-1.41.0-py310h49dadd8_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/polars-runtime-compat-1.41.0-py310hcbd6021_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/procps-ng-4.0.6-h18c060e_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-hb9d3cd8_1002.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyaml-env-1.2.2-pyhd8ed1ab_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.12.5-pyhcf101f3_1.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.41.5-py314h2e6c369_1.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.13.4-pyhcf101f3_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.46.4-py314h2e6c369_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.20.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.14.3-h32b2ec7_101_cp314.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.14.5-habeac84_100_cp314.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dotenv-1.2.2-pyhcf101f3_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/python-gil-3.14.3-h4df99d1_101.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/python-gil-3.14.5-h4df99d1_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-kaleido-0.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py314h67df5f8_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.3-h853b02a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.37.0-pyhcf101f3_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/regex-2026.2.28-py314h5bd0f2a_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/rich-14.3.3-pyhcf101f3_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/regex-2026.5.9-py314h5bd0f2a_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.34.2-pyhcf101f3_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/rich-15.0.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/rich-click-1.9.7-pyh8f84b5b_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.30.0-py314h2e6c369_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/spectra-0.0.11-pyhd8ed1ab_2.conda -- conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.52.0-h04a0ce9_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.53.1-hbc0de68_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tiktoken-0.12.0-py314h67fec18_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h366c992_103.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tqdm-4.67.3-pyh8f84b5b_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.5.1-pyhd8ed1ab_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.5.2-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/typing-inspection-0.4.2-pyhd8ed1ab_1.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/typing-inspection-0.4.2-pyhcf101f3_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.12-hb03c661_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdmcp-1.1.5-hb03c661_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h280c20c_3.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.23.0-pyhcf101f3_1.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/zipp-4.1.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zlib-ng-2.3.3-hceb46e0_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda packages: @@ -174,15 +172,15 @@ license: MIT license_family: MIT size: 64927 timestamp: 1773935801332 -- conda: https://conda.anaconda.org/conda-forge/noarch/backports.zstd-1.3.0-py314h680f03e_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/backports.zstd-1.5.0-py314h680f03e_0.conda noarch: generic -sha256: c31ab719d256bc6f89926131e88ecd0f0c5d003fe8481852c6424f4ec6c7eb29 -md5: a2ac7763a9ac75055b68f325d3255265 +sha256: a1c97297e867776760489537bc5ae36fa83a154be30e3b79385a39ca4cb058fe +md5: 1133126d840e75287d83947be3fc3e71 depends: - python >=3.14 license: BSD-3-Clause AND MIT AND EPL-2.0 -size: 7514 -timestamp: 1767044983590 +size: 7533 +timestamp: 1778594057496 - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.2.0-py314h3de4e8d_1.conda sha256: 3ad3500bff54a781c29f16ce1b288b36606e2189d0b0ef2f67036554f47f12b0 md5: 8910d2c46f7e7b519129f486e0fe927a @@ -208,42 +206,42 @@ license: bzip2-1.0.6 license_family: BSD size: 260182 timestamp: 1771350215188 -- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda -sha256: 67cc7101b36421c5913a1687ef1b99f85b5d6868da3abbf6ec1a4181e79782fc -md5: 4492fd26db29495f0ba23f146cd5638d +- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.5.20-hbd8a1cb_0.conda +sha256: 9812a303a1395e1dafbd92e5bc8a1ff6013bcbba0a09c7f03a8d23e43560aa9b +md5: 489b8e97e666c93f68fdb35c3c9b957f depends: - __unix license: ISC -size: 147413 -timestamp: 1772006283803 -- conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.2.25-pyhd8ed1ab_0.conda -sha256: a6b118fd1ed6099dc4fc03f9c492b88882a780fadaef4ed4f93dc70757713656 -md5: 765c4d97e877cdbbb88ff33152b86125 +size: 129868 +timestamp: 1779289852439 +- conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.5.20-pyhd8ed1ab_0.conda +sha256: 645655a3510e38e625da136595f3f16f2130c3263630cc3bc8f60f619ddbe490 +md5: 9fefff2f745ea1cc2ef15211a20c054a depends: - python >=3.10 license: ISC -size: 151445 -timestamp: 1772001170301 -- conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.6-pyhd8ed1ab_0.conda -sha256: d86dfd428b2e3c364fa90e07437c8405d635aa4ef54b25ab51d9c712be4112a5 -md5: 49ee13eb9b8f44d63879c69b8a40a74b +size: 134201 +timestamp: 1779285131141 +- conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.7-pyhd8ed1ab_0.conda +sha256: 3f9483d62ce24ecd063f8a5a714448445dc8d9e201147c46699fc0033e824457 +md5: a9167b9571f3baa9d448faa2139d1089 depends: - python >=3.10 license: MIT license_family: MIT -size: 58510 -timestamp: 1773660086450 -- conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda -sha256: 38cfe1ee75b21a8361c8824f5544c3866f303af1762693a178266d7f198e8715 -md5: ea8a6c3256897cc31263de9f455e25d9 +size: 58872 +timestamp: 1775127203018 +- conda: https://conda.anaconda.org/conda-forge/noarch/click-8.4.0-pyhc90fa1f_0.conda +sha256: 99ab8ef815c4520cce3a7482c2513f377c14348206857661d84c76a55e030f97 +md5: 003767c47f1f0a474c4de268b57839c3 depends: -- python >=3.10 - __unix - python +- python >=3.10 license: BSD-3-Clause license_family: BSD -size: 97676 -timestamp: 1764518652276 +size: 104631 +timestamp: 1779108494556 - conda: https://conda.anaconda.org/conda-forge/noarch/coloredlogs-15.0.1-pyhd8ed1ab_4.conda sha256: 8021c76eeadbdd5784b881b165242db9449783e12ce26d6234060026fd6a8680 md5: b866ff7007b934d564961066c8195983 @@ -265,27 +263,27 @@ license: BSD-3-Clause license_family: BSD size: 39326 timestamp: 1735759976140 -- conda: https://conda.anaconda.org/conda-forge/noarch/cpython-3.14.3-py314hd8ed1ab_101.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/cpython-3.14.5-py314hd8ed1ab_100.conda noarch: generic -sha256: 91b06300879df746214f7363d6c27c2489c80732e46a369eb2afc234bcafb44c -md5: 3bb89e4f795e5414addaa531d6b1500a +sha256: 777882d2685f368417f31bbe1b28f73687fc6c8f6a5768bda20ffeefa6b07f5b +md5: a749029ce5d0632a913db19d17f944ab depends: - python >=3.14,<3.15.0a0 - python_abi * *_cp314 license: Python-2.0 -size: 50078 -timestamp: 1770674447292 -- conda: https://conda.anaconda.org/conda-forge/linux-64/expat-2.7.4-hecca717_0.conda -sha256: 0cc345e4dead417996ce9a1f088b28d858f03d113d43c1963d29194366dcce27 -md5: a0535741a4934b3e386051065c58761a +size: 50212 +timestamp: 1779236682725 +- conda: https://conda.anaconda.org/conda-forge/linux-64/expat-2.8.1-hecca717_0.conda +sha256: 29a10599d56d93bd750914888ebe6822d47722070762b4647b34d12df9f4476e +md5: d0757fd84af06f065eba49d39af6c546 depends: - __glibc >=2.17,<3.0.a0 -- libexpat 2.7.4 hecca717_0 +- libexpat 2.8.1 hecca717_0 - libgcc >=14 license: MIT license_family: MIT -size: 145274 -timestamp: 1771259434699 +size: 148238 +timestamp: 1779278694477 - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 sha256: 58d7f40d2940dd0a8aa28651239adbf5613254df0f75789919c4e6762054403b md5: 0c96522c6bdaed4b1566d11387caaf45 @@ -314,21 +312,21 @@ license: LicenseRef-Ubuntu-Font-Licence-Version-1.0 license_family: Other size: 1620504 timestamp: 1727511233259 -- conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.17.1-h27c8c51_0.conda -sha256: aa4a44dba97151221100a637c7f4bde619567afade9c0265f8e1c8eed8d7bd8c -md5: 867127763fbe935bab59815b6e0b7b5c +- conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.18.0-h27c8c51_0.conda +sha256: e798086d8a65d55dc4c51f5746705639c9a5f2eeb0b8fc50e6152cfc0d69a4e8 +md5: 06965b2f9854d0b15e0443ee81fe83dc depends: - __glibc >=2.17,<3.0.a0 -- libexpat >=2.7.4,<3.0a0 -- libfreetype >=2.14.1 -- libfreetype6 >=2.14.1 +- libexpat >=2.8.1,<3.0a0 +- libfreetype >=2.14.3 +- libfreetype6 >=2.14.3 - libgcc >=14 -- libuuid >=2.41.3,<3.0a0 -- libzlib >=1.3.1,<2.0a0 +- libuuid >=2.42.1,<3.0a0 +- libzlib >=1.3.2,<2.0a0 license: MIT license_family: MIT -size: 270705 -timestamp: 1771382710863 +size: 280882 +timestamp: 1779421631622 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-hc364b38_1.conda sha256: 54eea8469786bc2291cc40bca5f46438d3e062a399e8f53f013b6a9f50e98333 md5: a7970cd949a077b7cb9696379d338681 @@ -390,37 +388,26 @@ license: MIT license_family: MIT size: 17397 timestamp: 1737618427549 -- conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.3-h33c6efd_0.conda -sha256: fbf86c4a59c2ed05bbffb2ba25c7ed94f6185ec30ecb691615d42342baa1a16a -md5: c80d8a3b84358cb967fa81e7075fbc8a -depends: -- __glibc >=2.17,<3.0.a0 -- libgcc >=14 -- libstdcxx >=14 -license: MIT -license_family: MIT -size: 12723451 -timestamp: 1773822285671 -- conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda -sha256: ae89d0299ada2a3162c2614a9d26557a92aa6a77120ce142f8e0109bbf0342b0 -md5: 53abe63df7e10a6ba605dc5f9f961d36 +- conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.15-pyhcf101f3_0.conda +sha256: 3d25f9f6f7ab3e1ce6429fc8c8aae0335cf446692e715068488536d220cc43de +md5: 1b9083b7f00609605d1483dbc6071a81 depends: - python >=3.10 +- python license: BSD-3-Clause license_family: BSD -size: 50721 -timestamp: 1760286526795 -- conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-8.8.0-pyhcf101f3_0.conda -sha256: 82ab2a0d91ca1e7e63ab6a4939356667ef683905dea631bc2121aa534d347b16 -md5: 080594bf4493e6bae2607e65390c520a +size: 62642 +timestamp: 1779294335905 +- conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-9.0.0-pyhcf101f3_0.conda +sha256: 43e2a5497cad1598ff88a3e69f69bc88b7b8f141fa63c60eab5db296317318b8 +md5: ffc17e785d64e12fc311af9184221839 depends: - python >=3.10 - zipp >=3.20 - python license: Apache-2.0 -license_family: APACHE -size: 34387 -timestamp: 1773931568510 +size: 34766 +timestamp: 1779714582554 - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhcf101f3_1.conda sha256: fc9ca7348a4f25fed2079f2153ecdcf5f9cf2a0bc36c4172420ca09e1849df7b md5: 04558c96691bed63104678757beb4f8d @@ -474,18 +461,18 @@ license: MIT license_family: MIT size: 62099926 timestamp: 1615199463039 -- conda: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.18-h0c24ade_0.conda -sha256: 836ec4b895352110335b9fdcfa83a8dcdbe6c5fb7c06c4929130600caea91c0a -md5: 6f2e2c8f58160147c4d1c6f4c14cbac4 +- conda: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.19.1-h0c24ade_0.conda +sha256: eb89c6c39f2f6a93db55723dbb2f6bba8c8e63e6312bf1abf13e6e9ff45849c8 +md5: f92f984b558e6e6204014b16d212b271 depends: - __glibc >=2.17,<3.0.a0 - libgcc >=14 -- libjpeg-turbo >=3.1.2,<4.0a0 +- libjpeg-turbo >=3.1.4.1,<4.0a0 - libtiff >=4.7.1,<4.8.0a0 license: MIT license_family: MIT -size: 249959 -timestamp: 1768184673131 +size: 251086 +timestamp: 1778079286384 - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_102.conda sha256: 3d584956604909ff5df353767f3a2a2f60e07d070b328d109f30ac40cd62df6c md5: 18335a698559cdbcd86150a48bf54ba6 @@ -509,37 +496,37 @@ license: Apache-2.0 license_family: Apache size: 261513 timestamp: 1773113328888 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-5_h4a7cf45_openblas.conda -build_number: 5 -sha256: 18c72545080b86739352482ba14ba2c4815e19e26a7417ca21a95b76ec8da24c -md5: c160954f7418d7b6e87eaf05a8913fa9 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-7_h4a7cf45_openblas.conda +build_number: 7 +sha256: 081c850f99bc355821fac9c6e3727d40b3f8ce3beb50a5437cf03726b611ff39 +md5: 955b44e8b00b7f7ef4ce0130cef12394 depends: -- libopenblas >=0.3.30,<0.3.31.0a0 -- libopenblas >=0.3.30,<1.0a0 +- libopenblas >=0.3.33,<0.3.34.0a0 +- libopenblas >=0.3.33,<1.0a0 constrains: -- mkl <2026 -- liblapack 3.11.0 5*_openblas -- libcblas 3.11.0 5*_openblas -- blas 2.305 openblas -- liblapacke 3.11.0 5*_openblas +- libcblas 3.11.0 7*_openblas +- blas 2.307 openblas +- liblapack 3.11.0 7*_openblas +- liblapacke 3.11.0 7*_openblas +- mkl <2027 license: BSD-3-Clause license_family: BSD -size: 18213 -timestamp: 1765818813880 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.11.0-5_h0358290_openblas.conda -build_number: 5 -sha256: 0cbdcc67901e02dc17f1d19e1f9170610bd828100dc207de4d5b6b8ad1ae7ad8 -md5: 6636a2b6f1a87572df2970d3ebc87cc0 -depends: -- libblas 3.11.0 5_h4a7cf45_openblas +size: 18716 +timestamp: 1778489854108 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.11.0-7_h0358290_openblas.conda +build_number: 7 +sha256: 956ae0bb1ec8b0c3663d75b151aceb0521b54e513bf97f621a035f9c87037970 +md5: 0675639dc24cb0032f199e7ff68e4633 +depends: +- libblas 3.11.0 7_h4a7cf45_openblas constrains: -- liblapacke 3.11.0 5*_openblas -- blas 2.305 openblas -- liblapack 3.11.0 5*_openblas +- liblapacke 3.11.0 7*_openblas +- blas 2.307 openblas +- liblapack 3.11.0 7*_openblas license: BSD-3-Clause license_family: BSD -size: 18194 -timestamp: 1765818837135 +size: 18675 +timestamp: 1778489861559 - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.25-h17f619e_0.conda sha256: aa8e8c4be9a2e81610ddf574e05b64ee131fab5e0e3693210c9d6d2fba32c680 md5: 6c77a605a7a689d17d4819c0f8ac9a00 @@ -550,18 +537,18 @@ license: MIT license_family: MIT size: 73490 timestamp: 1761979956660 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.4-hecca717_0.conda -sha256: d78f1d3bea8c031d2f032b760f36676d87929b18146351c4464c66b0869df3f5 -md5: e7f7ce06ec24cfcfb9e36d28cf82ba57 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.8.1-hecca717_0.conda +sha256: 363018b25fdb5534c79783d912bd4b685a3547f4fc5996357ad548899b0ee8e7 +md5: 93764a5ca80616e9c10106cdaec92f74 depends: - __glibc >=2.17,<3.0.a0 - libgcc >=14 constrains: -- expat 2.7.4.* +- expat 2.8.1.* license: MIT license_family: MIT -size: 76798 -timestamp: 1771259418166 +size: 77294 +timestamp: 1779278686680 - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h3435931_0.conda sha256: 31f19b6a88ce40ebc0d5a992c131f57d919f73c0b92cd1617a5bec83f6e961e6 md5: a360c33a5abe61c07959e449fa1453eb @@ -593,42 +580,42 @@ constrains: license: GPL-2.0-only OR FTL size: 384575 timestamp: 1774298162622 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_18.conda -sha256: faf7d2017b4d718951e3a59d081eb09759152f93038479b768e3d612688f83f5 -md5: 0aa00f03f9e39fb9876085dee11a85d4 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_19.conda +sha256: 8e0a3b5e41272e5678499b5dfc4cddb673f9e935de01eb0767ce857001229f46 +md5: 57736f29cc2b0ec0b6c2952d3f101b6a depends: - __glibc >=2.17,<3.0.a0 - _openmp_mutex >=4.5 constrains: -- libgcc-ng ==15.2.0=*_18 -- libgomp 15.2.0 he0feb66_18 +- libgcc-ng ==15.2.0=*_19 +- libgomp 15.2.0 he0feb66_19 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL -size: 1041788 -timestamp: 1771378212382 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_18.conda -sha256: e318a711400f536c81123e753d4c797a821021fb38970cebfb3f454126016893 -md5: d5e96b1ed75ca01906b3d2469b4ce493 +size: 1041084 +timestamp: 1778269013026 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_19.conda +sha256: 9dcf54adfaa5e861123c2da4f2f0451a685464ea7e5a41ad91cf67b31d658d98 +md5: 331ee9b72b9dff570d56b1302c5ab37d depends: -- libgcc 15.2.0 he0feb66_18 +- libgcc 15.2.0 he0feb66_19 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL -size: 27526 -timestamp: 1771378224552 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_18.conda -sha256: d2c9fad338fd85e4487424865da8e74006ab2e2475bd788f624d7a39b2a72aee -md5: 9063115da5bc35fdc3e1002e69b9ef6e +size: 27694 +timestamp: 1778269016987 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_19.conda +sha256: 561a42758ef25b9ce308c4e2cf56daee4f06138385a17e29a492cd928e00be6f +md5: 42bf7eca1a951735fa06c0e3c0d5c8e6 depends: -- libgfortran5 15.2.0 h68bc16d_18 +- libgfortran5 15.2.0 h68bc16d_19 constrains: -- libgfortran-ng ==15.2.0=*_18 +- libgfortran-ng ==15.2.0=*_19 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL -size: 27523 -timestamp: 1771378269450 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-h68bc16d_18.conda -sha256: 539b57cf50ec85509a94ba9949b7e30717839e4d694bc94f30d41c9d34de2d12 -md5: 646855f357199a12f02a87382d429b75 +size: 27655 +timestamp: 1778269042954 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-h68bc16d_19.conda +sha256: 057978bb69fea29ed715a9b98adf71015c31baecc4aeb2bfc20d4fd5d83579d4 +md5: 85072b0ad177c966294f129b7c04a2d5 depends: - __glibc >=2.17,<3.0.a0 - libgcc >=15.2.0 @@ -636,53 +623,53 @@ constrains: - libgfortran 15.2.0 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL -size: 2482475 -timestamp: 1771378241063 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_18.conda -sha256: 21337ab58e5e0649d869ab168d4e609b033509de22521de1bfed0c031bfc5110 -md5: 239c5e9546c38a1e884d69effcf4c882 +size: 2483673 +timestamp: 1778269025089 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_19.conda +sha256: 5abe4ab9d93f6c9757d654f1969ae2267d4505315c1f2f8fe705fd60af084f1b +md5: faac990cb7aedc7f3a2224f2c9b0c26c depends: - __glibc >=2.17,<3.0.a0 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL -size: 603262 -timestamp: 1771378117851 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.2-hb03c661_0.conda -sha256: cc9aba923eea0af8e30e0f94f2ad7156e2984d80d1e8e7fe6be5a1f257f0eb32 -md5: 8397539e3a0bbd1695584fb4f927485a +size: 603817 +timestamp: 1778268942614 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.4.1-hb03c661_0.conda +sha256: 10056646c28115b174de81a44e23e3a0a3b95b5347d2e6c45cc6d49d35294256 +md5: 6178c6f2fb254558238ef4e6c56fb782 depends: - __glibc >=2.17,<3.0.a0 - libgcc >=14 constrains: - jpeg <0.0.0a license: IJG AND BSD-3-Clause AND Zlib -size: 633710 -timestamp: 1762094827865 -- conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-5_h47877c9_openblas.conda -build_number: 5 -sha256: c723b6599fcd4c6c75dee728359ef418307280fa3e2ee376e14e85e5bbdda053 -md5: b38076eb5c8e40d0106beda6f95d7609 -depends: -- libblas 3.11.0 5_h4a7cf45_openblas +size: 633831 +timestamp: 1775962768273 +- conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-7_h47877c9_openblas.conda +build_number: 7 +sha256: 96962084921f197c9ad13fb7f8b324f2351d50ff3d8d962148751ad532f54a01 +md5: 6569b4f273740e25dc0dc7e3232c2a6c +depends: +- libblas 3.11.0 7_h4a7cf45_openblas constrains: -- blas 2.305 openblas -- liblapacke 3.11.0 5*_openblas -- libcblas 3.11.0 5*_openblas +- liblapacke 3.11.0 7*_openblas +- libcblas 3.11.0 7*_openblas +- blas 2.307 openblas license: BSD-3-Clause license_family: BSD -size: 18200 -timestamp: 1765818857876 -- conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda -sha256: 755c55ebab181d678c12e49cced893598f2bab22d582fbbf4d8b83c18be207eb -md5: c7c83eecbb72d88b940c249af56c8b17 +size: 18694 +timestamp: 1778489869038 +- conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.3-hb03c661_0.conda +sha256: ec30e52a3c1bf7d0425380a189d209a52baa03f22fb66dd3eb587acaa765bd6d +md5: b88d90cad08e6bc8ad540cb310a761fb depends: - __glibc >=2.17,<3.0.a0 - libgcc >=14 constrains: -- xz 5.8.2.* +- xz 5.8.3.* license: 0BSD -size: 113207 -timestamp: 1768752626120 +size: 113478 +timestamp: 1775825492909 - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda sha256: fe171ed5cf5959993d43ff72de7596e8ac2853e9021dec0344e583734f1e0843 md5: 2c21e66f50753a083cbe6b80f38268fa @@ -693,53 +680,52 @@ license: BSD-2-Clause license_family: BSD size: 92400 timestamp: 1769482286018 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.30-pthreads_h94d23a6_4.conda -sha256: 199d79c237afb0d4780ccd2fbf829cea80743df60df4705202558675e07dd2c5 -md5: be43915efc66345cccb3c310b6ed0374 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.33-pthreads_h94d23a6_0.conda +sha256: 3d9aa85648e5e18a6d66db98b8c4317cc426721ad7a220aa86330d1ccedc8903 +md5: 2d3278b721e40468295ca755c3b84070 depends: - __glibc >=2.17,<3.0.a0 - libgcc >=14 - libgfortran - libgfortran5 >=14.3.0 constrains: -- openblas >=0.3.30,<0.3.31.0a0 +- openblas >=0.3.33,<0.3.34.0a0 license: BSD-3-Clause license_family: BSD -size: 5927939 -timestamp: 1763114673331 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.55-h421ea60_0.conda -sha256: 36ade759122cdf0f16e2a2562a19746d96cf9c863ffaa812f2f5071ebbe9c03c -md5: 5f13ffc7d30ffec87864e678df9957b4 +size: 5931919 +timestamp: 1776993658641 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.58-h421ea60_0.conda +sha256: 377cfe037f3eeb3b1bf3ad333f724a64d32f315ee1958581fc671891d63d3f89 +md5: eba48a68a1a2b9d3c0d9511548db85db depends: -- libgcc >=14 - __glibc >=2.17,<3.0.a0 -- libzlib >=1.3.1,<2.0a0 +- libgcc >=14 +- libzlib >=1.3.2,<2.0a0 license: zlib-acknowledgement -size: 317669 -timestamp: 1770691470744 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.52.0-hf4e2dac_0.conda -sha256: d716847b7deca293d2e49ed1c8ab9e4b9e04b9d780aea49a97c26925b28a7993 -md5: fd893f6a3002a635b5e50ceb9dd2c0f4 +size: 317729 +timestamp: 1776315175087 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.53.1-h0c1763c_0.conda +sha256: 54cdcd3214313b62c2a8ee277e6f42150d9b748264c1b70d958bf735e420ef8d +md5: 7dc38adcbf71e6b38748e919e16e0dce depends: - __glibc >=2.17,<3.0.a0 -- icu >=78.2,<79.0a0 - libgcc >=14 -- libzlib >=1.3.1,<2.0a0 +- libzlib >=1.3.2,<2.0a0 license: blessing -size: 951405 -timestamp: 1772818874251 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_18.conda -sha256: 78668020064fdaa27e9ab65cd2997e2c837b564ab26ce3bf0e58a2ce1a525c6e -md5: 1b08cd684f34175e4514474793d44bcb +size: 954962 +timestamp: 1777986471789 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_19.conda +sha256: dff1058c76ec6b8759e41cefa2508162d00e4a5e6721aa68ec3fd10094e702dc +md5: 5794b3bdc38177caf969dabd3af08549 depends: - __glibc >=2.17,<3.0.a0 -- libgcc 15.2.0 he0feb66_18 +- libgcc 15.2.0 he0feb66_19 constrains: -- libstdcxx-ng ==15.2.0=*_18 +- libstdcxx-ng ==15.2.0=*_19 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL -size: 5852330 -timestamp: 1771378262446 +size: 5852044 +timestamp: 1778269036376 - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h9d88235_1.conda sha256: e5f8c38625aa6d567809733ae04bb71c161a42e44a9fa8227abe61fa5c60ebe0 md5: cd5a90476766d53e901500df9215e927 @@ -757,16 +743,16 @@ depends: license: HPND size: 435273 timestamp: 1762022005702 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.3-h5347b49_0.conda -sha256: 1a7539cfa7df00714e8943e18de0b06cceef6778e420a5ee3a2a145773758aee -md5: db409b7c1720428638e7c0d509d3e1b5 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.42.1-h5347b49_0.conda +sha256: 3f0edf1280e2f6684a986f821eaa3e123d2694a00b31b96ca0d4a4c12c129231 +md5: 7d0a66598195ef00b6efc55aefc7453b depends: - __glibc >=2.17,<3.0.a0 - libgcc >=14 license: BSD-3-Clause license_family: BSD -size: 40311 -timestamp: 1766271528534 +size: 40163 +timestamp: 1779118517630 - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.6.0-hd42ef1d_0.conda sha256: 3aed21ab28eddffdaf7f804f49be7a7d701e8f0e46c856d801270b470820a37b md5: aea31d2e5b1091feca96fcfe945c3cf9 @@ -814,16 +800,16 @@ license: BSD-3-Clause license_family: BSD size: 85893 timestamp: 1770694658918 -- conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-4.0.0-pyhd8ed1ab_0.conda -sha256: 7b1da4b5c40385791dbc3cc85ceea9fad5da680a27d5d3cb8bfaa185e304a89e -md5: 5b5203189eb668f042ac2b0826244964 +- conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-4.2.0-pyhd8ed1ab_0.conda +sha256: 0c4c35376fe920714390d46e4b8d31c876d65f18e1655899e0763ec25f2a902f +md5: 6d03368f2b2b0a5fb6839df53b2eb5e0 depends: - mdurl >=0.1,<1 - python >=3.10 license: MIT license_family: MIT -size: 64736 -timestamp: 1754951288511 +size: 69017 +timestamp: 1778169663339 - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-3.0.3-py314h67df5f8_1.conda sha256: c279be85b59a62d5c52f5dd9a4cd43ebd08933809a8416c22c3131595607d4cf md5: 9a17c4307d23318476d7fbf0fedc0cde @@ -854,9 +840,9 @@ license: MIT license_family: MIT size: 14465 timestamp: 1733255681319 -- conda: https://conda.anaconda.org/bioconda/noarch/multiqc-1.33-pyhdfd78af_0.conda -sha256: f005760b13093362fc9c997d603dd487de32ab2e821a3cbce52a42bcb8136517 -md5: 698a8a27c2b9d8a542c70cb47099a75e +- conda: https://conda.anaconda.org/bioconda/noarch/multiqc-1.35-pyhdfd78af_1.conda +sha256: e86033aa55a9e915e2d0957e770bdb81e3feb26a227d1adb17f9d6c528da6a71 +md5: cdb20309681ba3ce8f52c110e214d4f3 depends: - click - coloredlogs @@ -870,10 +856,11 @@ depends: - packaging - pillow >=10.2.0 - plotly >=5.18 -- polars-lts-cpu +- polars >=1.34.0 +- polars-runtime-compat >=1.34.0 - pyaml-env - pydantic >=2.7.1 -- python >=3.8,!=3.14.1 +- python >=3.9,!=3.14.1 - python-dotenv - python-kaleido 0.2.1 - pyyaml >=4 @@ -883,20 +870,21 @@ depends: - spectra >=0.0.10 - tiktoken - tqdm -- typeguard +- typeguard >=4 license: GPL-3.0-or-later license_family: GPL3 -size: 4198799 -timestamp: 1765300743879 -- conda: https://conda.anaconda.org/conda-forge/noarch/narwhals-2.18.1-pyhcf101f3_1.conda -sha256: 541fd4390a0687228b8578247f1536a821d9261389a65585af9d1a6f2a14e1e0 -md5: 30bec5e8f4c3969e2b1bd407c5e52afb +size: 4282188 +timestamp: 1779465338806 +- conda: https://conda.anaconda.org/conda-forge/noarch/narwhals-2.21.2-pyhcf101f3_0.conda +sha256: 70f43d62450927d51673eecd8823e14f5b3cfebdb43cda1d502eba97162bab42 +md5: 6687827c332121727ce383919e1ec8c2 depends: - python >=3.10 - python license: MIT -size: 280459 -timestamp: 1774380620329 +license_family: MIT +size: 284323 +timestamp: 1778929680962 - conda: https://conda.anaconda.org/conda-forge/noarch/natsort-8.4.0-pyhcf101f3_2.conda sha256: aeb1548eb72e4f198e72f19d242fb695b35add2ac7b2c00e0d83687052867680 md5: e941e85e273121222580723010bd4fa2 @@ -907,15 +895,15 @@ license: MIT license_family: MIT size: 39262 timestamp: 1770905275632 -- conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda -sha256: 3fde293232fa3fca98635e1167de6b7c7fda83caf24b9d6c91ec9eefb4f4d586 -md5: 47e340acb35de30501a76c7c799c41d7 +- conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.6-hdb14827_0.conda +sha256: fc89f74bbe362fb29fa3c037697a89bec140b346a2469a90f7936d1d7ea4d8a3 +md5: fc21868a1a5aacc937e7a18747acb8a5 depends: - __glibc >=2.17,<3.0.a0 -- libgcc >=13 +- libgcc >=14 license: X11 AND BSD-3-Clause -size: 891641 -timestamp: 1738195959188 +size: 918956 +timestamp: 1777422145199 - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.6.1-pyhcf101f3_0.conda sha256: f6a82172afc50e54741f6f84527ef10424326611503c64e359e25a19a8e4c1c6 md5: a2c1eeadae7a309daed9d62c96012a2b @@ -956,24 +944,24 @@ license: MPL-2.0 license_family: MOZILLA size: 2057773 timestamp: 1763485556350 -- conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-2.4.3-py314h2b28147_0.conda -sha256: f2ba8cb0d86a6461a6bcf0d315c80c7076083f72c6733c9290086640723f79ec -md5: 36f5b7eb328bdc204954a2225cf908e2 +- conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-2.4.6-py314h2b28147_0.conda +sha256: bc61ae892973751a6b0e6ecea57ed6d7053224bddcb007165d6ceb1d7344ad47 +md5: f49b5f950379e0b97c35ca97682f7c6a depends: - python - libstdcxx >=14 - libgcc >=14 - __glibc >=2.17,<3.0.a0 -- python_abi 3.14.* *_cp314 -- libcblas >=3.9.0,<4.0a0 - liblapack >=3.9.0,<4.0a0 +- python_abi 3.14.* *_cp314 - libblas >=3.9.0,<4.0a0 +- libcblas >=3.9.0,<4.0a0 constrains: - numpy-base <0a0 license: BSD-3-Clause license_family: BSD -size: 8927860 -timestamp: 1773839233468 +size: 8928909 +timestamp: 1779169198391 - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.4-h55fea9a_0.conda sha256: 3900f9f2dbbf4129cf3ad6acf4e4b6f7101390b53843591c53b00f034343bc4d md5: 11b3379b191f63139e29c0d19dee24cd @@ -988,48 +976,48 @@ license: BSD-2-Clause license_family: BSD size: 355400 timestamp: 1758489294972 -- conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.1-h35e630c_1.conda -sha256: 44c877f8af015332a5d12f5ff0fb20ca32f896526a7d0cdb30c769df1144fb5c -md5: f61eb8cd60ff9057122a3d338b99c00f +- conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.2-h35e630c_0.conda +sha256: c0ef482280e38c71a08ad6d71448194b719630345b0c9c60744a2010e8a8e0cb +md5: da1b85b6a87e141f5140bb9924cecab0 depends: - __glibc >=2.17,<3.0.a0 - ca-certificates - libgcc >=14 license: Apache-2.0 license_family: Apache -size: 3164551 -timestamp: 1769555830639 -- conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda -sha256: c1fc0f953048f743385d31c468b4a678b3ad20caffdeaa94bed85ba63049fd58 -md5: b76541e68fea4d511b1ac46a28dcd2c6 +size: 3167099 +timestamp: 1775587756857 +- conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.2-pyhc364b38_0.conda +sha256: 3906abfb6511a3bb309e39b9b1b7bc38f50a723971de2395489fd1f379255890 +md5: 4c06a92e74452cfa53623a81592e8934 depends: - python >=3.8 - python license: Apache-2.0 license_family: APACHE -size: 72010 -timestamp: 1769093650580 -- conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-12.1.1-py314h8ec4b1a_0.conda -sha256: 9e6ec8f3213e8b7d64b0ad45f84c51a2c9eba4398efda31e196c9a56186133ee -md5: 79678378ae235e24b3aa83cee1b38207 +size: 91574 +timestamp: 1777103621679 +- conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-12.2.0-py314h8ec4b1a_0.conda +sha256: 123d8a7c16c88658b4f29e9f115a047598c941708dade74fbaff373a32dbec5e +md5: 76c4757c0ec9d11f969e8eb44899307b depends: - python - libgcc >=14 - __glibc >=2.17,<3.0.a0 +- libtiff >=4.7.1,<4.8.0a0 +- openjpeg >=2.5.4,<3.0a0 +- libxcb >=1.17.0,<2.0a0 - libwebp-base >=1.6.0,<2.0a0 - zlib-ng >=2.3.3,<2.4.0a0 -- python_abi 3.14.* *_cp314 -- tk >=8.6.13,<8.7.0a0 - libjpeg-turbo >=3.1.2,<4.0a0 -- libxcb >=1.17.0,<2.0a0 -- openjpeg >=2.5.4,<3.0a0 +- python_abi 3.14.* *_cp314 +- libfreetype >=2.14.3 +- libfreetype6 >=2.14.3 - lcms2 >=2.18,<3.0a0 -- libtiff >=4.7.1,<4.8.0a0 -- libfreetype >=2.14.1 -- libfreetype6 >=2.14.1 +- tk >=8.6.13,<8.7.0a0 license: HPND -size: 1073026 -timestamp: 1770794002408 +size: 1082797 +timestamp: 1775060059882 - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-6.6.0-pyhd8ed1ab_0.conda sha256: c418d325359fc7a0074cea7f081ef1bce26e114d2da8a0154c5d27ecc87a08e7 md5: 3e9427ee186846052e81fadde8ebe96a @@ -1043,11 +1031,11 @@ license: MIT license_family: MIT size: 5251872 timestamp: 1772628857717 -- conda: https://conda.anaconda.org/conda-forge/noarch/polars-1.39.3-pyh58ad624_1.conda -sha256: d332c2d5002fc440ae37ed9679ffc21b552f18d20232390005d1dd3bce0888d3 -md5: d5a4e013a30dd8dfde9ab39f45aaf9c1 +- conda: https://conda.anaconda.org/conda-forge/noarch/polars-1.41.0-pyh58ad624_0.conda +sha256: 70fc56877c4a095ee658d61924d8019768fbae4a48437058d181fc94b0a7c4d8 +md5: 25a883fed9f1f3f21ff317a3e7c92ac4 depends: -- polars-runtime-32 ==1.39.3 +- polars-runtime-32 ==1.41.0 - python >=3.10 - python constrains: @@ -1061,57 +1049,44 @@ constrains: - pyiceberg >=0.7.1 - altair >=5.4.0 - great_tables >=0.8.0 -- polars-runtime-32 ==1.39.3 -- polars-runtime-64 ==1.39.3 -- polars-runtime-compat ==1.39.3 +- polars-runtime-32 ==1.41.0 +- polars-runtime-64 ==1.41.0 +- polars-runtime-compat ==1.41.0 license: MIT -license_family: MIT -size: 533495 -timestamp: 1774207987966 -- conda: https://conda.anaconda.org/conda-forge/noarch/polars-lts-cpu-1.34.0.deprecated-hc364b38_0.conda -sha256: e466fb31f67ba9bde18deafeb34263ca5eb25807f39ead0e9d753a8e82c4c4f4 -md5: ef0340e75068ac8ff96462749b5c98e7 -depends: -- polars >=1.34.0 -- polars-runtime-compat >=1.34.0 -license: MIT -license_family: MIT -size: 3902 -timestamp: 1760206808444 -- conda: https://conda.anaconda.org/conda-forge/linux-64/polars-runtime-32-1.39.3-py310hffdcd12_1.conda +size: 539656 +timestamp: 1779630790562 +- conda: https://conda.anaconda.org/conda-forge/linux-64/polars-runtime-32-1.41.0-py310h49dadd8_0.conda noarch: python -sha256: 9744f8086bb0832998f5b01076f57ddc9efbe460e493b14303c3567dc4f401e7 -md5: f9327f9f2cfc4215f55b613e64afd3ba +sha256: e51ee3fe5259f2e115b2f78f8fbe3554e419c7c82b0c110878e12a5ff95ce3ab +md5: 7682765a1588e5ac887c99736d297c93 depends: - python +- __glibc >=2.17,<3.0.a0 - libstdcxx >=14 - libgcc >=14 -- __glibc >=2.17,<3.0.a0 - _python_abi3_support 1.* - cpython >=3.10 constrains: - __glibc >=2.17 license: MIT -license_family: MIT -size: 37570276 -timestamp: 1774207987966 -- conda: https://conda.anaconda.org/conda-forge/linux-64/polars-runtime-compat-1.39.3-py310hbcd5346_1.conda +size: 42578921 +timestamp: 1779630790562 +- conda: https://conda.anaconda.org/conda-forge/linux-64/polars-runtime-compat-1.41.0-py310hcbd6021_0.conda noarch: python -sha256: bf0b932713f0f27924f42159c98426e0073bb6145ed796eaa4cec79ca05363c7 -md5: 4b9b312453eebd6fbdbbe2a88fa1b5c4 +sha256: 29c3831c92394af11d9f7d04882dda9479ffbb76a3d36ba155d52159d67805fa +md5: cb0b620c9914a07a9022cb8b183ea9ee depends: - python -- libgcc >=14 - libstdcxx >=14 +- libgcc >=14 - __glibc >=2.17,<3.0.a0 - _python_abi3_support 1.* - cpython >=3.10 constrains: - __glibc >=2.17 license: MIT -license_family: MIT -size: 37224264 -timestamp: 1774207985377 +size: 41864944 +timestamp: 1779630722548 - conda: https://conda.anaconda.org/conda-forge/linux-64/procps-ng-4.0.6-h18c060e_0.conda sha256: 4ce2e1ee31a6217998f78c31ce7dc0a3e0557d9238b51d49dd20c52d467a126d md5: f2c23a77b25efcad57d377b34bd84941 @@ -1143,24 +1118,23 @@ license: MIT license_family: MIT size: 14645 timestamp: 1736766960536 -- conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.12.5-pyhcf101f3_1.conda -sha256: 868569d9505b7fe246c880c11e2c44924d7613a8cdcc1f6ef85d5375e892f13d -md5: c3946ed24acdb28db1b5d63321dbca7d +- conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.13.4-pyhcf101f3_0.conda +sha256: 69700e31165df070e9716315e042196aa92525dae5deb5107785847ab9f4189f +md5: 729843edafc0899b3348bd3f19525b9d depends: - typing-inspection >=0.4.2 - typing_extensions >=4.14.1 - python >=3.10 -- typing-extensions >=4.6.1 - annotated-types >=0.6.0 -- pydantic-core ==2.41.5 +- pydantic-core ==2.46.4 - python license: MIT license_family: MIT -size: 340482 -timestamp: 1764434463101 -- conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.41.5-py314h2e6c369_1.conda -sha256: 7e0ae379796e28a429f8e48f2fe22a0f232979d65ec455e91f8dac689247d39f -md5: 432b0716a1dfac69b86aa38fdd59b7e6 +size: 346511 +timestamp: 1778103405862 +- conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.46.4-py314h2e6c369_0.conda +sha256: 802e216c39f1359aed60823b6e11d8ccd812b0ae1c81ae5ac1c81f99446409ab +md5: 0c96993dbeadf3a277cf757b9f1c9412 depends: - python - typing-extensions >=4.6.0,!=4.7.0 @@ -1171,17 +1145,17 @@ constrains: - __glibc >=2.17 license: MIT license_family: MIT -size: 1943088 -timestamp: 1762988995556 -- conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda -sha256: 5577623b9f6685ece2697c6eb7511b4c9ac5fb607c9babc2646c811b428fd46a -md5: 6b6ece66ebcae2d5f326c77ef2c5a066 +size: 1895020 +timestamp: 1778084229247 +- conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.20.0-pyhd8ed1ab_0.conda +sha256: cf70b2f5ad9ae472b71235e5c8a736c9316df3705746de419b59d442e8348e86 +md5: 16c18772b340887160c79a6acc022db0 depends: -- python >=3.9 +- python >=3.10 license: BSD-2-Clause license_family: BSD -size: 889287 -timestamp: 1750615908735 +size: 893031 +timestamp: 1774796815820 - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda sha256: ba3b032fa52709ce0d9fd388f63d330a026754587a2f461117cac9ab73d8d0d8 md5: 461219d1a5bd61342293efa2c0c90eac @@ -1192,32 +1166,32 @@ license: BSD-3-Clause license_family: BSD size: 21085 timestamp: 1733217331982 -- conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.14.3-h32b2ec7_101_cp314.conda -build_number: 101 -sha256: cb0628c5f1732f889f53a877484da98f5a0e0f47326622671396fb4f2b0cd6bd -md5: c014ad06e60441661737121d3eae8a60 +- conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.14.5-habeac84_100_cp314.conda +build_number: 100 +sha256: 55eed9bf2a3f6e90311276f0834737fe7c2d9ec3e5e2e557507858df4c7521e6 +md5: da92e59ff92f2d5ede4f612af20f583f depends: - __glibc >=2.17,<3.0.a0 - bzip2 >=1.0.8,<2.0a0 - ld_impl_linux-64 >=2.36.1 -- libexpat >=2.7.3,<3.0a0 +- libexpat >=2.8.0,<3.0a0 - libffi >=3.5.2,<3.6.0a0 - libgcc >=14 -- liblzma >=5.8.2,<6.0a0 +- liblzma >=5.8.3,<6.0a0 - libmpdec >=4.0.0,<5.0a0 -- libsqlite >=3.51.2,<4.0a0 -- libuuid >=2.41.3,<3.0a0 -- libzlib >=1.3.1,<2.0a0 -- ncurses >=6.5,<7.0a0 -- openssl >=3.5.5,<4.0a0 +- libsqlite >=3.53.1,<4.0a0 +- libuuid >=2.42.1,<3.0a0 +- libzlib >=1.3.2,<2.0a0 +- ncurses >=6.6,<7.0a0 +- openssl >=3.5.6,<4.0a0 - python_abi 3.14.* *_cp314 - readline >=8.3,<9.0a0 - tk >=8.6.13,<8.7.0a0 - tzdata - zstd >=1.5.7,<1.6.0a0 license: Python-2.0 -size: 36702440 -timestamp: 1770675584356 +size: 36745188 +timestamp: 1779236923603 python_site_packages_path: lib/python3.14/site-packages - conda: https://conda.anaconda.org/conda-forge/noarch/python-dotenv-1.2.2-pyhcf101f3_0.conda sha256: 74e417a768f59f02a242c25e7db0aa796627b5bc8c818863b57786072aeb85e5 @@ -1228,15 +1202,15 @@ license: BSD-3-Clause license_family: BSD size: 27848 timestamp: 1772388605021 -- conda: https://conda.anaconda.org/conda-forge/noarch/python-gil-3.14.3-h4df99d1_101.conda -sha256: 233aebd94c704ac112afefbb29cf4170b7bc606e22958906f2672081bc50638a -md5: 235765e4ea0d0301c75965985163b5a1 +- conda: https://conda.anaconda.org/conda-forge/noarch/python-gil-3.14.5-h4df99d1_100.conda +sha256: 41dd7da285d71d519257fa7dacb1cae060d5ebfaa5f92cba5994899d2978e943 +md5: 41954747ba952ec4b01e16c2c9e8d8ff depends: -- cpython 3.14.3.* +- cpython 3.14.5.* - python_abi * *_cp314 license: Python-2.0 -size: 50062 -timestamp: 1770674497152 +size: 50212 +timestamp: 1779236703009 - conda: https://conda.anaconda.org/conda-forge/noarch/python-kaleido-0.2.1-pyhd8ed1ab_0.tar.bz2 sha256: e17bf63a30aec33432f1ead86e15e9febde9fc40a7f869c0e766be8d2db44170 md5: 310259a5b03ff02289d7705f39e2b1d2 @@ -1294,9 +1268,9 @@ license: MIT license_family: MIT size: 51788 timestamp: 1760379115194 -- conda: https://conda.anaconda.org/conda-forge/linux-64/regex-2026.2.28-py314h5bd0f2a_0.conda -sha256: e085e336f1446f5263a3ec9747df8c719b6996753901181add50dc4fdd8bb2e8 -md5: 3c8b6a8c4d0ff5a264e9831eac4941f4 +- conda: https://conda.anaconda.org/conda-forge/linux-64/regex-2026.5.9-py314h5bd0f2a_0.conda +sha256: c7a4aca4977c15c82d053b06cbc676460974c1b25757cfeea8a9a2497ac911f8 +md5: 9dd235b6ac69a0198080dac39f9891aa depends: - __glibc >=2.17,<3.0.a0 - libgcc >=14 @@ -1304,27 +1278,27 @@ depends: - python_abi 3.14.* *_cp314 license: Apache-2.0 AND CNRI-Python license_family: PSF -size: 411924 -timestamp: 1772255161535 -- conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda -sha256: 7813c38b79ae549504b2c57b3f33394cea4f2ad083f0994d2045c2e24cb538c5 -md5: c65df89a0b2e321045a9e01d1337b182 +size: 413611 +timestamp: 1778374155646 +- conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.34.2-pyhcf101f3_0.conda +sha256: 1715246b19c9f85ee022933b4845f2fc14ac9184981b7b7d9b728bec8e9588da +md5: 4a85203c1d80c1059086ae860836ffb9 depends: - python >=3.10 -- certifi >=2017.4.17 +- certifi >=2023.5.7 - charset-normalizer >=2,<4 - idna >=2.5,<4 -- urllib3 >=1.21.1,<3 +- urllib3 >=1.26,<3 - python constrains: -- chardet >=3.0.2,<6 +- chardet >=3.0.2,<8 license: Apache-2.0 license_family: APACHE -size: 63602 -timestamp: 1766926974520 -- conda: https://conda.anaconda.org/conda-forge/noarch/rich-14.3.3-pyhcf101f3_0.conda -sha256: b06ce84d6a10c266811a7d3adbfa1c11f13393b91cc6f8a5b468277d90be9590 -md5: 7a6289c50631d620652f5045a63eb573 +size: 68709 +timestamp: 1778851103479 +- conda: https://conda.anaconda.org/conda-forge/noarch/rich-15.0.0-pyhcf101f3_0.conda +sha256: 3d6ba2c0fcdac3196ba2f0615b4104e532525ffa1335b50a2878be5ff488814a +md5: 0242025a3c804966bf71aa04eee82f66 depends: - markdown-it-py >=2.2.0 - pygments >=2.13.0,<3.0.0 @@ -1333,8 +1307,8 @@ depends: - python license: MIT license_family: MIT -size: 208472 -timestamp: 1771572730357 +size: 208577 +timestamp: 1775991661559 - conda: https://conda.anaconda.org/conda-forge/noarch/rich-click-1.9.7-pyh8f84b5b_0.conda sha256: aa3fcb167321bae51998de2e94d199109c9024f25a5a063cb1c28d8f1af33436 md5: 0c20a8ebcddb24a45da89d5e917e6cb9 @@ -1373,20 +1347,19 @@ license: MIT license_family: MIT size: 22284 timestamp: 1735770589188 -- conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.52.0-h04a0ce9_0.conda -sha256: c9af81e7830d9c4b67a7f48e512d060df2676b29cac59e3b31f09dbfcee29c58 -md5: 7d9d7efe9541d4bb71b5934e8ee348ea +- conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.53.1-hbc0de68_0.conda +sha256: d167fa92781bcdcd3b9aaa6bb1cd50c5b108f6190c170098a118b5cf5df2f881 +md5: 8e0b8654ead18e50af552e54b5a08a61 depends: - __glibc >=2.17,<3.0.a0 -- icu >=78.2,<79.0a0 - libgcc >=14 -- libsqlite 3.52.0 hf4e2dac_0 -- libzlib >=1.3.1,<2.0a0 -- ncurses >=6.5,<7.0a0 +- libsqlite 3.53.1 h0c1763c_0 +- libzlib >=1.3.2,<2.0a0 +- ncurses >=6.6,<7.0a0 - readline >=8.3,<9.0a0 license: blessing -size: 203641 -timestamp: 1772818888368 +size: 205399 +timestamp: 1777986477546 - conda: https://conda.anaconda.org/conda-forge/linux-64/tiktoken-0.12.0-py314h67fec18_3.conda sha256: 7e395d67fd249d901beb1ae269057763c0d8c3ee5f7a348694bdb16d158a37d9 md5: d705f9d8a1185a2b01cced191177a028 @@ -1427,20 +1400,20 @@ depends: license: MPL-2.0 and MIT size: 94132 timestamp: 1770153424136 -- conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.5.1-pyhd8ed1ab_0.conda -sha256: 39d8ae33c43cdb8f771373e149b0b4fae5a08960ac58dcca95b2f1642bb17448 -md5: 260af1b0a94f719de76b4e14094e9a3b +- conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.5.2-pyhcf101f3_0.conda +sha256: 59d7851d32fddb5b510272e6557aa982edeb927d349648dac27f5bf01d18bb26 +md5: 4460f039b7dedf15f7df086446ca75ae depends: -- importlib-metadata >=3.6 -- python >=3.10 -- typing-extensions >=4.10.0 - typing_extensions >=4.14.0 +- python >=3.10 +- importlib-metadata >=3.6 +- python constrains: - pytest >=7 license: MIT license_family: MIT -size: 36838 -timestamp: 1771532971545 +size: 38297 +timestamp: 1778779291237 - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda sha256: 7c2df5721c742c2a47b2c8f960e718c930031663ac1174da67c1ed5999f7938c md5: edd329d7d3a4ab45dcf905899a7a6115 @@ -1450,16 +1423,17 @@ license: PSF-2.0 license_family: PSF size: 91383 timestamp: 1756220668932 -- conda: https://conda.anaconda.org/conda-forge/noarch/typing-inspection-0.4.2-pyhd8ed1ab_1.conda -sha256: 70db27de58a97aeb7ba7448366c9853f91b21137492e0b4430251a1870aa8ff4 -md5: a0a4a3035667fc34f29bfbd5c190baa6 +- conda: https://conda.anaconda.org/conda-forge/noarch/typing-inspection-0.4.2-pyhcf101f3_2.conda +sha256: 8b90d2f19f9458b8c58a55e1fcdc1d90c1603a847a47654d8a454549413ba60a +md5: 53f5409c5cfd6c5a66417d68e3f0a864 depends: - python >=3.10 - typing_extensions >=4.12.0 +- python license: MIT license_family: MIT -size: 18923 -timestamp: 1764158430324 +size: 20935 +timestamp: 1777105465795 - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda sha256: 032271135bca55aeb156cee361c81350c6f3fb203f57d024d7e5a1fc9ef18731 md5: 0caa1af407ecff61170c9437a808404d @@ -1476,9 +1450,9 @@ md5: ad659d0a2b3e47e38d829aa8cad2d610 license: LicenseRef-Public-Domain size: 119135 timestamp: 1767016325805 -- conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda -sha256: af641ca7ab0c64525a96fd9ad3081b0f5bcf5d1cbb091afb3f6ed5a9eee6111a -md5: 9272daa869e03efe68833e3dc7a02130 +- conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.7.0-pyhd8ed1ab_0.conda +sha256: feff959a816f7988a0893201aa9727bbb7ee1e9cec2c4f0428269b489eb93fb4 +md5: cbb88288f74dbe6ada1c6c7d0a97223e depends: - backports.zstd >=1.0.0 - brotli-python >=1.2.0 @@ -1487,8 +1461,8 @@ depends: - python >=3.10 license: MIT license_family: MIT -size: 103172 -timestamp: 1767817860341 +size: 103560 +timestamp: 1778188657149 - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.12-hb03c661_1.conda sha256: 6bc6ab7a90a5d8ac94c7e300cc10beb0500eeba4b99822768ca2f2ef356f731b md5: b2895afaf55bf96a8c8282a2e47a5de0 @@ -1519,16 +1493,16 @@ license: MIT license_family: MIT size: 85189 timestamp: 1753484064210 -- conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.23.0-pyhcf101f3_1.conda -sha256: b4533f7d9efc976511a73ef7d4a2473406d7f4c750884be8e8620b0ce70f4dae -md5: 30cd29cb87d819caead4d55184c1d115 +- conda: https://conda.anaconda.org/conda-forge/noarch/zipp-4.1.0-pyhcf101f3_0.conda +sha256: 210bd31c22bb88f5e2a167df24c95bb5f152b2ada7502f9b8c49d1f5366db423 +md5: ba3dcdc8584155c97c648ae9c044b7a3 depends: - python >=3.10 - python license: MIT license_family: MIT -size: 24194 -timestamp: 1764460141901 +size: 24190 +timestamp: 1779159948016 - conda: https://conda.anaconda.org/conda-forge/linux-64/zlib-ng-2.3.3-hceb46e0_1.conda sha256: ea4e50c465d70236408cb0bfe0115609fd14db1adcd8bd30d8918e0291f8a75f md5: 2aadb0d17215603a82a2a6b0afd9a4cb diff --git a/modules/nf-core/multiqc/.conda-lock/linux_arm64-bd-40bf3b435e89dc22_1.txt b/modules/nf-core/multiqc/.conda-lock/linux_arm64-bd-5c84a5000a226ab5_1.txt similarity index 74% rename from modules/nf-core/multiqc/.conda-lock/linux_arm64-bd-40bf3b435e89dc22_1.txt rename to modules/nf-core/multiqc/.conda-lock/linux_arm64-bd-5c84a5000a226ab5_1.txt index a58231a0..3d5b93db 100644 --- a/modules/nf-core/multiqc/.conda-lock/linux_arm64-bd-40bf3b435e89dc22_1.txt +++ b/modules/nf-core/multiqc/.conda-lock/linux_arm64-bd-5c84a5000a226ab5_1.txt @@ -14,120 +14,118 @@ linux-aarch64: - conda: https://conda.anaconda.org/conda-forge/noarch/_python_abi3_support-1.0-hd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.7.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-26.1.0-pyhcf101f3_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/backports.zstd-1.3.0-py314h680f03e_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/backports.zstd-1.5.0-py314h680f03e_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/brotli-python-1.2.0-py314h352cb57_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/bzip2-1.0.8-h4777abc_9.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.2.25-pyhd8ed1ab_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.6-pyhd8ed1ab_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.5.20-hbd8a1cb_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.5.20-pyhd8ed1ab_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.7-pyhd8ed1ab_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/click-8.4.0-pyhc90fa1f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/coloredlogs-15.0.1-pyhd8ed1ab_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colormath-3.0.0-pyhd8ed1ab_4.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/cpython-3.14.3-py314hd8ed1ab_101.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/expat-2.7.4-hfae3067_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/cpython-3.14.5-py314hd8ed1ab_100.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/expat-2.8.1-hfae3067_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_3.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/fontconfig-2.17.1-hba86a56_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/fontconfig-2.18.0-hba86a56_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-hc364b38_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/humanfriendly-10.0-pyh707e725_8.conda - conda: https://conda.anaconda.org/conda-forge/noarch/humanize-4.15.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/icu-78.3-hcab7f73_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-8.8.0-pyhcf101f3_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.15-pyhcf101f3_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-9.0.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.26.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2025.9.1-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/kaleido-core-0.2.1-he5a581e_0.tar.bz2 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/lcms2-2.18-h9d5b58d_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/lcms2-2.19.1-h9d5b58d_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45.1-default_h1979696_102.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/lerc-4.1.0-h52b7260_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libblas-3.11.0-5_haddc8a3_openblas.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libcblas-3.11.0-5_hd72aa62_openblas.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libblas-3.11.0-7_haddc8a3_openblas.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libcblas-3.11.0-7_hd72aa62_openblas.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libdeflate-1.25-h1af38f5_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libexpat-2.7.4-hfae3067_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libexpat-2.8.1-hfae3067_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libffi-3.5.2-h376a255_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libfreetype-2.14.3-h8af1aa0_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libfreetype6-2.14.3-hdae7a39_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-h8acb6b2_18.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-ng-15.2.0-he9431aa_18.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgfortran-15.2.0-he9431aa_18.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgfortran5-15.2.0-h1b7bec0_18.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgomp-15.2.0-h8acb6b2_18.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libjpeg-turbo-3.1.2-he30d5cf_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblapack-3.11.0-5_h88aeb00_openblas.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.2-he30d5cf_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-h8acb6b2_19.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-ng-15.2.0-he9431aa_19.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgfortran-15.2.0-he9431aa_19.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgfortran5-15.2.0-h1b7bec0_19.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgomp-15.2.0-h8acb6b2_19.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libjpeg-turbo-3.1.4.1-he30d5cf_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblapack-3.11.0-7_h88aeb00_openblas.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.3-he30d5cf_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libmpdec-4.0.0-he30d5cf_1.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libopenblas-0.3.30-pthreads_h9d3fd7e_4.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libpng-1.6.55-h1abf092_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.52.0-h10b116e_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-15.2.0-hef695bb_18.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libopenblas-0.3.33-pthreads_h9d3fd7e_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libpng-1.6.58-h1abf092_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.53.1-h022381a_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-15.2.0-hef695bb_19.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libtiff-4.7.1-hdb009f0_1.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuuid-2.41.3-h1022ec0_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuuid-2.42.1-h1022ec0_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libwebp-base-1.6.0-ha2e29f5_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxcb-1.17.0-h262b8f6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libzlib-1.3.2-hdc9db2a_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-3.10.2-pyhcf101f3_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-4.0.0-pyhd8ed1ab_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-4.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/markupsafe-3.0.3-py314hb76de3f_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/mathjax-2.7.7-h8af1aa0_3.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_1.conda -- conda: https://conda.anaconda.org/bioconda/noarch/multiqc-1.33-pyhdfd78af_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/narwhals-2.18.1-pyhcf101f3_1.conda +- conda: https://conda.anaconda.org/bioconda/noarch/multiqc-1.35-pyhdfd78af_1.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/narwhals-2.21.2-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/natsort-8.4.0-pyhcf101f3_2.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ncurses-6.5-ha32ae93_3.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ncurses-6.6-hf8d1292_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.6.1-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/nspr-4.38-h3ad9384_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/nss-3.118-h544fa81_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/numpy-2.4.3-py314haac167e_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/numpy-2.4.6-py314he1698a1_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openjpeg-2.5.4-h5da879a_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openssl-3.6.1-h546c87b_1.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pillow-12.1.1-py314hac3e5ec_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openssl-3.6.2-h546c87b_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.2-pyhc364b38_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pillow-12.2.0-py314hac3e5ec_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-6.6.0-pyhd8ed1ab_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/polars-1.39.3-pyh58ad624_1.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/polars-lts-cpu-1.34.0.deprecated-hc364b38_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/polars-runtime-32-1.39.3-py310hff09b76_1.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/polars-runtime-compat-1.39.3-py310hf00a4a2_1.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/polars-1.41.0-pyh58ad624_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/polars-runtime-32-1.41.0-py310h32c7c23_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/polars-runtime-compat-1.41.0-py310hc0e61be_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/procps-ng-4.0.6-h1779866_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pthread-stubs-0.4-h86ecc28_1002.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyaml-env-1.2.2-pyhd8ed1ab_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.12.5-pyhcf101f3_1.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pydantic-core-2.41.5-py314h451b6cc_1.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.13.4-pyhcf101f3_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pydantic-core-2.46.4-py314h451b6cc_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.20.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/python-3.14.3-hb06a95a_101_cp314.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/python-3.14.5-hfd9ac0a_100_cp314.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dotenv-1.2.2-pyhcf101f3_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/python-gil-3.14.3-h4df99d1_101.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/python-gil-3.14.5-h4df99d1_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-kaleido-0.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pyyaml-6.0.3-py314h807365f_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/readline-8.3-hb682ff5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.37.0-pyhcf101f3_0.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/regex-2026.2.28-py314h51f160d_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/rich-14.3.3-pyhcf101f3_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/regex-2026.5.9-py314h51f160d_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.34.2-pyhcf101f3_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/rich-15.0.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/rich-click-1.9.7-pyh8f84b5b_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/rpds-py-0.30.0-py314h02b7a91_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/spectra-0.0.11-pyhd8ed1ab_2.conda -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/sqlite-3.52.0-hf1c7be2_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/sqlite-3.53.1-he8854b5_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tiktoken-0.12.0-py314h6a36e60_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tk-8.6.13-noxft_h0dc03b3_103.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tqdm-4.67.3-pyh8f84b5b_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.5.1-pyhd8ed1ab_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.5.2-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/typing-inspection-0.4.2-pyhd8ed1ab_1.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/typing-inspection-0.4.2-pyhcf101f3_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxau-1.0.12-he30d5cf_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxdmcp-1.1.5-he30d5cf_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/yaml-0.2.5-h80f16a2_3.conda -- conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.23.0-pyhcf101f3_1.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/zipp-4.1.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/zlib-ng-2.3.3-ha7cb516_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/zstd-1.5.7-h85ac4a6_6.conda packages: @@ -173,15 +171,15 @@ license: MIT license_family: MIT size: 64927 timestamp: 1773935801332 -- conda: https://conda.anaconda.org/conda-forge/noarch/backports.zstd-1.3.0-py314h680f03e_0.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/backports.zstd-1.5.0-py314h680f03e_0.conda noarch: generic -sha256: c31ab719d256bc6f89926131e88ecd0f0c5d003fe8481852c6424f4ec6c7eb29 -md5: a2ac7763a9ac75055b68f325d3255265 +sha256: a1c97297e867776760489537bc5ae36fa83a154be30e3b79385a39ca4cb058fe +md5: 1133126d840e75287d83947be3fc3e71 depends: - python >=3.14 license: BSD-3-Clause AND MIT AND EPL-2.0 -size: 7514 -timestamp: 1767044983590 +size: 7533 +timestamp: 1778594057496 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/brotli-python-1.2.0-py314h352cb57_1.conda sha256: 5a5b0cdcd7ed89c6a8fb830924967f6314a2b71944bc1ebc2c105781ba97aa75 md5: a1b5c571a0923a205d663d8678df4792 @@ -206,42 +204,42 @@ license: bzip2-1.0.6 license_family: BSD size: 192412 timestamp: 1771350241232 -- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda -sha256: 67cc7101b36421c5913a1687ef1b99f85b5d6868da3abbf6ec1a4181e79782fc -md5: 4492fd26db29495f0ba23f146cd5638d +- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.5.20-hbd8a1cb_0.conda +sha256: 9812a303a1395e1dafbd92e5bc8a1ff6013bcbba0a09c7f03a8d23e43560aa9b +md5: 489b8e97e666c93f68fdb35c3c9b957f depends: - __unix license: ISC -size: 147413 -timestamp: 1772006283803 -- conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.2.25-pyhd8ed1ab_0.conda -sha256: a6b118fd1ed6099dc4fc03f9c492b88882a780fadaef4ed4f93dc70757713656 -md5: 765c4d97e877cdbbb88ff33152b86125 +size: 129868 +timestamp: 1779289852439 +- conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.5.20-pyhd8ed1ab_0.conda +sha256: 645655a3510e38e625da136595f3f16f2130c3263630cc3bc8f60f619ddbe490 +md5: 9fefff2f745ea1cc2ef15211a20c054a depends: - python >=3.10 license: ISC -size: 151445 -timestamp: 1772001170301 -- conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.6-pyhd8ed1ab_0.conda -sha256: d86dfd428b2e3c364fa90e07437c8405d635aa4ef54b25ab51d9c712be4112a5 -md5: 49ee13eb9b8f44d63879c69b8a40a74b +size: 134201 +timestamp: 1779285131141 +- conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.7-pyhd8ed1ab_0.conda +sha256: 3f9483d62ce24ecd063f8a5a714448445dc8d9e201147c46699fc0033e824457 +md5: a9167b9571f3baa9d448faa2139d1089 depends: - python >=3.10 license: MIT license_family: MIT -size: 58510 -timestamp: 1773660086450 -- conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda -sha256: 38cfe1ee75b21a8361c8824f5544c3866f303af1762693a178266d7f198e8715 -md5: ea8a6c3256897cc31263de9f455e25d9 +size: 58872 +timestamp: 1775127203018 +- conda: https://conda.anaconda.org/conda-forge/noarch/click-8.4.0-pyhc90fa1f_0.conda +sha256: 99ab8ef815c4520cce3a7482c2513f377c14348206857661d84c76a55e030f97 +md5: 003767c47f1f0a474c4de268b57839c3 depends: -- python >=3.10 - __unix - python +- python >=3.10 license: BSD-3-Clause license_family: BSD -size: 97676 -timestamp: 1764518652276 +size: 104631 +timestamp: 1779108494556 - conda: https://conda.anaconda.org/conda-forge/noarch/coloredlogs-15.0.1-pyhd8ed1ab_4.conda sha256: 8021c76eeadbdd5784b881b165242db9449783e12ce26d6234060026fd6a8680 md5: b866ff7007b934d564961066c8195983 @@ -263,26 +261,26 @@ license: BSD-3-Clause license_family: BSD size: 39326 timestamp: 1735759976140 -- conda: https://conda.anaconda.org/conda-forge/noarch/cpython-3.14.3-py314hd8ed1ab_101.conda +- conda: https://conda.anaconda.org/conda-forge/noarch/cpython-3.14.5-py314hd8ed1ab_100.conda noarch: generic -sha256: 91b06300879df746214f7363d6c27c2489c80732e46a369eb2afc234bcafb44c -md5: 3bb89e4f795e5414addaa531d6b1500a +sha256: 777882d2685f368417f31bbe1b28f73687fc6c8f6a5768bda20ffeefa6b07f5b +md5: a749029ce5d0632a913db19d17f944ab depends: - python >=3.14,<3.15.0a0 - python_abi * *_cp314 license: Python-2.0 -size: 50078 -timestamp: 1770674447292 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/expat-2.7.4-hfae3067_0.conda -sha256: 5f087bef054c681edcaae84a8c2230585b938691e371ff92957a30707b7fcdf7 -md5: b304307db639831ad7caabd2eac6fca6 +size: 50212 +timestamp: 1779236682725 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/expat-2.8.1-hfae3067_0.conda +sha256: a9cd5eb1700e11cc39acc36630a2d72a4e317943bd7c5695cd8804419f04ff42 +md5: 89f0247b3cea528d8ad1a6664a313153 depends: -- libexpat 2.7.4 hfae3067_0 +- libexpat 2.8.1 hfae3067_0 - libgcc >=14 license: MIT license_family: MIT -size: 137701 -timestamp: 1771259543650 +size: 140114 +timestamp: 1779278679081 - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 sha256: 58d7f40d2940dd0a8aa28651239adbf5613254df0f75789919c4e6762054403b md5: 0c96522c6bdaed4b1566d11387caaf45 @@ -311,20 +309,20 @@ license: LicenseRef-Ubuntu-Font-Licence-Version-1.0 license_family: Other size: 1620504 timestamp: 1727511233259 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/fontconfig-2.17.1-hba86a56_0.conda -sha256: 835aff8615dd8d8fff377679710ce81b8a2c47b6404e21a92fb349fda193a15c -md5: 0fed1ff55f4938a65907f3ecf62609db +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/fontconfig-2.18.0-hba86a56_0.conda +sha256: 1805f4ab3d9e1734a5a17abccc2cb0fdade51d4d5f29bdc410600ea0115ec050 +md5: b660d59a9d0fb3297327418624acaec3 depends: -- libexpat >=2.7.4,<3.0a0 -- libfreetype >=2.14.1 -- libfreetype6 >=2.14.1 +- libexpat >=2.8.1,<3.0a0 +- libfreetype >=2.14.3 +- libfreetype6 >=2.14.3 - libgcc >=14 -- libuuid >=2.41.3,<3.0a0 -- libzlib >=1.3.1,<2.0a0 +- libuuid >=2.42.1,<3.0a0 +- libzlib >=1.3.2,<2.0a0 license: MIT license_family: MIT -size: 279044 -timestamp: 1771382728182 +size: 293348 +timestamp: 1779421661332 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-hc364b38_1.conda sha256: 54eea8469786bc2291cc40bca5f46438d3e062a399e8f53f013b6a9f50e98333 md5: a7970cd949a077b7cb9696379d338681 @@ -386,36 +384,26 @@ license: MIT license_family: MIT size: 17397 timestamp: 1737618427549 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/icu-78.3-hcab7f73_0.conda -sha256: 49ba6aed2c6b482bb0ba41078057555d29764299bc947b990708617712ef6406 -md5: 546da38c2fa9efacf203e2ad3f987c59 -depends: -- libgcc >=14 -- libstdcxx >=14 -license: MIT -license_family: MIT -size: 12837286 -timestamp: 1773822650615 -- conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda -sha256: ae89d0299ada2a3162c2614a9d26557a92aa6a77120ce142f8e0109bbf0342b0 -md5: 53abe63df7e10a6ba605dc5f9f961d36 +- conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.15-pyhcf101f3_0.conda +sha256: 3d25f9f6f7ab3e1ce6429fc8c8aae0335cf446692e715068488536d220cc43de +md5: 1b9083b7f00609605d1483dbc6071a81 depends: - python >=3.10 +- python license: BSD-3-Clause license_family: BSD -size: 50721 -timestamp: 1760286526795 -- conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-8.8.0-pyhcf101f3_0.conda -sha256: 82ab2a0d91ca1e7e63ab6a4939356667ef683905dea631bc2121aa534d347b16 -md5: 080594bf4493e6bae2607e65390c520a +size: 62642 +timestamp: 1779294335905 +- conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-9.0.0-pyhcf101f3_0.conda +sha256: 43e2a5497cad1598ff88a3e69f69bc88b7b8f141fa63c60eab5db296317318b8 +md5: ffc17e785d64e12fc311af9184221839 depends: - python >=3.10 - zipp >=3.20 - python license: Apache-2.0 -license_family: APACHE -size: 34387 -timestamp: 1773931568510 +size: 34766 +timestamp: 1779714582554 - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhcf101f3_1.conda sha256: fc9ca7348a4f25fed2079f2153ecdcf5f9cf2a0bc36c4172420ca09e1849df7b md5: 04558c96691bed63104678757beb4f8d @@ -469,17 +457,17 @@ license: MIT license_family: MIT size: 65750397 timestamp: 1615199465742 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/lcms2-2.18-h9d5b58d_0.conda -sha256: 379ef5e91a587137391a6149755d0e929f1a007d2dcb211318ac670a46c8596f -md5: bb960f01525b5e001608afef9d47b79c +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/lcms2-2.19.1-h9d5b58d_0.conda +sha256: 1e5f68e4b36a0e1a278c6dc026bc3d7775518a15832cbc9d7fc1c0e4c47784b1 +md5: b1f8bee3c53a6d2c103fb4a1ae44f5c4 depends: - libgcc >=14 -- libjpeg-turbo >=3.1.2,<4.0a0 +- libjpeg-turbo >=3.1.4.1,<4.0a0 - libtiff >=4.7.1,<4.8.0a0 license: MIT license_family: MIT -size: 293039 -timestamp: 1768184778398 +size: 296899 +timestamp: 1778079402392 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45.1-default_h1979696_102.conda sha256: 7abd913d81a9bf00abb699e8987966baa2065f5132e37e815f92d90fc6bba530 md5: a21644fc4a83da26452a718dc9468d5f @@ -501,37 +489,37 @@ license: Apache-2.0 license_family: Apache size: 240444 timestamp: 1773114901155 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libblas-3.11.0-5_haddc8a3_openblas.conda -build_number: 5 -sha256: 700f3c03d0fba8e687a345404a45fbabe781c1cf92242382f62cef2948745ec4 -md5: 5afcea37a46f76ec1322943b3c4dfdc0 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libblas-3.11.0-7_haddc8a3_openblas.conda +build_number: 7 +sha256: f27ba323c2f1e1731b5e880fe520f178f55047f25be94f77e649605b2343c066 +md5: e8d07b777f6ff1fab69665336561910b depends: -- libopenblas >=0.3.30,<0.3.31.0a0 -- libopenblas >=0.3.30,<1.0a0 +- libopenblas >=0.3.33,<0.3.34.0a0 +- libopenblas >=0.3.33,<1.0a0 constrains: -- mkl <2026 -- libcblas 3.11.0 5*_openblas -- liblapack 3.11.0 5*_openblas -- liblapacke 3.11.0 5*_openblas -- blas 2.305 openblas +- liblapack 3.11.0 7*_openblas +- libcblas 3.11.0 7*_openblas +- mkl <2027 +- blas 2.307 openblas +- liblapacke 3.11.0 7*_openblas license: BSD-3-Clause license_family: BSD -size: 18369 -timestamp: 1765818610617 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libcblas-3.11.0-5_hd72aa62_openblas.conda -build_number: 5 -sha256: 3fad5c9de161dccb4e42c8b1ae8eccb33f4ed56bccbcced9cbb0956ae7869e61 -md5: 0b2f1143ae2d0aa4c991959d0daaf256 -depends: -- libblas 3.11.0 5_haddc8a3_openblas +size: 18696 +timestamp: 1778489796402 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libcblas-3.11.0-7_hd72aa62_openblas.conda +build_number: 7 +sha256: c8f0192362966df0828419f042d6f94c079e5df00ad6bd05b5e84c12b42f8cc7 +md5: 90ac57b82c055faa9be25031864b7d8f +depends: +- libblas 3.11.0 7_haddc8a3_openblas constrains: -- liblapack 3.11.0 5*_openblas -- liblapacke 3.11.0 5*_openblas -- blas 2.305 openblas +- liblapack 3.11.0 7*_openblas +- blas 2.307 openblas +- liblapacke 3.11.0 7*_openblas license: BSD-3-Clause license_family: BSD -size: 18371 -timestamp: 1765818618899 +size: 18664 +timestamp: 1778489802790 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libdeflate-1.25-h1af38f5_0.conda sha256: 48814b73bd462da6eed2e697e30c060ae16af21e9fbed30d64feaf0aad9da392 md5: a9138815598fe6b91a1d6782ca657b0c @@ -541,17 +529,17 @@ license: MIT license_family: MIT size: 71117 timestamp: 1761979776756 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libexpat-2.7.4-hfae3067_0.conda -sha256: 995ce3ad96d0f4b5ed6296b051a0d7b6377718f325bc0e792fbb96b0e369dad7 -md5: 57f3b3da02a50a1be2a6fe847515417d +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libexpat-2.8.1-hfae3067_0.conda +sha256: 1fc392b997c6ee2bd3226a7cd870d0edbcbb367e25f9f18dd4a7025fced6efc0 +md5: 513dd884361dfb8a554298ed69b58823 depends: - libgcc >=14 constrains: -- expat 2.7.4.* +- expat 2.8.1.* license: MIT license_family: MIT -size: 76564 -timestamp: 1771259530958 +size: 77140 +timestamp: 1779278671302 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libffi-3.5.2-h376a255_0.conda sha256: 3df4c539449aabc3443bbe8c492c01d401eea894603087fca2917aa4e1c2dea9 md5: 2f364feefb6a7c00423e80dcb12db62a @@ -581,90 +569,90 @@ constrains: license: GPL-2.0-only OR FTL size: 422941 timestamp: 1774301093473 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-h8acb6b2_18.conda -sha256: 43df385bedc1cab11993c4369e1f3b04b4ca5d0ea16cba6a0e7f18dbc129fcc9 -md5: 552567ea2b61e3a3035759b2fdb3f9a6 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-h8acb6b2_19.conda +sha256: 4592b096e553f67799ae70d4b6167eeda3ec74587d68c7aecbf4e7b1df136681 +md5: f35b3f52d0a2ec4ffe3c89ba135cdb9a depends: - _openmp_mutex >=4.5 constrains: -- libgcc-ng ==15.2.0=*_18 -- libgomp 15.2.0 h8acb6b2_18 +- libgomp 15.2.0 h8acb6b2_19 +- libgcc-ng ==15.2.0=*_19 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL -size: 622900 -timestamp: 1771378128706 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-ng-15.2.0-he9431aa_18.conda -sha256: 83bb0415f59634dccfa8335d4163d1f6db00a27b36666736f9842b650b92cf2f -md5: 4feebd0fbf61075a1a9c2e9b3936c257 +size: 622462 +timestamp: 1778268755949 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-ng-15.2.0-he9431aa_19.conda +sha256: 1137f93f477f56199ded24117430045a0c02cbe8b10031beac3b9ad2138539d3 +md5: 770cf892e5530f43e63cadc673e85653 depends: -- libgcc 15.2.0 h8acb6b2_18 +- libgcc 15.2.0 h8acb6b2_19 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL -size: 27568 -timestamp: 1771378136019 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgfortran-15.2.0-he9431aa_18.conda -sha256: 7dcd7dff2505d56fd5272a6e712ec912f50a46bf07dc6873a7e853694304e6e4 -md5: 41f261f5e4e2e8cbd236c2f1f15dae1b +size: 27738 +timestamp: 1778268759211 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgfortran-15.2.0-he9431aa_19.conda +sha256: e5ad94be72634233510b33ba792a3339921bd468f0b8bc6961ea05eded251d9b +md5: c7a5b5decf969ead5ecada83654164cf depends: -- libgfortran5 15.2.0 h1b7bec0_18 +- libgfortran5 15.2.0 h1b7bec0_19 constrains: -- libgfortran-ng ==15.2.0=*_18 +- libgfortran-ng ==15.2.0=*_19 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL -size: 27587 -timestamp: 1771378169244 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgfortran5-15.2.0-h1b7bec0_18.conda -sha256: 85347670dfb4a8d4c13cd7cae54138dcf2b1606b6bede42eef5507bf5f9660c6 -md5: 574d88ce3348331e962cfa5ed451b247 +size: 27728 +timestamp: 1778268784621 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgfortran5-15.2.0-h1b7bec0_19.conda +sha256: af8e9bdcaa77f133a8ee4c1ef57ef564d9c45aa262abf9f5ef9b50eb99d96407 +md5: 779dbb494de6d3d6477cab52eb34285a depends: - libgcc >=15.2.0 constrains: - libgfortran 15.2.0 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL -size: 1486341 -timestamp: 1771378148102 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgomp-15.2.0-h8acb6b2_18.conda -sha256: fc716f11a6a8525e27a5d332ef6a689210b0d2a4dd1133edc0f530659aa9faa6 -md5: 4faa39bf919939602e594253bd673958 +size: 1487244 +timestamp: 1778268767295 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgomp-15.2.0-h8acb6b2_19.conda +sha256: 2370ef0ffcbae5bede3c4bf136add4abc257245eb91f724c99bb4a43116c5a83 +md5: c5e8a379c4a2ec2aea4ba22758c001d9 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL -size: 588060 -timestamp: 1771378040807 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libjpeg-turbo-3.1.2-he30d5cf_0.conda -sha256: 84064c7c53a64291a585d7215fe95ec42df74203a5bf7615d33d49a3b0f08bb6 -md5: 5109d7f837a3dfdf5c60f60e311b041f +size: 587387 +timestamp: 1778268674393 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libjpeg-turbo-3.1.4.1-he30d5cf_0.conda +sha256: e97ec2af5f09f8f6ea8ecd550055c95ae80fae22015fcfadaa94eafe025c9ccc +md5: a85ba48648f6868016f2741fd9170250 depends: - libgcc >=14 constrains: - jpeg <0.0.0a license: IJG AND BSD-3-Clause AND Zlib -size: 691818 -timestamp: 1762094728337 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblapack-3.11.0-5_h88aeb00_openblas.conda -build_number: 5 -sha256: 692222d186d3ffbc99eaf04b5b20181fd26aee1edec1106435a0a755c57cce86 -md5: 88d1e4133d1182522b403e9ba7435f04 -depends: -- libblas 3.11.0 5_haddc8a3_openblas +size: 693143 +timestamp: 1775962625956 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblapack-3.11.0-7_h88aeb00_openblas.conda +build_number: 7 +sha256: 20b38a0156200ac65f597bf0a93914c565435f2cc58b1042581854231a99ac35 +md5: 5899cbd743cc74fd655c1ed2af7120f3 +depends: +- libblas 3.11.0 7_haddc8a3_openblas constrains: -- liblapacke 3.11.0 5*_openblas -- blas 2.305 openblas -- libcblas 3.11.0 5*_openblas +- libcblas 3.11.0 7*_openblas +- blas 2.307 openblas +- liblapacke 3.11.0 7*_openblas license: BSD-3-Clause license_family: BSD -size: 18392 -timestamp: 1765818627104 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.2-he30d5cf_0.conda -sha256: 843c46e20519651a3e357a8928352b16c5b94f4cd3d5481acc48be2e93e8f6a3 -md5: 96944e3c92386a12755b94619bae0b35 +size: 18685 +timestamp: 1778489809140 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.3-he30d5cf_0.conda +sha256: d61962b9cd54c3554361550203c64d5b65b71e3058a285b66e4b04b9769f0a5c +md5: 76298a9e6d71ee6e832a8d0d7373b261 depends: - libgcc >=14 constrains: -- xz 5.8.2.* +- xz 5.8.3.* license: 0BSD -size: 125916 -timestamp: 1768754941722 +size: 126102 +timestamp: 1775828008518 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libmpdec-4.0.0-he30d5cf_1.conda sha256: 57c0dd12d506e84541c4e877898bd2a59cca141df493d34036f18b2751e0a453 md5: 7b9813e885482e3ccb1fa212b86d7fd0 @@ -674,49 +662,48 @@ license: BSD-2-Clause license_family: BSD size: 114056 timestamp: 1769482343003 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libopenblas-0.3.30-pthreads_h9d3fd7e_4.conda -sha256: 794a7270ea049ec931537874cd8d2de0ef4b3cef71c055cfd8b4be6d2f4228b0 -md5: 11d7d57b7bdd01da745bbf2b67020b2e +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libopenblas-0.3.33-pthreads_h9d3fd7e_0.conda +sha256: b018ecfb05e75a8eea3f21f6b5c5c2a54b5178bdcf19e2e2df2735740214a8c8 +md5: 58a66cd95e9692f08abe89f55a6f3f12 depends: - libgcc >=14 - libgfortran - libgfortran5 >=14.3.0 constrains: -- openblas >=0.3.30,<0.3.31.0a0 +- openblas >=0.3.33,<0.3.34.0a0 license: BSD-3-Clause license_family: BSD -size: 4959359 -timestamp: 1763114173544 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libpng-1.6.55-h1abf092_0.conda -sha256: c7378c6b79de4d571d00ad1caf0a4c19d43c9c94077a761abb6ead44d891f907 -md5: be4088903b94ea297975689b3c3aeb27 +size: 5121336 +timestamp: 1776993423004 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libpng-1.6.58-h1abf092_0.conda +sha256: 483eaa53da40a6a3e558709d9f7b1ca388735364ae21a1ba58cf942514649c92 +md5: f51503ac45a4888bce71af9027a2ecc9 depends: - libgcc >=14 -- libzlib >=1.3.1,<2.0a0 +- libzlib >=1.3.2,<2.0a0 license: zlib-acknowledgement -size: 340156 -timestamp: 1770691477245 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.52.0-h10b116e_0.conda -sha256: 1ddaf91b44fae83856276f4cb7ce544ffe41d4b55c1e346b504c6b45f19098d6 -md5: 77891484f18eca74b8ad83694da9815e +size: 341202 +timestamp: 1776315188425 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.53.1-h022381a_0.conda +sha256: ad03b7d8e4d08001f0df88ee7a56108bb35bae4795a42b9a04cc1abfa822bd07 +md5: 2ec1119217d8f0d086e9a62f3cb0e5ea depends: -- icu >=78.2,<79.0a0 - libgcc >=14 -- libzlib >=1.3.1,<2.0a0 +- libzlib >=1.3.2,<2.0a0 license: blessing -size: 952296 -timestamp: 1772818881550 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-15.2.0-hef695bb_18.conda -sha256: 31fdb9ffafad106a213192d8319b9f810e05abca9c5436b60e507afb35a6bc40 -md5: f56573d05e3b735cb03efeb64a15f388 +size: 955361 +timestamp: 1777986487553 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-15.2.0-hef695bb_19.conda +sha256: 1dadc45e599f510dd5f97141dddcdbb9844d9f1430c1f3a38075cf1c58f87b4e +md5: 543fbc8d71f2a0baf04cf88ce96cb8bb depends: -- libgcc 15.2.0 h8acb6b2_18 +- libgcc 15.2.0 h8acb6b2_19 constrains: -- libstdcxx-ng ==15.2.0=*_18 +- libstdcxx-ng ==15.2.0=*_19 license: GPL-3.0-only WITH GCC-exception-3.1 license_family: GPL -size: 5541411 -timestamp: 1771378162499 +size: 5546559 +timestamp: 1778268777463 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libtiff-4.7.1-hdb009f0_1.conda sha256: 7ff79470db39e803e21b8185bc8f19c460666d5557b1378d1b1e857d929c6b39 md5: 8c6fd84f9c87ac00636007c6131e457d @@ -733,15 +720,15 @@ depends: license: HPND size: 488407 timestamp: 1762022048105 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuuid-2.41.3-h1022ec0_0.conda -sha256: c37a8e89b700646f3252608f8368e7eb8e2a44886b92776e57ad7601fc402a11 -md5: cf2861212053d05f27ec49c3784ff8bb +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuuid-2.42.1-h1022ec0_0.conda +sha256: 1628839b062e98b2192857d4da8496ac9ac6b0dbb77aa040c34efc9192c440ee +md5: 0f42f9fedd2a32d798de95a7f65c456f depends: - libgcc >=14 license: BSD-3-Clause license_family: BSD size: 43453 -timestamp: 1766271546875 +timestamp: 1779118526838 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libwebp-base-1.6.0-ha2e29f5_0.conda sha256: b03700a1f741554e8e5712f9b06dd67e76f5301292958cd3cb1ac8c6fdd9ed25 md5: 24e92d0942c799db387f5c9d7b81f1af @@ -785,16 +772,16 @@ license: BSD-3-Clause license_family: BSD size: 85893 timestamp: 1770694658918 -- conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-4.0.0-pyhd8ed1ab_0.conda -sha256: 7b1da4b5c40385791dbc3cc85ceea9fad5da680a27d5d3cb8bfaa185e304a89e -md5: 5b5203189eb668f042ac2b0826244964 +- conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-4.2.0-pyhd8ed1ab_0.conda +sha256: 0c4c35376fe920714390d46e4b8d31c876d65f18e1655899e0763ec25f2a902f +md5: 6d03368f2b2b0a5fb6839df53b2eb5e0 depends: - mdurl >=0.1,<1 - python >=3.10 license: MIT license_family: MIT -size: 64736 -timestamp: 1754951288511 +size: 69017 +timestamp: 1778169663339 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/markupsafe-3.0.3-py314hb76de3f_1.conda sha256: 383c188496d13a55658c06e61e7d4cdff2c9f9d5a0648769fca8250bece7e0ef md5: e5de3c36dd548b35ff2a8aa49208dcb3 @@ -824,9 +811,9 @@ license: MIT license_family: MIT size: 14465 timestamp: 1733255681319 -- conda: https://conda.anaconda.org/bioconda/noarch/multiqc-1.33-pyhdfd78af_0.conda -sha256: f005760b13093362fc9c997d603dd487de32ab2e821a3cbce52a42bcb8136517 -md5: 698a8a27c2b9d8a542c70cb47099a75e +- conda: https://conda.anaconda.org/bioconda/noarch/multiqc-1.35-pyhdfd78af_1.conda +sha256: e86033aa55a9e915e2d0957e770bdb81e3feb26a227d1adb17f9d6c528da6a71 +md5: cdb20309681ba3ce8f52c110e214d4f3 depends: - click - coloredlogs @@ -840,10 +827,11 @@ depends: - packaging - pillow >=10.2.0 - plotly >=5.18 -- polars-lts-cpu +- polars >=1.34.0 +- polars-runtime-compat >=1.34.0 - pyaml-env - pydantic >=2.7.1 -- python >=3.8,!=3.14.1 +- python >=3.9,!=3.14.1 - python-dotenv - python-kaleido 0.2.1 - pyyaml >=4 @@ -853,20 +841,21 @@ depends: - spectra >=0.0.10 - tiktoken - tqdm -- typeguard +- typeguard >=4 license: GPL-3.0-or-later license_family: GPL3 -size: 4198799 -timestamp: 1765300743879 -- conda: https://conda.anaconda.org/conda-forge/noarch/narwhals-2.18.1-pyhcf101f3_1.conda -sha256: 541fd4390a0687228b8578247f1536a821d9261389a65585af9d1a6f2a14e1e0 -md5: 30bec5e8f4c3969e2b1bd407c5e52afb +size: 4282188 +timestamp: 1779465338806 +- conda: https://conda.anaconda.org/conda-forge/noarch/narwhals-2.21.2-pyhcf101f3_0.conda +sha256: 70f43d62450927d51673eecd8823e14f5b3cfebdb43cda1d502eba97162bab42 +md5: 6687827c332121727ce383919e1ec8c2 depends: - python >=3.10 - python license: MIT -size: 280459 -timestamp: 1774380620329 +license_family: MIT +size: 284323 +timestamp: 1778929680962 - conda: https://conda.anaconda.org/conda-forge/noarch/natsort-8.4.0-pyhcf101f3_2.conda sha256: aeb1548eb72e4f198e72f19d242fb695b35add2ac7b2c00e0d83687052867680 md5: e941e85e273121222580723010bd4fa2 @@ -877,14 +866,14 @@ license: MIT license_family: MIT size: 39262 timestamp: 1770905275632 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ncurses-6.5-ha32ae93_3.conda -sha256: 91cfb655a68b0353b2833521dc919188db3d8a7f4c64bea2c6a7557b24747468 -md5: 182afabe009dc78d8b73100255ee6868 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ncurses-6.6-hf8d1292_0.conda +sha256: 369db85c5cd8d99dde364ce70725d76511d9c8199e5b820c740414091bf5bcca +md5: b2a43456aa56fe80c2477a5094899eff depends: -- libgcc >=13 +- libgcc >=14 license: X11 AND BSD-3-Clause -size: 926034 -timestamp: 1738196018799 +size: 960036 +timestamp: 1777422174534 - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.6.1-pyhcf101f3_0.conda sha256: f6a82172afc50e54741f6f84527ef10424326611503c64e359e25a19a8e4c1c6 md5: a2c1eeadae7a309daed9d62c96012a2b @@ -923,24 +912,23 @@ license: MPL-2.0 license_family: MOZILLA size: 2061869 timestamp: 1763490303490 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/numpy-2.4.3-py314haac167e_0.conda -sha256: a6d42fd88afc57c3b0a57b21a12eff7492dfc419bb61ee3f74e9ba6261dabc88 -md5: 25d896c331481145720a21e5145fad65 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/numpy-2.4.6-py314he1698a1_0.conda +sha256: 04af718b911f8a3a0095481c7e283aa081a175fe626eccbc2c5644bcb2aba9a1 +md5: 8b173772deea177b45d2a133b509b3f7 depends: - python -- libgcc >=14 -- python 3.14.* *_cp314 - libstdcxx >=14 -- libcblas >=3.9.0,<4.0a0 -- liblapack >=3.9.0,<4.0a0 +- libgcc >=14 - python_abi 3.14.* *_cp314 - libblas >=3.9.0,<4.0a0 +- liblapack >=3.9.0,<4.0a0 +- libcblas >=3.9.0,<4.0a0 constrains: - numpy-base <0a0 license: BSD-3-Clause license_family: BSD -size: 8008045 -timestamp: 1773839355275 +size: 8002900 +timestamp: 1779169206742 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openjpeg-2.5.4-h5da879a_0.conda sha256: bd1bc8bdde5e6c5cbac42d462b939694e40b59be6d0698f668515908640c77b8 md5: cea962410e327262346d48d01f05936c @@ -954,47 +942,47 @@ license: BSD-2-Clause license_family: BSD size: 392636 timestamp: 1758489353577 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openssl-3.6.1-h546c87b_1.conda -sha256: 7f8048c0e75b2620254218d72b4ae7f14136f1981c5eb555ef61645a9344505f -md5: 25f5885f11e8b1f075bccf4a2da91c60 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openssl-3.6.2-h546c87b_0.conda +sha256: 348cb74c1530ac241215d047ef65d134cf797af935c97a68655319362b7e6a01 +md5: 3b129669089e4d6a5c6871dbb4669b99 depends: - ca-certificates - libgcc >=14 license: Apache-2.0 license_family: Apache -size: 3692030 -timestamp: 1769557678657 -- conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda -sha256: c1fc0f953048f743385d31c468b4a678b3ad20caffdeaa94bed85ba63049fd58 -md5: b76541e68fea4d511b1ac46a28dcd2c6 +size: 3706406 +timestamp: 1775589602258 +- conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.2-pyhc364b38_0.conda +sha256: 3906abfb6511a3bb309e39b9b1b7bc38f50a723971de2395489fd1f379255890 +md5: 4c06a92e74452cfa53623a81592e8934 depends: - python >=3.8 - python license: Apache-2.0 license_family: APACHE -size: 72010 -timestamp: 1769093650580 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pillow-12.1.1-py314hac3e5ec_0.conda -sha256: 1ca2d1616baad9bccb7ebc425ef2dcd6cebe742fbe91edf226fb606ad371ca0f -md5: d3c959c7efe560b2d7da459d69121fe9 +size: 91574 +timestamp: 1777103621679 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pillow-12.2.0-py314hac3e5ec_0.conda +sha256: 96b26c2657275ffe84ab510edf0865e21999d791485d12794edd4a71b837beb6 +md5: 87d58d103b47c4a8567b3d7666647684 depends: - python -- python 3.14.* *_cp314 - libgcc >=14 -- zlib-ng >=2.3.3,<2.4.0a0 +- python 3.14.* *_cp314 +- openjpeg >=2.5.4,<3.0a0 +- libxcb >=1.17.0,<2.0a0 - libwebp-base >=1.6.0,<2.0a0 +- zlib-ng >=2.3.3,<2.4.0a0 +- python_abi 3.14.* *_cp314 +- lcms2 >=2.18,<3.0a0 - tk >=8.6.13,<8.7.0a0 -- libfreetype >=2.14.1 -- libfreetype6 >=2.14.1 - libtiff >=4.7.1,<4.8.0a0 -- lcms2 >=2.18,<3.0a0 -- python_abi 3.14.* *_cp314 -- openjpeg >=2.5.4,<3.0a0 - libjpeg-turbo >=3.1.2,<4.0a0 -- libxcb >=1.17.0,<2.0a0 +- libfreetype >=2.14.3 +- libfreetype6 >=2.14.3 license: HPND -size: 1051828 -timestamp: 1770794010335 +size: 1062080 +timestamp: 1775060067775 - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-6.6.0-pyhd8ed1ab_0.conda sha256: c418d325359fc7a0074cea7f081ef1bce26e114d2da8a0154c5d27ecc87a08e7 md5: 3e9427ee186846052e81fadde8ebe96a @@ -1008,11 +996,11 @@ license: MIT license_family: MIT size: 5251872 timestamp: 1772628857717 -- conda: https://conda.anaconda.org/conda-forge/noarch/polars-1.39.3-pyh58ad624_1.conda -sha256: d332c2d5002fc440ae37ed9679ffc21b552f18d20232390005d1dd3bce0888d3 -md5: d5a4e013a30dd8dfde9ab39f45aaf9c1 +- conda: https://conda.anaconda.org/conda-forge/noarch/polars-1.41.0-pyh58ad624_0.conda +sha256: 70fc56877c4a095ee658d61924d8019768fbae4a48437058d181fc94b0a7c4d8 +md5: 25a883fed9f1f3f21ff317a3e7c92ac4 depends: -- polars-runtime-32 ==1.39.3 +- polars-runtime-32 ==1.41.0 - python >=3.10 - python constrains: @@ -1026,27 +1014,16 @@ constrains: - pyiceberg >=0.7.1 - altair >=5.4.0 - great_tables >=0.8.0 -- polars-runtime-32 ==1.39.3 -- polars-runtime-64 ==1.39.3 -- polars-runtime-compat ==1.39.3 +- polars-runtime-32 ==1.41.0 +- polars-runtime-64 ==1.41.0 +- polars-runtime-compat ==1.41.0 license: MIT -license_family: MIT -size: 533495 -timestamp: 1774207987966 -- conda: https://conda.anaconda.org/conda-forge/noarch/polars-lts-cpu-1.34.0.deprecated-hc364b38_0.conda -sha256: e466fb31f67ba9bde18deafeb34263ca5eb25807f39ead0e9d753a8e82c4c4f4 -md5: ef0340e75068ac8ff96462749b5c98e7 -depends: -- polars >=1.34.0 -- polars-runtime-compat >=1.34.0 -license: MIT -license_family: MIT -size: 3902 -timestamp: 1760206808444 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/polars-runtime-32-1.39.3-py310hff09b76_1.conda +size: 539656 +timestamp: 1779630790562 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/polars-runtime-32-1.41.0-py310h32c7c23_0.conda noarch: python -sha256: c070be507c5a90df397a47ae0299660be437d5546d68f1bc0fa4402c9f07d59e -md5: 3c1a7c6b4ba8b9fb773ace9723f8a5db +sha256: d903b774ec09189e164207328aac157eee82fed8cc5c9ace46aeb5d1c15cb5b3 +md5: 8c08c506ed1ea8ce0ca37af5e918c58d depends: - python - libgcc >=14 @@ -1056,25 +1033,23 @@ depends: constrains: - __glibc >=2.17 license: MIT -license_family: MIT -size: 34785466 -timestamp: 1774207998285 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/polars-runtime-compat-1.39.3-py310hf00a4a2_1.conda +size: 38704429 +timestamp: 1779630794932 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/polars-runtime-compat-1.41.0-py310hc0e61be_0.conda noarch: python -sha256: 683315f1a49e47ce72bf9462419733b40b588b2b3106552d95fd4cd994e174de -md5: dd3464e2132dc3a783e76e5078870c76 +sha256: 101696adff43a654146376c62ef9611bf7946b95fa46f604fe247d77eefc6267 +md5: 65b73e4260677ee5162bdbb252e28e06 depends: - python -- libgcc >=14 - libstdcxx >=14 +- libgcc >=14 - _python_abi3_support 1.* - cpython >=3.10 constrains: - __glibc >=2.17 license: MIT -license_family: MIT -size: 34652491 -timestamp: 1774207996879 +size: 38651498 +timestamp: 1779630714016 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/procps-ng-4.0.6-h1779866_0.conda sha256: e9cbcbc94e151ada3d6dc365380aaaf591f65012c16d9a2abaea4b9b90adc402 md5: ab7288cc39545556d1bc5e71ab2df9a9 @@ -1104,24 +1079,23 @@ license: MIT license_family: MIT size: 14645 timestamp: 1736766960536 -- conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.12.5-pyhcf101f3_1.conda -sha256: 868569d9505b7fe246c880c11e2c44924d7613a8cdcc1f6ef85d5375e892f13d -md5: c3946ed24acdb28db1b5d63321dbca7d +- conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.13.4-pyhcf101f3_0.conda +sha256: 69700e31165df070e9716315e042196aa92525dae5deb5107785847ab9f4189f +md5: 729843edafc0899b3348bd3f19525b9d depends: - typing-inspection >=0.4.2 - typing_extensions >=4.14.1 - python >=3.10 -- typing-extensions >=4.6.1 - annotated-types >=0.6.0 -- pydantic-core ==2.41.5 +- pydantic-core ==2.46.4 - python license: MIT license_family: MIT -size: 340482 -timestamp: 1764434463101 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pydantic-core-2.41.5-py314h451b6cc_1.conda -sha256: f8acb2d03ebe80fed0032b9a989fc9acfb6735e3cd3f8c704b72728cb31868f6 -md5: 28f5027a1e04d67aa13fac1c5ba79693 +size: 346511 +timestamp: 1778103405862 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pydantic-core-2.46.4-py314h451b6cc_0.conda +sha256: 1a7c6b18e404c13c4d959888ecb48a9ed9de0e41be2872932b83a35278088df0 +md5: 9c3ace6aba6df14b943256095ac1281e depends: - python - typing-extensions >=4.6.0,!=4.7.0 @@ -1132,17 +1106,17 @@ constrains: - __glibc >=2.17 license: MIT license_family: MIT -size: 1828339 -timestamp: 1762989038561 -- conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda -sha256: 5577623b9f6685ece2697c6eb7511b4c9ac5fb607c9babc2646c811b428fd46a -md5: 6b6ece66ebcae2d5f326c77ef2c5a066 +size: 1780773 +timestamp: 1778084251775 +- conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.20.0-pyhd8ed1ab_0.conda +sha256: cf70b2f5ad9ae472b71235e5c8a736c9316df3705746de419b59d442e8348e86 +md5: 16c18772b340887160c79a6acc022db0 depends: -- python >=3.9 +- python >=3.10 license: BSD-2-Clause license_family: BSD -size: 889287 -timestamp: 1750615908735 +size: 893031 +timestamp: 1774796815820 - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda sha256: ba3b032fa52709ce0d9fd388f63d330a026754587a2f461117cac9ab73d8d0d8 md5: 461219d1a5bd61342293efa2c0c90eac @@ -1153,31 +1127,31 @@ license: BSD-3-Clause license_family: BSD size: 21085 timestamp: 1733217331982 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/python-3.14.3-hb06a95a_101_cp314.conda -build_number: 101 -sha256: 87e9dff5646aba87cecfbc08789634c855871a7325169299d749040b0923a356 -md5: 205011b36899ff0edf41b3db0eda5a44 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/python-3.14.5-hfd9ac0a_100_cp314.conda +build_number: 100 +sha256: d37bad5447365346166c72950ea8f49689aa49cecc1b0623d00458427627b8df +md5: d956e09feb806f5974675ce92ad81d45 depends: - bzip2 >=1.0.8,<2.0a0 - ld_impl_linux-aarch64 >=2.36.1 -- libexpat >=2.7.3,<3.0a0 +- libexpat >=2.8.0,<3.0a0 - libffi >=3.5.2,<3.6.0a0 - libgcc >=14 -- liblzma >=5.8.2,<6.0a0 +- liblzma >=5.8.3,<6.0a0 - libmpdec >=4.0.0,<5.0a0 -- libsqlite >=3.51.2,<4.0a0 -- libuuid >=2.41.3,<3.0a0 -- libzlib >=1.3.1,<2.0a0 -- ncurses >=6.5,<7.0a0 -- openssl >=3.5.5,<4.0a0 +- libsqlite >=3.53.1,<4.0a0 +- libuuid >=2.42.1,<3.0a0 +- libzlib >=1.3.2,<2.0a0 +- ncurses >=6.6,<7.0a0 +- openssl >=3.5.6,<4.0a0 - python_abi 3.14.* *_cp314 - readline >=8.3,<9.0a0 - tk >=8.6.13,<8.7.0a0 - tzdata - zstd >=1.5.7,<1.6.0a0 license: Python-2.0 -size: 37305578 -timestamp: 1770674395875 +size: 37510439 +timestamp: 1779236267040 python_site_packages_path: lib/python3.14/site-packages - conda: https://conda.anaconda.org/conda-forge/noarch/python-dotenv-1.2.2-pyhcf101f3_0.conda sha256: 74e417a768f59f02a242c25e7db0aa796627b5bc8c818863b57786072aeb85e5 @@ -1188,15 +1162,15 @@ license: BSD-3-Clause license_family: BSD size: 27848 timestamp: 1772388605021 -- conda: https://conda.anaconda.org/conda-forge/noarch/python-gil-3.14.3-h4df99d1_101.conda -sha256: 233aebd94c704ac112afefbb29cf4170b7bc606e22958906f2672081bc50638a -md5: 235765e4ea0d0301c75965985163b5a1 +- conda: https://conda.anaconda.org/conda-forge/noarch/python-gil-3.14.5-h4df99d1_100.conda +sha256: 41dd7da285d71d519257fa7dacb1cae060d5ebfaa5f92cba5994899d2978e943 +md5: 41954747ba952ec4b01e16c2c9e8d8ff depends: -- cpython 3.14.3.* +- cpython 3.14.5.* - python_abi * *_cp314 license: Python-2.0 -size: 50062 -timestamp: 1770674497152 +size: 50212 +timestamp: 1779236703009 - conda: https://conda.anaconda.org/conda-forge/noarch/python-kaleido-0.2.1-pyhd8ed1ab_0.tar.bz2 sha256: e17bf63a30aec33432f1ead86e15e9febde9fc40a7f869c0e766be8d2db44170 md5: 310259a5b03ff02289d7705f39e2b1d2 @@ -1253,9 +1227,9 @@ license: MIT license_family: MIT size: 51788 timestamp: 1760379115194 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/regex-2026.2.28-py314h51f160d_0.conda -sha256: 2080ecea825e1ef91a2422cc0bc63e85db9e38908ed17657fb8f41de7a6eee71 -md5: 818aa2c9f6b3c808da5e7be22a9a424c +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/regex-2026.5.9-py314h51f160d_0.conda +sha256: 05ef55f09f31eabd0a205f6b065e13fc746675f41924620977692ef0ffe5aad8 +md5: 34ed7bc9febeca70f55b757ca09c354d depends: - libgcc >=14 - python >=3.14,<3.15.0a0 @@ -1263,27 +1237,27 @@ depends: - python_abi 3.14.* *_cp314 license: Apache-2.0 AND CNRI-Python license_family: PSF -size: 408097 -timestamp: 1772255205521 -- conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda -sha256: 7813c38b79ae549504b2c57b3f33394cea4f2ad083f0994d2045c2e24cb538c5 -md5: c65df89a0b2e321045a9e01d1337b182 +size: 409780 +timestamp: 1778374195988 +- conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.34.2-pyhcf101f3_0.conda +sha256: 1715246b19c9f85ee022933b4845f2fc14ac9184981b7b7d9b728bec8e9588da +md5: 4a85203c1d80c1059086ae860836ffb9 depends: - python >=3.10 -- certifi >=2017.4.17 +- certifi >=2023.5.7 - charset-normalizer >=2,<4 - idna >=2.5,<4 -- urllib3 >=1.21.1,<3 +- urllib3 >=1.26,<3 - python constrains: -- chardet >=3.0.2,<6 +- chardet >=3.0.2,<8 license: Apache-2.0 license_family: APACHE -size: 63602 -timestamp: 1766926974520 -- conda: https://conda.anaconda.org/conda-forge/noarch/rich-14.3.3-pyhcf101f3_0.conda -sha256: b06ce84d6a10c266811a7d3adbfa1c11f13393b91cc6f8a5b468277d90be9590 -md5: 7a6289c50631d620652f5045a63eb573 +size: 68709 +timestamp: 1778851103479 +- conda: https://conda.anaconda.org/conda-forge/noarch/rich-15.0.0-pyhcf101f3_0.conda +sha256: 3d6ba2c0fcdac3196ba2f0615b4104e532525ffa1335b50a2878be5ff488814a +md5: 0242025a3c804966bf71aa04eee82f66 depends: - markdown-it-py >=2.2.0 - pygments >=2.13.0,<3.0.0 @@ -1292,8 +1266,8 @@ depends: - python license: MIT license_family: MIT -size: 208472 -timestamp: 1771572730357 +size: 208577 +timestamp: 1775991661559 - conda: https://conda.anaconda.org/conda-forge/noarch/rich-click-1.9.7-pyh8f84b5b_0.conda sha256: aa3fcb167321bae51998de2e94d199109c9024f25a5a063cb1c28d8f1af33436 md5: 0c20a8ebcddb24a45da89d5e917e6cb9 @@ -1331,19 +1305,18 @@ license: MIT license_family: MIT size: 22284 timestamp: 1735770589188 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/sqlite-3.52.0-hf1c7be2_0.conda -sha256: 4f8523f5341f0d9e1547085206c6c1f71f9fc7c277443ca363a8cf98add8fc01 -md5: d9634079df93a65ee045b3c75f35cae1 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/sqlite-3.53.1-he8854b5_0.conda +sha256: 27467e4bfb0681546f149718c33b806fec078185fbaa6a4d17d440bc8f56185c +md5: 46009bdca2315a99e0a3a7d0ba1af3b9 depends: -- icu >=78.2,<79.0a0 - libgcc >=14 -- libsqlite 3.52.0 h10b116e_0 -- libzlib >=1.3.1,<2.0a0 -- ncurses >=6.5,<7.0a0 +- libsqlite 3.53.1 h022381a_0 +- libzlib >=1.3.2,<2.0a0 +- ncurses >=6.6,<7.0a0 - readline >=8.3,<9.0a0 license: blessing -size: 209416 -timestamp: 1772818891689 +size: 209964 +timestamp: 1777986493350 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tiktoken-0.12.0-py314h6a36e60_3.conda sha256: c1da41c79262b27efa168407cfecc47b20270e5fc071a8307f95a2c85fb94170 md5: 55bf7b559202236157b14323b40f19e6 @@ -1382,20 +1355,20 @@ depends: license: MPL-2.0 and MIT size: 94132 timestamp: 1770153424136 -- conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.5.1-pyhd8ed1ab_0.conda -sha256: 39d8ae33c43cdb8f771373e149b0b4fae5a08960ac58dcca95b2f1642bb17448 -md5: 260af1b0a94f719de76b4e14094e9a3b +- conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.5.2-pyhcf101f3_0.conda +sha256: 59d7851d32fddb5b510272e6557aa982edeb927d349648dac27f5bf01d18bb26 +md5: 4460f039b7dedf15f7df086446ca75ae depends: -- importlib-metadata >=3.6 -- python >=3.10 -- typing-extensions >=4.10.0 - typing_extensions >=4.14.0 +- python >=3.10 +- importlib-metadata >=3.6 +- python constrains: - pytest >=7 license: MIT license_family: MIT -size: 36838 -timestamp: 1771532971545 +size: 38297 +timestamp: 1778779291237 - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda sha256: 7c2df5721c742c2a47b2c8f960e718c930031663ac1174da67c1ed5999f7938c md5: edd329d7d3a4ab45dcf905899a7a6115 @@ -1405,16 +1378,17 @@ license: PSF-2.0 license_family: PSF size: 91383 timestamp: 1756220668932 -- conda: https://conda.anaconda.org/conda-forge/noarch/typing-inspection-0.4.2-pyhd8ed1ab_1.conda -sha256: 70db27de58a97aeb7ba7448366c9853f91b21137492e0b4430251a1870aa8ff4 -md5: a0a4a3035667fc34f29bfbd5c190baa6 +- conda: https://conda.anaconda.org/conda-forge/noarch/typing-inspection-0.4.2-pyhcf101f3_2.conda +sha256: 8b90d2f19f9458b8c58a55e1fcdc1d90c1603a847a47654d8a454549413ba60a +md5: 53f5409c5cfd6c5a66417d68e3f0a864 depends: - python >=3.10 - typing_extensions >=4.12.0 +- python license: MIT license_family: MIT -size: 18923 -timestamp: 1764158430324 +size: 20935 +timestamp: 1777105465795 - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda sha256: 032271135bca55aeb156cee361c81350c6f3fb203f57d024d7e5a1fc9ef18731 md5: 0caa1af407ecff61170c9437a808404d @@ -1431,9 +1405,9 @@ md5: ad659d0a2b3e47e38d829aa8cad2d610 license: LicenseRef-Public-Domain size: 119135 timestamp: 1767016325805 -- conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda -sha256: af641ca7ab0c64525a96fd9ad3081b0f5bcf5d1cbb091afb3f6ed5a9eee6111a -md5: 9272daa869e03efe68833e3dc7a02130 +- conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.7.0-pyhd8ed1ab_0.conda +sha256: feff959a816f7988a0893201aa9727bbb7ee1e9cec2c4f0428269b489eb93fb4 +md5: cbb88288f74dbe6ada1c6c7d0a97223e depends: - backports.zstd >=1.0.0 - brotli-python >=1.2.0 @@ -1442,8 +1416,8 @@ depends: - python >=3.10 license: MIT license_family: MIT -size: 103172 -timestamp: 1767817860341 +size: 103560 +timestamp: 1778188657149 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxau-1.0.12-he30d5cf_1.conda sha256: e9f6e931feeb2f40e1fdbafe41d3b665f1ab6cb39c5880a1fcf9f79a3f3c84a5 md5: 1c246e1105000c3660558459e2fd6d43 @@ -1471,16 +1445,16 @@ license: MIT license_family: MIT size: 88088 timestamp: 1753484092643 -- conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.23.0-pyhcf101f3_1.conda -sha256: b4533f7d9efc976511a73ef7d4a2473406d7f4c750884be8e8620b0ce70f4dae -md5: 30cd29cb87d819caead4d55184c1d115 +- conda: https://conda.anaconda.org/conda-forge/noarch/zipp-4.1.0-pyhcf101f3_0.conda +sha256: 210bd31c22bb88f5e2a167df24c95bb5f152b2ada7502f9b8c49d1f5366db423 +md5: ba3dcdc8584155c97c648ae9c044b7a3 depends: - python >=3.10 - python license: MIT license_family: MIT -size: 24194 -timestamp: 1764460141901 +size: 24190 +timestamp: 1779159948016 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/zlib-ng-2.3.3-ha7cb516_1.conda sha256: 638a3a41a4fbfed52d3c60c8ef5a3693b3f12a5b1a3f58fa29f5698d0a0702e2 md5: f731af71c723065d91b4c01bb822641b diff --git a/modules/nf-core/multiqc/environment.yml b/modules/nf-core/multiqc/environment.yml index 009874d4..7a970e2b 100644 --- a/modules/nf-core/multiqc/environment.yml +++ b/modules/nf-core/multiqc/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::multiqc=1.33 + - bioconda::multiqc=1.35 diff --git a/modules/nf-core/multiqc/main.nf b/modules/nf-core/multiqc/main.nf index 5376aea1..c4bc715e 100644 --- a/modules/nf-core/multiqc/main.nf +++ b/modules/nf-core/multiqc/main.nf @@ -3,9 +3,9 @@ process MULTIQC { label 'process_single' conda "${moduleDir}/environment.yml" - container "${workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container - ? 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/34/34e733a9ae16a27e80fe00f863ea1479c96416017f24a907996126283e7ecd4d/data' - : 'community.wave.seqera.io/library/multiqc:1.33--ee7739d47738383b'}" + container "${workflow.containerEngine in ['singularity', 'apptainer'] && !task.ext.singularity_pull_docker_container + ? 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/c8/c8e346f4f6080eadf1253505e6ff09ef004454fc18e8d672006fd7b222cc412e/data' + : 'community.wave.seqera.io/library/multiqc:1.35--c17fb751507e9dfc'}" input: tuple val(meta), path(multiqc_files, stageAs: "?/*"), path(multiqc_config, stageAs: "?/*"), path(multiqc_logo), path(replace_names), path(sample_names) diff --git a/modules/nf-core/multiqc/meta.yml b/modules/nf-core/multiqc/meta.yml index 57cf43ca..27ce18d8 100644 --- a/modules/nf-core/multiqc/meta.yml +++ b/modules/nf-core/multiqc/meta.yml @@ -110,24 +110,24 @@ maintainers: containers: conda: linux/amd64: - lock_file: modules/nf-core/multiqc/.conda-lock/linux_amd64-bd-c1f4a7982b743963_1.txt + lock_file: modules/nf-core/multiqc/.conda-lock/linux_amd64-bd-c17fb751507e9dfc_1.txt linux/arm64: - lock_file: modules/nf-core/multiqc/.conda-lock/linux_arm64-bd-40bf3b435e89dc22_1.txt + lock_file: modules/nf-core/multiqc/.conda-lock/linux_arm64-bd-5c84a5000a226ab5_1.txt docker: linux/amd64: - name: community.wave.seqera.io/library/multiqc:1.33--c1f4a7982b743963 - build_id: bd-c1f4a7982b743963_1 - scan_id: sc-b7b7f470b2a16699_1 + name: community.wave.seqera.io/library/multiqc:1.35--c17fb751507e9dfc + build_id: bd-c17fb751507e9dfc_1 + scan_id: sc-3b1b3932f9846892_1 linux/arm64: - name: community.wave.seqera.io/library/multiqc:1.33--40bf3b435e89dc22 - build_id: bd-40bf3b435e89dc22_1 - scan_id: sc-0e2108a0e7368d2f_1 + name: community.wave.seqera.io/library/multiqc:1.35--5c84a5000a226ab5 + build_id: bd-5c84a5000a226ab5_1 + scan_id: sc-0d39df41e9737bbd_1 singularity: linux/amd64: - name: oras://community.wave.seqera.io/library/multiqc:1.33--9b3473b1c4bb0493 - build_id: bd-9b3473b1c4bb0493_1 - https: https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/c4/c4e6d9f669e1a99b53c7dc5cdd6b8e7fd6654032c755bb783cc9849e8203f4d1/data + name: oras://community.wave.seqera.io/library/multiqc:1.35--c680f2aea25ccec2 + build_id: bd-c680f2aea25ccec2_1 + https: https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/c8/c8e346f4f6080eadf1253505e6ff09ef004454fc18e8d672006fd7b222cc412e/data linux/arm64: - name: oras://community.wave.seqera.io/library/multiqc:1.33--e1ef2065eb21b530 - build_id: bd-e1ef2065eb21b530_1 - https: https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/2a/2acce766e3efb280fa43acdbe85305ea6496ddadbcaa2d806ac4985dfe4686ce/data + name: oras://community.wave.seqera.io/library/multiqc:1.35--c0468833d65b2f81 + build_id: bd-c0468833d65b2f81_1 + https: https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/e4/e48aa28aebc881254a499b24c3e1ce77b8df1b85a5432699ed6f72eb17ac7fb5/data diff --git a/modules/nf-core/multiqc/tests/main.nf.test.snap b/modules/nf-core/multiqc/tests/main.nf.test.snap index 3bfc524f..44899216 100644 --- a/modules/nf-core/multiqc/tests/main.nf.test.snap +++ b/modules/nf-core/multiqc/tests/main.nf.test.snap @@ -81,7 +81,7 @@ [ "MULTIQC", "multiqc", - "1.33" + "1.35" ] ] } @@ -175,7 +175,7 @@ [ "MULTIQC", "multiqc", - "1.33" + "1.35" ] ] } @@ -221,7 +221,7 @@ [ "MULTIQC", "multiqc", - "1.33" + "1.35" ] ] } @@ -314,7 +314,7 @@ [ "MULTIQC", "multiqc", - "1.33" + "1.35" ] ] } @@ -408,7 +408,7 @@ [ "MULTIQC", "multiqc", - "1.33" + "1.35" ] ] } From d1bc5c49867ed61051d84daf0f193374896f25b9 Mon Sep 17 00:00:00 2001 From: Olivier Date: Fri, 12 Jun 2026 09:12:49 +0200 Subject: [PATCH 22/31] Update default.nf.test.snap --- tests/default.nf.test.snap | 289 ++++++++++++++++++++++++------------- 1 file changed, 191 insertions(+), 98 deletions(-) diff --git a/tests/default.nf.test.snap b/tests/default.nf.test.snap index 3450e60c..80d5886b 100644 --- a/tests/default.nf.test.snap +++ b/tests/default.nf.test.snap @@ -699,14 +699,47 @@ "multiqc/multiqc_data/multiqc_zero_values_filter.txt", "multiqc/multiqc_plots", "multiqc/multiqc_plots/pdf", + "multiqc/multiqc_plots/pdf/eatlas_all_experiments_metadata.pdf", + "multiqc/multiqc_plots/pdf/eatlas_selected_experiments_metadata.pdf", + "multiqc/multiqc_plots/pdf/gene_statistics.pdf", "multiqc/multiqc_plots/pdf/genes_section_1.pdf", + "multiqc/multiqc_plots/pdf/id_mapping_stats-cnt.pdf", + "multiqc/multiqc_plots/pdf/id_mapping_stats-pct.pdf", "multiqc/multiqc_plots/pdf/normalised_expr_distrib_section_1.pdf", + "multiqc/multiqc_plots/pdf/null_values_filter.pdf", + "multiqc/multiqc_plots/pdf/ratio_nulls.pdf", + "multiqc/multiqc_plots/pdf/ratio_zeros.pdf", + "multiqc/multiqc_plots/pdf/skewness.pdf", + "multiqc/multiqc_plots/pdf/total_gene_id_occurrence_quantiles.pdf", + "multiqc/multiqc_plots/pdf/zero_values_filter.pdf", "multiqc/multiqc_plots/png", + "multiqc/multiqc_plots/png/eatlas_all_experiments_metadata.png", + "multiqc/multiqc_plots/png/eatlas_selected_experiments_metadata.png", + "multiqc/multiqc_plots/png/gene_statistics.png", "multiqc/multiqc_plots/png/genes_section_1.png", + "multiqc/multiqc_plots/png/id_mapping_stats-cnt.png", + "multiqc/multiqc_plots/png/id_mapping_stats-pct.png", "multiqc/multiqc_plots/png/normalised_expr_distrib_section_1.png", + "multiqc/multiqc_plots/png/null_values_filter.png", + "multiqc/multiqc_plots/png/ratio_nulls.png", + "multiqc/multiqc_plots/png/ratio_zeros.png", + "multiqc/multiqc_plots/png/skewness.png", + "multiqc/multiqc_plots/png/total_gene_id_occurrence_quantiles.png", + "multiqc/multiqc_plots/png/zero_values_filter.png", "multiqc/multiqc_plots/svg", + "multiqc/multiqc_plots/svg/eatlas_all_experiments_metadata.svg", + "multiqc/multiqc_plots/svg/eatlas_selected_experiments_metadata.svg", + "multiqc/multiqc_plots/svg/gene_statistics.svg", "multiqc/multiqc_plots/svg/genes_section_1.svg", + "multiqc/multiqc_plots/svg/id_mapping_stats-cnt.svg", + "multiqc/multiqc_plots/svg/id_mapping_stats-pct.svg", "multiqc/multiqc_plots/svg/normalised_expr_distrib_section_1.svg", + "multiqc/multiqc_plots/svg/null_values_filter.svg", + "multiqc/multiqc_plots/svg/ratio_nulls.svg", + "multiqc/multiqc_plots/svg/ratio_zeros.svg", + "multiqc/multiqc_plots/svg/skewness.svg", + "multiqc/multiqc_plots/svg/total_gene_id_occurrence_quantiles.svg", + "multiqc/multiqc_plots/svg/zero_values_filter.svg", "multiqc/multiqc_report.html", "normalised", "normalised/quantile_normalised", @@ -737,50 +770,50 @@ "warnings" ], [ - "all_genes_summary.csv:md5,8d09effa90815a295fe47fcb276f73eb", + "all_genes_summary.csv:md5,4a10e34b03b9beaf60492b401796f0b5", "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", "section_1.most_stable_genes_summary.csv:md5,3c88cab0d830f031acc3d5719dd2b9bd", "section_1.most_stable_genes_transposed_counts.csv:md5,70ec8441edfc5823446ce3e6665dceda", - "section_10.most_stable_genes_summary.csv:md5,d09a8c52640ef4548fb6a7acef3c5c0f", + "section_10.most_stable_genes_summary.csv:md5,fd5ad5a7c62c88bc327262608e3004c9", "section_10.most_stable_genes_transposed_counts.csv:md5,5fdc629e390cc4475a86d147b0edcf6a", - "section_11.most_stable_genes_summary.csv:md5,e33ec7e62082291a51b5385b1751accb", + "section_11.most_stable_genes_summary.csv:md5,ec00bdbeb5a9a4a74a66944c0bed6bc7", "section_11.most_stable_genes_transposed_counts.csv:md5,516be6d5af3ec4779eed1c380b78cf1b", - "section_12.most_stable_genes_summary.csv:md5,5980cc54da1daa0de5927bf935e46b88", + "section_12.most_stable_genes_summary.csv:md5,b72bf50427fa6ab3254cda75e9eb9b8d", "section_12.most_stable_genes_transposed_counts.csv:md5,00da764d69da470ddff776af06ecfebb", - "section_13.most_stable_genes_summary.csv:md5,5cb25797abf899d36b29c3074bbd7807", + "section_13.most_stable_genes_summary.csv:md5,9d962d59369a339e6653f742c6a22ab5", "section_13.most_stable_genes_transposed_counts.csv:md5,ec7803b3ad2840f04eec1cf61491940c", - "section_14.most_stable_genes_summary.csv:md5,b3dc34744ad2c05920f5cd22d74dad2a", + "section_14.most_stable_genes_summary.csv:md5,2c5397aa3058e41caaad096d7b2aa81b", "section_14.most_stable_genes_transposed_counts.csv:md5,b61dcee6f349a0e2c51374b5248f68ed", - "section_15.most_stable_genes_summary.csv:md5,15eb7a1e69c9d71bba7835dc7b40ee5d", + "section_15.most_stable_genes_summary.csv:md5,e2d7d340d9fa5208108747d170110581", "section_15.most_stable_genes_transposed_counts.csv:md5,9402e35fb495d4bab3adc53afde03c7a", - "section_16.most_stable_genes_summary.csv:md5,db730a65af6650a4c46427d06da182e9", + "section_16.most_stable_genes_summary.csv:md5,6315dc085614f634e6580b5f6d33ddcb", "section_16.most_stable_genes_transposed_counts.csv:md5,830cbb42639e72a1fc4f790f0310ff5e", - "section_17.most_stable_genes_summary.csv:md5,2f823c86ca06f8ba1e760033a8fd32a3", + "section_17.most_stable_genes_summary.csv:md5,b19705f641823e4a0bd7ba03690ca1e4", "section_17.most_stable_genes_transposed_counts.csv:md5,38b0d132084d5aa1f32b02a9448f66c3", - "section_18.most_stable_genes_summary.csv:md5,bd6ef178e6b23b8e96ea6b9051174492", + "section_18.most_stable_genes_summary.csv:md5,bcdd0c588a09ffde23ca4d7e26368e50", "section_18.most_stable_genes_transposed_counts.csv:md5,69d877a5fa9f5ca6886c939f736d48e2", "section_19.most_stable_genes_summary.csv:md5,d6ebc49aba6db637c09e973b7e2a1cd4", "section_19.most_stable_genes_transposed_counts.csv:md5,3e13b4a9e1564e1b23106f7b5b6588ae", - "section_2.most_stable_genes_summary.csv:md5,32a6e93631bcd37a1d3a478f30c70cac", + "section_2.most_stable_genes_summary.csv:md5,ceb0fccac4c2543cb3f71d51c6c3f5ce", "section_2.most_stable_genes_transposed_counts.csv:md5,a16c3566aec9d423fd1dc57aec7bc2ac", "section_20.most_stable_genes_summary.csv:md5,41b8421059ca95352617184211753e86", "section_20.most_stable_genes_transposed_counts.csv:md5,f3715dd47e78d261c38339135703cf12", - "section_3.most_stable_genes_summary.csv:md5,8bc1688d4c925411a9d4f74c67214d98", + "section_3.most_stable_genes_summary.csv:md5,0c6322e3934b6cefbaf3e1b14944526d", "section_3.most_stable_genes_transposed_counts.csv:md5,a888a033970145b2ff17502a4b5512d8", - "section_4.most_stable_genes_summary.csv:md5,df9875dd4526cf1920e2834c7abf10e3", + "section_4.most_stable_genes_summary.csv:md5,849b77527cc7e839813c46002dfde0dc", "section_4.most_stable_genes_transposed_counts.csv:md5,7ac1621aae02b610d4bb603dc33614d9", - "section_5.most_stable_genes_summary.csv:md5,dc702edb9ecfcdbc78a2e7806aa2f22a", + "section_5.most_stable_genes_summary.csv:md5,95acc97e93a67b46cac043bdf8ea380c", "section_5.most_stable_genes_transposed_counts.csv:md5,8af0614e4b1f04add84940f839a23169", - "section_6.most_stable_genes_summary.csv:md5,bb8cc44a39d1036adaaab93365556328", + "section_6.most_stable_genes_summary.csv:md5,7df41acd2cb7d57e9d31af1f32e40568", "section_6.most_stable_genes_transposed_counts.csv:md5,a349e706a72425dbfb7b6380d661e28e", - "section_7.most_stable_genes_summary.csv:md5,5ba49bd8da73cfa7090109f556b9c30b", + "section_7.most_stable_genes_summary.csv:md5,5818db36ffec7c3fb553dcd2d092ea77", "section_7.most_stable_genes_transposed_counts.csv:md5,4690507b6bb16d10a0060eb6e1ea74af", - "section_8.most_stable_genes_summary.csv:md5,646b9183b3a1ef498392c99b00407d15", + "section_8.most_stable_genes_summary.csv:md5,f46cd9223c0d0f3c163e9931d2254bfc", "section_8.most_stable_genes_transposed_counts.csv:md5,bdcfd047b16d31cad5cd0a002976c273", - "section_9.most_stable_genes_summary.csv:md5,dab8e7a3b9eb43c39724e3c1350ee853", + "section_9.most_stable_genes_summary.csv:md5,4aa118e94a59a705b357445cc06fd453", "section_9.most_stable_genes_transposed_counts.csv:md5,f80b3610184fa88b3daf24eaef5b73e7", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,8d09effa90815a295fe47fcb276f73eb", + "all_genes_summary.csv:md5,4a10e34b03b9beaf60492b401796f0b5", "whole_design.csv:md5,e6b2a08b65fa02b470829a652593e161", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", "Prunus_persica.Prunus_persica_NCBIv2.63.chr.gff3.gz:md5,b6503b872c8f9f6ee573f9910450a12b", @@ -793,27 +826,27 @@ "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", "multiqc_eatlas_all_experiments_metadata.txt:md5,e3c379628a87ad8b3f1e5cfe7310fcb0", "multiqc_eatlas_selected_experiments_metadata.txt:md5,e3c379628a87ad8b3f1e5cfe7310fcb0", - "multiqc_gene_statistics.txt:md5,ea70380e8d8f58db9952c86cfd2a9d0d", + "multiqc_gene_statistics.txt:md5,74fa7f55f44a3c3d12892a027bc97591", "multiqc_genes_section_1.txt:md5,faa541e84cb889164ce98103252040f8", - "multiqc_genes_section_1_1.txt:md5,8c7682df2ae553fd009db3bece89cd08", - "multiqc_genes_section_1_10.txt:md5,b2c20eb280dbab1d694346f3b1056336", - "multiqc_genes_section_1_11.txt:md5,4159170abea59d91f45fe11d0cc56096", - "multiqc_genes_section_1_12.txt:md5,3dc42a00b83bccd6946c6d433b872865", - "multiqc_genes_section_1_13.txt:md5,ed9407ec01579a233241cf5a621fc45f", - "multiqc_genes_section_1_14.txt:md5,415cd365822764d05a08ba8cd0e75e9a", - "multiqc_genes_section_1_15.txt:md5,dad1c0bfe6a031ae817e3a02b633dd85", - "multiqc_genes_section_1_16.txt:md5,0ababbdf9eb525082ca6eee42672c883", - "multiqc_genes_section_1_17.txt:md5,f750b0813c769019af9eb7b36b6e4019", + "multiqc_genes_section_1_1.txt:md5,bdc346aa9b7c7bfa9a84216b2d274bb8", + "multiqc_genes_section_1_10.txt:md5,1b1a0b801770e97563505ca8f8c6ed91", + "multiqc_genes_section_1_11.txt:md5,0b561d77eadfef91d6ca32e475ee45a2", + "multiqc_genes_section_1_12.txt:md5,a42a3951b82d67e3d577b7934295be90", + "multiqc_genes_section_1_13.txt:md5,7deb6f52ea7822f5684a7719bd05c19e", + "multiqc_genes_section_1_14.txt:md5,b1ba81c0a5ddb14f5773c241b2e08e89", + "multiqc_genes_section_1_15.txt:md5,cefc102083a05c0dd4766dcbb53cebdd", + "multiqc_genes_section_1_16.txt:md5,1c8f316f89879226e1bc2ceeb348ddb4", + "multiqc_genes_section_1_17.txt:md5,c6f2446935b328a32bf41bd53eba8057", "multiqc_genes_section_1_18.txt:md5,f41528e9d8a43b4184ab64d2f17bb52a", "multiqc_genes_section_1_19.txt:md5,2b8ae5d9a6f2562a29e153325c0813ae", - "multiqc_genes_section_1_2.txt:md5,a85eca4b1692de0fb0edfa64485937d7", - "multiqc_genes_section_1_3.txt:md5,038872f1bee0e1bc1f18faea0293e8c6", - "multiqc_genes_section_1_4.txt:md5,09b098fd3ab96bef75b7730489b237d5", - "multiqc_genes_section_1_5.txt:md5,b06a67bbf9db39484ce30eb39ace8a11", - "multiqc_genes_section_1_6.txt:md5,edfb91ae8a7bc00e65202da4ca78f7f6", - "multiqc_genes_section_1_7.txt:md5,6e27ca13b9737d18a6794c206cf68652", - "multiqc_genes_section_1_8.txt:md5,d158a544eec0cba563517ac6cb1c515b", - "multiqc_genes_section_1_9.txt:md5,6c0696f08d40e1670574046cefaac723", + "multiqc_genes_section_1_2.txt:md5,ddea5883409354472f1f308d63e5493b", + "multiqc_genes_section_1_3.txt:md5,d0aeb18220ff74ecb5b65560f770f244", + "multiqc_genes_section_1_4.txt:md5,cd9188beefd0d9beb0695b1b2b87bc33", + "multiqc_genes_section_1_5.txt:md5,232a5754bc40912c47cbf99dbcbba8c7", + "multiqc_genes_section_1_6.txt:md5,b43f8f19022a67137d4f1eeb463fb99f", + "multiqc_genes_section_1_7.txt:md5,9dff2a11049b72c069eb7ab5774a7f87", + "multiqc_genes_section_1_8.txt:md5,05c30e408fe4e69c9b79bd44784ab281", + "multiqc_genes_section_1_9.txt:md5,54b179f1deac4638c42b6dd5a0fc294a", "multiqc_id_mapping_stats.txt:md5,eebd614817761551497a4210022da830", "multiqc_normalised_expr_distrib_section_1.txt:md5,8f85d4ecae3f0b26cb57cdf3643db5f7", "multiqc_normalised_expr_distrib_section_1_1.txt:md5,e6e3d6b03c9de79e148ea7433cec94a8", @@ -853,7 +886,7 @@ "zero_values_filter_stats.csv:md5,a6fdf3c5250dc46a43f79a9ec5a1355d" ] ], - "timestamp": "2026-06-12T07:35:43.615285389", + "timestamp": "2026-06-12T08:37:05.205172155", "meta": { "nf-test": "0.9.5", "nextflow": "25.04.0" @@ -1194,14 +1227,41 @@ "multiqc/multiqc_data/multiqc_zero_values_filter.txt", "multiqc/multiqc_plots", "multiqc/multiqc_plots/pdf", + "multiqc/multiqc_plots/pdf/gene_statistics.pdf", "multiqc/multiqc_plots/pdf/genes_section_1.pdf", + "multiqc/multiqc_plots/pdf/id_mapping_stats-cnt.pdf", + "multiqc/multiqc_plots/pdf/id_mapping_stats-pct.pdf", "multiqc/multiqc_plots/pdf/normalised_expr_distrib_section_1.pdf", + "multiqc/multiqc_plots/pdf/null_values_filter.pdf", + "multiqc/multiqc_plots/pdf/ratio_nulls.pdf", + "multiqc/multiqc_plots/pdf/ratio_zeros.pdf", + "multiqc/multiqc_plots/pdf/skewness.pdf", + "multiqc/multiqc_plots/pdf/total_gene_id_occurrence_quantiles.pdf", + "multiqc/multiqc_plots/pdf/zero_values_filter.pdf", "multiqc/multiqc_plots/png", + "multiqc/multiqc_plots/png/gene_statistics.png", "multiqc/multiqc_plots/png/genes_section_1.png", + "multiqc/multiqc_plots/png/id_mapping_stats-cnt.png", + "multiqc/multiqc_plots/png/id_mapping_stats-pct.png", "multiqc/multiqc_plots/png/normalised_expr_distrib_section_1.png", + "multiqc/multiqc_plots/png/null_values_filter.png", + "multiqc/multiqc_plots/png/ratio_nulls.png", + "multiqc/multiqc_plots/png/ratio_zeros.png", + "multiqc/multiqc_plots/png/skewness.png", + "multiqc/multiqc_plots/png/total_gene_id_occurrence_quantiles.png", + "multiqc/multiqc_plots/png/zero_values_filter.png", "multiqc/multiqc_plots/svg", + "multiqc/multiqc_plots/svg/gene_statistics.svg", "multiqc/multiqc_plots/svg/genes_section_1.svg", + "multiqc/multiqc_plots/svg/id_mapping_stats-cnt.svg", + "multiqc/multiqc_plots/svg/id_mapping_stats-pct.svg", "multiqc/multiqc_plots/svg/normalised_expr_distrib_section_1.svg", + "multiqc/multiqc_plots/svg/null_values_filter.svg", + "multiqc/multiqc_plots/svg/ratio_nulls.svg", + "multiqc/multiqc_plots/svg/ratio_zeros.svg", + "multiqc/multiqc_plots/svg/skewness.svg", + "multiqc/multiqc_plots/svg/total_gene_id_occurrence_quantiles.svg", + "multiqc/multiqc_plots/svg/zero_values_filter.svg", "multiqc/multiqc_report.html", "normalised", "normalised/quantile_normalised", @@ -1228,13 +1288,13 @@ "warnings" ], [ - "all_genes_summary.csv:md5,9400b978a5605ca7650f16dbc121ccaa", + "all_genes_summary.csv:md5,b8a43bbb0acc64fa1e1d3aea80060758", "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", - "section_1.most_stable_genes_summary.csv:md5,039abc51f8a55169266acdcdfe9fd9d7", + "section_1.most_stable_genes_summary.csv:md5,d68ef63c8a3a5307a579ad9e8621f49b", "section_1.most_stable_genes_transposed_counts.csv:md5,74eb6fded57dec64fa571bf943385217", - "section_10.most_stable_genes_summary.csv:md5,9b38c3c963414d6e6b25b700f588a0d3", + "section_10.most_stable_genes_summary.csv:md5,e2988d32191a67d6c577fc1ccbfb8731", "section_10.most_stable_genes_transposed_counts.csv:md5,97f9b07eb89ed91f3d1208af35301225", - "section_11.most_stable_genes_summary.csv:md5,8d93da3bebdffdf9f6a2fecff4fd2256", + "section_11.most_stable_genes_summary.csv:md5,5939e553367ecd36c3dad36f5e14a68f", "section_11.most_stable_genes_transposed_counts.csv:md5,705e2b4becb685f21490948f648cee0a", "section_12.most_stable_genes_summary.csv:md5,6e49cbc5af4a45fcd62f9a9c9d1c82ad", "section_12.most_stable_genes_transposed_counts.csv:md5,a757cf115a30079e4dea9ebe44e587d5", @@ -1252,26 +1312,26 @@ "section_18.most_stable_genes_transposed_counts.csv:md5,2f633511784b3babc159c4ecfed76fa2", "section_19.most_stable_genes_summary.csv:md5,b32ed5d4a50671ac38a4a616dc81b2b9", "section_19.most_stable_genes_transposed_counts.csv:md5,b507a8bbe8e2d3852e7952e932917751", - "section_2.most_stable_genes_summary.csv:md5,3bf6df70a260e375dd0e66298439894e", + "section_2.most_stable_genes_summary.csv:md5,91ac20d5b1997cb23b5978127e20bb3f", "section_2.most_stable_genes_transposed_counts.csv:md5,deea26701b85823a9b9eaa37d89eb6f3", "section_20.most_stable_genes_summary.csv:md5,0d82b5d34b415947bdda4d016fa52f71", "section_20.most_stable_genes_transposed_counts.csv:md5,3a1ae07c51acb0a1672e210a8a137121", - "section_3.most_stable_genes_summary.csv:md5,581b7ac72499bcfcdf9e36b86d98edb4", + "section_3.most_stable_genes_summary.csv:md5,0f844b961700074ea86ba67e6d4ccb93", "section_3.most_stable_genes_transposed_counts.csv:md5,3b0725d8a3685ed73cafdc2c1ea2d79a", - "section_4.most_stable_genes_summary.csv:md5,46a7370a62bd2cacde3528cbf3879ffd", + "section_4.most_stable_genes_summary.csv:md5,9c1b844ae38385393cad85168cc19fea", "section_4.most_stable_genes_transposed_counts.csv:md5,b72a7d37e0b3b6e0ce0826c0393c1bf2", - "section_5.most_stable_genes_summary.csv:md5,f86bf58154e321b3667f26ed9a8af18a", + "section_5.most_stable_genes_summary.csv:md5,30d307c1fa7f23fd45b00bcb0c70b7ba", "section_5.most_stable_genes_transposed_counts.csv:md5,f1c01ec3e740ab5bdbbdd76d3c28122d", - "section_6.most_stable_genes_summary.csv:md5,61e9875cbeeba875c992e47a5b313b33", + "section_6.most_stable_genes_summary.csv:md5,1b819d4fb890c3fa57874679240aa870", "section_6.most_stable_genes_transposed_counts.csv:md5,b53c38a225dbb25f51b5412aa8b01189", - "section_7.most_stable_genes_summary.csv:md5,2b03bf501ce0d51cd8e235c52e980ca4", + "section_7.most_stable_genes_summary.csv:md5,9025d18961e96a63a3dc4576ad12fc4f", "section_7.most_stable_genes_transposed_counts.csv:md5,28ee3735897556cc7e11ba0049f31e2b", - "section_8.most_stable_genes_summary.csv:md5,6221023504dcfd455f8117ec2c3d8070", + "section_8.most_stable_genes_summary.csv:md5,c68ea34418c94f8449c739dec70a02bc", "section_8.most_stable_genes_transposed_counts.csv:md5,c1a29fb22b08a8d00eb6bbcc6d7739f0", - "section_9.most_stable_genes_summary.csv:md5,f19b5f793f45366aef7ab33a99486145", + "section_9.most_stable_genes_summary.csv:md5,c4222cb1070ee4b7005aea280968e7a3", "section_9.most_stable_genes_transposed_counts.csv:md5,c3be7a4a0214169f637ac1256f5681ac", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,9400b978a5605ca7650f16dbc121ccaa", + "all_genes_summary.csv:md5,b8a43bbb0acc64fa1e1d3aea80060758", "whole_design.csv:md5,d3aa542c4ad07d0051a84482fe6cd81c", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", "Arabidopsis_thaliana.TAIR10.63.gff3.gz:md5,ee02d70eb655f0440af19a3f3f40b15c", @@ -1282,10 +1342,10 @@ "mapped_gene_ids.csv:md5,42491ef436cce231258c0358e1af5745", "whole_design.csv:md5,d3aa542c4ad07d0051a84482fe6cd81c", "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", - "multiqc_gene_statistics.txt:md5,7074b27046ac211f49e518606c62c807", - "multiqc_genes_section_1.txt:md5,3afaa17fe0b82a54f90385937178f2ab", - "multiqc_genes_section_1_1.txt:md5,16e2a2acbee99a45a5d7853490d3e691", - "multiqc_genes_section_1_10.txt:md5,b6d14f401f9be31e5b3cdcafbd52b1d7", + "multiqc_gene_statistics.txt:md5,93fa975eabf552de58dcbca720414b44", + "multiqc_genes_section_1.txt:md5,eaead751e5e4397ecce23ce508dda622", + "multiqc_genes_section_1_1.txt:md5,ef4991fc82fdec0d517f8933a6d01fe2", + "multiqc_genes_section_1_10.txt:md5,9be4d2b7dd6a26df776557dc96b7a499", "multiqc_genes_section_1_11.txt:md5,f0b8df84a99b2d5ef557ee8896217095", "multiqc_genes_section_1_12.txt:md5,89e8c3dcd3d970735de56ed6dd618caf", "multiqc_genes_section_1_13.txt:md5,b7b1b4265c236ba1c8ed7358e34a6dd6", @@ -1295,14 +1355,14 @@ "multiqc_genes_section_1_17.txt:md5,920067a6137cbded388b393f4a84d0bf", "multiqc_genes_section_1_18.txt:md5,e46e3add55d144e8dc04087498b73b65", "multiqc_genes_section_1_19.txt:md5,72e10039958b0d2667136688b35411cf", - "multiqc_genes_section_1_2.txt:md5,75e88536b87f63c3ef40be3791aa5144", - "multiqc_genes_section_1_3.txt:md5,4e9678ce45ab2700a96492e490fa6bc3", - "multiqc_genes_section_1_4.txt:md5,02701998e97f8f71c98cef3156bb5197", - "multiqc_genes_section_1_5.txt:md5,98f825f8470819438c22817248119f75", - "multiqc_genes_section_1_6.txt:md5,a62c5838ead06707acbe221585934d15", - "multiqc_genes_section_1_7.txt:md5,7dd1e3501424629f9d12f5ed06394ad1", - "multiqc_genes_section_1_8.txt:md5,3c774951030df640b53e9bdb2e4e1ebc", - "multiqc_genes_section_1_9.txt:md5,30c2d07944437b1c48050acaf79b1ca0", + "multiqc_genes_section_1_2.txt:md5,1bc57800bb17a99cd1da4dc25bfe82df", + "multiqc_genes_section_1_3.txt:md5,6cb50d54832dbfc7a9d1f5db722fa785", + "multiqc_genes_section_1_4.txt:md5,39e8045b4e6f3b1bccaaab17db0c62ea", + "multiqc_genes_section_1_5.txt:md5,4c2a071bf137f4466d1fee1645d36a9a", + "multiqc_genes_section_1_6.txt:md5,78bc450bb36ba94c6d57ee1398c923ef", + "multiqc_genes_section_1_7.txt:md5,03b96f557a399f3a9726a6e78ea0d8c5", + "multiqc_genes_section_1_8.txt:md5,2fa19f0658661046dd50386c6192d21f", + "multiqc_genes_section_1_9.txt:md5,90563517037bdba3223b3ad9fffc3def", "multiqc_id_mapping_stats.txt:md5,49023d9842e01da40e2c50e9659802d5", "multiqc_normalised_expr_distrib_section_1.txt:md5,267d211497397da567db93c52cc1b72a", "multiqc_normalised_expr_distrib_section_1_1.txt:md5,b2f09bff1ecf704052e19187632aae0b", @@ -1339,7 +1399,7 @@ "zero_values_filter_stats.csv:md5,766d888e41179e8a785f634b3b606bc9" ] ], - "timestamp": "2026-06-12T08:02:06.406633821", + "timestamp": "2026-06-12T08:56:43.366951201", "meta": { "nf-test": "0.9.5", "nextflow": "25.04.0" @@ -1499,14 +1559,47 @@ "multiqc/multiqc_data/multiqc_zero_values_filter.txt", "multiqc/multiqc_plots", "multiqc/multiqc_plots/pdf", + "multiqc/multiqc_plots/pdf/eatlas_all_experiments_metadata.pdf", + "multiqc/multiqc_plots/pdf/eatlas_selected_experiments_metadata.pdf", + "multiqc/multiqc_plots/pdf/gene_statistics.pdf", "multiqc/multiqc_plots/pdf/genes_section_1.pdf", + "multiqc/multiqc_plots/pdf/id_mapping_stats-cnt.pdf", + "multiqc/multiqc_plots/pdf/id_mapping_stats-pct.pdf", "multiqc/multiqc_plots/pdf/normalised_expr_distrib_section_1.pdf", + "multiqc/multiqc_plots/pdf/null_values_filter.pdf", + "multiqc/multiqc_plots/pdf/ratio_nulls.pdf", + "multiqc/multiqc_plots/pdf/ratio_zeros.pdf", + "multiqc/multiqc_plots/pdf/skewness.pdf", + "multiqc/multiqc_plots/pdf/total_gene_id_occurrence_quantiles.pdf", + "multiqc/multiqc_plots/pdf/zero_values_filter.pdf", "multiqc/multiqc_plots/png", + "multiqc/multiqc_plots/png/eatlas_all_experiments_metadata.png", + "multiqc/multiqc_plots/png/eatlas_selected_experiments_metadata.png", + "multiqc/multiqc_plots/png/gene_statistics.png", "multiqc/multiqc_plots/png/genes_section_1.png", + "multiqc/multiqc_plots/png/id_mapping_stats-cnt.png", + "multiqc/multiqc_plots/png/id_mapping_stats-pct.png", "multiqc/multiqc_plots/png/normalised_expr_distrib_section_1.png", + "multiqc/multiqc_plots/png/null_values_filter.png", + "multiqc/multiqc_plots/png/ratio_nulls.png", + "multiqc/multiqc_plots/png/ratio_zeros.png", + "multiqc/multiqc_plots/png/skewness.png", + "multiqc/multiqc_plots/png/total_gene_id_occurrence_quantiles.png", + "multiqc/multiqc_plots/png/zero_values_filter.png", "multiqc/multiqc_plots/svg", + "multiqc/multiqc_plots/svg/eatlas_all_experiments_metadata.svg", + "multiqc/multiqc_plots/svg/eatlas_selected_experiments_metadata.svg", + "multiqc/multiqc_plots/svg/gene_statistics.svg", "multiqc/multiqc_plots/svg/genes_section_1.svg", + "multiqc/multiqc_plots/svg/id_mapping_stats-cnt.svg", + "multiqc/multiqc_plots/svg/id_mapping_stats-pct.svg", "multiqc/multiqc_plots/svg/normalised_expr_distrib_section_1.svg", + "multiqc/multiqc_plots/svg/null_values_filter.svg", + "multiqc/multiqc_plots/svg/ratio_nulls.svg", + "multiqc/multiqc_plots/svg/ratio_zeros.svg", + "multiqc/multiqc_plots/svg/skewness.svg", + "multiqc/multiqc_plots/svg/total_gene_id_occurrence_quantiles.svg", + "multiqc/multiqc_plots/svg/zero_values_filter.svg", "multiqc/multiqc_report.html", "normalised", "normalised/quantile_normalised", @@ -1537,50 +1630,50 @@ "warnings" ], [ - "all_genes_summary.csv:md5,a3c4d2d725a0f65eefa24b218d24ec95", + "all_genes_summary.csv:md5,b7d2c8569d49485ddeb04e7ab9e95677", "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", "section_1.most_stable_genes_summary.csv:md5,e869345103f8ff8d03b83d9f97ed63e2", "section_1.most_stable_genes_transposed_counts.csv:md5,9fe152dcd902a8a50f5390f7f6e41c05", - "section_10.most_stable_genes_summary.csv:md5,80f908bae5a03a1b73489bf8af3e9b56", + "section_10.most_stable_genes_summary.csv:md5,8af82dbef3c0bff7db7527f14a54d673", "section_10.most_stable_genes_transposed_counts.csv:md5,ce6cdc012dbf57afba6f2d9d4f50dd9f", - "section_11.most_stable_genes_summary.csv:md5,983fdb17fc48d16f5434be4b40cb474a", + "section_11.most_stable_genes_summary.csv:md5,31dd39b7c8bf2be60b6f7c09758233e0", "section_11.most_stable_genes_transposed_counts.csv:md5,870bdd2774217f46f402d0af2ddf3e59", - "section_12.most_stable_genes_summary.csv:md5,27d33cf63f6b25d8a8f01910d8c14e1e", + "section_12.most_stable_genes_summary.csv:md5,097e366c72374115dc4ecd4cde6a786a", "section_12.most_stable_genes_transposed_counts.csv:md5,269fc876a6177414a24874d44691e9c5", - "section_13.most_stable_genes_summary.csv:md5,580b28cb5c9c157072183fff567a8014", + "section_13.most_stable_genes_summary.csv:md5,13e900e3f195c7b80d6af390694873b5", "section_13.most_stable_genes_transposed_counts.csv:md5,0c25255c7f08429c36fe52fd713067fd", - "section_14.most_stable_genes_summary.csv:md5,2c0bfea455c5ffe297b823c6126d57d0", + "section_14.most_stable_genes_summary.csv:md5,df03a201fb4f26a28e1bc9060c8f29c7", "section_14.most_stable_genes_transposed_counts.csv:md5,270f415b53f98e9a67bcecc29c57df31", - "section_15.most_stable_genes_summary.csv:md5,a2d7fddf531afa387101f84b954bfbee", + "section_15.most_stable_genes_summary.csv:md5,07479b4ec691c613f47175415dc28036", "section_15.most_stable_genes_transposed_counts.csv:md5,f3618ba2a26a242ceac2507c3a09efab", - "section_16.most_stable_genes_summary.csv:md5,d8305b0d7a51ca5eebe2839aeb5123f6", + "section_16.most_stable_genes_summary.csv:md5,bfed77eb6931aec81d1de57ed465e78a", "section_16.most_stable_genes_transposed_counts.csv:md5,3d261950768c0dd37ab3975bf465693f", - "section_17.most_stable_genes_summary.csv:md5,4a514c2f58e6eaa453b97bb068154987", + "section_17.most_stable_genes_summary.csv:md5,5f8184829a3a940663416d894251687c", "section_17.most_stable_genes_transposed_counts.csv:md5,af06eab6bc04fc315544fcd0176da4cd", "section_18.most_stable_genes_summary.csv:md5,5f21148626ed40d0d64b393babcf160d", "section_18.most_stable_genes_transposed_counts.csv:md5,29fc2248ad428cb3ac8898b0a5471eec", "section_19.most_stable_genes_summary.csv:md5,5acc2a1b1980004f88c0584a8cf0784e", "section_19.most_stable_genes_transposed_counts.csv:md5,9586c452f93c486ed667fb343af3b13c", - "section_2.most_stable_genes_summary.csv:md5,47a6a375e8e6ad73a358a245ac4632b6", + "section_2.most_stable_genes_summary.csv:md5,936e035f261165e091d7a243c0573057", "section_2.most_stable_genes_transposed_counts.csv:md5,ad1cba4a6c50de2c6f1207b619488443", "section_20.most_stable_genes_summary.csv:md5,9d9c5cd95d1d1a350a8d1f2ce363f882", "section_20.most_stable_genes_transposed_counts.csv:md5,e9f4187bdc7079c3130bdff1e4ebf575", - "section_3.most_stable_genes_summary.csv:md5,1ce5e68a42217da6c3421c3207893732", + "section_3.most_stable_genes_summary.csv:md5,4ba20e00ff5c4e9e2c5018c985271212", "section_3.most_stable_genes_transposed_counts.csv:md5,e002829d978f760203d549aa6f763fb3", - "section_4.most_stable_genes_summary.csv:md5,05241694011966d200b3ae6462d674ae", + "section_4.most_stable_genes_summary.csv:md5,a8542c75ddefe3d8177c23b5aa112053", "section_4.most_stable_genes_transposed_counts.csv:md5,ef0bf15a5710225ce0bbe29b1c4c6f4d", "section_5.most_stable_genes_summary.csv:md5,518ec5a0fad9d5e2af38b9c551ec2ecf", "section_5.most_stable_genes_transposed_counts.csv:md5,3332f41449d3043372884c0ade11119e", - "section_6.most_stable_genes_summary.csv:md5,a203a9eda5ea9145e6efa3aba77fcb6e", + "section_6.most_stable_genes_summary.csv:md5,9ef80cf9aa801217bda9895d5d365364", "section_6.most_stable_genes_transposed_counts.csv:md5,70dc01026ecf80cf1f1a116e83cb17d8", - "section_7.most_stable_genes_summary.csv:md5,47294ce86d074cca2b92c512482d7637", + "section_7.most_stable_genes_summary.csv:md5,69f0f90b25dcdea8c11f8f69487c4985", "section_7.most_stable_genes_transposed_counts.csv:md5,be90b6baa49e15e10a789fdd766f19fa", - "section_8.most_stable_genes_summary.csv:md5,91f7367868ebefeff73f992e336d5a69", + "section_8.most_stable_genes_summary.csv:md5,5d087c57bd0afc31698cd9423ce2c960", "section_8.most_stable_genes_transposed_counts.csv:md5,6934c36b8617f6b7bf34fa634be6056e", - "section_9.most_stable_genes_summary.csv:md5,ca47c56eb5d99ae2aaeb27fa5adab73f", + "section_9.most_stable_genes_summary.csv:md5,90138822fa9185762c8328bfffbf1621", "section_9.most_stable_genes_transposed_counts.csv:md5,b9de6d0841bfc0456f1b08c3105296c6", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,a3c4d2d725a0f65eefa24b218d24ec95", + "all_genes_summary.csv:md5,b7d2c8569d49485ddeb04e7ab9e95677", "whole_design.csv:md5,fbd18d011d7d855452e5a30a303afcbf", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", "Beta_vulgaris.RefBeet-1.2.2.63.gff3.gz:md5,e711481dc9292c4b7c6422b9b4dc7d9d", @@ -1593,27 +1686,27 @@ "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", "multiqc_eatlas_all_experiments_metadata.txt:md5,6ea661253a55d41687e32fea72961063", "multiqc_eatlas_selected_experiments_metadata.txt:md5,8b7643e0ef8eaaa3fa72f7103fd7ccee", - "multiqc_gene_statistics.txt:md5,b229526b1f2db42fb31e04d0d8a516ae", + "multiqc_gene_statistics.txt:md5,e60cac0bb07155911330fbe4ceb8e9ab", "multiqc_genes_section_1.txt:md5,24aaef9ceb174f467b49c431fbeb5bbd", - "multiqc_genes_section_1_1.txt:md5,7a4b0b3405d531fc778219799f05c1ca", - "multiqc_genes_section_1_10.txt:md5,cb48d39caade7de823c85113dcc416fb", - "multiqc_genes_section_1_11.txt:md5,2b9e77c281e242799b8def589dc1d667", - "multiqc_genes_section_1_12.txt:md5,208674cb51f6474d1fe1f9020064d707", - "multiqc_genes_section_1_13.txt:md5,751b980b6e23f6d9adcdf7079a217c81", - "multiqc_genes_section_1_14.txt:md5,76f37bc218f9e00802c4244e9a19fc38", - "multiqc_genes_section_1_15.txt:md5,6fcac2eca7f2c8089c08d520b9ac5ac0", - "multiqc_genes_section_1_16.txt:md5,b764882294aa1a53ead05cbf2d00cead", + "multiqc_genes_section_1_1.txt:md5,60ee757f56c09d42abcbb1ac9ec7caaa", + "multiqc_genes_section_1_10.txt:md5,c04c58779b423b218ed0ceb35e31c57c", + "multiqc_genes_section_1_11.txt:md5,0367c987f90f382060bd8159e4952a12", + "multiqc_genes_section_1_12.txt:md5,a9db08d82554a61132857c65defa03e8", + "multiqc_genes_section_1_13.txt:md5,95da0f10871297ce392c4c1ee8cbae64", + "multiqc_genes_section_1_14.txt:md5,44e1e2c934ff6fc7c311734c71b8dee6", + "multiqc_genes_section_1_15.txt:md5,dfc6f416a0fd557f413a64b9e262bd4f", + "multiqc_genes_section_1_16.txt:md5,d772398f9485f25c7dfc31e831043ddf", "multiqc_genes_section_1_17.txt:md5,9f9f97f85d6605978b286942ac69ba2c", "multiqc_genes_section_1_18.txt:md5,ab6c6e6e1a658ba92baa6dd2b68f56bf", "multiqc_genes_section_1_19.txt:md5,5d4910983359e122e07fdbe2aeda10f7", - "multiqc_genes_section_1_2.txt:md5,6b9f67e08bca15ef41b65b804e366245", - "multiqc_genes_section_1_3.txt:md5,cc473d3664ec654d05e96e28a4d7f2f3", + "multiqc_genes_section_1_2.txt:md5,c6f455c239541fc30c1add3151ae1a88", + "multiqc_genes_section_1_3.txt:md5,d643116d02db7c65aa4dcf14845d2c4f", "multiqc_genes_section_1_4.txt:md5,e53ccb0b3172923ef3c1a28a85f1cce7", - "multiqc_genes_section_1_5.txt:md5,705ed6f4cdd8045fa4597b5e8fa507f7", - "multiqc_genes_section_1_6.txt:md5,ca66c44744ae17e8f3d10a21921e7b52", - "multiqc_genes_section_1_7.txt:md5,f8c45e65bf5fa29d071a1d16e47e0705", - "multiqc_genes_section_1_8.txt:md5,00cf9e9ad3f48e82dad4b2b09c9b47d5", - "multiqc_genes_section_1_9.txt:md5,6bd9b741cd44148577e82fb80f0284b0", + "multiqc_genes_section_1_5.txt:md5,60dc0bd77f262ec06e15106dbc23db12", + "multiqc_genes_section_1_6.txt:md5,71d78aba8ea6797a68192fa75b95407e", + "multiqc_genes_section_1_7.txt:md5,9d14bdf4e7fbcdd68372bd1b78f97f89", + "multiqc_genes_section_1_8.txt:md5,2c0b8688630d4ece668938637c339de5", + "multiqc_genes_section_1_9.txt:md5,5cffe8bf4f92c2f2f9e40edbe0fbc1ce", "multiqc_id_mapping_stats.txt:md5,d7c6d500c8ea91c32da4980b5557d15e", "multiqc_normalised_expr_distrib_section_1.txt:md5,594872a9ec4b625be50226b0bb0aeec1", "multiqc_normalised_expr_distrib_section_1_1.txt:md5,2ac9916aac7ccb248d27ffd49b24a523", @@ -1653,7 +1746,7 @@ "zero_values_filter_stats.csv:md5,17fc6d525450d34445bf9cc25defe18a" ] ], - "timestamp": "2026-06-12T07:51:14.563068608", + "timestamp": "2026-06-12T08:49:16.528444321", "meta": { "nf-test": "0.9.5", "nextflow": "25.04.0" From 8d1f8ed22f6071fc579defc559de344b09bb5e07 Mon Sep 17 00:00:00 2001 From: Olivier Date: Fri, 12 Jun 2026 10:20:32 +0200 Subject: [PATCH 23/31] upgrade volume necessary for nf-test CI runners --- .github/workflows/nf-test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/nf-test.yml b/.github/workflows/nf-test.yml index 1668cf73..77fb9c05 100644 --- a/.github/workflows/nf-test.yml +++ b/.github/workflows/nf-test.yml @@ -30,6 +30,7 @@ jobs: runs-on: # use self-hosted runners - runs-on=${{ github.run_id }}-nf-test-changes - runner=4cpu-linux-x64 + - volume=40gb outputs: shard: ${{ steps.set-shards.outputs.shard }} total_shards: ${{ steps.set-shards.outputs.total_shards }} @@ -64,6 +65,7 @@ jobs: runs-on: # use self-hosted runners - runs-on=${{ github.run_id }}-nf-test - runner=4cpu-linux-x64 + - volume=40gb strategy: fail-fast: false matrix: From 7f8abce5cdadfce4822a61639244d8ba4bfc46d7 Mon Sep 17 00:00:00 2001 From: Olivier Coen Date: Tue, 16 Jun 2026 16:58:06 +0200 Subject: [PATCH 24/31] Update detect_rare_genes.py --- bin/detect_rare_genes.py | 1 + 1 file changed, 1 insertion(+) diff --git a/bin/detect_rare_genes.py b/bin/detect_rare_genes.py index 02cc2831..d279857d 100755 --- a/bin/detect_rare_genes.py +++ b/bin/detect_rare_genes.py @@ -121,6 +121,7 @@ def main(): .select(config.GENE_ID_COLNAME) .unique() .to_series() + .sort() .to_list() ) From 40d337c40a32b044d437dd0dd77f944983bca8f9 Mon Sep 17 00:00:00 2001 From: Olivier Coen Date: Tue, 16 Jun 2026 16:58:27 +0200 Subject: [PATCH 25/31] decrease number of decimals wen exporting to csv from polars --- bin/config.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/config.py b/bin/config.py index fe217991..93da629b 100644 --- a/bin/config.py +++ b/bin/config.py @@ -41,4 +41,4 @@ GENORM_M_MEASURE_COLNAME = "genorm_m_measure" RATIOS_STD_COLNAME = "ratios_stds" -CSV_FLOAT_PRECISION = 6 +CSV_FLOAT_PRECISION = 4 From 9690c687ff73f526faf61cbb8a0cb6b2ce9d01a4 Mon Sep 17 00:00:00 2001 From: Olivier Coen Date: Tue, 16 Jun 2026 16:58:47 +0200 Subject: [PATCH 26/31] upgrade nf-test version to 0.9.5 --- .github/workflows/nf-test.yml | 2 +- nf-test.config | 2 +- tests/act/nf-test.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/nf-test.yml b/.github/workflows/nf-test.yml index 77fb9c05..e799b3af 100644 --- a/.github/workflows/nf-test.yml +++ b/.github/workflows/nf-test.yml @@ -18,7 +18,7 @@ concurrency: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - NFT_VER: "0.9.3" + NFT_VER: "0.9.5" NFT_WORKDIR: "~" NXF_ANSI_LOG: false NXF_SINGULARITY_CACHEDIR: ${{ github.workspace }}/.singularity diff --git a/nf-test.config b/nf-test.config index a0a009fd..e4b26ec4 100644 --- a/nf-test.config +++ b/nf-test.config @@ -21,7 +21,7 @@ config { // load the necessary plugins requires ( - "nf-test": "0.9.3" + "nf-test": "0.9.5" ) plugins { load "nft-utils@0.0.3" diff --git a/tests/act/nf-test.yml b/tests/act/nf-test.yml index 52bde4aa..a4b65718 100644 --- a/tests/act/nf-test.yml +++ b/tests/act/nf-test.yml @@ -3,7 +3,7 @@ on: push: env: - NFT_VER: "0.9.3" + NFT_VER: "0.9.5" NFT_WORKDIR: "~" NXF_ANSI_LOG: false NXF_SINGULARITY_CACHEDIR: ${{ github.workspace }}/.singularity From 4738b356f279668cc50a5a3d54d8c02d426c0185 Mon Sep 17 00:00:00 2001 From: Olivier Coen Date: Thu, 18 Jun 2026 17:22:05 +0200 Subject: [PATCH 27/31] simplify and make more consistent all genorm scripts --- bin/common.py | 4 + bin/compute_m_measures.py | 176 +---- bin/get_ratio_standard_variation.py | 32 +- bin/make_cross_join.py | 12 +- bin/make_pairwise_gene_expression_ratio.py | 24 +- bin/make_parquet_chunks.py | 14 +- .../genorm/compute_m_measure/environment.yml | 2 +- .../local/genorm/compute_m_measure/main.nf | 11 +- modules/local/genorm/cross_join/main.nf | 4 +- modules/local/genorm/expression_ratio/main.nf | 4 +- modules/local/genorm/make_chunks/main.nf | 4 +- .../genorm/ratio_standard_variation/main.nf | 4 +- subworkflows/local/genorm/main.nf | 4 +- tests/default.nf.test.snap | 692 ++++++++---------- tests/prepare_pr/.config | 15 + tests/prepare_pr/check_consistency.sh | 32 + tests/prepare_pr/run.sh | 8 + 17 files changed, 447 insertions(+), 595 deletions(-) create mode 100644 tests/prepare_pr/.config create mode 100755 tests/prepare_pr/check_consistency.sh create mode 100755 tests/prepare_pr/run.sh diff --git a/bin/common.py b/bin/common.py index b9301a49..1df0b20e 100644 --- a/bin/common.py +++ b/bin/common.py @@ -46,6 +46,10 @@ def parse_table(file: Path): raise ValueError(f"Unsupported file format: {file.suffix}") +def get_nb_rows(lf: pl.LazyFrame): + return lf.select(pl.len()).collect().item() + + def parse_count_table(file: Path): df = parse_table(file) first_col = df.columns[0] diff --git a/bin/compute_m_measures.py b/bin/compute_m_measures.py index bc1d783e..a37d4d34 100755 --- a/bin/compute_m_measures.py +++ b/bin/compute_m_measures.py @@ -14,9 +14,6 @@ M_MEASURE_OUTFILE_NAME = "m_measures.csv" -DEFAULT_CHUNKSIZE = 300 -NB_GENE_ID_CHUNK_FOLDERS = 100 - ##################################################### ##################################################### @@ -27,13 +24,6 @@ def parse_args(): parser = argparse.ArgumentParser(description="Compute M-measure for each gene") - parser.add_argument( - "--counts", - type=Path, - dest="count_file", - required=True, - help="File containing std of lof expression ratios", - ) parser.add_argument( "--std-files", type=str, @@ -41,13 +31,6 @@ def parse_args(): required=True, help="File containing std of lof expression ratios", ) - parser.add_argument( - "--task-attempts", - dest="task_attempts", - type=int, - default=1, - help="Number of task attempts", - ) return parser.parse_args() @@ -55,8 +38,22 @@ def get_nb_rows(lf: pl.LazyFrame): return lf.select(pl.len()).collect().item() -def concat_all_std_data(files: list[Path], low_memory: bool) -> pl.LazyFrame: - lfs = [pl.scan_parquet(file, low_memory=low_memory) for file in files] +def concat_all_std_data(files: list[Path]) -> pl.LazyFrame: + """ + Concatenate all std data from the given files into a single LazyFrame. + Explode the ratios_stds column to get one row per gene_id and ratio_std, + then group by gene_id again to aggregate all ratio values per gene_id. + Each file in files is like: + ┌────────────────┬─────────────────────────────────┐ + │ gene_id ┆ ratios_stds │ + │ --- ┆ --- │ + │ str ┆ list[f32] │ + ╞════════════════╪═════════════════════════════════╡ + │ PRUPE_1G033600 ┆ [14.52564, 10.279425, … 10.209… │ + │ PRUPE_1G176100 ┆ [10.240738, 10.267249, … 14.51… │ + └────────────────┴─────────────────────────────────┘ + """ + lfs = [pl.scan_parquet(file) for file in files] lf = pl.concat(lfs) return ( lf.explode(config.RATIOS_STD_COLNAME) @@ -66,6 +63,10 @@ def concat_all_std_data(files: list[Path], low_memory: bool) -> pl.LazyFrame: def compute_m_measures(lf: pl.LazyFrame) -> pl.LazyFrame: + """ + Compute the m-measure for each gene. + The m-measure is the sum of the ratios standard deviations divided by the number of ratios minus 1. + """ return lf.select( pl.col(config.GENE_ID_COLNAME), ( @@ -91,128 +92,27 @@ def get_chunks(lst: list, chunksize: int): def main(): args = parse_args() - low_memory = True if args.task_attempts > 1 else False files = [Path(file) for file in args.std_files.split(" ")] - logger.info("Getting list of gene IDs") - count_lf = pl.scan_parquet(args.count_file, low_memory=low_memory) - - ############################################################################# - # MAKING A FOLDER FOR EACH CHUNK OF GENE IDS - ############################################################################# - gene_ids = count_lf.select(config.GENE_ID_COLNAME).collect().to_series().to_list() - gene_ids = sorted(gene_ids) - - chunksize = max( - 1, int(len(gene_ids) / NB_GENE_ID_CHUNK_FOLDERS) - ) # 1 if len(gene_ids) < NB_GENE_ID_CHUNK_FOLDERS - gene_id_list_chunks = list(get_chunks(gene_ids, chunksize=chunksize)) - - gene_id_chunk_folders = [] - for i in range(len(gene_id_list_chunks)): - gene_id_chunk_folder = Path(f"gene_ids_{i}") - gene_id_chunk_folder.mkdir(exist_ok=True) - gene_id_chunk_folders.append(gene_id_chunk_folder) - - ############################################################################# - # EXPORTING GENE DATA TO THEIR RESPECTIVE CHUNK FOLDER - ############################################################################# - # progressively decreasing the chunksize if OOM - chunksize = int(DEFAULT_CHUNKSIZE / args.task_attempts) - chunk_files_list = [ - files[i : i + chunksize] for i in range(0, len(files), chunksize) - ] - - logger.info("Parsing std data by chunks") - for i, chunk_files in enumerate(chunk_files_list): - # parsing files and making a first list concatenation - concat_lf = concat_all_std_data(chunk_files, low_memory) - - # looping through each group of gene IDs - for j, (gene_id_list_chunk, gene_id_chunk_folder) in enumerate( - zip(gene_id_list_chunks, gene_id_chunk_folders) - ): - # writing all data corresponding to this group of gene IDs in a specific folder - outfile = gene_id_chunk_folder / f"chunk.{i}.parquet" - concat_df = concat_lf.filter( - pl.col(config.GENE_ID_COLNAME).is_in(gene_id_list_chunk) - ).collect() - concat_df.write_parquet(outfile) - - ############################################################################# - # GATHERING ALL DATA CHUNK BY CHUNK AND COMPUTING M MEASURE FOR EACH GENE - ############################################################################# - computed_genes = 0 - nb_ratios_per_gene = set() - logger.info( - "Concatenating all std data by chunk of gene IDs and computing M measures" + # parsing files and making concatenation + concat_lf = concat_all_std_data(files) + + # sort everything + # this is very weird, but if we do not sort the ratios_std list, the M measure computation may be slightly inconsistent + # the ratios lists should be already sorted, but if they are not, we sort them here to ensure consistency + concat_lf = concat_lf.sort(config.GENE_ID_COLNAME).with_columns( + pl.col(config.RATIOS_STD_COLNAME).list.sort() + ) + + # computing M measures for these gene IDs + m_measure_lf = compute_m_measures(concat_lf) + + if m_measure_lf.select(config.GENE_ID_COLNAME).collect().is_duplicated().any(): + raise ValueError("Duplicate values found for gene IDs!") + + m_measure_lf.sink_csv( + M_MEASURE_OUTFILE_NAME, float_precision=config.CSV_FLOAT_PRECISION ) - with open(M_MEASURE_OUTFILE_NAME, "a") as fout: - for i, gene_id_chunk_folder in enumerate(gene_id_chunk_folders): - chunk_files = list(gene_id_chunk_folder.iterdir()) - - concat_lf = concat_all_std_data(chunk_files, low_memory).sort( - config.GENE_ID_COLNAME - ) - - # computing M measures for these gene IDs - m_measure_lf = compute_m_measures(concat_lf) - m_measure_df = m_measure_lf.collect() - - ################################################# - # checks - ################################################# - if m_measure_df[config.GENE_ID_COLNAME].is_duplicated().any(): - raise ValueError("Duplicate values found for gene IDs!") - - process_gene_ids = sorted( - m_measure_df.select(config.GENE_ID_COLNAME).to_series().to_list() - ) - if process_gene_ids != gene_id_list_chunks[i]: - raise ValueError("Incorrect gene IDs found!") - - computed_genes += len(m_measure_df) - - unique_nb_ratios = ( - concat_lf.with_columns( - pl.col(config.RATIOS_STD_COLNAME).list.len().alias("length") - ) - .select("length") - .unique() - .collect() - .to_series() - .to_list() - ) - nb_ratios_per_gene.update(unique_nb_ratios) - - ################################################# - ################################################# - - # appending to output file - if i == 0: - m_measure_df.write_csv( - fout, - include_header=True, - float_precision=config.CSV_FLOAT_PRECISION, - ) - else: - m_measure_df.write_csv( - fout, - include_header=False, - float_precision=config.CSV_FLOAT_PRECISION, - ) - - logger.info(f"Number of gene IDs: {len(gene_ids)}") - logger.info(f"Number of computed genes: {computed_genes}") - if computed_genes != len(gene_ids): - raise ValueError( - f"Number of computed genes: {computed_genes} != number of gene IDs: {len(gene_ids)}" - ) - - if len(nb_ratios_per_gene) > 1: - logger.warning( - f"Got multiple number of std ratios to compute: {list(nb_ratios_per_gene)}" - ) if __name__ == "__main__": diff --git a/bin/get_ratio_standard_variation.py b/bin/get_ratio_standard_variation.py index 76d4ebfd..1b63ede7 100755 --- a/bin/get_ratio_standard_variation.py +++ b/bin/get_ratio_standard_variation.py @@ -7,6 +7,8 @@ from pathlib import Path import config +from common import get_nb_rows + import polars as pl logging.basicConfig(level=logging.INFO) @@ -32,20 +34,9 @@ def parse_args(): required=True, help="File log of pairwise expression ratios", ) - parser.add_argument( - "--task-attempts", - dest="task_attempts", - type=int, - default=1, - help="Number of task attempts", - ) return parser.parse_args() -def get_nb_rows(lf: pl.LazyFrame): - return lf.select(pl.len()).collect().item() - - def get_count_columns(lf: pl.LazyFrame) -> list[str]: """Get all column names except the config.GENE_ID_COLNAME column. @@ -58,8 +49,8 @@ def get_count_columns(lf: pl.LazyFrame) -> list[str]: ] -def compute_standard_deviations(file: Path, low_memory: bool) -> pl.LazyFrame: - ratios_lf = pl.scan_parquet(file, low_memory=low_memory) +def compute_standard_deviations(file: Path) -> pl.LazyFrame: + ratios_lf = pl.scan_parquet(file) ratio_columns = [ col for col in ratios_lf.collect_schema().names() if col.endswith("_log_ratio") ] @@ -125,21 +116,24 @@ def group_standard_deviations(std_lf: pl.LazyFrame) -> pl.LazyFrame: def main(): args = parse_args() - low_memory = True if args.task_attempts > 1 else False - std_lf = compute_standard_deviations(args.ratio_file, low_memory) + logger.info(f"Computing standard deviations for {str(args.ratio_file)}") + std_lf = compute_standard_deviations(args.ratio_file) std_lf = group_standard_deviations(std_lf) # when the ratio file corresponds to the same gene ids cross joined with themselves (i == i) # then we want only only one row per gene id - - std_df = std_lf.collect() - if len(std_df) == 0: + if get_nb_rows(std_lf) == 0: raise ValueError( f"No output following treatment of file {str(args.ratio_file)}" ) + # sort items in each list + std_lf = std_lf.with_columns(pl.col(config.RATIOS_STD_COLNAME).list.sort()) + outfile = args.ratio_file.name.replace("ratios", "std") - std_df.write_parquet(outfile) + std_lf.sink_parquet(outfile) + + logger.info(f"Wrote standard deviations to {outfile}") if __name__ == "__main__": diff --git a/bin/make_cross_join.py b/bin/make_cross_join.py index f28a597c..4cee93dc 100755 --- a/bin/make_cross_join.py +++ b/bin/make_cross_join.py @@ -49,13 +49,6 @@ def parse_args(): required=True, help="Index of chunk count file 2", ) - parser.add_argument( - "--task-attempts", - dest="task_attempts", - type=int, - default=1, - help="Number of task attempts", - ) return parser.parse_args() @@ -69,9 +62,8 @@ def parse_args(): def main(): args = parse_args() - low_memory = True if args.task_attempts > 1 else False - lf = pl.scan_parquet(args.count_file_1, low_memory=low_memory) - lf_other = pl.scan_parquet(args.count_file_2, low_memory=low_memory) + lf = pl.scan_parquet(args.count_file_1) + lf_other = pl.scan_parquet(args.count_file_2) logger.info("Computing cross join data") lf = lf.join( diff --git a/bin/make_pairwise_gene_expression_ratio.py b/bin/make_pairwise_gene_expression_ratio.py index 0fdc5715..04741d8b 100755 --- a/bin/make_pairwise_gene_expression_ratio.py +++ b/bin/make_pairwise_gene_expression_ratio.py @@ -7,6 +7,7 @@ from pathlib import Path import config +from common import get_nb_rows import polars as pl logging.basicConfig(level=logging.INFO) @@ -28,13 +29,6 @@ def parse_args(): required=True, help="File where each row contains counts for two genes", ) - parser.add_argument( - "--task-attempts", - dest="task_attempts", - type=int, - default=1, - help="Number of task attempts", - ) return parser.parse_args() @@ -50,9 +44,9 @@ def get_count_columns(lf: pl.LazyFrame) -> list[str]: ] -def compute_ratios(file: Path, low_memory: bool) -> pl.LazyFrame: +def compute_ratios(file: Path) -> pl.LazyFrame: # getting ratios for each sample - cross_join_lf = pl.scan_parquet(file, low_memory=low_memory) + cross_join_lf = pl.scan_parquet(file) column_pairs = { col: f"{col}_other" for col in get_count_columns(cross_join_lf) @@ -77,18 +71,18 @@ def compute_ratios(file: Path, low_memory: bool) -> pl.LazyFrame: def main(): args = parse_args() - low_memory = True if args.task_attempts > 1 else False - ratios_lf = compute_ratios(args.cross_joined_file, low_memory) + logger.info(f"Computing ratios for {str(args.cross_joined_file)}") + ratios_lf = compute_ratios(args.cross_joined_file) - ratios_df = ratios_lf.collect() - - if len(ratios_df) == 0: + if get_nb_rows(ratios_lf) == 0: raise ValueError( f"No output following treatment of file {str(args.cross_joined_file)}" ) outfilename = args.cross_joined_file.name.replace("cross_join", "ratios") - ratios_df.write_parquet(outfilename) + ratios_lf.sink_parquet(outfilename) + + logger.info(f"Wrote ratios to {outfilename}") if __name__ == "__main__": diff --git a/bin/make_parquet_chunks.py b/bin/make_parquet_chunks.py index 4aa36a5e..67a01076 100755 --- a/bin/make_parquet_chunks.py +++ b/bin/make_parquet_chunks.py @@ -33,13 +33,6 @@ def parse_args(): required=True, help="File containing normalised counts for all genes and all samples", ) - parser.add_argument( - "--task-attempts", - dest="task_attempts", - type=int, - default=1, - help="Number of task attempts", - ) return parser.parse_args() @@ -47,8 +40,8 @@ def get_nb_rows(lf: pl.LazyFrame): return lf.select(pl.len()).collect().item() -def parse_count_dataset(file: Path, low_memory: bool) -> pl.LazyFrame: - lf = pl.scan_parquet(file, low_memory=low_memory).fill_null(0).fill_nan(0) +def parse_count_dataset(file: Path) -> pl.LazyFrame: + lf = pl.scan_parquet(file).fill_null(0).fill_nan(0) count_columns = get_count_columns(lf) cols = [pl.col(config.GENE_ID_COLNAME)] + [ pl.col(column).replace({0: ZERO_REPLACE_VALUE}).cast(pl.Float32) @@ -99,9 +92,8 @@ def split_count_summary_in_chunks(lf: pl.LazyFrame): def main(): args = parse_args() - low_memory = True if args.task_attempts > 1 else False logger.info("Parsing count file") - lf = parse_count_dataset(args.count_file, low_memory) + lf = parse_count_dataset(args.count_file) logger.info("Splitting count file into chunks") split_count_summary_in_chunks(lf) diff --git a/modules/local/genorm/compute_m_measure/environment.yml b/modules/local/genorm/compute_m_measure/environment.yml index 45a97ad0..a6fbb4ac 100644 --- a/modules/local/genorm/compute_m_measure/environment.yml +++ b/modules/local/genorm/compute_m_measure/environment.yml @@ -5,4 +5,4 @@ channels: - bioconda dependencies: - conda-forge::python=3.14.3 - - conda-forge::polars==1.39.2 + - conda-forge::polars==1.41.2 diff --git a/modules/local/genorm/compute_m_measure/main.nf b/modules/local/genorm/compute_m_measure/main.nf index 0dadf854..6fb2797f 100644 --- a/modules/local/genorm/compute_m_measure/main.nf +++ b/modules/local/genorm/compute_m_measure/main.nf @@ -5,11 +5,11 @@ process COMPUTE_M_MEASURE { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine in ['singularity', 'apptainer'] && !task.ext.singularity_pull_docker_container ? - 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/00/00f1434368763cebf37466cfaaaf069f971f7eae65b010169975c50d084e5af3/data': - 'community.wave.seqera.io/library/polars_python:1a4a3322c56bfeb9' }" + 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/83/83ffc025ce0d913f9eaa4e786c9ebd2817ddc57f85d6596663f0e8a290872fab/data': + 'community.wave.seqera.io/library/polars_python:e0e89fee0d134a04' }" input: - tuple val(meta), path(count_file), path(ratio_files) + tuple val(meta), path(ratio_files) output: tuple val(meta), path("m_measures.csv"), emit: m_measures @@ -17,12 +17,9 @@ process COMPUTE_M_MEASURE { tuple val("${task.process}"), val('polars'), eval('python3 -c "import polars; print(polars.__version__)"'), topic: versions script: - def args = "--task-attempts ${task.attempt}" """ compute_m_measures.py \\ - --counts $count_file \\ - --std-files "$ratio_files" \\ - $args + --std-files "$ratio_files" """ } diff --git a/modules/local/genorm/cross_join/main.nf b/modules/local/genorm/cross_join/main.nf index aad36bfa..5c72df19 100644 --- a/modules/local/genorm/cross_join/main.nf +++ b/modules/local/genorm/cross_join/main.nf @@ -18,14 +18,12 @@ process CROSS_JOIN { script: - def args = "--task-attempts ${task.attempt}" """ make_cross_join.py \\ --file1 count_chunk_file_1 \\ --file2 count_chunk_file_2 \\ --index1 ${meta.index_1} \\ - --index2 ${meta.index_2} \\ - ${args} + --index2 ${meta.index_2} """ } diff --git a/modules/local/genorm/expression_ratio/main.nf b/modules/local/genorm/expression_ratio/main.nf index 6a3d1dd6..9c2c32a7 100644 --- a/modules/local/genorm/expression_ratio/main.nf +++ b/modules/local/genorm/expression_ratio/main.nf @@ -18,11 +18,9 @@ process EXPRESSION_RATIO { script: - def args = "--task-attempts ${task.attempt}" """ make_pairwise_gene_expression_ratio.py \\ - --file $file \\ - ${args} + --file $file """ } diff --git a/modules/local/genorm/make_chunks/main.nf b/modules/local/genorm/make_chunks/main.nf index e2802482..bed62b0e 100644 --- a/modules/local/genorm/make_chunks/main.nf +++ b/modules/local/genorm/make_chunks/main.nf @@ -18,11 +18,9 @@ process MAKE_CHUNKS { script: - def args = "--task-attempts ${task.attempt}" """ make_parquet_chunks.py \\ - --counts $count_file \\ - ${args} + --counts $count_file """ } diff --git a/modules/local/genorm/ratio_standard_variation/main.nf b/modules/local/genorm/ratio_standard_variation/main.nf index f0279938..e99d7ebb 100644 --- a/modules/local/genorm/ratio_standard_variation/main.nf +++ b/modules/local/genorm/ratio_standard_variation/main.nf @@ -18,11 +18,9 @@ process RATIO_STANDARD_VARIATION { script: - def args = "--task-attempts ${task.attempt}" """ get_ratio_standard_variation.py \\ - --file $file \\ - ${args} + --file $file """ } diff --git a/subworkflows/local/genorm/main.nf b/subworkflows/local/genorm/main.nf index 6a88703e..f79fe56b 100644 --- a/subworkflows/local/genorm/main.nf +++ b/subworkflows/local/genorm/main.nf @@ -63,9 +63,7 @@ workflow GENORM { .map{ meta, file -> [ [ section: meta.section ], file ] } .groupTuple() - COMPUTE_M_MEASURE( - ch_counts.join( ch_ratio_files ) - ) + COMPUTE_M_MEASURE( ch_ratio_files ) emit: m_measures = COMPUTE_M_MEASURE.out.m_measures diff --git a/tests/default.nf.test.snap b/tests/default.nf.test.snap index 80d5886b..a5ebd286 100644 --- a/tests/default.nf.test.snap +++ b/tests/default.nf.test.snap @@ -311,50 +311,50 @@ "warnings/renaming_warning_reasons.tsv" ], [ - "all_genes_summary.csv:md5,5538e690bd3451cc048c19e5ee85a78c", + "all_genes_summary.csv:md5,f18a69be49eefb585b982b0de8d26d75", "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", - "section_1.most_stable_genes_summary.csv:md5,235bb293b13df9eb04a643bcc57b28ca", - "section_1.most_stable_genes_transposed_counts.csv:md5,aced62f5447fed2ad80a42b424159078", - "section_10.most_stable_genes_summary.csv:md5,96da41a116f7a9038870607156e2f986", - "section_10.most_stable_genes_transposed_counts.csv:md5,92fc5929d40316ed4295d28007f27141", - "section_11.most_stable_genes_summary.csv:md5,7ec74734f0b60a397d3e8b964960a5fc", - "section_11.most_stable_genes_transposed_counts.csv:md5,08c786a9859eeae873dacbec33bb2e9e", - "section_12.most_stable_genes_summary.csv:md5,277fad4182321646491966f3a046a7c9", - "section_12.most_stable_genes_transposed_counts.csv:md5,849139a7f1d548e5560d5e3dfaa96bf0", - "section_13.most_stable_genes_summary.csv:md5,31763653319479eeea85aeeba8f28d16", - "section_13.most_stable_genes_transposed_counts.csv:md5,93070ff7b4e36a2486a4b8b45f957ac8", - "section_14.most_stable_genes_summary.csv:md5,665204d7f41048424848193fc970ebdb", - "section_14.most_stable_genes_transposed_counts.csv:md5,dd80d0a9118f20f47b3d06e479423713", - "section_15.most_stable_genes_summary.csv:md5,5d96df87df0f9547abcf61f134da582a", - "section_15.most_stable_genes_transposed_counts.csv:md5,ff3f4767f8372f633e9bffc4e54dd2b9", - "section_16.most_stable_genes_summary.csv:md5,42e5ba0db9832a59d1a9f617ddc30152", - "section_16.most_stable_genes_transposed_counts.csv:md5,2cc1927b06aef353df30a6f3e1172da6", - "section_17.most_stable_genes_summary.csv:md5,7ecadaae7f27dcd47550f724e9b6ec7d", - "section_17.most_stable_genes_transposed_counts.csv:md5,85a7c2959d89324cc6f250493d4520a7", - "section_18.most_stable_genes_summary.csv:md5,1424be59b8dab7792b90a34307fe3fec", - "section_18.most_stable_genes_transposed_counts.csv:md5,69a36fb3843257e1c67fe06282a22671", - "section_19.most_stable_genes_summary.csv:md5,d2540346e52679df9a3ddc2328f8a766", - "section_19.most_stable_genes_transposed_counts.csv:md5,4e4b2100fca4c6d461333edf6e5fd9e7", - "section_2.most_stable_genes_summary.csv:md5,98785f159ef342146b5f38e46ca7db41", - "section_2.most_stable_genes_transposed_counts.csv:md5,3b6cf1ced09a0f13588f8d48890b5f98", - "section_20.most_stable_genes_summary.csv:md5,d370e295f0a9ab69f347868ae9bc795a", - "section_20.most_stable_genes_transposed_counts.csv:md5,5691275bafee54ec2520d82011295495", - "section_3.most_stable_genes_summary.csv:md5,1e24fc57b9c0d016464ecef31aa6175b", - "section_3.most_stable_genes_transposed_counts.csv:md5,35a2874cff7099001a6e45577b36817f", - "section_4.most_stable_genes_summary.csv:md5,389f7475433841bf56dc604ea2b3074e", - "section_4.most_stable_genes_transposed_counts.csv:md5,2794b4e29fa21c53604cfc189ce6ecdf", - "section_5.most_stable_genes_summary.csv:md5,d840d8b9235c71b35a6bb6c706439adb", - "section_5.most_stable_genes_transposed_counts.csv:md5,4d4395309a84a820d6c3169906824657", - "section_6.most_stable_genes_summary.csv:md5,3bd987f7861d38bf2e8a1258d148d7aa", - "section_6.most_stable_genes_transposed_counts.csv:md5,73806b0e960342be7378aface0618229", - "section_7.most_stable_genes_summary.csv:md5,91d4d3fe465bb5f7b72bc7b0352cf5ab", - "section_7.most_stable_genes_transposed_counts.csv:md5,2067a0574e51f1fe8bf590addbfd6ea9", - "section_8.most_stable_genes_summary.csv:md5,8488e6bb76de4d4dd56443f783fc0517", - "section_8.most_stable_genes_transposed_counts.csv:md5,da4a0fc57e3969d39d4271dee8bda0c3", - "section_9.most_stable_genes_summary.csv:md5,909e8c24a654a028d4d367a4a6befcb8", - "section_9.most_stable_genes_transposed_counts.csv:md5,19f9c3e887fafd82b8e2fdfb7209b98a", + "section_1.most_stable_genes_summary.csv:md5,db6cc6772e2293aa93a8b68e07b057af", + "section_1.most_stable_genes_transposed_counts.csv:md5,1e7052164d6bae17d841d3172b8ed5f9", + "section_10.most_stable_genes_summary.csv:md5,b0451b5db649816b12a50328c5454b4c", + "section_10.most_stable_genes_transposed_counts.csv:md5,d2778f21a0165f18122aa9acf83fbd51", + "section_11.most_stable_genes_summary.csv:md5,f1d5c897210e6b5c31283bd6d86cd61d", + "section_11.most_stable_genes_transposed_counts.csv:md5,57693c4e9ff85cfcf9d5481a868537c7", + "section_12.most_stable_genes_summary.csv:md5,c49bb36563b6ec61e4db4d081c255811", + "section_12.most_stable_genes_transposed_counts.csv:md5,2ed29bef45666d68e81958a39c2222c9", + "section_13.most_stable_genes_summary.csv:md5,48e5f7495f09179c1e32c7c8437e2b09", + "section_13.most_stable_genes_transposed_counts.csv:md5,247ebb3871607eed4af071ff95848eea", + "section_14.most_stable_genes_summary.csv:md5,609c0677476f3f8f11e7f0171e8ec5d0", + "section_14.most_stable_genes_transposed_counts.csv:md5,57f0f83bc23ab7d3c248e80033e8589f", + "section_15.most_stable_genes_summary.csv:md5,a24ac0cc1177379a840e7084eeeb3717", + "section_15.most_stable_genes_transposed_counts.csv:md5,3b525783884d7ea3945888bf308b88c8", + "section_16.most_stable_genes_summary.csv:md5,fa1e603d1adfdf854ea80b966d9a47d8", + "section_16.most_stable_genes_transposed_counts.csv:md5,f3165e5215ab1bf7525a6a6be3b438f8", + "section_17.most_stable_genes_summary.csv:md5,4a0a3476f0c3f201eb82fc63bc5d7fd5", + "section_17.most_stable_genes_transposed_counts.csv:md5,01da56f2c44bc87673540cb3123d86f5", + "section_18.most_stable_genes_summary.csv:md5,57179e08fb2afe65448ca8b644d875f2", + "section_18.most_stable_genes_transposed_counts.csv:md5,25ebbecedf765651ff43393737088e88", + "section_19.most_stable_genes_summary.csv:md5,c7d79747dbf42979857efd44a67081b6", + "section_19.most_stable_genes_transposed_counts.csv:md5,835eab3194a75427b33322a3d81940c5", + "section_2.most_stable_genes_summary.csv:md5,0fca5b3a37cf320d020b7147909347c0", + "section_2.most_stable_genes_transposed_counts.csv:md5,2eae21bc9ba9ef785c350d5d2f9bc643", + "section_20.most_stable_genes_summary.csv:md5,51b66b6be342e5042272cea15be465b7", + "section_20.most_stable_genes_transposed_counts.csv:md5,233e1622c7705ef775e5ddb24206b6da", + "section_3.most_stable_genes_summary.csv:md5,4be76f31c29e7198044289a582684a67", + "section_3.most_stable_genes_transposed_counts.csv:md5,d156f89d0151de18e4d714fb56b485fa", + "section_4.most_stable_genes_summary.csv:md5,00dd2525a080ea5c5d843cd31671d858", + "section_4.most_stable_genes_transposed_counts.csv:md5,f40ce8502fac6852130639b5d7e097b7", + "section_5.most_stable_genes_summary.csv:md5,38d536852892cab35a70b504926dd243", + "section_5.most_stable_genes_transposed_counts.csv:md5,908d009bc3c1b5275a97043c216ff95c", + "section_6.most_stable_genes_summary.csv:md5,6c64d43d5ac05767e24433cda8485979", + "section_6.most_stable_genes_transposed_counts.csv:md5,9a409a5a7e13e928bb197cf73c2cbcca", + "section_7.most_stable_genes_summary.csv:md5,1d01adc55c7368ca43786aec0d1d3c51", + "section_7.most_stable_genes_transposed_counts.csv:md5,77153df2b76b70f73dffe1a45c8e5f44", + "section_8.most_stable_genes_summary.csv:md5,9da3aa8fc0e5a7b6cc7cbbdf9270a974", + "section_8.most_stable_genes_transposed_counts.csv:md5,e09100a0d8c611995ad5ce05f42aa86f", + "section_9.most_stable_genes_summary.csv:md5,fb8c7cca21192773652e786d6b723b41", + "section_9.most_stable_genes_transposed_counts.csv:md5,228369a3eed81a45c27434cba65af14f", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,5538e690bd3451cc048c19e5ee85a78c", + "all_genes_summary.csv:md5,f18a69be49eefb585b982b0de8d26d75", "whole_design.csv:md5,f29515bc2c783e593fb9028127342593", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", "Mus_musculus.GRCm39.116.chr.gff3.gz:md5,8db25f5186d0671a328b41b650af667f", @@ -365,48 +365,48 @@ "mapped_gene_ids.csv:md5,78934d2ac5fe7d863f114c5703f57a06", "whole_design.csv:md5,f29515bc2c783e593fb9028127342593", "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", - "multiqc_gene_statistics.txt:md5,f735a80afab6c5f8e73a7ec978a80346", - "multiqc_genes_section_1.txt:md5,6fe6a9d8eccd453f0332ab231a92460a", - "multiqc_genes_section_1_1.txt:md5,077e8f91f216b4c0984dad2fdf635163", - "multiqc_genes_section_1_10.txt:md5,dab0146e86c115fac2f113caf239698a", - "multiqc_genes_section_1_11.txt:md5,3bdb3251c00eba444633beeea3400034", - "multiqc_genes_section_1_12.txt:md5,ecc01f757c9880a6eb9c38b840133942", - "multiqc_genes_section_1_13.txt:md5,cfdd3d0757d40fa1f7d308e5c5d278b0", - "multiqc_genes_section_1_14.txt:md5,b479ef261fc3df454c21e9eb8da0207f", - "multiqc_genes_section_1_15.txt:md5,2abb3db1579481995562814fac7a02c8", - "multiqc_genes_section_1_16.txt:md5,da9cddd1b2f639851cd999618502e80c", - "multiqc_genes_section_1_17.txt:md5,3348bc365ffdd18551e7298b0c18b325", - "multiqc_genes_section_1_18.txt:md5,ecc3cba3edc03920b2dd44b4c1248ea2", - "multiqc_genes_section_1_19.txt:md5,d8a301fe9488aca442e8b95356025023", - "multiqc_genes_section_1_2.txt:md5,1c23c272b77d3eadfa2551b16dcc3a82", - "multiqc_genes_section_1_3.txt:md5,9062a511786c971bd09d7e24d32b2ab6", - "multiqc_genes_section_1_4.txt:md5,e102660577e5e91fda803d5d3b015379", - "multiqc_genes_section_1_5.txt:md5,35ad039a1269cd686173a17f7db073ca", - "multiqc_genes_section_1_6.txt:md5,9facf0b0c8910de9126421ecd93315e8", - "multiqc_genes_section_1_7.txt:md5,c03683d3a0e04f3351fb3b537968a117", - "multiqc_genes_section_1_8.txt:md5,a8dfb398d33c679b54b60856402f21a1", - "multiqc_genes_section_1_9.txt:md5,789c7709b67e8e4ff03d83cce648eb0f", + "multiqc_gene_statistics.txt:md5,36b23bdf4a7599d089ceb3da6ec9a5f3", + "multiqc_genes_section_1.txt:md5,f14cfb4c77e1aba9b1a0fc672417ba57", + "multiqc_genes_section_1_1.txt:md5,003d9d90a685a697dc7af46acb7159e4", + "multiqc_genes_section_1_10.txt:md5,b161af2b0ebbf597b39affda440e6d52", + "multiqc_genes_section_1_11.txt:md5,7e33c64f62878882b74feb6c9f986fab", + "multiqc_genes_section_1_12.txt:md5,48be4c9ae4cf924f261f8fb3d5bed61b", + "multiqc_genes_section_1_13.txt:md5,f568db4cf4cf55d197fdfb2e2d09915d", + "multiqc_genes_section_1_14.txt:md5,fb273532e9b92928ce32d7d2b2a23118", + "multiqc_genes_section_1_15.txt:md5,13f16f56bfb90d56761f59122bc6e328", + "multiqc_genes_section_1_16.txt:md5,da3ccdf19748fe3df199d248de7bab35", + "multiqc_genes_section_1_17.txt:md5,ebdd58ac2362ddfcab3121132cfae78e", + "multiqc_genes_section_1_18.txt:md5,a7d2018698cc38761ea86739c6e8f7ed", + "multiqc_genes_section_1_19.txt:md5,e23c89807d888134304d94bbdd334c83", + "multiqc_genes_section_1_2.txt:md5,3e17ff546ed5cc1d831d93a3df1b0262", + "multiqc_genes_section_1_3.txt:md5,57b3a8210946380a53a59233bb0efac8", + "multiqc_genes_section_1_4.txt:md5,4c4cc758e65183dd9ed9053b6f32fe97", + "multiqc_genes_section_1_5.txt:md5,4f45057d24a365574441463bdd710df3", + "multiqc_genes_section_1_6.txt:md5,f09499b9c488c2d671c6cbd82d63ce2a", + "multiqc_genes_section_1_7.txt:md5,1af0435850d054bcf0d4e3db966a1540", + "multiqc_genes_section_1_8.txt:md5,b52433e1e5baf9736e8ac5c368e69961", + "multiqc_genes_section_1_9.txt:md5,c7f9f7a6fe915c1ec094d88bd95ecb69", "multiqc_id_mapping_stats.txt:md5,600e9fa5656a06a3288ea7e6d9fef647", - "multiqc_normalised_expr_distrib_section_1.txt:md5,7bc06c09f84f48a7409da419b6dd71a7", - "multiqc_normalised_expr_distrib_section_1_1.txt:md5,84ab9626d86e90ee14fbaec3b58b0883", - "multiqc_normalised_expr_distrib_section_1_10.txt:md5,69d9ea655368e4b61ea3c49dc336ccc3", - "multiqc_normalised_expr_distrib_section_1_11.txt:md5,d410138157de726d67350f46d9494953", - "multiqc_normalised_expr_distrib_section_1_12.txt:md5,e0767d376933c8849a08ba998acaee39", - "multiqc_normalised_expr_distrib_section_1_13.txt:md5,76d7fd5652e923ad09000bc80f9aa4ca", - "multiqc_normalised_expr_distrib_section_1_14.txt:md5,c2f5d8df152814685c6f559ed0bfe475", - "multiqc_normalised_expr_distrib_section_1_15.txt:md5,6f0420b26e1bdba0dd53604bd6e82989", - "multiqc_normalised_expr_distrib_section_1_16.txt:md5,1a5a56d8661bcc0f986058a90ebb81b0", - "multiqc_normalised_expr_distrib_section_1_17.txt:md5,8c4c83bdcc648b4cbd5876c58d8c30d8", - "multiqc_normalised_expr_distrib_section_1_18.txt:md5,832ad87d6f4689a459e443a032f67f9d", - "multiqc_normalised_expr_distrib_section_1_19.txt:md5,83be81b32d7c48685015c2ede21fb511", - "multiqc_normalised_expr_distrib_section_1_2.txt:md5,4540363f2bdb14b432e9cf3b1567db5a", - "multiqc_normalised_expr_distrib_section_1_3.txt:md5,9e190919da3fc866beb78076ad8c4a33", - "multiqc_normalised_expr_distrib_section_1_4.txt:md5,3712b42a48fa257ad75f2deba10f631d", - "multiqc_normalised_expr_distrib_section_1_5.txt:md5,d927439c8e03a2e6f2ad18f16a90afff", - "multiqc_normalised_expr_distrib_section_1_6.txt:md5,b2d87c20485c9ffdd0237c4372d9d6e9", - "multiqc_normalised_expr_distrib_section_1_7.txt:md5,a090c91cfac6846434956fbf4a546ada", - "multiqc_normalised_expr_distrib_section_1_8.txt:md5,fc38f369649cd2f78c9eda4538a6e458", - "multiqc_normalised_expr_distrib_section_1_9.txt:md5,3baea1b3e3a0c3dff2f16e2213c132e4", + "multiqc_normalised_expr_distrib_section_1.txt:md5,373bfda6e6d34ae1f18e4fad96bd1f60", + "multiqc_normalised_expr_distrib_section_1_1.txt:md5,b005789a80dfed55cf8a2429ba6eae73", + "multiqc_normalised_expr_distrib_section_1_10.txt:md5,53dc6af70987eff0e15207cd09f6cb05", + "multiqc_normalised_expr_distrib_section_1_11.txt:md5,40fee98384631efb00004d1c481fba1f", + "multiqc_normalised_expr_distrib_section_1_12.txt:md5,83ba471f3ce6bce436d679849e9245e7", + "multiqc_normalised_expr_distrib_section_1_13.txt:md5,acc4b3ac0af3d124ce15d58cc5e2f0ae", + "multiqc_normalised_expr_distrib_section_1_14.txt:md5,81114bcd9251b530fff3bf4e46b5f5b0", + "multiqc_normalised_expr_distrib_section_1_15.txt:md5,6e1868720f1d484cfcc8211e96e7af8b", + "multiqc_normalised_expr_distrib_section_1_16.txt:md5,a7ae0549babb604fc0ccc4c887cf4e52", + "multiqc_normalised_expr_distrib_section_1_17.txt:md5,061ea3f12ec65530eb011cedf9eaa36a", + "multiqc_normalised_expr_distrib_section_1_18.txt:md5,5e07181bd910689b24a660423722e678", + "multiqc_normalised_expr_distrib_section_1_19.txt:md5,e043556a736ba3796da52dc14b7bbe93", + "multiqc_normalised_expr_distrib_section_1_2.txt:md5,54712dc02f593a4328c8d7921b98f6bb", + "multiqc_normalised_expr_distrib_section_1_3.txt:md5,855b5e6d3d2007bde7619ee5dcd3c33e", + "multiqc_normalised_expr_distrib_section_1_4.txt:md5,cbf67a772b1153a6d07334ae28295b0f", + "multiqc_normalised_expr_distrib_section_1_5.txt:md5,67d3342ab80d535fbd1e0862d5ef0fc5", + "multiqc_normalised_expr_distrib_section_1_6.txt:md5,8dc02d83a57bfd8133ec454a2040c5e9", + "multiqc_normalised_expr_distrib_section_1_7.txt:md5,ddd9b568b05a55d5d427edb29e1bc624", + "multiqc_normalised_expr_distrib_section_1_8.txt:md5,12b2f6755273687ef9d87716f47acfb2", + "multiqc_normalised_expr_distrib_section_1_9.txt:md5,ed0c6a62621e1a1999a1fd0bd1a7edd3", "multiqc_null_values_filter.txt:md5,64ca3e3acc613e1b85733fd847712a37", "multiqc_ratio_nulls.txt:md5,7063b06cadcf854671bc9cefb51a6fe3", "multiqc_ratio_zeros.txt:md5,7063b06cadcf854671bc9cefb51a6fe3", @@ -422,10 +422,10 @@ "renaming_warning_reasons.tsv:md5,0a11a59b5b547a39ab7a0e4dac622173" ] ], - "timestamp": "2026-06-12T07:42:00.944280889", + "timestamp": "2026-06-16T13:26:36.71988868", "meta": { - "nf-test": "0.9.5", - "nextflow": "25.04.0" + "nf-test": "0.9.3", + "nextflow": "26.04.3" } }, "-profile test_skip_id_mapping": { @@ -699,47 +699,14 @@ "multiqc/multiqc_data/multiqc_zero_values_filter.txt", "multiqc/multiqc_plots", "multiqc/multiqc_plots/pdf", - "multiqc/multiqc_plots/pdf/eatlas_all_experiments_metadata.pdf", - "multiqc/multiqc_plots/pdf/eatlas_selected_experiments_metadata.pdf", - "multiqc/multiqc_plots/pdf/gene_statistics.pdf", "multiqc/multiqc_plots/pdf/genes_section_1.pdf", - "multiqc/multiqc_plots/pdf/id_mapping_stats-cnt.pdf", - "multiqc/multiqc_plots/pdf/id_mapping_stats-pct.pdf", "multiqc/multiqc_plots/pdf/normalised_expr_distrib_section_1.pdf", - "multiqc/multiqc_plots/pdf/null_values_filter.pdf", - "multiqc/multiqc_plots/pdf/ratio_nulls.pdf", - "multiqc/multiqc_plots/pdf/ratio_zeros.pdf", - "multiqc/multiqc_plots/pdf/skewness.pdf", - "multiqc/multiqc_plots/pdf/total_gene_id_occurrence_quantiles.pdf", - "multiqc/multiqc_plots/pdf/zero_values_filter.pdf", "multiqc/multiqc_plots/png", - "multiqc/multiqc_plots/png/eatlas_all_experiments_metadata.png", - "multiqc/multiqc_plots/png/eatlas_selected_experiments_metadata.png", - "multiqc/multiqc_plots/png/gene_statistics.png", "multiqc/multiqc_plots/png/genes_section_1.png", - "multiqc/multiqc_plots/png/id_mapping_stats-cnt.png", - "multiqc/multiqc_plots/png/id_mapping_stats-pct.png", "multiqc/multiqc_plots/png/normalised_expr_distrib_section_1.png", - "multiqc/multiqc_plots/png/null_values_filter.png", - "multiqc/multiqc_plots/png/ratio_nulls.png", - "multiqc/multiqc_plots/png/ratio_zeros.png", - "multiqc/multiqc_plots/png/skewness.png", - "multiqc/multiqc_plots/png/total_gene_id_occurrence_quantiles.png", - "multiqc/multiqc_plots/png/zero_values_filter.png", "multiqc/multiqc_plots/svg", - "multiqc/multiqc_plots/svg/eatlas_all_experiments_metadata.svg", - "multiqc/multiqc_plots/svg/eatlas_selected_experiments_metadata.svg", - "multiqc/multiqc_plots/svg/gene_statistics.svg", "multiqc/multiqc_plots/svg/genes_section_1.svg", - "multiqc/multiqc_plots/svg/id_mapping_stats-cnt.svg", - "multiqc/multiqc_plots/svg/id_mapping_stats-pct.svg", "multiqc/multiqc_plots/svg/normalised_expr_distrib_section_1.svg", - "multiqc/multiqc_plots/svg/null_values_filter.svg", - "multiqc/multiqc_plots/svg/ratio_nulls.svg", - "multiqc/multiqc_plots/svg/ratio_zeros.svg", - "multiqc/multiqc_plots/svg/skewness.svg", - "multiqc/multiqc_plots/svg/total_gene_id_occurrence_quantiles.svg", - "multiqc/multiqc_plots/svg/zero_values_filter.svg", "multiqc/multiqc_report.html", "normalised", "normalised/quantile_normalised", @@ -770,50 +737,50 @@ "warnings" ], [ - "all_genes_summary.csv:md5,4a10e34b03b9beaf60492b401796f0b5", + "all_genes_summary.csv:md5,7fbfbf91e28797d6ceafd2be96e3a3ca", "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", - "section_1.most_stable_genes_summary.csv:md5,3c88cab0d830f031acc3d5719dd2b9bd", - "section_1.most_stable_genes_transposed_counts.csv:md5,70ec8441edfc5823446ce3e6665dceda", - "section_10.most_stable_genes_summary.csv:md5,fd5ad5a7c62c88bc327262608e3004c9", - "section_10.most_stable_genes_transposed_counts.csv:md5,5fdc629e390cc4475a86d147b0edcf6a", - "section_11.most_stable_genes_summary.csv:md5,ec00bdbeb5a9a4a74a66944c0bed6bc7", - "section_11.most_stable_genes_transposed_counts.csv:md5,516be6d5af3ec4779eed1c380b78cf1b", - "section_12.most_stable_genes_summary.csv:md5,b72bf50427fa6ab3254cda75e9eb9b8d", - "section_12.most_stable_genes_transposed_counts.csv:md5,00da764d69da470ddff776af06ecfebb", - "section_13.most_stable_genes_summary.csv:md5,9d962d59369a339e6653f742c6a22ab5", - "section_13.most_stable_genes_transposed_counts.csv:md5,ec7803b3ad2840f04eec1cf61491940c", - "section_14.most_stable_genes_summary.csv:md5,2c5397aa3058e41caaad096d7b2aa81b", - "section_14.most_stable_genes_transposed_counts.csv:md5,b61dcee6f349a0e2c51374b5248f68ed", - "section_15.most_stable_genes_summary.csv:md5,e2d7d340d9fa5208108747d170110581", - "section_15.most_stable_genes_transposed_counts.csv:md5,9402e35fb495d4bab3adc53afde03c7a", - "section_16.most_stable_genes_summary.csv:md5,6315dc085614f634e6580b5f6d33ddcb", - "section_16.most_stable_genes_transposed_counts.csv:md5,830cbb42639e72a1fc4f790f0310ff5e", - "section_17.most_stable_genes_summary.csv:md5,b19705f641823e4a0bd7ba03690ca1e4", - "section_17.most_stable_genes_transposed_counts.csv:md5,38b0d132084d5aa1f32b02a9448f66c3", - "section_18.most_stable_genes_summary.csv:md5,bcdd0c588a09ffde23ca4d7e26368e50", - "section_18.most_stable_genes_transposed_counts.csv:md5,69d877a5fa9f5ca6886c939f736d48e2", - "section_19.most_stable_genes_summary.csv:md5,d6ebc49aba6db637c09e973b7e2a1cd4", - "section_19.most_stable_genes_transposed_counts.csv:md5,3e13b4a9e1564e1b23106f7b5b6588ae", - "section_2.most_stable_genes_summary.csv:md5,ceb0fccac4c2543cb3f71d51c6c3f5ce", - "section_2.most_stable_genes_transposed_counts.csv:md5,a16c3566aec9d423fd1dc57aec7bc2ac", - "section_20.most_stable_genes_summary.csv:md5,41b8421059ca95352617184211753e86", - "section_20.most_stable_genes_transposed_counts.csv:md5,f3715dd47e78d261c38339135703cf12", - "section_3.most_stable_genes_summary.csv:md5,0c6322e3934b6cefbaf3e1b14944526d", - "section_3.most_stable_genes_transposed_counts.csv:md5,a888a033970145b2ff17502a4b5512d8", - "section_4.most_stable_genes_summary.csv:md5,849b77527cc7e839813c46002dfde0dc", - "section_4.most_stable_genes_transposed_counts.csv:md5,7ac1621aae02b610d4bb603dc33614d9", - "section_5.most_stable_genes_summary.csv:md5,95acc97e93a67b46cac043bdf8ea380c", - "section_5.most_stable_genes_transposed_counts.csv:md5,8af0614e4b1f04add84940f839a23169", - "section_6.most_stable_genes_summary.csv:md5,7df41acd2cb7d57e9d31af1f32e40568", - "section_6.most_stable_genes_transposed_counts.csv:md5,a349e706a72425dbfb7b6380d661e28e", - "section_7.most_stable_genes_summary.csv:md5,5818db36ffec7c3fb553dcd2d092ea77", - "section_7.most_stable_genes_transposed_counts.csv:md5,4690507b6bb16d10a0060eb6e1ea74af", - "section_8.most_stable_genes_summary.csv:md5,f46cd9223c0d0f3c163e9931d2254bfc", - "section_8.most_stable_genes_transposed_counts.csv:md5,bdcfd047b16d31cad5cd0a002976c273", - "section_9.most_stable_genes_summary.csv:md5,4aa118e94a59a705b357445cc06fd453", - "section_9.most_stable_genes_transposed_counts.csv:md5,f80b3610184fa88b3daf24eaef5b73e7", + "section_1.most_stable_genes_summary.csv:md5,c315ee3fed1d3e942fd0600785a45bfe", + "section_1.most_stable_genes_transposed_counts.csv:md5,0a2efcbb26a6e4d83c6894298797d35a", + "section_10.most_stable_genes_summary.csv:md5,460a8f93548fc35731cfa7788c5f0db2", + "section_10.most_stable_genes_transposed_counts.csv:md5,dc06e21a378d948bdea5f5a89160c030", + "section_11.most_stable_genes_summary.csv:md5,dd3f097ee4358d628e1bf31645e1c64d", + "section_11.most_stable_genes_transposed_counts.csv:md5,da8b79435ab95da01c13fd86410eca27", + "section_12.most_stable_genes_summary.csv:md5,e364d50821aa3b3d7278e5b3d2dd3462", + "section_12.most_stable_genes_transposed_counts.csv:md5,4683eb9beccb9fe144c7d508b7b4be7e", + "section_13.most_stable_genes_summary.csv:md5,d212bb4f45b18e62970cd0feab4f3af9", + "section_13.most_stable_genes_transposed_counts.csv:md5,fd95f28f1cf131f9daa180b24a89827f", + "section_14.most_stable_genes_summary.csv:md5,403dad4b53d573c75c3f184f591ebcfc", + "section_14.most_stable_genes_transposed_counts.csv:md5,2dd66b74d7ec2e7cc4e7d35ac9598c3e", + "section_15.most_stable_genes_summary.csv:md5,497867f70b45ac5675b2a3c4120d35de", + "section_15.most_stable_genes_transposed_counts.csv:md5,176e31a01353c4413e38a765595daa2c", + "section_16.most_stable_genes_summary.csv:md5,1a9e9db02c3342ac10fa158de1b4dbb9", + "section_16.most_stable_genes_transposed_counts.csv:md5,aaa341850858da3ffa49fb24a340c832", + "section_17.most_stable_genes_summary.csv:md5,1d85dd4c7d2d4db7d4b60aa36c91f901", + "section_17.most_stable_genes_transposed_counts.csv:md5,ec7678cf6c82265452388f32ac520ae7", + "section_18.most_stable_genes_summary.csv:md5,798e7f8ce84e85da9d3e06091506b087", + "section_18.most_stable_genes_transposed_counts.csv:md5,5f11156d90a06b3a96c9c810a3e06665", + "section_19.most_stable_genes_summary.csv:md5,8b551bac2e4e398c1711d83734242dd1", + "section_19.most_stable_genes_transposed_counts.csv:md5,8ebaee335e467a23abd41b808d5e4bd2", + "section_2.most_stable_genes_summary.csv:md5,8fb69609c4ef2f462709cd9c3242c94e", + "section_2.most_stable_genes_transposed_counts.csv:md5,e44ff535f3a30e0f6d2eac8e67a54550", + "section_20.most_stable_genes_summary.csv:md5,63b8f09a87563f253fd5a5f8f0ff7abe", + "section_20.most_stable_genes_transposed_counts.csv:md5,93669aba9d76bf15525f0d1ceeab4c54", + "section_3.most_stable_genes_summary.csv:md5,93647e14efad38d64102db1f1890c116", + "section_3.most_stable_genes_transposed_counts.csv:md5,643506edbe8d880fd1727cb685be5f14", + "section_4.most_stable_genes_summary.csv:md5,2aa82e9a1bc48b995f05096f5b1220d9", + "section_4.most_stable_genes_transposed_counts.csv:md5,1b37b8e405f420c2ccf61fc61fa8dab5", + "section_5.most_stable_genes_summary.csv:md5,5da13916fec20fe8480dba05d35ed61c", + "section_5.most_stable_genes_transposed_counts.csv:md5,432e4aa346f10b7ab62f2254e221eb02", + "section_6.most_stable_genes_summary.csv:md5,49a22d4fa3650e422b0a401753129c3e", + "section_6.most_stable_genes_transposed_counts.csv:md5,ba09f8d19e6823847a8a3713f83bf23e", + "section_7.most_stable_genes_summary.csv:md5,623ae858c9846a134b5d8cc51f330961", + "section_7.most_stable_genes_transposed_counts.csv:md5,2f7ca1b9baee4facdbfbbdae9feb84f7", + "section_8.most_stable_genes_summary.csv:md5,af8e23d29a04c8f7dafc3d4e76553481", + "section_8.most_stable_genes_transposed_counts.csv:md5,775796d81fb708823f08437e944cac3b", + "section_9.most_stable_genes_summary.csv:md5,b650bf21ffb591e9a7fc05ce3501fab3", + "section_9.most_stable_genes_transposed_counts.csv:md5,f1e14d2bcfa06acc093ac800ddd498a8", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,4a10e34b03b9beaf60492b401796f0b5", + "all_genes_summary.csv:md5,7fbfbf91e28797d6ceafd2be96e3a3ca", "whole_design.csv:md5,e6b2a08b65fa02b470829a652593e161", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", "Prunus_persica.Prunus_persica_NCBIv2.63.chr.gff3.gz:md5,b6503b872c8f9f6ee573f9910450a12b", @@ -826,48 +793,48 @@ "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", "multiqc_eatlas_all_experiments_metadata.txt:md5,e3c379628a87ad8b3f1e5cfe7310fcb0", "multiqc_eatlas_selected_experiments_metadata.txt:md5,e3c379628a87ad8b3f1e5cfe7310fcb0", - "multiqc_gene_statistics.txt:md5,74fa7f55f44a3c3d12892a027bc97591", - "multiqc_genes_section_1.txt:md5,faa541e84cb889164ce98103252040f8", - "multiqc_genes_section_1_1.txt:md5,bdc346aa9b7c7bfa9a84216b2d274bb8", - "multiqc_genes_section_1_10.txt:md5,1b1a0b801770e97563505ca8f8c6ed91", - "multiqc_genes_section_1_11.txt:md5,0b561d77eadfef91d6ca32e475ee45a2", - "multiqc_genes_section_1_12.txt:md5,a42a3951b82d67e3d577b7934295be90", - "multiqc_genes_section_1_13.txt:md5,7deb6f52ea7822f5684a7719bd05c19e", - "multiqc_genes_section_1_14.txt:md5,b1ba81c0a5ddb14f5773c241b2e08e89", - "multiqc_genes_section_1_15.txt:md5,cefc102083a05c0dd4766dcbb53cebdd", - "multiqc_genes_section_1_16.txt:md5,1c8f316f89879226e1bc2ceeb348ddb4", - "multiqc_genes_section_1_17.txt:md5,c6f2446935b328a32bf41bd53eba8057", + "multiqc_gene_statistics.txt:md5,cc5e18d24172543d0e222dacd3174ed6", + "multiqc_genes_section_1.txt:md5,f80e99b767fade923cc8f3b98241ad2a", + "multiqc_genes_section_1_1.txt:md5,6db57f53ad056690f0ff677d0266e68b", + "multiqc_genes_section_1_10.txt:md5,5db2c9cf35ec244ec582e935981fc946", + "multiqc_genes_section_1_11.txt:md5,7cc7cbbf4885e76a07e7b3fa8e405f3f", + "multiqc_genes_section_1_12.txt:md5,848d56ae5702de75c29867bc6d147011", + "multiqc_genes_section_1_13.txt:md5,cb4e99257f478dcfd7cb475ea2448c75", + "multiqc_genes_section_1_14.txt:md5,cb5618554bae19592b4b787bab8f9f61", + "multiqc_genes_section_1_15.txt:md5,97ed2ed044cff758936a41d6f6c02aff", + "multiqc_genes_section_1_16.txt:md5,8e32a050b3e7de7657c5acec09c32ca2", + "multiqc_genes_section_1_17.txt:md5,c2cc69bfcde898fd06c0a6ffe1024c3c", "multiqc_genes_section_1_18.txt:md5,f41528e9d8a43b4184ab64d2f17bb52a", "multiqc_genes_section_1_19.txt:md5,2b8ae5d9a6f2562a29e153325c0813ae", - "multiqc_genes_section_1_2.txt:md5,ddea5883409354472f1f308d63e5493b", - "multiqc_genes_section_1_3.txt:md5,d0aeb18220ff74ecb5b65560f770f244", - "multiqc_genes_section_1_4.txt:md5,cd9188beefd0d9beb0695b1b2b87bc33", - "multiqc_genes_section_1_5.txt:md5,232a5754bc40912c47cbf99dbcbba8c7", - "multiqc_genes_section_1_6.txt:md5,b43f8f19022a67137d4f1eeb463fb99f", - "multiqc_genes_section_1_7.txt:md5,9dff2a11049b72c069eb7ab5774a7f87", - "multiqc_genes_section_1_8.txt:md5,05c30e408fe4e69c9b79bd44784ab281", - "multiqc_genes_section_1_9.txt:md5,54b179f1deac4638c42b6dd5a0fc294a", + "multiqc_genes_section_1_2.txt:md5,78cd06c21827c319833efd4ec70efe25", + "multiqc_genes_section_1_3.txt:md5,fb151cad2523693904042475d88bfaca", + "multiqc_genes_section_1_4.txt:md5,c326966e9bac02847dc0699c903cb946", + "multiqc_genes_section_1_5.txt:md5,1a6779eff51d9daf3052464ec263c788", + "multiqc_genes_section_1_6.txt:md5,5830ccbb7f9d4f0a74a2d63332a73d60", + "multiqc_genes_section_1_7.txt:md5,ab1a948db0e9cb532f415ab3d5512809", + "multiqc_genes_section_1_8.txt:md5,84517b8e3c1a4c926a082d5f382d9ef4", + "multiqc_genes_section_1_9.txt:md5,26639b46fe68763136394edd919cb1e7", "multiqc_id_mapping_stats.txt:md5,eebd614817761551497a4210022da830", - "multiqc_normalised_expr_distrib_section_1.txt:md5,8f85d4ecae3f0b26cb57cdf3643db5f7", - "multiqc_normalised_expr_distrib_section_1_1.txt:md5,e6e3d6b03c9de79e148ea7433cec94a8", - "multiqc_normalised_expr_distrib_section_1_10.txt:md5,dd25c8c845c483bb05d753c34009ca6f", - "multiqc_normalised_expr_distrib_section_1_11.txt:md5,adda0dcc413995f9510cc14dfb8ca52a", - "multiqc_normalised_expr_distrib_section_1_12.txt:md5,0f01feacad5c561da38d26b3a9f5965e", - "multiqc_normalised_expr_distrib_section_1_13.txt:md5,85cd7d39e591fabb8f0796e6b9d61473", - "multiqc_normalised_expr_distrib_section_1_14.txt:md5,66e241895dc452e763e002e33103a7d2", - "multiqc_normalised_expr_distrib_section_1_15.txt:md5,3b1fed7e7266a09ca883d235cab7146d", - "multiqc_normalised_expr_distrib_section_1_16.txt:md5,289b63cd2b4ed35780597b3db595a506", - "multiqc_normalised_expr_distrib_section_1_17.txt:md5,d9dcfd888efc2ddda09e6eb2d25e7773", + "multiqc_normalised_expr_distrib_section_1.txt:md5,64246c5cfe95c607706e016add963798", + "multiqc_normalised_expr_distrib_section_1_1.txt:md5,8c4978bb9c9ccb0dd972f8cec9b18d6a", + "multiqc_normalised_expr_distrib_section_1_10.txt:md5,46083213747bba0e2088dca07f2f83ea", + "multiqc_normalised_expr_distrib_section_1_11.txt:md5,a011dfe830ab43fabddaba653a2b1fa4", + "multiqc_normalised_expr_distrib_section_1_12.txt:md5,ab782f81b49372a4e5c9944a626b6a9a", + "multiqc_normalised_expr_distrib_section_1_13.txt:md5,82f0e07f3f9ffabb0b6e48f84d58d1d2", + "multiqc_normalised_expr_distrib_section_1_14.txt:md5,6df40a7e9a5e4f9a931f500c203d9ab2", + "multiqc_normalised_expr_distrib_section_1_15.txt:md5,7ed154e158a3a9e23aac4e67350c08e6", + "multiqc_normalised_expr_distrib_section_1_16.txt:md5,7c3cdc1759977181daff37f23b0ccb30", + "multiqc_normalised_expr_distrib_section_1_17.txt:md5,8be3e45bb86d506311e9de275ca8851d", "multiqc_normalised_expr_distrib_section_1_18.txt:md5,2f8835d4cf0ecc6cdff09368f511aceb", "multiqc_normalised_expr_distrib_section_1_19.txt:md5,d3ca94b2b22de241043d0dc8427cd916", - "multiqc_normalised_expr_distrib_section_1_2.txt:md5,fed5010377600e63258d6e03dad528fe", - "multiqc_normalised_expr_distrib_section_1_3.txt:md5,9e23c4472a1c8605512772cb2fe5f9d4", - "multiqc_normalised_expr_distrib_section_1_4.txt:md5,a9576ff877a12a840af8d8e740fa7802", - "multiqc_normalised_expr_distrib_section_1_5.txt:md5,73fb54f3ed1e84fc9266f482a158296e", - "multiqc_normalised_expr_distrib_section_1_6.txt:md5,ffb374331eeb46daa62a76db2a9ad4e0", - "multiqc_normalised_expr_distrib_section_1_7.txt:md5,bd4637554ab28e511252d657117a4018", - "multiqc_normalised_expr_distrib_section_1_8.txt:md5,3089cfe2da39d9e9d822bba86d60fc94", - "multiqc_normalised_expr_distrib_section_1_9.txt:md5,c3df3cc76e4b8160b6829aa4fce1b69b", + "multiqc_normalised_expr_distrib_section_1_2.txt:md5,474883d725945ab5f5a0e62b623ef682", + "multiqc_normalised_expr_distrib_section_1_3.txt:md5,1a05951b56ee6482e9cdc4450790ff07", + "multiqc_normalised_expr_distrib_section_1_4.txt:md5,6249b38d7c8f9765901fa45b5827f837", + "multiqc_normalised_expr_distrib_section_1_5.txt:md5,c4a6c26404eccf1da4c1177984680b54", + "multiqc_normalised_expr_distrib_section_1_6.txt:md5,f6d9cea87f69327052d60042660ee957", + "multiqc_normalised_expr_distrib_section_1_7.txt:md5,fce74ba52ef3365b2bc7475ac59caf44", + "multiqc_normalised_expr_distrib_section_1_8.txt:md5,f0598a1da78201a4d3452c152a528eb9", + "multiqc_normalised_expr_distrib_section_1_9.txt:md5,af174c8ee6a93541bcffad39c0044a8f", "multiqc_null_values_filter.txt:md5,9f39dde761d2be72b989b3da51d9b768", "multiqc_ratio_nulls.txt:md5,fd9acca0d6995183d30b6ef2489a596e", "multiqc_ratio_zeros.txt:md5,7de1385d524ab670ffa9ddaf4cb8735b", @@ -886,10 +853,10 @@ "zero_values_filter_stats.csv:md5,a6fdf3c5250dc46a43f79a9ec5a1355d" ] ], - "timestamp": "2026-06-12T08:37:05.205172155", + "timestamp": "2026-06-16T15:10:45.839694096", "meta": { "nf-test": "0.9.5", - "nextflow": "25.04.0" + "nextflow": "26.04.3" } }, "-profile test_accessions_only": { @@ -1288,50 +1255,50 @@ "warnings" ], [ - "all_genes_summary.csv:md5,b8a43bbb0acc64fa1e1d3aea80060758", + "all_genes_summary.csv:md5,786ff07cceec4184ef0b47613f64e332", "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", - "section_1.most_stable_genes_summary.csv:md5,d68ef63c8a3a5307a579ad9e8621f49b", - "section_1.most_stable_genes_transposed_counts.csv:md5,74eb6fded57dec64fa571bf943385217", - "section_10.most_stable_genes_summary.csv:md5,e2988d32191a67d6c577fc1ccbfb8731", - "section_10.most_stable_genes_transposed_counts.csv:md5,97f9b07eb89ed91f3d1208af35301225", - "section_11.most_stable_genes_summary.csv:md5,5939e553367ecd36c3dad36f5e14a68f", - "section_11.most_stable_genes_transposed_counts.csv:md5,705e2b4becb685f21490948f648cee0a", - "section_12.most_stable_genes_summary.csv:md5,6e49cbc5af4a45fcd62f9a9c9d1c82ad", - "section_12.most_stable_genes_transposed_counts.csv:md5,a757cf115a30079e4dea9ebe44e587d5", - "section_13.most_stable_genes_summary.csv:md5,6765ae522f95e29af34c118c36464510", - "section_13.most_stable_genes_transposed_counts.csv:md5,578d598340aa36cf38852e06e619190a", - "section_14.most_stable_genes_summary.csv:md5,dba0d2e1803d588bbc213896ea143d56", - "section_14.most_stable_genes_transposed_counts.csv:md5,53f8590e2ddfbbc80e1e72516f5b821a", - "section_15.most_stable_genes_summary.csv:md5,1ff8d851ef7bceecb1bb96111cf42ed9", - "section_15.most_stable_genes_transposed_counts.csv:md5,2f1987c6e0327610cfaf3b5ac4b17c99", - "section_16.most_stable_genes_summary.csv:md5,22a67ebb023441a8428b8d9277c237f7", - "section_16.most_stable_genes_transposed_counts.csv:md5,467d69d7581c7b2d008b6a69004775f2", - "section_17.most_stable_genes_summary.csv:md5,e5cbc51cfe86c7b2225804410d30665b", - "section_17.most_stable_genes_transposed_counts.csv:md5,d758e3e9e4274ff7815af4fa9f84154d", - "section_18.most_stable_genes_summary.csv:md5,828dd90d5c39cf1b714e2804dd7b8d84", - "section_18.most_stable_genes_transposed_counts.csv:md5,2f633511784b3babc159c4ecfed76fa2", - "section_19.most_stable_genes_summary.csv:md5,b32ed5d4a50671ac38a4a616dc81b2b9", - "section_19.most_stable_genes_transposed_counts.csv:md5,b507a8bbe8e2d3852e7952e932917751", - "section_2.most_stable_genes_summary.csv:md5,91ac20d5b1997cb23b5978127e20bb3f", - "section_2.most_stable_genes_transposed_counts.csv:md5,deea26701b85823a9b9eaa37d89eb6f3", - "section_20.most_stable_genes_summary.csv:md5,0d82b5d34b415947bdda4d016fa52f71", - "section_20.most_stable_genes_transposed_counts.csv:md5,3a1ae07c51acb0a1672e210a8a137121", - "section_3.most_stable_genes_summary.csv:md5,0f844b961700074ea86ba67e6d4ccb93", - "section_3.most_stable_genes_transposed_counts.csv:md5,3b0725d8a3685ed73cafdc2c1ea2d79a", - "section_4.most_stable_genes_summary.csv:md5,9c1b844ae38385393cad85168cc19fea", - "section_4.most_stable_genes_transposed_counts.csv:md5,b72a7d37e0b3b6e0ce0826c0393c1bf2", - "section_5.most_stable_genes_summary.csv:md5,30d307c1fa7f23fd45b00bcb0c70b7ba", - "section_5.most_stable_genes_transposed_counts.csv:md5,f1c01ec3e740ab5bdbbdd76d3c28122d", - "section_6.most_stable_genes_summary.csv:md5,1b819d4fb890c3fa57874679240aa870", - "section_6.most_stable_genes_transposed_counts.csv:md5,b53c38a225dbb25f51b5412aa8b01189", - "section_7.most_stable_genes_summary.csv:md5,9025d18961e96a63a3dc4576ad12fc4f", - "section_7.most_stable_genes_transposed_counts.csv:md5,28ee3735897556cc7e11ba0049f31e2b", - "section_8.most_stable_genes_summary.csv:md5,c68ea34418c94f8449c739dec70a02bc", - "section_8.most_stable_genes_transposed_counts.csv:md5,c1a29fb22b08a8d00eb6bbcc6d7739f0", - "section_9.most_stable_genes_summary.csv:md5,c4222cb1070ee4b7005aea280968e7a3", - "section_9.most_stable_genes_transposed_counts.csv:md5,c3be7a4a0214169f637ac1256f5681ac", + "section_1.most_stable_genes_summary.csv:md5,5b46d17cf4c50fe4ce3abc2ada830f53", + "section_1.most_stable_genes_transposed_counts.csv:md5,2302a7e828783d4ce89b46e80adc8d84", + "section_10.most_stable_genes_summary.csv:md5,698b20cb6d46c43167ae43ae76b351e3", + "section_10.most_stable_genes_transposed_counts.csv:md5,51ca0cdc83829e39582a849e030a6dc5", + "section_11.most_stable_genes_summary.csv:md5,c21dacafd3132e1d64cbe495a8e1b7c6", + "section_11.most_stable_genes_transposed_counts.csv:md5,9d6aa20d12bf2b6e1213993067bf0d4b", + "section_12.most_stable_genes_summary.csv:md5,e165ce391b0f03d005f6c9a993e31980", + "section_12.most_stable_genes_transposed_counts.csv:md5,217f480bebb3ffabd260c17e1b4e4aed", + "section_13.most_stable_genes_summary.csv:md5,73552ac7feb7d915f830079b7fa30ec4", + "section_13.most_stable_genes_transposed_counts.csv:md5,6b58a44db420f6d21cdf45b4d9793680", + "section_14.most_stable_genes_summary.csv:md5,a11c4ccf303a872e7bd3034acf826c6a", + "section_14.most_stable_genes_transposed_counts.csv:md5,73738ee8e412274ac4ad429198d472db", + "section_15.most_stable_genes_summary.csv:md5,25d1d9d130414e81180d0773fd91fcfa", + "section_15.most_stable_genes_transposed_counts.csv:md5,3a497a88645195b5932eff28da8f1d32", + "section_16.most_stable_genes_summary.csv:md5,e89bf3e728b9f1b24f1aa816dea80692", + "section_16.most_stable_genes_transposed_counts.csv:md5,d70dda89b6c2e5d71340ea9eba823e85", + "section_17.most_stable_genes_summary.csv:md5,3e54511f09cb2cd82c55e7f2cae00f83", + "section_17.most_stable_genes_transposed_counts.csv:md5,7973ae9d8da4db4655d5f9e45d4f9c9e", + "section_18.most_stable_genes_summary.csv:md5,413665b7fed8920541a69951f304dd2c", + "section_18.most_stable_genes_transposed_counts.csv:md5,a017b6d06209d068957f28fa607b0064", + "section_19.most_stable_genes_summary.csv:md5,78400eb7e61cb6ea051761cdada9b415", + "section_19.most_stable_genes_transposed_counts.csv:md5,cf87014273ef2158f055468d790ac5ea", + "section_2.most_stable_genes_summary.csv:md5,9b9e77edae9fe4fca1e660fdb0477bc9", + "section_2.most_stable_genes_transposed_counts.csv:md5,9bc27b453b9f1dc8ed96e6fa41063362", + "section_20.most_stable_genes_summary.csv:md5,45a0873c3d6cb97f907ed460d39118a1", + "section_20.most_stable_genes_transposed_counts.csv:md5,1d34b1808d52e66b374ef214bb063d0f", + "section_3.most_stable_genes_summary.csv:md5,3c162862f5034deb5079ab9f884573e2", + "section_3.most_stable_genes_transposed_counts.csv:md5,7c7e541fe6f2957fc6f815d6030447c8", + "section_4.most_stable_genes_summary.csv:md5,893483d3e02be42ef6f1b6fec01a1e4a", + "section_4.most_stable_genes_transposed_counts.csv:md5,fc478e7c96dd636f0cfeac031e0e79cd", + "section_5.most_stable_genes_summary.csv:md5,7c1c084884f33d51f54e5480a6337c60", + "section_5.most_stable_genes_transposed_counts.csv:md5,1bb45be135b340b24f7c015268b1b05d", + "section_6.most_stable_genes_summary.csv:md5,6487ae5baf7a74134aa27c47533b5c3b", + "section_6.most_stable_genes_transposed_counts.csv:md5,47d7929fc0bc7dd5400c06677b008a87", + "section_7.most_stable_genes_summary.csv:md5,dc9bbe41b9296a1a51bced292afaf360", + "section_7.most_stable_genes_transposed_counts.csv:md5,e3da14b0bdd20ce88a0fc36c5de4e51b", + "section_8.most_stable_genes_summary.csv:md5,4faf041f6b9128822f8e3e2baf518076", + "section_8.most_stable_genes_transposed_counts.csv:md5,0aa778a6183f925016d716dccdb3cf17", + "section_9.most_stable_genes_summary.csv:md5,51c60f882f80fc7c2c0beeccaff25350", + "section_9.most_stable_genes_transposed_counts.csv:md5,4013f23eee41462b86cd685bc17087ce", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,b8a43bbb0acc64fa1e1d3aea80060758", + "all_genes_summary.csv:md5,786ff07cceec4184ef0b47613f64e332", "whole_design.csv:md5,d3aa542c4ad07d0051a84482fe6cd81c", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", "Arabidopsis_thaliana.TAIR10.63.gff3.gz:md5,ee02d70eb655f0440af19a3f3f40b15c", @@ -1342,10 +1309,10 @@ "mapped_gene_ids.csv:md5,42491ef436cce231258c0358e1af5745", "whole_design.csv:md5,d3aa542c4ad07d0051a84482fe6cd81c", "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", - "multiqc_gene_statistics.txt:md5,93fa975eabf552de58dcbca720414b44", - "multiqc_genes_section_1.txt:md5,eaead751e5e4397ecce23ce508dda622", - "multiqc_genes_section_1_1.txt:md5,ef4991fc82fdec0d517f8933a6d01fe2", - "multiqc_genes_section_1_10.txt:md5,9be4d2b7dd6a26df776557dc96b7a499", + "multiqc_gene_statistics.txt:md5,5517d14e8babc5addf7043eceb21d1cd", + "multiqc_genes_section_1.txt:md5,eb65d7b27104950eb9d02eb37d5bd282", + "multiqc_genes_section_1_1.txt:md5,fedeacbedc78e31ad7a7be6c7fb344b3", + "multiqc_genes_section_1_10.txt:md5,1ca1537f089629abe0ad9bd217f09131", "multiqc_genes_section_1_11.txt:md5,f0b8df84a99b2d5ef557ee8896217095", "multiqc_genes_section_1_12.txt:md5,89e8c3dcd3d970735de56ed6dd618caf", "multiqc_genes_section_1_13.txt:md5,b7b1b4265c236ba1c8ed7358e34a6dd6", @@ -1355,18 +1322,18 @@ "multiqc_genes_section_1_17.txt:md5,920067a6137cbded388b393f4a84d0bf", "multiqc_genes_section_1_18.txt:md5,e46e3add55d144e8dc04087498b73b65", "multiqc_genes_section_1_19.txt:md5,72e10039958b0d2667136688b35411cf", - "multiqc_genes_section_1_2.txt:md5,1bc57800bb17a99cd1da4dc25bfe82df", - "multiqc_genes_section_1_3.txt:md5,6cb50d54832dbfc7a9d1f5db722fa785", - "multiqc_genes_section_1_4.txt:md5,39e8045b4e6f3b1bccaaab17db0c62ea", - "multiqc_genes_section_1_5.txt:md5,4c2a071bf137f4466d1fee1645d36a9a", - "multiqc_genes_section_1_6.txt:md5,78bc450bb36ba94c6d57ee1398c923ef", - "multiqc_genes_section_1_7.txt:md5,03b96f557a399f3a9726a6e78ea0d8c5", - "multiqc_genes_section_1_8.txt:md5,2fa19f0658661046dd50386c6192d21f", - "multiqc_genes_section_1_9.txt:md5,90563517037bdba3223b3ad9fffc3def", + "multiqc_genes_section_1_2.txt:md5,1b67609704430312e038b69305376cd9", + "multiqc_genes_section_1_3.txt:md5,0f30dcf90048d3c6639c02da58fb108e", + "multiqc_genes_section_1_4.txt:md5,97c78069a6468273af04a005b4613929", + "multiqc_genes_section_1_5.txt:md5,a648bf023d6900ba3de8c71738454465", + "multiqc_genes_section_1_6.txt:md5,e93f14e100a4786e0692ecd2aaaa4268", + "multiqc_genes_section_1_7.txt:md5,5b40e07ec2d149f1ac51f4b1b9c71a03", + "multiqc_genes_section_1_8.txt:md5,55bd0a3841f6c08ee84fee4714c5244c", + "multiqc_genes_section_1_9.txt:md5,c4b4b411ce776f71a43655f9e84a7be4", "multiqc_id_mapping_stats.txt:md5,49023d9842e01da40e2c50e9659802d5", - "multiqc_normalised_expr_distrib_section_1.txt:md5,267d211497397da567db93c52cc1b72a", - "multiqc_normalised_expr_distrib_section_1_1.txt:md5,b2f09bff1ecf704052e19187632aae0b", - "multiqc_normalised_expr_distrib_section_1_10.txt:md5,f89a15a3af0047f9bd0f5d01ca9ccb33", + "multiqc_normalised_expr_distrib_section_1.txt:md5,844c1ef9f358b4051897698293ca6dab", + "multiqc_normalised_expr_distrib_section_1_1.txt:md5,184222ef4d2c47f39a7b0ac981f275c6", + "multiqc_normalised_expr_distrib_section_1_10.txt:md5,17778a66446dfa37b81b0691abe703f7", "multiqc_normalised_expr_distrib_section_1_11.txt:md5,fead0770f22c316593d6d2353d94e9f7", "multiqc_normalised_expr_distrib_section_1_12.txt:md5,8cacaee9d1bedf3ec8a4d66f3bab1f7f", "multiqc_normalised_expr_distrib_section_1_13.txt:md5,2567a9943c1c49e575b4c2fe6a3a3185", @@ -1376,14 +1343,14 @@ "multiqc_normalised_expr_distrib_section_1_17.txt:md5,c86c0cf8c3e4eab7a61979f622f126d7", "multiqc_normalised_expr_distrib_section_1_18.txt:md5,17554bf8a45621ecdedefe2a9b79835e", "multiqc_normalised_expr_distrib_section_1_19.txt:md5,28b90411fa811ba678f237e9ee6f20a2", - "multiqc_normalised_expr_distrib_section_1_2.txt:md5,0e97b8cfc3ff840560d8e6be97e6e98f", - "multiqc_normalised_expr_distrib_section_1_3.txt:md5,ea789dd09fb9b8f186c971197f56e23c", - "multiqc_normalised_expr_distrib_section_1_4.txt:md5,8a1f94545a829f3d8bda146418c385ae", - "multiqc_normalised_expr_distrib_section_1_5.txt:md5,72e8e94b2ba9fe15b9813dd1f2e27ee7", - "multiqc_normalised_expr_distrib_section_1_6.txt:md5,f619663f1b01544a9f96c23ba3e09438", - "multiqc_normalised_expr_distrib_section_1_7.txt:md5,8899ddfca4d1cbebdd5863c325e462c2", - "multiqc_normalised_expr_distrib_section_1_8.txt:md5,31d0717d221dcef90e4658883ee0d5ef", - "multiqc_normalised_expr_distrib_section_1_9.txt:md5,d444233cf608c17cfdc7cc8ebf2c2fe9", + "multiqc_normalised_expr_distrib_section_1_2.txt:md5,497e14e81938bb4bedb9e2d9758b4e4c", + "multiqc_normalised_expr_distrib_section_1_3.txt:md5,263299c6859ae704ea0ec5c8b9fd1841", + "multiqc_normalised_expr_distrib_section_1_4.txt:md5,424d1381b060787e36329bc426b6e6e8", + "multiqc_normalised_expr_distrib_section_1_5.txt:md5,5cf50de370286b587dfa57d49c406290", + "multiqc_normalised_expr_distrib_section_1_6.txt:md5,7519b35cd531fa258e37164f33a6b21d", + "multiqc_normalised_expr_distrib_section_1_7.txt:md5,1b8430bff5d6f72a1ecf1118e80ad947", + "multiqc_normalised_expr_distrib_section_1_8.txt:md5,9c2d6732b306057707e4baa7e517e1f0", + "multiqc_normalised_expr_distrib_section_1_9.txt:md5,b91ee53728b0dc197e9a476fc7677b67", "multiqc_null_values_filter.txt:md5,91eb32460cdebb4e08ae0b1ee559cf59", "multiqc_ratio_nulls.txt:md5,bcf9aa423c404f2e7f8ea84735810959", "multiqc_ratio_zeros.txt:md5,c743a773da2858b59923eff1873c26d0", @@ -1399,10 +1366,10 @@ "zero_values_filter_stats.csv:md5,766d888e41179e8a785f634b3b606bc9" ] ], - "timestamp": "2026-06-12T08:56:43.366951201", + "timestamp": "2026-06-16T15:38:05.405949025", "meta": { "nf-test": "0.9.5", - "nextflow": "25.04.0" + "nextflow": "26.04.3" } }, "-profile test_public_and_dataset": { @@ -1559,47 +1526,14 @@ "multiqc/multiqc_data/multiqc_zero_values_filter.txt", "multiqc/multiqc_plots", "multiqc/multiqc_plots/pdf", - "multiqc/multiqc_plots/pdf/eatlas_all_experiments_metadata.pdf", - "multiqc/multiqc_plots/pdf/eatlas_selected_experiments_metadata.pdf", - "multiqc/multiqc_plots/pdf/gene_statistics.pdf", "multiqc/multiqc_plots/pdf/genes_section_1.pdf", - "multiqc/multiqc_plots/pdf/id_mapping_stats-cnt.pdf", - "multiqc/multiqc_plots/pdf/id_mapping_stats-pct.pdf", "multiqc/multiqc_plots/pdf/normalised_expr_distrib_section_1.pdf", - "multiqc/multiqc_plots/pdf/null_values_filter.pdf", - "multiqc/multiqc_plots/pdf/ratio_nulls.pdf", - "multiqc/multiqc_plots/pdf/ratio_zeros.pdf", - "multiqc/multiqc_plots/pdf/skewness.pdf", - "multiqc/multiqc_plots/pdf/total_gene_id_occurrence_quantiles.pdf", - "multiqc/multiqc_plots/pdf/zero_values_filter.pdf", "multiqc/multiqc_plots/png", - "multiqc/multiqc_plots/png/eatlas_all_experiments_metadata.png", - "multiqc/multiqc_plots/png/eatlas_selected_experiments_metadata.png", - "multiqc/multiqc_plots/png/gene_statistics.png", "multiqc/multiqc_plots/png/genes_section_1.png", - "multiqc/multiqc_plots/png/id_mapping_stats-cnt.png", - "multiqc/multiqc_plots/png/id_mapping_stats-pct.png", "multiqc/multiqc_plots/png/normalised_expr_distrib_section_1.png", - "multiqc/multiqc_plots/png/null_values_filter.png", - "multiqc/multiqc_plots/png/ratio_nulls.png", - "multiqc/multiqc_plots/png/ratio_zeros.png", - "multiqc/multiqc_plots/png/skewness.png", - "multiqc/multiqc_plots/png/total_gene_id_occurrence_quantiles.png", - "multiqc/multiqc_plots/png/zero_values_filter.png", "multiqc/multiqc_plots/svg", - "multiqc/multiqc_plots/svg/eatlas_all_experiments_metadata.svg", - "multiqc/multiqc_plots/svg/eatlas_selected_experiments_metadata.svg", - "multiqc/multiqc_plots/svg/gene_statistics.svg", "multiqc/multiqc_plots/svg/genes_section_1.svg", - "multiqc/multiqc_plots/svg/id_mapping_stats-cnt.svg", - "multiqc/multiqc_plots/svg/id_mapping_stats-pct.svg", "multiqc/multiqc_plots/svg/normalised_expr_distrib_section_1.svg", - "multiqc/multiqc_plots/svg/null_values_filter.svg", - "multiqc/multiqc_plots/svg/ratio_nulls.svg", - "multiqc/multiqc_plots/svg/ratio_zeros.svg", - "multiqc/multiqc_plots/svg/skewness.svg", - "multiqc/multiqc_plots/svg/total_gene_id_occurrence_quantiles.svg", - "multiqc/multiqc_plots/svg/zero_values_filter.svg", "multiqc/multiqc_report.html", "normalised", "normalised/quantile_normalised", @@ -1630,50 +1564,50 @@ "warnings" ], [ - "all_genes_summary.csv:md5,b7d2c8569d49485ddeb04e7ab9e95677", + "all_genes_summary.csv:md5,3bd93d2f402672441f000a4a4e7d3f68", "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", - "section_1.most_stable_genes_summary.csv:md5,e869345103f8ff8d03b83d9f97ed63e2", - "section_1.most_stable_genes_transposed_counts.csv:md5,9fe152dcd902a8a50f5390f7f6e41c05", - "section_10.most_stable_genes_summary.csv:md5,8af82dbef3c0bff7db7527f14a54d673", - "section_10.most_stable_genes_transposed_counts.csv:md5,ce6cdc012dbf57afba6f2d9d4f50dd9f", - "section_11.most_stable_genes_summary.csv:md5,31dd39b7c8bf2be60b6f7c09758233e0", - "section_11.most_stable_genes_transposed_counts.csv:md5,870bdd2774217f46f402d0af2ddf3e59", - "section_12.most_stable_genes_summary.csv:md5,097e366c72374115dc4ecd4cde6a786a", - "section_12.most_stable_genes_transposed_counts.csv:md5,269fc876a6177414a24874d44691e9c5", - "section_13.most_stable_genes_summary.csv:md5,13e900e3f195c7b80d6af390694873b5", - "section_13.most_stable_genes_transposed_counts.csv:md5,0c25255c7f08429c36fe52fd713067fd", - "section_14.most_stable_genes_summary.csv:md5,df03a201fb4f26a28e1bc9060c8f29c7", - "section_14.most_stable_genes_transposed_counts.csv:md5,270f415b53f98e9a67bcecc29c57df31", - "section_15.most_stable_genes_summary.csv:md5,07479b4ec691c613f47175415dc28036", - "section_15.most_stable_genes_transposed_counts.csv:md5,f3618ba2a26a242ceac2507c3a09efab", - "section_16.most_stable_genes_summary.csv:md5,bfed77eb6931aec81d1de57ed465e78a", - "section_16.most_stable_genes_transposed_counts.csv:md5,3d261950768c0dd37ab3975bf465693f", - "section_17.most_stable_genes_summary.csv:md5,5f8184829a3a940663416d894251687c", - "section_17.most_stable_genes_transposed_counts.csv:md5,af06eab6bc04fc315544fcd0176da4cd", - "section_18.most_stable_genes_summary.csv:md5,5f21148626ed40d0d64b393babcf160d", - "section_18.most_stable_genes_transposed_counts.csv:md5,29fc2248ad428cb3ac8898b0a5471eec", - "section_19.most_stable_genes_summary.csv:md5,5acc2a1b1980004f88c0584a8cf0784e", - "section_19.most_stable_genes_transposed_counts.csv:md5,9586c452f93c486ed667fb343af3b13c", - "section_2.most_stable_genes_summary.csv:md5,936e035f261165e091d7a243c0573057", - "section_2.most_stable_genes_transposed_counts.csv:md5,ad1cba4a6c50de2c6f1207b619488443", - "section_20.most_stable_genes_summary.csv:md5,9d9c5cd95d1d1a350a8d1f2ce363f882", - "section_20.most_stable_genes_transposed_counts.csv:md5,e9f4187bdc7079c3130bdff1e4ebf575", - "section_3.most_stable_genes_summary.csv:md5,4ba20e00ff5c4e9e2c5018c985271212", - "section_3.most_stable_genes_transposed_counts.csv:md5,e002829d978f760203d549aa6f763fb3", - "section_4.most_stable_genes_summary.csv:md5,a8542c75ddefe3d8177c23b5aa112053", - "section_4.most_stable_genes_transposed_counts.csv:md5,ef0bf15a5710225ce0bbe29b1c4c6f4d", - "section_5.most_stable_genes_summary.csv:md5,518ec5a0fad9d5e2af38b9c551ec2ecf", - "section_5.most_stable_genes_transposed_counts.csv:md5,3332f41449d3043372884c0ade11119e", - "section_6.most_stable_genes_summary.csv:md5,9ef80cf9aa801217bda9895d5d365364", - "section_6.most_stable_genes_transposed_counts.csv:md5,70dc01026ecf80cf1f1a116e83cb17d8", - "section_7.most_stable_genes_summary.csv:md5,69f0f90b25dcdea8c11f8f69487c4985", - "section_7.most_stable_genes_transposed_counts.csv:md5,be90b6baa49e15e10a789fdd766f19fa", - "section_8.most_stable_genes_summary.csv:md5,5d087c57bd0afc31698cd9423ce2c960", - "section_8.most_stable_genes_transposed_counts.csv:md5,6934c36b8617f6b7bf34fa634be6056e", - "section_9.most_stable_genes_summary.csv:md5,90138822fa9185762c8328bfffbf1621", - "section_9.most_stable_genes_transposed_counts.csv:md5,b9de6d0841bfc0456f1b08c3105296c6", + "section_1.most_stable_genes_summary.csv:md5,67c52cff90a3c15331a429f3bf040d0e", + "section_1.most_stable_genes_transposed_counts.csv:md5,a5e4cf25fd23e2db590ecebfd2a873d1", + "section_10.most_stable_genes_summary.csv:md5,95580c2e6893092a9191de980ebd812d", + "section_10.most_stable_genes_transposed_counts.csv:md5,06528b2af994baa4e212746110a097cd", + "section_11.most_stable_genes_summary.csv:md5,4ef35103b8ebd7e8e9a4a845ab2d371c", + "section_11.most_stable_genes_transposed_counts.csv:md5,ce9edd9b3b0e2f5747116aec16c73e12", + "section_12.most_stable_genes_summary.csv:md5,6194d49bbf383aafd96191b234dd3069", + "section_12.most_stable_genes_transposed_counts.csv:md5,7452e1db59616a998cf16f312e3d1ad6", + "section_13.most_stable_genes_summary.csv:md5,1b39e48cae304d1e6f04c29fed18ee1a", + "section_13.most_stable_genes_transposed_counts.csv:md5,38a23ce6ce5b48e4ca7615a15dc5b18b", + "section_14.most_stable_genes_summary.csv:md5,ca6f92e1f9367f7b0440b3f254188fb3", + "section_14.most_stable_genes_transposed_counts.csv:md5,35fbff9784dcb06819678afb13a6769a", + "section_15.most_stable_genes_summary.csv:md5,4c986004bab4cc3a76fe1ec9040056b7", + "section_15.most_stable_genes_transposed_counts.csv:md5,6accdf8ad8f8378b8a0682f4f7f7a597", + "section_16.most_stable_genes_summary.csv:md5,5b0d41bd7c117f9782dc9eeede2c148d", + "section_16.most_stable_genes_transposed_counts.csv:md5,6357907c8f6a8b7988c61c9e6ada9f6e", + "section_17.most_stable_genes_summary.csv:md5,bf96086444a05ffa342a8f3c4631141b", + "section_17.most_stable_genes_transposed_counts.csv:md5,a9a457a095c132bae09e8779af945b62", + "section_18.most_stable_genes_summary.csv:md5,ca72996fcb221c1c2500a2f1658f51da", + "section_18.most_stable_genes_transposed_counts.csv:md5,dd14a351f6dce9a7f895c796fa8e79f6", + "section_19.most_stable_genes_summary.csv:md5,856298ae115808b42561f2025385c8bc", + "section_19.most_stable_genes_transposed_counts.csv:md5,c8a7652dfd135f2aa2eef44ca727c3e7", + "section_2.most_stable_genes_summary.csv:md5,6037f40559f2ce180ea96c8434ddeed4", + "section_2.most_stable_genes_transposed_counts.csv:md5,3c340fb167339ac2c0cfc928a55c3bd2", + "section_20.most_stable_genes_summary.csv:md5,cddedbcb2f905b8f9f2f3caec9420f7d", + "section_20.most_stable_genes_transposed_counts.csv:md5,ad59686b4d1320ca6d9efda586f35ca0", + "section_3.most_stable_genes_summary.csv:md5,9ae0b5b405cc451ad24ad287b186a21b", + "section_3.most_stable_genes_transposed_counts.csv:md5,98aa76173fd0b61b35b2cf7a276958bb", + "section_4.most_stable_genes_summary.csv:md5,d9d435fdc2e5d5f4b07917969cb9673d", + "section_4.most_stable_genes_transposed_counts.csv:md5,4b9d9f4c6857ab6c89f82feba0dad9a4", + "section_5.most_stable_genes_summary.csv:md5,b42c25ba8409dc24fcd45a56ead78914", + "section_5.most_stable_genes_transposed_counts.csv:md5,0593d5f4a362c56e20c96ee4a08ac98b", + "section_6.most_stable_genes_summary.csv:md5,8412cce2493bb5487d9b0ee5ce6ae1b1", + "section_6.most_stable_genes_transposed_counts.csv:md5,7f00bd6047a37a60c90bc761fbd1ad3b", + "section_7.most_stable_genes_summary.csv:md5,2c7f94cd58d805b9e5f6e96c919599c6", + "section_7.most_stable_genes_transposed_counts.csv:md5,558a3c7bcb92d101b998bf69513de1d8", + "section_8.most_stable_genes_summary.csv:md5,ab14e990a81a9bdc8810078db2eeb2b7", + "section_8.most_stable_genes_transposed_counts.csv:md5,53c96ae9adddbb8b838585ce2f121f5a", + "section_9.most_stable_genes_summary.csv:md5,59580f30e25a67d7e92a985f9d6e0f1f", + "section_9.most_stable_genes_transposed_counts.csv:md5,8d3f0fd754a0d1d4ecfc174dad857238", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,b7d2c8569d49485ddeb04e7ab9e95677", + "all_genes_summary.csv:md5,3bd93d2f402672441f000a4a4e7d3f68", "whole_design.csv:md5,fbd18d011d7d855452e5a30a303afcbf", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", "Beta_vulgaris.RefBeet-1.2.2.63.gff3.gz:md5,e711481dc9292c4b7c6422b9b4dc7d9d", @@ -1686,48 +1620,48 @@ "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", "multiqc_eatlas_all_experiments_metadata.txt:md5,6ea661253a55d41687e32fea72961063", "multiqc_eatlas_selected_experiments_metadata.txt:md5,8b7643e0ef8eaaa3fa72f7103fd7ccee", - "multiqc_gene_statistics.txt:md5,e60cac0bb07155911330fbe4ceb8e9ab", - "multiqc_genes_section_1.txt:md5,24aaef9ceb174f467b49c431fbeb5bbd", - "multiqc_genes_section_1_1.txt:md5,60ee757f56c09d42abcbb1ac9ec7caaa", - "multiqc_genes_section_1_10.txt:md5,c04c58779b423b218ed0ceb35e31c57c", - "multiqc_genes_section_1_11.txt:md5,0367c987f90f382060bd8159e4952a12", - "multiqc_genes_section_1_12.txt:md5,a9db08d82554a61132857c65defa03e8", - "multiqc_genes_section_1_13.txt:md5,95da0f10871297ce392c4c1ee8cbae64", - "multiqc_genes_section_1_14.txt:md5,44e1e2c934ff6fc7c311734c71b8dee6", - "multiqc_genes_section_1_15.txt:md5,dfc6f416a0fd557f413a64b9e262bd4f", - "multiqc_genes_section_1_16.txt:md5,d772398f9485f25c7dfc31e831043ddf", + "multiqc_gene_statistics.txt:md5,a7fe844321bdc07a104cb7f6b47e0075", + "multiqc_genes_section_1.txt:md5,b3bdce79f3abbaaa5411f00dc9124091", + "multiqc_genes_section_1_1.txt:md5,b2c842dab4ec2298117dcc04c47cec16", + "multiqc_genes_section_1_10.txt:md5,8bc49a49f6a6967f2443831bfcb3d846", + "multiqc_genes_section_1_11.txt:md5,fd76100a211f14f9b80b2599cb56d2e0", + "multiqc_genes_section_1_12.txt:md5,36a46ea8a77c58c416d1613875cc6602", + "multiqc_genes_section_1_13.txt:md5,2fc42e355addb3239cc9c380cf742263", + "multiqc_genes_section_1_14.txt:md5,98c341cb90776890172e8e0bd92017a4", + "multiqc_genes_section_1_15.txt:md5,c5d77e362c183b5fe73937850f3a34a4", + "multiqc_genes_section_1_16.txt:md5,109f673e5129d117d0a1b6528457dd87", "multiqc_genes_section_1_17.txt:md5,9f9f97f85d6605978b286942ac69ba2c", "multiqc_genes_section_1_18.txt:md5,ab6c6e6e1a658ba92baa6dd2b68f56bf", "multiqc_genes_section_1_19.txt:md5,5d4910983359e122e07fdbe2aeda10f7", - "multiqc_genes_section_1_2.txt:md5,c6f455c239541fc30c1add3151ae1a88", - "multiqc_genes_section_1_3.txt:md5,d643116d02db7c65aa4dcf14845d2c4f", - "multiqc_genes_section_1_4.txt:md5,e53ccb0b3172923ef3c1a28a85f1cce7", - "multiqc_genes_section_1_5.txt:md5,60dc0bd77f262ec06e15106dbc23db12", - "multiqc_genes_section_1_6.txt:md5,71d78aba8ea6797a68192fa75b95407e", - "multiqc_genes_section_1_7.txt:md5,9d14bdf4e7fbcdd68372bd1b78f97f89", - "multiqc_genes_section_1_8.txt:md5,2c0b8688630d4ece668938637c339de5", - "multiqc_genes_section_1_9.txt:md5,5cffe8bf4f92c2f2f9e40edbe0fbc1ce", + "multiqc_genes_section_1_2.txt:md5,61a4cad3929028e901871b3f571d836b", + "multiqc_genes_section_1_3.txt:md5,ad31ec3eee4ee79e841a0e6af1913a38", + "multiqc_genes_section_1_4.txt:md5,f180fa5c862ce58c6575f4a86f9d0139", + "multiqc_genes_section_1_5.txt:md5,98f0a1cc04d925a1dfbf8848e7244916", + "multiqc_genes_section_1_6.txt:md5,b6ff7e64a6eafc83fbc638b09b815cb2", + "multiqc_genes_section_1_7.txt:md5,c04a0c3731287cb18e4dc081452b5ed3", + "multiqc_genes_section_1_8.txt:md5,cac0e9f713cc58337449d5a8bd1a9e90", + "multiqc_genes_section_1_9.txt:md5,8c2af6dc9205f83808c8bf8581ac1797", "multiqc_id_mapping_stats.txt:md5,d7c6d500c8ea91c32da4980b5557d15e", - "multiqc_normalised_expr_distrib_section_1.txt:md5,594872a9ec4b625be50226b0bb0aeec1", - "multiqc_normalised_expr_distrib_section_1_1.txt:md5,2ac9916aac7ccb248d27ffd49b24a523", - "multiqc_normalised_expr_distrib_section_1_10.txt:md5,5878fe29939640a9d5c495e1aa03a285", - "multiqc_normalised_expr_distrib_section_1_11.txt:md5,8c20fc18cae99037e3e2b5173008963c", - "multiqc_normalised_expr_distrib_section_1_12.txt:md5,ad37d3bee84bfd308d79620942c9cade", - "multiqc_normalised_expr_distrib_section_1_13.txt:md5,83de3a626b8e721e99ca1371f585a437", - "multiqc_normalised_expr_distrib_section_1_14.txt:md5,f349c13b41cc52f679e905b321eead82", - "multiqc_normalised_expr_distrib_section_1_15.txt:md5,941695b35ea4a495409b467f4c7a7fd0", - "multiqc_normalised_expr_distrib_section_1_16.txt:md5,82305a3ca8a54e44a558d0c83dfca9f3", + "multiqc_normalised_expr_distrib_section_1.txt:md5,ca5d7149e7570d1ecf9c2897ecc552e4", + "multiqc_normalised_expr_distrib_section_1_1.txt:md5,d23029ef13cd88f6f83825380dd2a778", + "multiqc_normalised_expr_distrib_section_1_10.txt:md5,7aec4daa566bc03455e220132fc97efc", + "multiqc_normalised_expr_distrib_section_1_11.txt:md5,a621c99ea936f07c9c392404cd0ee168", + "multiqc_normalised_expr_distrib_section_1_12.txt:md5,3aa9ebca1833875baa95311d01b46663", + "multiqc_normalised_expr_distrib_section_1_13.txt:md5,2d302b1f6c1ba752477f678cda3e5a45", + "multiqc_normalised_expr_distrib_section_1_14.txt:md5,b1425c40932ddf69c46b43cdf26f364f", + "multiqc_normalised_expr_distrib_section_1_15.txt:md5,90c99c72e3b65730018bb56d485d665e", + "multiqc_normalised_expr_distrib_section_1_16.txt:md5,254f1e9f71b0690da8624e30d88b1a84", "multiqc_normalised_expr_distrib_section_1_17.txt:md5,adf99bc87dd29499a1bfc50c3c26488c", "multiqc_normalised_expr_distrib_section_1_18.txt:md5,8b64cbab2e0cca85575b18b41f973aa5", "multiqc_normalised_expr_distrib_section_1_19.txt:md5,4544499f66cd9de554f2d26944028cd5", - "multiqc_normalised_expr_distrib_section_1_2.txt:md5,65f8c85c81b0f16c2fb2efcf5804bd25", - "multiqc_normalised_expr_distrib_section_1_3.txt:md5,6fe59db23b91d2974e7cacfd16e4d35d", - "multiqc_normalised_expr_distrib_section_1_4.txt:md5,8e91f034aaea6dac7f2e4a9e0f37e903", - "multiqc_normalised_expr_distrib_section_1_5.txt:md5,20fad40135782a63b1210ec49eca85dd", - "multiqc_normalised_expr_distrib_section_1_6.txt:md5,d5b90abad1e9eadac88f7ba9a9b9d936", - "multiqc_normalised_expr_distrib_section_1_7.txt:md5,a84f31cfb7917e7e0c4a426f159b2abe", - "multiqc_normalised_expr_distrib_section_1_8.txt:md5,82c2d94fe42f37b467fcc599f4989a37", - "multiqc_normalised_expr_distrib_section_1_9.txt:md5,c4688a3d03c9b3ba3c45cea9bb5c76bd", + "multiqc_normalised_expr_distrib_section_1_2.txt:md5,f8441a6f1239f57e079cfd4d9ccbf971", + "multiqc_normalised_expr_distrib_section_1_3.txt:md5,03b34d4cf3672e3b7e41cfbe0dfbe486", + "multiqc_normalised_expr_distrib_section_1_4.txt:md5,a9b49c8664c80469fb7e9a4398a92c73", + "multiqc_normalised_expr_distrib_section_1_5.txt:md5,7c4e6c377551d81c85e93c7ced06b598", + "multiqc_normalised_expr_distrib_section_1_6.txt:md5,666295d732e7f848a0ac2e853e489935", + "multiqc_normalised_expr_distrib_section_1_7.txt:md5,d9262246eeb0c8cf61c4dc428dd22164", + "multiqc_normalised_expr_distrib_section_1_8.txt:md5,12e3a609a06897b53866fcb8afe1763b", + "multiqc_normalised_expr_distrib_section_1_9.txt:md5,034cd80a7c14804d6647b1ad43bc3080", "multiqc_null_values_filter.txt:md5,88b2d9e16cd8ab52f58a48fd5d915b8c", "multiqc_ratio_nulls.txt:md5,c9ac04a67937c7bacfebc33fcd50aab1", "multiqc_ratio_zeros.txt:md5,9f50cd64ea4afe3723c7e222182981f6", @@ -1746,10 +1680,10 @@ "zero_values_filter_stats.csv:md5,17fc6d525450d34445bf9cc25defe18a" ] ], - "timestamp": "2026-06-12T08:49:16.528444321", + "timestamp": "2026-06-16T15:27:16.909149067", "meta": { "nf-test": "0.9.5", - "nextflow": "25.04.0" + "nextflow": "26.04.3" } }, "-profile test_download_only": { diff --git a/tests/prepare_pr/.config b/tests/prepare_pr/.config new file mode 100644 index 00000000..0367cac9 --- /dev/null +++ b/tests/prepare_pr/.config @@ -0,0 +1,15 @@ +process { + + publishDir = [ + path: { + try { + meta.section ? + "${params.outdir}/${meta.section}/${task.process.tokenize(':')[-1].toLowerCase()}" : + "${params.outdir}/${task.process.tokenize(':')[-1].toLowerCase()}" + } catch (e) { + "${params.outdir}/${task.process.tokenize(':')[-1].toLowerCase()}" + } + }, + mode: 'copy', + ] +} diff --git a/tests/prepare_pr/check_consistency.sh b/tests/prepare_pr/check_consistency.sh new file mode 100755 index 00000000..98f1aacb --- /dev/null +++ b/tests/prepare_pr/check_consistency.sh @@ -0,0 +1,32 @@ +#!/usr/bin/env bash + +set -euo pipefail + +PREP_DIR="$(dirname $(realpath "$0"))" +REPO_ROOT="$(dirname $(dirname $PREP_DIR))" + +MAIN_SCRIPT="${REPO_ROOT}/main.nf" +PREP_CONFIG="${PREP_DIR}/.config" +BASE_OUTDIR="${REPO_ROOT}/results/consistency_test" + + +NB_RUNS=4 + +rm -rf ${BASE_OUTDIR} +for i in $(seq 1 $NB_RUNS) +do + outdir=${BASE_OUTDIR}/run_${i} + echo "Running test ${i} with output directory ${outdir}" + nextflow run ${MAIN_SCRIPT} -profile apptainer,test -c ${PREP_CONFIG} --outdir "$outdir" + if [ $i -eq 1 ]; then + reference_outdir="$outdir" + else + res=$(diff --recursive --brief --exclude='pipeline_info' $outdir $reference_outdir | awk -F' ' '{print $3}') + if [ $res ]; then + echo "The following files differ: $res" + exit 1 + else + echo "Run $i is consistent with reference run 1" + fi + fi +done diff --git a/tests/prepare_pr/run.sh b/tests/prepare_pr/run.sh new file mode 100755 index 00000000..ef691bca --- /dev/null +++ b/tests/prepare_pr/run.sh @@ -0,0 +1,8 @@ +#!/usr/bin/env bash + +set -euo pipefail + +PREP_DIR="$(dirname $(realpath "$0"))" + +echo "Checking consistency of outputs" +${PREP_DIR}/check_consistency.sh From b21eafa14057ee5f82cf0a972ed77119c9968fd2 Mon Sep 17 00:00:00 2001 From: Olivier Coen Date: Thu, 18 Jun 2026 17:22:20 +0200 Subject: [PATCH 28/31] set default nb of sections to 10 --- nextflow.config | 2 +- nextflow_schema.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/nextflow.config b/nextflow.config index 749a8eca..90069dbe 100644 --- a/nextflow.config +++ b/nextflow.config @@ -50,7 +50,7 @@ params { gene_length = null gff = null quantile_norm_target_distrib = 'uniform' - nb_sections = 20 + nb_sections = 10 nb_candidates_per_section = 250 // missing value imputation diff --git a/nextflow_schema.json b/nextflow_schema.json index d1ed6b4c..f6eb5ce2 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -316,7 +316,7 @@ "fa_icon": "fas fa-list-ol", "minimum": 1, "help_text": "All genes are divided into sections based on their expression levels. Set this parameter to modify the number of sections.", - "default": 20 + "default": 10 }, "nb_candidates_per_section": { "type": "integer", From 0ae44095979837fbfc3ce4397be030eb490227b0 Mon Sep 17 00:00:00 2001 From: Olivier Coen Date: Thu, 18 Jun 2026 19:15:19 +0200 Subject: [PATCH 29/31] update snapshots --- tests/default.nf.test.snap | 740 ++++++------------ .../local/aggregate_results/main.nf.test.snap | 122 +-- .../compute_gene_statistics/main.nf.test.snap | 30 +- .../main.nf.test.snap | 12 +- .../genorm/compute_m_measure/main.nf.test | 1 - .../compute_m_measure/main.nf.test.snap | 12 +- .../main.nf.test.snap | 10 +- .../local/normfinder/main.nf.test.snap | 20 +- tests/prepare_pr/check_consistency.sh | 2 +- .../local/genorm/main.nf.test.snap | 18 +- 10 files changed, 356 insertions(+), 611 deletions(-) diff --git a/tests/default.nf.test.snap b/tests/default.nf.test.snap index a5ebd286..2d4aaa11 100644 --- a/tests/default.nf.test.snap +++ b/tests/default.nf.test.snap @@ -24,7 +24,7 @@ "python": "3.13.7" }, "COMPUTE_M_MEASURE": { - "polars": "1.39.2", + "polars": "1.41.2", "python": "3.14.3" }, "COMPUTE_STABILITY_SCORES": { @@ -139,28 +139,8 @@ "aggregated/section_1.most_stable_genes_transposed_counts.csv", "aggregated/section_10.most_stable_genes_summary.csv", "aggregated/section_10.most_stable_genes_transposed_counts.csv", - "aggregated/section_11.most_stable_genes_summary.csv", - "aggregated/section_11.most_stable_genes_transposed_counts.csv", - "aggregated/section_12.most_stable_genes_summary.csv", - "aggregated/section_12.most_stable_genes_transposed_counts.csv", - "aggregated/section_13.most_stable_genes_summary.csv", - "aggregated/section_13.most_stable_genes_transposed_counts.csv", - "aggregated/section_14.most_stable_genes_summary.csv", - "aggregated/section_14.most_stable_genes_transposed_counts.csv", - "aggregated/section_15.most_stable_genes_summary.csv", - "aggregated/section_15.most_stable_genes_transposed_counts.csv", - "aggregated/section_16.most_stable_genes_summary.csv", - "aggregated/section_16.most_stable_genes_transposed_counts.csv", - "aggregated/section_17.most_stable_genes_summary.csv", - "aggregated/section_17.most_stable_genes_transposed_counts.csv", - "aggregated/section_18.most_stable_genes_summary.csv", - "aggregated/section_18.most_stable_genes_transposed_counts.csv", - "aggregated/section_19.most_stable_genes_summary.csv", - "aggregated/section_19.most_stable_genes_transposed_counts.csv", "aggregated/section_2.most_stable_genes_summary.csv", "aggregated/section_2.most_stable_genes_transposed_counts.csv", - "aggregated/section_20.most_stable_genes_summary.csv", - "aggregated/section_20.most_stable_genes_transposed_counts.csv", "aggregated/section_3.most_stable_genes_summary.csv", "aggregated/section_3.most_stable_genes_transposed_counts.csv", "aggregated/section_4.most_stable_genes_summary.csv", @@ -231,16 +211,6 @@ "multiqc/multiqc_data/multiqc_gene_statistics.txt", "multiqc/multiqc_data/multiqc_genes_section_1.txt", "multiqc/multiqc_data/multiqc_genes_section_1_1.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_10.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_11.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_12.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_13.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_14.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_15.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_16.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_17.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_18.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_19.txt", "multiqc/multiqc_data/multiqc_genes_section_1_2.txt", "multiqc/multiqc_data/multiqc_genes_section_1_3.txt", "multiqc/multiqc_data/multiqc_genes_section_1_4.txt", @@ -252,16 +222,6 @@ "multiqc/multiqc_data/multiqc_id_mapping_stats.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_1.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_10.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_11.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_12.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_13.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_14.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_15.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_16.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_17.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_18.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_19.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_2.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_3.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_4.txt", @@ -311,50 +271,30 @@ "warnings/renaming_warning_reasons.tsv" ], [ - "all_genes_summary.csv:md5,f18a69be49eefb585b982b0de8d26d75", - "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", - "section_1.most_stable_genes_summary.csv:md5,db6cc6772e2293aa93a8b68e07b057af", - "section_1.most_stable_genes_transposed_counts.csv:md5,1e7052164d6bae17d841d3172b8ed5f9", - "section_10.most_stable_genes_summary.csv:md5,b0451b5db649816b12a50328c5454b4c", - "section_10.most_stable_genes_transposed_counts.csv:md5,d2778f21a0165f18122aa9acf83fbd51", - "section_11.most_stable_genes_summary.csv:md5,f1d5c897210e6b5c31283bd6d86cd61d", - "section_11.most_stable_genes_transposed_counts.csv:md5,57693c4e9ff85cfcf9d5481a868537c7", - "section_12.most_stable_genes_summary.csv:md5,c49bb36563b6ec61e4db4d081c255811", - "section_12.most_stable_genes_transposed_counts.csv:md5,2ed29bef45666d68e81958a39c2222c9", - "section_13.most_stable_genes_summary.csv:md5,48e5f7495f09179c1e32c7c8437e2b09", - "section_13.most_stable_genes_transposed_counts.csv:md5,247ebb3871607eed4af071ff95848eea", - "section_14.most_stable_genes_summary.csv:md5,609c0677476f3f8f11e7f0171e8ec5d0", - "section_14.most_stable_genes_transposed_counts.csv:md5,57f0f83bc23ab7d3c248e80033e8589f", - "section_15.most_stable_genes_summary.csv:md5,a24ac0cc1177379a840e7084eeeb3717", - "section_15.most_stable_genes_transposed_counts.csv:md5,3b525783884d7ea3945888bf308b88c8", - "section_16.most_stable_genes_summary.csv:md5,fa1e603d1adfdf854ea80b966d9a47d8", - "section_16.most_stable_genes_transposed_counts.csv:md5,f3165e5215ab1bf7525a6a6be3b438f8", - "section_17.most_stable_genes_summary.csv:md5,4a0a3476f0c3f201eb82fc63bc5d7fd5", - "section_17.most_stable_genes_transposed_counts.csv:md5,01da56f2c44bc87673540cb3123d86f5", - "section_18.most_stable_genes_summary.csv:md5,57179e08fb2afe65448ca8b644d875f2", - "section_18.most_stable_genes_transposed_counts.csv:md5,25ebbecedf765651ff43393737088e88", - "section_19.most_stable_genes_summary.csv:md5,c7d79747dbf42979857efd44a67081b6", - "section_19.most_stable_genes_transposed_counts.csv:md5,835eab3194a75427b33322a3d81940c5", - "section_2.most_stable_genes_summary.csv:md5,0fca5b3a37cf320d020b7147909347c0", - "section_2.most_stable_genes_transposed_counts.csv:md5,2eae21bc9ba9ef785c350d5d2f9bc643", - "section_20.most_stable_genes_summary.csv:md5,51b66b6be342e5042272cea15be465b7", - "section_20.most_stable_genes_transposed_counts.csv:md5,233e1622c7705ef775e5ddb24206b6da", - "section_3.most_stable_genes_summary.csv:md5,4be76f31c29e7198044289a582684a67", - "section_3.most_stable_genes_transposed_counts.csv:md5,d156f89d0151de18e4d714fb56b485fa", - "section_4.most_stable_genes_summary.csv:md5,00dd2525a080ea5c5d843cd31671d858", - "section_4.most_stable_genes_transposed_counts.csv:md5,f40ce8502fac6852130639b5d7e097b7", - "section_5.most_stable_genes_summary.csv:md5,38d536852892cab35a70b504926dd243", - "section_5.most_stable_genes_transposed_counts.csv:md5,908d009bc3c1b5275a97043c216ff95c", - "section_6.most_stable_genes_summary.csv:md5,6c64d43d5ac05767e24433cda8485979", - "section_6.most_stable_genes_transposed_counts.csv:md5,9a409a5a7e13e928bb197cf73c2cbcca", - "section_7.most_stable_genes_summary.csv:md5,1d01adc55c7368ca43786aec0d1d3c51", - "section_7.most_stable_genes_transposed_counts.csv:md5,77153df2b76b70f73dffe1a45c8e5f44", - "section_8.most_stable_genes_summary.csv:md5,9da3aa8fc0e5a7b6cc7cbbdf9270a974", - "section_8.most_stable_genes_transposed_counts.csv:md5,e09100a0d8c611995ad5ce05f42aa86f", - "section_9.most_stable_genes_summary.csv:md5,fb8c7cca21192773652e786d6b723b41", - "section_9.most_stable_genes_transposed_counts.csv:md5,228369a3eed81a45c27434cba65af14f", + "all_genes_summary.csv:md5,3d1045f80b7201b81070d41bf99132fd", + "custom_content_multiqc_config.yaml:md5,d06ac9dfa6f18df6bcf46181c267ddab", + "section_1.most_stable_genes_summary.csv:md5,de811fc04650ca4be98c529aed94328e", + "section_1.most_stable_genes_transposed_counts.csv:md5,74b993abf7f0f9cfc22206ae21cad027", + "section_10.most_stable_genes_summary.csv:md5,08efcd21d3c00d4e92ef639a3e9dac39", + "section_10.most_stable_genes_transposed_counts.csv:md5,7acbd54cd4eac1a9e0b9ac95b6f19646", + "section_2.most_stable_genes_summary.csv:md5,88ec34c3184cff9af2ba29e238d649d6", + "section_2.most_stable_genes_transposed_counts.csv:md5,8899eb1f22704e6de4496c8c73dce6ea", + "section_3.most_stable_genes_summary.csv:md5,c975cee46e070ed94a93f892615eb498", + "section_3.most_stable_genes_transposed_counts.csv:md5,a05e6d6e087aaba384601734cc18ed01", + "section_4.most_stable_genes_summary.csv:md5,d79a48150407fea4ad51a557a8611726", + "section_4.most_stable_genes_transposed_counts.csv:md5,4fb9ea066c7d561a3b1aee6ebc87062e", + "section_5.most_stable_genes_summary.csv:md5,1cc3940432418d1c5a4bf3c9857019ca", + "section_5.most_stable_genes_transposed_counts.csv:md5,3ba3e5ca67a56bcd54610b3e9531af3c", + "section_6.most_stable_genes_summary.csv:md5,a22e0a1c40f7197e0323128982738603", + "section_6.most_stable_genes_transposed_counts.csv:md5,260e9f88d8bde12d7300c95dafe4dee2", + "section_7.most_stable_genes_summary.csv:md5,4082a0f96210c68a6729d25cde4fc566", + "section_7.most_stable_genes_transposed_counts.csv:md5,2e26d6fb007e7ac53386e69db3a0ba4b", + "section_8.most_stable_genes_summary.csv:md5,138cf1a0f666c8623d680afd9e26c888", + "section_8.most_stable_genes_transposed_counts.csv:md5,4dd2cbff39b6a9788ae2118317ef3334", + "section_9.most_stable_genes_summary.csv:md5,f5f134657956348aade996869c17b21f", + "section_9.most_stable_genes_transposed_counts.csv:md5,a69e653eec1d62e84c376c385cdce0ef", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,f18a69be49eefb585b982b0de8d26d75", + "all_genes_summary.csv:md5,3d1045f80b7201b81070d41bf99132fd", "whole_design.csv:md5,f29515bc2c783e593fb9028127342593", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", "Mus_musculus.GRCm39.116.chr.gff3.gz:md5,8db25f5186d0671a328b41b650af667f", @@ -365,48 +305,28 @@ "mapped_gene_ids.csv:md5,78934d2ac5fe7d863f114c5703f57a06", "whole_design.csv:md5,f29515bc2c783e593fb9028127342593", "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", - "multiqc_gene_statistics.txt:md5,36b23bdf4a7599d089ceb3da6ec9a5f3", - "multiqc_genes_section_1.txt:md5,f14cfb4c77e1aba9b1a0fc672417ba57", - "multiqc_genes_section_1_1.txt:md5,003d9d90a685a697dc7af46acb7159e4", - "multiqc_genes_section_1_10.txt:md5,b161af2b0ebbf597b39affda440e6d52", - "multiqc_genes_section_1_11.txt:md5,7e33c64f62878882b74feb6c9f986fab", - "multiqc_genes_section_1_12.txt:md5,48be4c9ae4cf924f261f8fb3d5bed61b", - "multiqc_genes_section_1_13.txt:md5,f568db4cf4cf55d197fdfb2e2d09915d", - "multiqc_genes_section_1_14.txt:md5,fb273532e9b92928ce32d7d2b2a23118", - "multiqc_genes_section_1_15.txt:md5,13f16f56bfb90d56761f59122bc6e328", - "multiqc_genes_section_1_16.txt:md5,da3ccdf19748fe3df199d248de7bab35", - "multiqc_genes_section_1_17.txt:md5,ebdd58ac2362ddfcab3121132cfae78e", - "multiqc_genes_section_1_18.txt:md5,a7d2018698cc38761ea86739c6e8f7ed", - "multiqc_genes_section_1_19.txt:md5,e23c89807d888134304d94bbdd334c83", - "multiqc_genes_section_1_2.txt:md5,3e17ff546ed5cc1d831d93a3df1b0262", - "multiqc_genes_section_1_3.txt:md5,57b3a8210946380a53a59233bb0efac8", - "multiqc_genes_section_1_4.txt:md5,4c4cc758e65183dd9ed9053b6f32fe97", - "multiqc_genes_section_1_5.txt:md5,4f45057d24a365574441463bdd710df3", - "multiqc_genes_section_1_6.txt:md5,f09499b9c488c2d671c6cbd82d63ce2a", - "multiqc_genes_section_1_7.txt:md5,1af0435850d054bcf0d4e3db966a1540", - "multiqc_genes_section_1_8.txt:md5,b52433e1e5baf9736e8ac5c368e69961", - "multiqc_genes_section_1_9.txt:md5,c7f9f7a6fe915c1ec094d88bd95ecb69", + "multiqc_gene_statistics.txt:md5,5a0b9966186e0af4e745ff2937de3338", + "multiqc_genes_section_1.txt:md5,39b250c80cf9a39f73c8774448d53817", + "multiqc_genes_section_1_1.txt:md5,b4a96777a0533ea98fda06a246e8924c", + "multiqc_genes_section_1_2.txt:md5,f4fb0d5948e7ca188cee9463a9b0518f", + "multiqc_genes_section_1_3.txt:md5,9633c4322b7442018d298d9fdfea440e", + "multiqc_genes_section_1_4.txt:md5,0a63d63ca2f410b96ffbbc4e983c980e", + "multiqc_genes_section_1_5.txt:md5,e1178e47c65e8ad467391e115c2cded4", + "multiqc_genes_section_1_6.txt:md5,ada9fbaf097fe789795b3f6884583ebf", + "multiqc_genes_section_1_7.txt:md5,24e2f905c7585464e219a839b0f1b223", + "multiqc_genes_section_1_8.txt:md5,bc6100a361cb42d51d5f1a9949be10f0", + "multiqc_genes_section_1_9.txt:md5,8c8a12f227ac3e215576db9325ecd937", "multiqc_id_mapping_stats.txt:md5,600e9fa5656a06a3288ea7e6d9fef647", - "multiqc_normalised_expr_distrib_section_1.txt:md5,373bfda6e6d34ae1f18e4fad96bd1f60", - "multiqc_normalised_expr_distrib_section_1_1.txt:md5,b005789a80dfed55cf8a2429ba6eae73", - "multiqc_normalised_expr_distrib_section_1_10.txt:md5,53dc6af70987eff0e15207cd09f6cb05", - "multiqc_normalised_expr_distrib_section_1_11.txt:md5,40fee98384631efb00004d1c481fba1f", - "multiqc_normalised_expr_distrib_section_1_12.txt:md5,83ba471f3ce6bce436d679849e9245e7", - "multiqc_normalised_expr_distrib_section_1_13.txt:md5,acc4b3ac0af3d124ce15d58cc5e2f0ae", - "multiqc_normalised_expr_distrib_section_1_14.txt:md5,81114bcd9251b530fff3bf4e46b5f5b0", - "multiqc_normalised_expr_distrib_section_1_15.txt:md5,6e1868720f1d484cfcc8211e96e7af8b", - "multiqc_normalised_expr_distrib_section_1_16.txt:md5,a7ae0549babb604fc0ccc4c887cf4e52", - "multiqc_normalised_expr_distrib_section_1_17.txt:md5,061ea3f12ec65530eb011cedf9eaa36a", - "multiqc_normalised_expr_distrib_section_1_18.txt:md5,5e07181bd910689b24a660423722e678", - "multiqc_normalised_expr_distrib_section_1_19.txt:md5,e043556a736ba3796da52dc14b7bbe93", - "multiqc_normalised_expr_distrib_section_1_2.txt:md5,54712dc02f593a4328c8d7921b98f6bb", - "multiqc_normalised_expr_distrib_section_1_3.txt:md5,855b5e6d3d2007bde7619ee5dcd3c33e", - "multiqc_normalised_expr_distrib_section_1_4.txt:md5,cbf67a772b1153a6d07334ae28295b0f", - "multiqc_normalised_expr_distrib_section_1_5.txt:md5,67d3342ab80d535fbd1e0862d5ef0fc5", - "multiqc_normalised_expr_distrib_section_1_6.txt:md5,8dc02d83a57bfd8133ec454a2040c5e9", - "multiqc_normalised_expr_distrib_section_1_7.txt:md5,ddd9b568b05a55d5d427edb29e1bc624", - "multiqc_normalised_expr_distrib_section_1_8.txt:md5,12b2f6755273687ef9d87716f47acfb2", - "multiqc_normalised_expr_distrib_section_1_9.txt:md5,ed0c6a62621e1a1999a1fd0bd1a7edd3", + "multiqc_normalised_expr_distrib_section_1.txt:md5,975205b6982d2695a38b984cc0ff395c", + "multiqc_normalised_expr_distrib_section_1_1.txt:md5,27885f75a672b0c36f5521e3e542edea", + "multiqc_normalised_expr_distrib_section_1_2.txt:md5,ca88a8bf61e6c71133845f6f66f2526d", + "multiqc_normalised_expr_distrib_section_1_3.txt:md5,0e7ac026e4ecea46a878f64688a694fa", + "multiqc_normalised_expr_distrib_section_1_4.txt:md5,f2ea6f561e55495046f777cc12c16982", + "multiqc_normalised_expr_distrib_section_1_5.txt:md5,1efe7599717b5d7aa9db2964a3675b11", + "multiqc_normalised_expr_distrib_section_1_6.txt:md5,6fea1e15abaf6c828215df54113ae24d", + "multiqc_normalised_expr_distrib_section_1_7.txt:md5,fd31bde94e4ca3104c8f519671d100c4", + "multiqc_normalised_expr_distrib_section_1_8.txt:md5,e3e62abc9c4c4a213f9cc62443adb78d", + "multiqc_normalised_expr_distrib_section_1_9.txt:md5,23ee9e58e0da44626f273df9b5832822", "multiqc_null_values_filter.txt:md5,64ca3e3acc613e1b85733fd847712a37", "multiqc_ratio_nulls.txt:md5,7063b06cadcf854671bc9cefb51a6fe3", "multiqc_ratio_zeros.txt:md5,7063b06cadcf854671bc9cefb51a6fe3", @@ -422,9 +342,9 @@ "renaming_warning_reasons.tsv:md5,0a11a59b5b547a39ab7a0e4dac622173" ] ], - "timestamp": "2026-06-16T13:26:36.71988868", + "timestamp": "2026-06-18T17:52:40.041030321", "meta": { - "nf-test": "0.9.3", + "nf-test": "0.9.5", "nextflow": "26.04.3" } }, @@ -556,28 +476,8 @@ "aggregated/section_1.most_stable_genes_transposed_counts.csv", "aggregated/section_10.most_stable_genes_summary.csv", "aggregated/section_10.most_stable_genes_transposed_counts.csv", - "aggregated/section_11.most_stable_genes_summary.csv", - "aggregated/section_11.most_stable_genes_transposed_counts.csv", - "aggregated/section_12.most_stable_genes_summary.csv", - "aggregated/section_12.most_stable_genes_transposed_counts.csv", - "aggregated/section_13.most_stable_genes_summary.csv", - "aggregated/section_13.most_stable_genes_transposed_counts.csv", - "aggregated/section_14.most_stable_genes_summary.csv", - "aggregated/section_14.most_stable_genes_transposed_counts.csv", - "aggregated/section_15.most_stable_genes_summary.csv", - "aggregated/section_15.most_stable_genes_transposed_counts.csv", - "aggregated/section_16.most_stable_genes_summary.csv", - "aggregated/section_16.most_stable_genes_transposed_counts.csv", - "aggregated/section_17.most_stable_genes_summary.csv", - "aggregated/section_17.most_stable_genes_transposed_counts.csv", - "aggregated/section_18.most_stable_genes_summary.csv", - "aggregated/section_18.most_stable_genes_transposed_counts.csv", - "aggregated/section_19.most_stable_genes_summary.csv", - "aggregated/section_19.most_stable_genes_transposed_counts.csv", "aggregated/section_2.most_stable_genes_summary.csv", "aggregated/section_2.most_stable_genes_transposed_counts.csv", - "aggregated/section_20.most_stable_genes_summary.csv", - "aggregated/section_20.most_stable_genes_transposed_counts.csv", "aggregated/section_3.most_stable_genes_summary.csv", "aggregated/section_3.most_stable_genes_transposed_counts.csv", "aggregated/section_4.most_stable_genes_summary.csv", @@ -650,16 +550,6 @@ "multiqc/multiqc_data/multiqc_gene_statistics.txt", "multiqc/multiqc_data/multiqc_genes_section_1.txt", "multiqc/multiqc_data/multiqc_genes_section_1_1.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_10.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_11.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_12.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_13.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_14.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_15.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_16.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_17.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_18.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_19.txt", "multiqc/multiqc_data/multiqc_genes_section_1_2.txt", "multiqc/multiqc_data/multiqc_genes_section_1_3.txt", "multiqc/multiqc_data/multiqc_genes_section_1_4.txt", @@ -671,16 +561,6 @@ "multiqc/multiqc_data/multiqc_id_mapping_stats.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_1.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_10.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_11.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_12.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_13.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_14.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_15.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_16.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_17.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_18.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_19.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_2.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_3.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_4.txt", @@ -699,14 +579,47 @@ "multiqc/multiqc_data/multiqc_zero_values_filter.txt", "multiqc/multiqc_plots", "multiqc/multiqc_plots/pdf", + "multiqc/multiqc_plots/pdf/eatlas_all_experiments_metadata.pdf", + "multiqc/multiqc_plots/pdf/eatlas_selected_experiments_metadata.pdf", + "multiqc/multiqc_plots/pdf/gene_statistics.pdf", "multiqc/multiqc_plots/pdf/genes_section_1.pdf", + "multiqc/multiqc_plots/pdf/id_mapping_stats-cnt.pdf", + "multiqc/multiqc_plots/pdf/id_mapping_stats-pct.pdf", "multiqc/multiqc_plots/pdf/normalised_expr_distrib_section_1.pdf", + "multiqc/multiqc_plots/pdf/null_values_filter.pdf", + "multiqc/multiqc_plots/pdf/ratio_nulls.pdf", + "multiqc/multiqc_plots/pdf/ratio_zeros.pdf", + "multiqc/multiqc_plots/pdf/skewness.pdf", + "multiqc/multiqc_plots/pdf/total_gene_id_occurrence_quantiles.pdf", + "multiqc/multiqc_plots/pdf/zero_values_filter.pdf", "multiqc/multiqc_plots/png", + "multiqc/multiqc_plots/png/eatlas_all_experiments_metadata.png", + "multiqc/multiqc_plots/png/eatlas_selected_experiments_metadata.png", + "multiqc/multiqc_plots/png/gene_statistics.png", "multiqc/multiqc_plots/png/genes_section_1.png", + "multiqc/multiqc_plots/png/id_mapping_stats-cnt.png", + "multiqc/multiqc_plots/png/id_mapping_stats-pct.png", "multiqc/multiqc_plots/png/normalised_expr_distrib_section_1.png", + "multiqc/multiqc_plots/png/null_values_filter.png", + "multiqc/multiqc_plots/png/ratio_nulls.png", + "multiqc/multiqc_plots/png/ratio_zeros.png", + "multiqc/multiqc_plots/png/skewness.png", + "multiqc/multiqc_plots/png/total_gene_id_occurrence_quantiles.png", + "multiqc/multiqc_plots/png/zero_values_filter.png", "multiqc/multiqc_plots/svg", + "multiqc/multiqc_plots/svg/eatlas_all_experiments_metadata.svg", + "multiqc/multiqc_plots/svg/eatlas_selected_experiments_metadata.svg", + "multiqc/multiqc_plots/svg/gene_statistics.svg", "multiqc/multiqc_plots/svg/genes_section_1.svg", + "multiqc/multiqc_plots/svg/id_mapping_stats-cnt.svg", + "multiqc/multiqc_plots/svg/id_mapping_stats-pct.svg", "multiqc/multiqc_plots/svg/normalised_expr_distrib_section_1.svg", + "multiqc/multiqc_plots/svg/null_values_filter.svg", + "multiqc/multiqc_plots/svg/ratio_nulls.svg", + "multiqc/multiqc_plots/svg/ratio_zeros.svg", + "multiqc/multiqc_plots/svg/skewness.svg", + "multiqc/multiqc_plots/svg/total_gene_id_occurrence_quantiles.svg", + "multiqc/multiqc_plots/svg/zero_values_filter.svg", "multiqc/multiqc_report.html", "normalised", "normalised/quantile_normalised", @@ -737,50 +650,30 @@ "warnings" ], [ - "all_genes_summary.csv:md5,7fbfbf91e28797d6ceafd2be96e3a3ca", - "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", - "section_1.most_stable_genes_summary.csv:md5,c315ee3fed1d3e942fd0600785a45bfe", + "all_genes_summary.csv:md5,94c9e0ac43a69c2c60ccdc657690788a", + "custom_content_multiqc_config.yaml:md5,d06ac9dfa6f18df6bcf46181c267ddab", + "section_1.most_stable_genes_summary.csv:md5,38ce440df20a4979a21e10bc85316156", "section_1.most_stable_genes_transposed_counts.csv:md5,0a2efcbb26a6e4d83c6894298797d35a", - "section_10.most_stable_genes_summary.csv:md5,460a8f93548fc35731cfa7788c5f0db2", - "section_10.most_stable_genes_transposed_counts.csv:md5,dc06e21a378d948bdea5f5a89160c030", - "section_11.most_stable_genes_summary.csv:md5,dd3f097ee4358d628e1bf31645e1c64d", - "section_11.most_stable_genes_transposed_counts.csv:md5,da8b79435ab95da01c13fd86410eca27", - "section_12.most_stable_genes_summary.csv:md5,e364d50821aa3b3d7278e5b3d2dd3462", - "section_12.most_stable_genes_transposed_counts.csv:md5,4683eb9beccb9fe144c7d508b7b4be7e", - "section_13.most_stable_genes_summary.csv:md5,d212bb4f45b18e62970cd0feab4f3af9", - "section_13.most_stable_genes_transposed_counts.csv:md5,fd95f28f1cf131f9daa180b24a89827f", - "section_14.most_stable_genes_summary.csv:md5,403dad4b53d573c75c3f184f591ebcfc", - "section_14.most_stable_genes_transposed_counts.csv:md5,2dd66b74d7ec2e7cc4e7d35ac9598c3e", - "section_15.most_stable_genes_summary.csv:md5,497867f70b45ac5675b2a3c4120d35de", - "section_15.most_stable_genes_transposed_counts.csv:md5,176e31a01353c4413e38a765595daa2c", - "section_16.most_stable_genes_summary.csv:md5,1a9e9db02c3342ac10fa158de1b4dbb9", - "section_16.most_stable_genes_transposed_counts.csv:md5,aaa341850858da3ffa49fb24a340c832", - "section_17.most_stable_genes_summary.csv:md5,1d85dd4c7d2d4db7d4b60aa36c91f901", - "section_17.most_stable_genes_transposed_counts.csv:md5,ec7678cf6c82265452388f32ac520ae7", - "section_18.most_stable_genes_summary.csv:md5,798e7f8ce84e85da9d3e06091506b087", - "section_18.most_stable_genes_transposed_counts.csv:md5,5f11156d90a06b3a96c9c810a3e06665", - "section_19.most_stable_genes_summary.csv:md5,8b551bac2e4e398c1711d83734242dd1", - "section_19.most_stable_genes_transposed_counts.csv:md5,8ebaee335e467a23abd41b808d5e4bd2", - "section_2.most_stable_genes_summary.csv:md5,8fb69609c4ef2f462709cd9c3242c94e", - "section_2.most_stable_genes_transposed_counts.csv:md5,e44ff535f3a30e0f6d2eac8e67a54550", - "section_20.most_stable_genes_summary.csv:md5,63b8f09a87563f253fd5a5f8f0ff7abe", - "section_20.most_stable_genes_transposed_counts.csv:md5,93669aba9d76bf15525f0d1ceeab4c54", - "section_3.most_stable_genes_summary.csv:md5,93647e14efad38d64102db1f1890c116", - "section_3.most_stable_genes_transposed_counts.csv:md5,643506edbe8d880fd1727cb685be5f14", - "section_4.most_stable_genes_summary.csv:md5,2aa82e9a1bc48b995f05096f5b1220d9", - "section_4.most_stable_genes_transposed_counts.csv:md5,1b37b8e405f420c2ccf61fc61fa8dab5", - "section_5.most_stable_genes_summary.csv:md5,5da13916fec20fe8480dba05d35ed61c", - "section_5.most_stable_genes_transposed_counts.csv:md5,432e4aa346f10b7ab62f2254e221eb02", - "section_6.most_stable_genes_summary.csv:md5,49a22d4fa3650e422b0a401753129c3e", - "section_6.most_stable_genes_transposed_counts.csv:md5,ba09f8d19e6823847a8a3713f83bf23e", - "section_7.most_stable_genes_summary.csv:md5,623ae858c9846a134b5d8cc51f330961", - "section_7.most_stable_genes_transposed_counts.csv:md5,2f7ca1b9baee4facdbfbbdae9feb84f7", - "section_8.most_stable_genes_summary.csv:md5,af8e23d29a04c8f7dafc3d4e76553481", - "section_8.most_stable_genes_transposed_counts.csv:md5,775796d81fb708823f08437e944cac3b", - "section_9.most_stable_genes_summary.csv:md5,b650bf21ffb591e9a7fc05ce3501fab3", - "section_9.most_stable_genes_transposed_counts.csv:md5,f1e14d2bcfa06acc093ac800ddd498a8", + "section_10.most_stable_genes_summary.csv:md5,f0dd7783c9bd7556ddc501c3b39afe2b", + "section_10.most_stable_genes_transposed_counts.csv:md5,8ebaee335e467a23abd41b808d5e4bd2", + "section_2.most_stable_genes_summary.csv:md5,8a4c81c221e58150a5fc97d32b4caa89", + "section_2.most_stable_genes_transposed_counts.csv:md5,5b1a325ebf0639e603b770a7d3dc309e", + "section_3.most_stable_genes_summary.csv:md5,d263ca1c5a153eda933c732149efa7a6", + "section_3.most_stable_genes_transposed_counts.csv:md5,9ba861e07999e3f9cb6ae221e9632cd0", + "section_4.most_stable_genes_summary.csv:md5,f4052c45e13ac09c86732353aa1b5d1e", + "section_4.most_stable_genes_transposed_counts.csv:md5,e7cf310c23bee1201cb332d1e5979366", + "section_5.most_stable_genes_summary.csv:md5,17e9590c412953a6bbeed4219377df52", + "section_5.most_stable_genes_transposed_counts.csv:md5,be0288f2cabc0dd4851f292441fd4ae1", + "section_6.most_stable_genes_summary.csv:md5,81b0964288cac2a3ae347041dee1ec86", + "section_6.most_stable_genes_transposed_counts.csv:md5,58741b54e8640ad89c32e113cea9f2f0", + "section_7.most_stable_genes_summary.csv:md5,20bd8baa6e2750ad127eb4620be96964", + "section_7.most_stable_genes_transposed_counts.csv:md5,fd95f28f1cf131f9daa180b24a89827f", + "section_8.most_stable_genes_summary.csv:md5,e23a77987c18099ec8677e5d3e2c59de", + "section_8.most_stable_genes_transposed_counts.csv:md5,176e31a01353c4413e38a765595daa2c", + "section_9.most_stable_genes_summary.csv:md5,d788b8b1211a5188a5e882a4a244c887", + "section_9.most_stable_genes_transposed_counts.csv:md5,ec7678cf6c82265452388f32ac520ae7", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,7fbfbf91e28797d6ceafd2be96e3a3ca", + "all_genes_summary.csv:md5,94c9e0ac43a69c2c60ccdc657690788a", "whole_design.csv:md5,e6b2a08b65fa02b470829a652593e161", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", "Prunus_persica.Prunus_persica_NCBIv2.63.chr.gff3.gz:md5,b6503b872c8f9f6ee573f9910450a12b", @@ -793,48 +686,28 @@ "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", "multiqc_eatlas_all_experiments_metadata.txt:md5,e3c379628a87ad8b3f1e5cfe7310fcb0", "multiqc_eatlas_selected_experiments_metadata.txt:md5,e3c379628a87ad8b3f1e5cfe7310fcb0", - "multiqc_gene_statistics.txt:md5,cc5e18d24172543d0e222dacd3174ed6", - "multiqc_genes_section_1.txt:md5,f80e99b767fade923cc8f3b98241ad2a", - "multiqc_genes_section_1_1.txt:md5,6db57f53ad056690f0ff677d0266e68b", - "multiqc_genes_section_1_10.txt:md5,5db2c9cf35ec244ec582e935981fc946", - "multiqc_genes_section_1_11.txt:md5,7cc7cbbf4885e76a07e7b3fa8e405f3f", - "multiqc_genes_section_1_12.txt:md5,848d56ae5702de75c29867bc6d147011", - "multiqc_genes_section_1_13.txt:md5,cb4e99257f478dcfd7cb475ea2448c75", - "multiqc_genes_section_1_14.txt:md5,cb5618554bae19592b4b787bab8f9f61", - "multiqc_genes_section_1_15.txt:md5,97ed2ed044cff758936a41d6f6c02aff", - "multiqc_genes_section_1_16.txt:md5,8e32a050b3e7de7657c5acec09c32ca2", - "multiqc_genes_section_1_17.txt:md5,c2cc69bfcde898fd06c0a6ffe1024c3c", - "multiqc_genes_section_1_18.txt:md5,f41528e9d8a43b4184ab64d2f17bb52a", - "multiqc_genes_section_1_19.txt:md5,2b8ae5d9a6f2562a29e153325c0813ae", - "multiqc_genes_section_1_2.txt:md5,78cd06c21827c319833efd4ec70efe25", - "multiqc_genes_section_1_3.txt:md5,fb151cad2523693904042475d88bfaca", - "multiqc_genes_section_1_4.txt:md5,c326966e9bac02847dc0699c903cb946", - "multiqc_genes_section_1_5.txt:md5,1a6779eff51d9daf3052464ec263c788", - "multiqc_genes_section_1_6.txt:md5,5830ccbb7f9d4f0a74a2d63332a73d60", - "multiqc_genes_section_1_7.txt:md5,ab1a948db0e9cb532f415ab3d5512809", - "multiqc_genes_section_1_8.txt:md5,84517b8e3c1a4c926a082d5f382d9ef4", - "multiqc_genes_section_1_9.txt:md5,26639b46fe68763136394edd919cb1e7", + "multiqc_gene_statistics.txt:md5,c99f7253f790b05a2b4e40b4f0eb6924", + "multiqc_genes_section_1.txt:md5,4c1cdc566345d859ac55becd58702f5b", + "multiqc_genes_section_1_1.txt:md5,792c42de3270bb6b4e96e3d9d0b18014", + "multiqc_genes_section_1_2.txt:md5,9e5445c3427bf78d23e629517fe03bd4", + "multiqc_genes_section_1_3.txt:md5,298d2da4679901b9aec21a14588bd754", + "multiqc_genes_section_1_4.txt:md5,52ed282c2e3a762d053e59f3379fb9e3", + "multiqc_genes_section_1_5.txt:md5,84b5ac5920b12d3eba318eeafae5e0cc", + "multiqc_genes_section_1_6.txt:md5,6f634c11c9810babf1d21bc813acac59", + "multiqc_genes_section_1_7.txt:md5,fc893d1e9819abf637d2afc652d91647", + "multiqc_genes_section_1_8.txt:md5,26864dd829936feaf9275c88fb0a1f3c", + "multiqc_genes_section_1_9.txt:md5,6daea6cad644c3278b2c82fed56b78a7", "multiqc_id_mapping_stats.txt:md5,eebd614817761551497a4210022da830", "multiqc_normalised_expr_distrib_section_1.txt:md5,64246c5cfe95c607706e016add963798", - "multiqc_normalised_expr_distrib_section_1_1.txt:md5,8c4978bb9c9ccb0dd972f8cec9b18d6a", - "multiqc_normalised_expr_distrib_section_1_10.txt:md5,46083213747bba0e2088dca07f2f83ea", - "multiqc_normalised_expr_distrib_section_1_11.txt:md5,a011dfe830ab43fabddaba653a2b1fa4", - "multiqc_normalised_expr_distrib_section_1_12.txt:md5,ab782f81b49372a4e5c9944a626b6a9a", - "multiqc_normalised_expr_distrib_section_1_13.txt:md5,82f0e07f3f9ffabb0b6e48f84d58d1d2", - "multiqc_normalised_expr_distrib_section_1_14.txt:md5,6df40a7e9a5e4f9a931f500c203d9ab2", - "multiqc_normalised_expr_distrib_section_1_15.txt:md5,7ed154e158a3a9e23aac4e67350c08e6", - "multiqc_normalised_expr_distrib_section_1_16.txt:md5,7c3cdc1759977181daff37f23b0ccb30", - "multiqc_normalised_expr_distrib_section_1_17.txt:md5,8be3e45bb86d506311e9de275ca8851d", - "multiqc_normalised_expr_distrib_section_1_18.txt:md5,2f8835d4cf0ecc6cdff09368f511aceb", - "multiqc_normalised_expr_distrib_section_1_19.txt:md5,d3ca94b2b22de241043d0dc8427cd916", - "multiqc_normalised_expr_distrib_section_1_2.txt:md5,474883d725945ab5f5a0e62b623ef682", - "multiqc_normalised_expr_distrib_section_1_3.txt:md5,1a05951b56ee6482e9cdc4450790ff07", - "multiqc_normalised_expr_distrib_section_1_4.txt:md5,6249b38d7c8f9765901fa45b5827f837", - "multiqc_normalised_expr_distrib_section_1_5.txt:md5,c4a6c26404eccf1da4c1177984680b54", - "multiqc_normalised_expr_distrib_section_1_6.txt:md5,f6d9cea87f69327052d60042660ee957", - "multiqc_normalised_expr_distrib_section_1_7.txt:md5,fce74ba52ef3365b2bc7475ac59caf44", - "multiqc_normalised_expr_distrib_section_1_8.txt:md5,f0598a1da78201a4d3452c152a528eb9", - "multiqc_normalised_expr_distrib_section_1_9.txt:md5,af174c8ee6a93541bcffad39c0044a8f", + "multiqc_normalised_expr_distrib_section_1_1.txt:md5,d9c9d33da4901548cdb821a9a59ab08b", + "multiqc_normalised_expr_distrib_section_1_2.txt:md5,d72da2688dfc98da37959c93b8b06c07", + "multiqc_normalised_expr_distrib_section_1_3.txt:md5,ef2737d17ddefb755e2847e5ca7aa247", + "multiqc_normalised_expr_distrib_section_1_4.txt:md5,687a95c477d277adeacc7e7915d9784f", + "multiqc_normalised_expr_distrib_section_1_5.txt:md5,7bf6e5d3316c00f92746fbdfba563651", + "multiqc_normalised_expr_distrib_section_1_6.txt:md5,ab782f81b49372a4e5c9944a626b6a9a", + "multiqc_normalised_expr_distrib_section_1_7.txt:md5,6df40a7e9a5e4f9a931f500c203d9ab2", + "multiqc_normalised_expr_distrib_section_1_8.txt:md5,7c3cdc1759977181daff37f23b0ccb30", + "multiqc_normalised_expr_distrib_section_1_9.txt:md5,2f8835d4cf0ecc6cdff09368f511aceb", "multiqc_null_values_filter.txt:md5,9f39dde761d2be72b989b3da51d9b768", "multiqc_ratio_nulls.txt:md5,fd9acca0d6995183d30b6ef2489a596e", "multiqc_ratio_zeros.txt:md5,7de1385d524ab670ffa9ddaf4cb8735b", @@ -853,7 +726,7 @@ "zero_values_filter_stats.csv:md5,a6fdf3c5250dc46a43f79a9ec5a1355d" ] ], - "timestamp": "2026-06-16T15:10:45.839694096", + "timestamp": "2026-06-18T17:31:31.588408269", "meta": { "nf-test": "0.9.5", "nextflow": "26.04.3" @@ -934,7 +807,7 @@ "python": "3.13.7" }, "COMPUTE_M_MEASURE": { - "polars": "1.39.2", + "polars": "1.41.2", "python": "3.14.3" }, "COMPUTE_STABILITY_SCORES": { @@ -1053,28 +926,8 @@ "aggregated/section_1.most_stable_genes_transposed_counts.csv", "aggregated/section_10.most_stable_genes_summary.csv", "aggregated/section_10.most_stable_genes_transposed_counts.csv", - "aggregated/section_11.most_stable_genes_summary.csv", - "aggregated/section_11.most_stable_genes_transposed_counts.csv", - "aggregated/section_12.most_stable_genes_summary.csv", - "aggregated/section_12.most_stable_genes_transposed_counts.csv", - "aggregated/section_13.most_stable_genes_summary.csv", - "aggregated/section_13.most_stable_genes_transposed_counts.csv", - "aggregated/section_14.most_stable_genes_summary.csv", - "aggregated/section_14.most_stable_genes_transposed_counts.csv", - "aggregated/section_15.most_stable_genes_summary.csv", - "aggregated/section_15.most_stable_genes_transposed_counts.csv", - "aggregated/section_16.most_stable_genes_summary.csv", - "aggregated/section_16.most_stable_genes_transposed_counts.csv", - "aggregated/section_17.most_stable_genes_summary.csv", - "aggregated/section_17.most_stable_genes_transposed_counts.csv", - "aggregated/section_18.most_stable_genes_summary.csv", - "aggregated/section_18.most_stable_genes_transposed_counts.csv", - "aggregated/section_19.most_stable_genes_summary.csv", - "aggregated/section_19.most_stable_genes_transposed_counts.csv", "aggregated/section_2.most_stable_genes_summary.csv", "aggregated/section_2.most_stable_genes_transposed_counts.csv", - "aggregated/section_20.most_stable_genes_summary.csv", - "aggregated/section_20.most_stable_genes_transposed_counts.csv", "aggregated/section_3.most_stable_genes_summary.csv", "aggregated/section_3.most_stable_genes_transposed_counts.csv", "aggregated/section_4.most_stable_genes_summary.csv", @@ -1145,16 +998,6 @@ "multiqc/multiqc_data/multiqc_gene_statistics.txt", "multiqc/multiqc_data/multiqc_genes_section_1.txt", "multiqc/multiqc_data/multiqc_genes_section_1_1.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_10.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_11.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_12.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_13.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_14.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_15.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_16.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_17.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_18.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_19.txt", "multiqc/multiqc_data/multiqc_genes_section_1_2.txt", "multiqc/multiqc_data/multiqc_genes_section_1_3.txt", "multiqc/multiqc_data/multiqc_genes_section_1_4.txt", @@ -1166,16 +1009,6 @@ "multiqc/multiqc_data/multiqc_id_mapping_stats.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_1.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_10.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_11.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_12.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_13.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_14.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_15.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_16.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_17.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_18.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_19.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_2.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_3.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_4.txt", @@ -1255,50 +1088,30 @@ "warnings" ], [ - "all_genes_summary.csv:md5,786ff07cceec4184ef0b47613f64e332", - "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", - "section_1.most_stable_genes_summary.csv:md5,5b46d17cf4c50fe4ce3abc2ada830f53", + "all_genes_summary.csv:md5,1bc386c5bce0cd457765bd94fbd150a7", + "custom_content_multiqc_config.yaml:md5,d06ac9dfa6f18df6bcf46181c267ddab", + "section_1.most_stable_genes_summary.csv:md5,97cda6ff1ffc66124a6a83bbe9f255d8", "section_1.most_stable_genes_transposed_counts.csv:md5,2302a7e828783d4ce89b46e80adc8d84", - "section_10.most_stable_genes_summary.csv:md5,698b20cb6d46c43167ae43ae76b351e3", - "section_10.most_stable_genes_transposed_counts.csv:md5,51ca0cdc83829e39582a849e030a6dc5", - "section_11.most_stable_genes_summary.csv:md5,c21dacafd3132e1d64cbe495a8e1b7c6", - "section_11.most_stable_genes_transposed_counts.csv:md5,9d6aa20d12bf2b6e1213993067bf0d4b", - "section_12.most_stable_genes_summary.csv:md5,e165ce391b0f03d005f6c9a993e31980", - "section_12.most_stable_genes_transposed_counts.csv:md5,217f480bebb3ffabd260c17e1b4e4aed", - "section_13.most_stable_genes_summary.csv:md5,73552ac7feb7d915f830079b7fa30ec4", - "section_13.most_stable_genes_transposed_counts.csv:md5,6b58a44db420f6d21cdf45b4d9793680", - "section_14.most_stable_genes_summary.csv:md5,a11c4ccf303a872e7bd3034acf826c6a", - "section_14.most_stable_genes_transposed_counts.csv:md5,73738ee8e412274ac4ad429198d472db", - "section_15.most_stable_genes_summary.csv:md5,25d1d9d130414e81180d0773fd91fcfa", - "section_15.most_stable_genes_transposed_counts.csv:md5,3a497a88645195b5932eff28da8f1d32", - "section_16.most_stable_genes_summary.csv:md5,e89bf3e728b9f1b24f1aa816dea80692", - "section_16.most_stable_genes_transposed_counts.csv:md5,d70dda89b6c2e5d71340ea9eba823e85", - "section_17.most_stable_genes_summary.csv:md5,3e54511f09cb2cd82c55e7f2cae00f83", - "section_17.most_stable_genes_transposed_counts.csv:md5,7973ae9d8da4db4655d5f9e45d4f9c9e", - "section_18.most_stable_genes_summary.csv:md5,413665b7fed8920541a69951f304dd2c", - "section_18.most_stable_genes_transposed_counts.csv:md5,a017b6d06209d068957f28fa607b0064", - "section_19.most_stable_genes_summary.csv:md5,78400eb7e61cb6ea051761cdada9b415", - "section_19.most_stable_genes_transposed_counts.csv:md5,cf87014273ef2158f055468d790ac5ea", - "section_2.most_stable_genes_summary.csv:md5,9b9e77edae9fe4fca1e660fdb0477bc9", - "section_2.most_stable_genes_transposed_counts.csv:md5,9bc27b453b9f1dc8ed96e6fa41063362", - "section_20.most_stable_genes_summary.csv:md5,45a0873c3d6cb97f907ed460d39118a1", - "section_20.most_stable_genes_transposed_counts.csv:md5,1d34b1808d52e66b374ef214bb063d0f", - "section_3.most_stable_genes_summary.csv:md5,3c162862f5034deb5079ab9f884573e2", - "section_3.most_stable_genes_transposed_counts.csv:md5,7c7e541fe6f2957fc6f815d6030447c8", - "section_4.most_stable_genes_summary.csv:md5,893483d3e02be42ef6f1b6fec01a1e4a", - "section_4.most_stable_genes_transposed_counts.csv:md5,fc478e7c96dd636f0cfeac031e0e79cd", - "section_5.most_stable_genes_summary.csv:md5,7c1c084884f33d51f54e5480a6337c60", - "section_5.most_stable_genes_transposed_counts.csv:md5,1bb45be135b340b24f7c015268b1b05d", - "section_6.most_stable_genes_summary.csv:md5,6487ae5baf7a74134aa27c47533b5c3b", - "section_6.most_stable_genes_transposed_counts.csv:md5,47d7929fc0bc7dd5400c06677b008a87", - "section_7.most_stable_genes_summary.csv:md5,dc9bbe41b9296a1a51bced292afaf360", - "section_7.most_stable_genes_transposed_counts.csv:md5,e3da14b0bdd20ce88a0fc36c5de4e51b", - "section_8.most_stable_genes_summary.csv:md5,4faf041f6b9128822f8e3e2baf518076", - "section_8.most_stable_genes_transposed_counts.csv:md5,0aa778a6183f925016d716dccdb3cf17", - "section_9.most_stable_genes_summary.csv:md5,51c60f882f80fc7c2c0beeccaff25350", - "section_9.most_stable_genes_transposed_counts.csv:md5,4013f23eee41462b86cd685bc17087ce", + "section_10.most_stable_genes_summary.csv:md5,facd8c570b3e9a5ce6af4de92157d17e", + "section_10.most_stable_genes_transposed_counts.csv:md5,cf87014273ef2158f055468d790ac5ea", + "section_2.most_stable_genes_summary.csv:md5,984a5bdd7a913cacf02ede9037d8ecf3", + "section_2.most_stable_genes_transposed_counts.csv:md5,7c7e541fe6f2957fc6f815d6030447c8", + "section_3.most_stable_genes_summary.csv:md5,592cd0d98504f82d0265dc529085df1f", + "section_3.most_stable_genes_transposed_counts.csv:md5,1bb45be135b340b24f7c015268b1b05d", + "section_4.most_stable_genes_summary.csv:md5,6b5d3ea7dd9069ada07be944383d55e9", + "section_4.most_stable_genes_transposed_counts.csv:md5,e3da14b0bdd20ce88a0fc36c5de4e51b", + "section_5.most_stable_genes_summary.csv:md5,68de5611fa0a63f8f78bc27dd1ce66b6", + "section_5.most_stable_genes_transposed_counts.csv:md5,4013f23eee41462b86cd685bc17087ce", + "section_6.most_stable_genes_summary.csv:md5,1063996857de807fab21143cf8a31227", + "section_6.most_stable_genes_transposed_counts.csv:md5,9d6aa20d12bf2b6e1213993067bf0d4b", + "section_7.most_stable_genes_summary.csv:md5,ce271248af7410ff2a9d920008ede923", + "section_7.most_stable_genes_transposed_counts.csv:md5,6b58a44db420f6d21cdf45b4d9793680", + "section_8.most_stable_genes_summary.csv:md5,a56e2759399a23aed3407f5dc3e5ae12", + "section_8.most_stable_genes_transposed_counts.csv:md5,3a497a88645195b5932eff28da8f1d32", + "section_9.most_stable_genes_summary.csv:md5,24fcd2d6f426023c9d979a3e82283f50", + "section_9.most_stable_genes_transposed_counts.csv:md5,7973ae9d8da4db4655d5f9e45d4f9c9e", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,786ff07cceec4184ef0b47613f64e332", + "all_genes_summary.csv:md5,1bc386c5bce0cd457765bd94fbd150a7", "whole_design.csv:md5,d3aa542c4ad07d0051a84482fe6cd81c", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", "Arabidopsis_thaliana.TAIR10.63.gff3.gz:md5,ee02d70eb655f0440af19a3f3f40b15c", @@ -1309,48 +1122,28 @@ "mapped_gene_ids.csv:md5,42491ef436cce231258c0358e1af5745", "whole_design.csv:md5,d3aa542c4ad07d0051a84482fe6cd81c", "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", - "multiqc_gene_statistics.txt:md5,5517d14e8babc5addf7043eceb21d1cd", - "multiqc_genes_section_1.txt:md5,eb65d7b27104950eb9d02eb37d5bd282", - "multiqc_genes_section_1_1.txt:md5,fedeacbedc78e31ad7a7be6c7fb344b3", - "multiqc_genes_section_1_10.txt:md5,1ca1537f089629abe0ad9bd217f09131", - "multiqc_genes_section_1_11.txt:md5,f0b8df84a99b2d5ef557ee8896217095", - "multiqc_genes_section_1_12.txt:md5,89e8c3dcd3d970735de56ed6dd618caf", - "multiqc_genes_section_1_13.txt:md5,b7b1b4265c236ba1c8ed7358e34a6dd6", - "multiqc_genes_section_1_14.txt:md5,831514e662296f82a3f0370ae64b1503", - "multiqc_genes_section_1_15.txt:md5,92aa9a142514894d965ce5f41bee781d", - "multiqc_genes_section_1_16.txt:md5,e905ff948cccf03b24177517e39078ad", - "multiqc_genes_section_1_17.txt:md5,920067a6137cbded388b393f4a84d0bf", - "multiqc_genes_section_1_18.txt:md5,e46e3add55d144e8dc04087498b73b65", - "multiqc_genes_section_1_19.txt:md5,72e10039958b0d2667136688b35411cf", - "multiqc_genes_section_1_2.txt:md5,1b67609704430312e038b69305376cd9", - "multiqc_genes_section_1_3.txt:md5,0f30dcf90048d3c6639c02da58fb108e", - "multiqc_genes_section_1_4.txt:md5,97c78069a6468273af04a005b4613929", - "multiqc_genes_section_1_5.txt:md5,a648bf023d6900ba3de8c71738454465", - "multiqc_genes_section_1_6.txt:md5,e93f14e100a4786e0692ecd2aaaa4268", - "multiqc_genes_section_1_7.txt:md5,5b40e07ec2d149f1ac51f4b1b9c71a03", - "multiqc_genes_section_1_8.txt:md5,55bd0a3841f6c08ee84fee4714c5244c", - "multiqc_genes_section_1_9.txt:md5,c4b4b411ce776f71a43655f9e84a7be4", + "multiqc_gene_statistics.txt:md5,da08a978948259a32ce2bcfbf9541dd0", + "multiqc_genes_section_1.txt:md5,937d9ce57a0963fccbd6f14d6551db1d", + "multiqc_genes_section_1_1.txt:md5,0cc498951e3cc0b91770894b21c2d667", + "multiqc_genes_section_1_2.txt:md5,039b68c69548d1fc2fb481d5726c4f6c", + "multiqc_genes_section_1_3.txt:md5,fb1e99608cc4074995813c5c1430ba80", + "multiqc_genes_section_1_4.txt:md5,37a5ee2d9f25bbda442ae5cd5a610ba0", + "multiqc_genes_section_1_5.txt:md5,8950a5ec6ad7257b6bb41c3cea5cf1b9", + "multiqc_genes_section_1_6.txt:md5,58aa7c7c49f81a30b618162b11e96e53", + "multiqc_genes_section_1_7.txt:md5,361f924e9a7c70617795dc23ff3e1c91", + "multiqc_genes_section_1_8.txt:md5,0d6295d4a4ea7d74b2649f4dbebd9789", + "multiqc_genes_section_1_9.txt:md5,1d95c1814d532a3edbd65260482cc700", "multiqc_id_mapping_stats.txt:md5,49023d9842e01da40e2c50e9659802d5", "multiqc_normalised_expr_distrib_section_1.txt:md5,844c1ef9f358b4051897698293ca6dab", - "multiqc_normalised_expr_distrib_section_1_1.txt:md5,184222ef4d2c47f39a7b0ac981f275c6", - "multiqc_normalised_expr_distrib_section_1_10.txt:md5,17778a66446dfa37b81b0691abe703f7", - "multiqc_normalised_expr_distrib_section_1_11.txt:md5,fead0770f22c316593d6d2353d94e9f7", - "multiqc_normalised_expr_distrib_section_1_12.txt:md5,8cacaee9d1bedf3ec8a4d66f3bab1f7f", - "multiqc_normalised_expr_distrib_section_1_13.txt:md5,2567a9943c1c49e575b4c2fe6a3a3185", - "multiqc_normalised_expr_distrib_section_1_14.txt:md5,02d40fd44721ec46f59736221500078a", - "multiqc_normalised_expr_distrib_section_1_15.txt:md5,0c89badaf4e435df8526ae8e9f4802ab", - "multiqc_normalised_expr_distrib_section_1_16.txt:md5,3fe2b8ffacda4c1f8ca761eb7a1e1086", - "multiqc_normalised_expr_distrib_section_1_17.txt:md5,c86c0cf8c3e4eab7a61979f622f126d7", - "multiqc_normalised_expr_distrib_section_1_18.txt:md5,17554bf8a45621ecdedefe2a9b79835e", - "multiqc_normalised_expr_distrib_section_1_19.txt:md5,28b90411fa811ba678f237e9ee6f20a2", - "multiqc_normalised_expr_distrib_section_1_2.txt:md5,497e14e81938bb4bedb9e2d9758b4e4c", - "multiqc_normalised_expr_distrib_section_1_3.txt:md5,263299c6859ae704ea0ec5c8b9fd1841", - "multiqc_normalised_expr_distrib_section_1_4.txt:md5,424d1381b060787e36329bc426b6e6e8", - "multiqc_normalised_expr_distrib_section_1_5.txt:md5,5cf50de370286b587dfa57d49c406290", - "multiqc_normalised_expr_distrib_section_1_6.txt:md5,7519b35cd531fa258e37164f33a6b21d", - "multiqc_normalised_expr_distrib_section_1_7.txt:md5,1b8430bff5d6f72a1ecf1118e80ad947", - "multiqc_normalised_expr_distrib_section_1_8.txt:md5,9c2d6732b306057707e4baa7e517e1f0", - "multiqc_normalised_expr_distrib_section_1_9.txt:md5,b91ee53728b0dc197e9a476fc7677b67", + "multiqc_normalised_expr_distrib_section_1_1.txt:md5,497e14e81938bb4bedb9e2d9758b4e4c", + "multiqc_normalised_expr_distrib_section_1_2.txt:md5,424d1381b060787e36329bc426b6e6e8", + "multiqc_normalised_expr_distrib_section_1_3.txt:md5,7519b35cd531fa258e37164f33a6b21d", + "multiqc_normalised_expr_distrib_section_1_4.txt:md5,9c2d6732b306057707e4baa7e517e1f0", + "multiqc_normalised_expr_distrib_section_1_5.txt:md5,17778a66446dfa37b81b0691abe703f7", + "multiqc_normalised_expr_distrib_section_1_6.txt:md5,8cacaee9d1bedf3ec8a4d66f3bab1f7f", + "multiqc_normalised_expr_distrib_section_1_7.txt:md5,02d40fd44721ec46f59736221500078a", + "multiqc_normalised_expr_distrib_section_1_8.txt:md5,3fe2b8ffacda4c1f8ca761eb7a1e1086", + "multiqc_normalised_expr_distrib_section_1_9.txt:md5,17554bf8a45621ecdedefe2a9b79835e", "multiqc_null_values_filter.txt:md5,91eb32460cdebb4e08ae0b1ee559cf59", "multiqc_ratio_nulls.txt:md5,bcf9aa423c404f2e7f8ea84735810959", "multiqc_ratio_zeros.txt:md5,c743a773da2858b59923eff1873c26d0", @@ -1366,7 +1159,7 @@ "zero_values_filter_stats.csv:md5,766d888e41179e8a785f634b3b606bc9" ] ], - "timestamp": "2026-06-16T15:38:05.405949025", + "timestamp": "2026-06-18T18:06:59.147862162", "meta": { "nf-test": "0.9.5", "nextflow": "26.04.3" @@ -1382,28 +1175,8 @@ "aggregated/section_1.most_stable_genes_transposed_counts.csv", "aggregated/section_10.most_stable_genes_summary.csv", "aggregated/section_10.most_stable_genes_transposed_counts.csv", - "aggregated/section_11.most_stable_genes_summary.csv", - "aggregated/section_11.most_stable_genes_transposed_counts.csv", - "aggregated/section_12.most_stable_genes_summary.csv", - "aggregated/section_12.most_stable_genes_transposed_counts.csv", - "aggregated/section_13.most_stable_genes_summary.csv", - "aggregated/section_13.most_stable_genes_transposed_counts.csv", - "aggregated/section_14.most_stable_genes_summary.csv", - "aggregated/section_14.most_stable_genes_transposed_counts.csv", - "aggregated/section_15.most_stable_genes_summary.csv", - "aggregated/section_15.most_stable_genes_transposed_counts.csv", - "aggregated/section_16.most_stable_genes_summary.csv", - "aggregated/section_16.most_stable_genes_transposed_counts.csv", - "aggregated/section_17.most_stable_genes_summary.csv", - "aggregated/section_17.most_stable_genes_transposed_counts.csv", - "aggregated/section_18.most_stable_genes_summary.csv", - "aggregated/section_18.most_stable_genes_transposed_counts.csv", - "aggregated/section_19.most_stable_genes_summary.csv", - "aggregated/section_19.most_stable_genes_transposed_counts.csv", "aggregated/section_2.most_stable_genes_summary.csv", "aggregated/section_2.most_stable_genes_transposed_counts.csv", - "aggregated/section_20.most_stable_genes_summary.csv", - "aggregated/section_20.most_stable_genes_transposed_counts.csv", "aggregated/section_3.most_stable_genes_summary.csv", "aggregated/section_3.most_stable_genes_transposed_counts.csv", "aggregated/section_4.most_stable_genes_summary.csv", @@ -1477,16 +1250,6 @@ "multiqc/multiqc_data/multiqc_gene_statistics.txt", "multiqc/multiqc_data/multiqc_genes_section_1.txt", "multiqc/multiqc_data/multiqc_genes_section_1_1.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_10.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_11.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_12.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_13.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_14.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_15.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_16.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_17.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_18.txt", - "multiqc/multiqc_data/multiqc_genes_section_1_19.txt", "multiqc/multiqc_data/multiqc_genes_section_1_2.txt", "multiqc/multiqc_data/multiqc_genes_section_1_3.txt", "multiqc/multiqc_data/multiqc_genes_section_1_4.txt", @@ -1498,16 +1261,6 @@ "multiqc/multiqc_data/multiqc_id_mapping_stats.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_1.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_10.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_11.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_12.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_13.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_14.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_15.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_16.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_17.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_18.txt", - "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_19.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_2.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_3.txt", "multiqc/multiqc_data/multiqc_normalised_expr_distrib_section_1_4.txt", @@ -1526,14 +1279,47 @@ "multiqc/multiqc_data/multiqc_zero_values_filter.txt", "multiqc/multiqc_plots", "multiqc/multiqc_plots/pdf", + "multiqc/multiqc_plots/pdf/eatlas_all_experiments_metadata.pdf", + "multiqc/multiqc_plots/pdf/eatlas_selected_experiments_metadata.pdf", + "multiqc/multiqc_plots/pdf/gene_statistics.pdf", "multiqc/multiqc_plots/pdf/genes_section_1.pdf", + "multiqc/multiqc_plots/pdf/id_mapping_stats-cnt.pdf", + "multiqc/multiqc_plots/pdf/id_mapping_stats-pct.pdf", "multiqc/multiqc_plots/pdf/normalised_expr_distrib_section_1.pdf", + "multiqc/multiqc_plots/pdf/null_values_filter.pdf", + "multiqc/multiqc_plots/pdf/ratio_nulls.pdf", + "multiqc/multiqc_plots/pdf/ratio_zeros.pdf", + "multiqc/multiqc_plots/pdf/skewness.pdf", + "multiqc/multiqc_plots/pdf/total_gene_id_occurrence_quantiles.pdf", + "multiqc/multiqc_plots/pdf/zero_values_filter.pdf", "multiqc/multiqc_plots/png", + "multiqc/multiqc_plots/png/eatlas_all_experiments_metadata.png", + "multiqc/multiqc_plots/png/eatlas_selected_experiments_metadata.png", + "multiqc/multiqc_plots/png/gene_statistics.png", "multiqc/multiqc_plots/png/genes_section_1.png", + "multiqc/multiqc_plots/png/id_mapping_stats-cnt.png", + "multiqc/multiqc_plots/png/id_mapping_stats-pct.png", "multiqc/multiqc_plots/png/normalised_expr_distrib_section_1.png", + "multiqc/multiqc_plots/png/null_values_filter.png", + "multiqc/multiqc_plots/png/ratio_nulls.png", + "multiqc/multiqc_plots/png/ratio_zeros.png", + "multiqc/multiqc_plots/png/skewness.png", + "multiqc/multiqc_plots/png/total_gene_id_occurrence_quantiles.png", + "multiqc/multiqc_plots/png/zero_values_filter.png", "multiqc/multiqc_plots/svg", + "multiqc/multiqc_plots/svg/eatlas_all_experiments_metadata.svg", + "multiqc/multiqc_plots/svg/eatlas_selected_experiments_metadata.svg", + "multiqc/multiqc_plots/svg/gene_statistics.svg", "multiqc/multiqc_plots/svg/genes_section_1.svg", + "multiqc/multiqc_plots/svg/id_mapping_stats-cnt.svg", + "multiqc/multiqc_plots/svg/id_mapping_stats-pct.svg", "multiqc/multiqc_plots/svg/normalised_expr_distrib_section_1.svg", + "multiqc/multiqc_plots/svg/null_values_filter.svg", + "multiqc/multiqc_plots/svg/ratio_nulls.svg", + "multiqc/multiqc_plots/svg/ratio_zeros.svg", + "multiqc/multiqc_plots/svg/skewness.svg", + "multiqc/multiqc_plots/svg/total_gene_id_occurrence_quantiles.svg", + "multiqc/multiqc_plots/svg/zero_values_filter.svg", "multiqc/multiqc_report.html", "normalised", "normalised/quantile_normalised", @@ -1564,50 +1350,30 @@ "warnings" ], [ - "all_genes_summary.csv:md5,3bd93d2f402672441f000a4a4e7d3f68", - "custom_content_multiqc_config.yaml:md5,e048085491cb74658cf363545b1278fe", - "section_1.most_stable_genes_summary.csv:md5,67c52cff90a3c15331a429f3bf040d0e", + "all_genes_summary.csv:md5,88e5683d9a62c68d37a83539cea98b26", + "custom_content_multiqc_config.yaml:md5,d06ac9dfa6f18df6bcf46181c267ddab", + "section_1.most_stable_genes_summary.csv:md5,23f2eba50ad940141e78e4157f5fc664", "section_1.most_stable_genes_transposed_counts.csv:md5,a5e4cf25fd23e2db590ecebfd2a873d1", - "section_10.most_stable_genes_summary.csv:md5,95580c2e6893092a9191de980ebd812d", - "section_10.most_stable_genes_transposed_counts.csv:md5,06528b2af994baa4e212746110a097cd", - "section_11.most_stable_genes_summary.csv:md5,4ef35103b8ebd7e8e9a4a845ab2d371c", - "section_11.most_stable_genes_transposed_counts.csv:md5,ce9edd9b3b0e2f5747116aec16c73e12", - "section_12.most_stable_genes_summary.csv:md5,6194d49bbf383aafd96191b234dd3069", - "section_12.most_stable_genes_transposed_counts.csv:md5,7452e1db59616a998cf16f312e3d1ad6", - "section_13.most_stable_genes_summary.csv:md5,1b39e48cae304d1e6f04c29fed18ee1a", - "section_13.most_stable_genes_transposed_counts.csv:md5,38a23ce6ce5b48e4ca7615a15dc5b18b", - "section_14.most_stable_genes_summary.csv:md5,ca6f92e1f9367f7b0440b3f254188fb3", - "section_14.most_stable_genes_transposed_counts.csv:md5,35fbff9784dcb06819678afb13a6769a", - "section_15.most_stable_genes_summary.csv:md5,4c986004bab4cc3a76fe1ec9040056b7", - "section_15.most_stable_genes_transposed_counts.csv:md5,6accdf8ad8f8378b8a0682f4f7f7a597", - "section_16.most_stable_genes_summary.csv:md5,5b0d41bd7c117f9782dc9eeede2c148d", - "section_16.most_stable_genes_transposed_counts.csv:md5,6357907c8f6a8b7988c61c9e6ada9f6e", - "section_17.most_stable_genes_summary.csv:md5,bf96086444a05ffa342a8f3c4631141b", - "section_17.most_stable_genes_transposed_counts.csv:md5,a9a457a095c132bae09e8779af945b62", - "section_18.most_stable_genes_summary.csv:md5,ca72996fcb221c1c2500a2f1658f51da", - "section_18.most_stable_genes_transposed_counts.csv:md5,dd14a351f6dce9a7f895c796fa8e79f6", - "section_19.most_stable_genes_summary.csv:md5,856298ae115808b42561f2025385c8bc", - "section_19.most_stable_genes_transposed_counts.csv:md5,c8a7652dfd135f2aa2eef44ca727c3e7", - "section_2.most_stable_genes_summary.csv:md5,6037f40559f2ce180ea96c8434ddeed4", - "section_2.most_stable_genes_transposed_counts.csv:md5,3c340fb167339ac2c0cfc928a55c3bd2", - "section_20.most_stable_genes_summary.csv:md5,cddedbcb2f905b8f9f2f3caec9420f7d", - "section_20.most_stable_genes_transposed_counts.csv:md5,ad59686b4d1320ca6d9efda586f35ca0", - "section_3.most_stable_genes_summary.csv:md5,9ae0b5b405cc451ad24ad287b186a21b", - "section_3.most_stable_genes_transposed_counts.csv:md5,98aa76173fd0b61b35b2cf7a276958bb", - "section_4.most_stable_genes_summary.csv:md5,d9d435fdc2e5d5f4b07917969cb9673d", - "section_4.most_stable_genes_transposed_counts.csv:md5,4b9d9f4c6857ab6c89f82feba0dad9a4", - "section_5.most_stable_genes_summary.csv:md5,b42c25ba8409dc24fcd45a56ead78914", - "section_5.most_stable_genes_transposed_counts.csv:md5,0593d5f4a362c56e20c96ee4a08ac98b", - "section_6.most_stable_genes_summary.csv:md5,8412cce2493bb5487d9b0ee5ce6ae1b1", - "section_6.most_stable_genes_transposed_counts.csv:md5,7f00bd6047a37a60c90bc761fbd1ad3b", - "section_7.most_stable_genes_summary.csv:md5,2c7f94cd58d805b9e5f6e96c919599c6", - "section_7.most_stable_genes_transposed_counts.csv:md5,558a3c7bcb92d101b998bf69513de1d8", - "section_8.most_stable_genes_summary.csv:md5,ab14e990a81a9bdc8810078db2eeb2b7", - "section_8.most_stable_genes_transposed_counts.csv:md5,53c96ae9adddbb8b838585ce2f121f5a", - "section_9.most_stable_genes_summary.csv:md5,59580f30e25a67d7e92a985f9d6e0f1f", - "section_9.most_stable_genes_transposed_counts.csv:md5,8d3f0fd754a0d1d4ecfc174dad857238", + "section_10.most_stable_genes_summary.csv:md5,08ad704dad4091c24dfb8373b000b200", + "section_10.most_stable_genes_transposed_counts.csv:md5,c8a7652dfd135f2aa2eef44ca727c3e7", + "section_2.most_stable_genes_summary.csv:md5,8af5973d138e4093d5917ba41f89fb4b", + "section_2.most_stable_genes_transposed_counts.csv:md5,c5dea7d3b7332e6a957520c2511b8f69", + "section_3.most_stable_genes_summary.csv:md5,a8a7a09dc86785a99ca61b9f1ccab3dd", + "section_3.most_stable_genes_transposed_counts.csv:md5,3daa0394616acafddaa88c628a17b898", + "section_4.most_stable_genes_summary.csv:md5,7a1706a296db373989b586c605cbbadc", + "section_4.most_stable_genes_transposed_counts.csv:md5,a6edf473bf43c256c41dd04600799c14", + "section_5.most_stable_genes_summary.csv:md5,207b4e632d20613d210244b3c4e7523b", + "section_5.most_stable_genes_transposed_counts.csv:md5,906441df1853d9956f35ad5af509f84a", + "section_6.most_stable_genes_summary.csv:md5,d4eeb1370ddb0f5e651d88af95514659", + "section_6.most_stable_genes_transposed_counts.csv:md5,70d2a4b13784667f5b3cd5a32ddd03db", + "section_7.most_stable_genes_summary.csv:md5,547b50cbd6d155944ba234f266a0bd22", + "section_7.most_stable_genes_transposed_counts.csv:md5,e30cdd4f7e37df2686b108030d6d7baf", + "section_8.most_stable_genes_summary.csv:md5,138eae8f1fcd96f941dd0b2ed112ccc5", + "section_8.most_stable_genes_transposed_counts.csv:md5,6accdf8ad8f8378b8a0682f4f7f7a597", + "section_9.most_stable_genes_summary.csv:md5,478cbd082296f1e776885835c3fdbc6b", + "section_9.most_stable_genes_transposed_counts.csv:md5,a9a457a095c132bae09e8779af945b62", "style.css:md5,e6ba182eaf06980dbda49920efbf6e64", - "all_genes_summary.csv:md5,3bd93d2f402672441f000a4a4e7d3f68", + "all_genes_summary.csv:md5,88e5683d9a62c68d37a83539cea98b26", "whole_design.csv:md5,fbd18d011d7d855452e5a30a303afcbf", "environment.yml:md5,dd081780e1f98d34b13289d019f8bb5b", "Beta_vulgaris.RefBeet-1.2.2.63.gff3.gz:md5,e711481dc9292c4b7c6422b9b4dc7d9d", @@ -1620,48 +1386,28 @@ "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", "multiqc_eatlas_all_experiments_metadata.txt:md5,6ea661253a55d41687e32fea72961063", "multiqc_eatlas_selected_experiments_metadata.txt:md5,8b7643e0ef8eaaa3fa72f7103fd7ccee", - "multiqc_gene_statistics.txt:md5,a7fe844321bdc07a104cb7f6b47e0075", - "multiqc_genes_section_1.txt:md5,b3bdce79f3abbaaa5411f00dc9124091", - "multiqc_genes_section_1_1.txt:md5,b2c842dab4ec2298117dcc04c47cec16", - "multiqc_genes_section_1_10.txt:md5,8bc49a49f6a6967f2443831bfcb3d846", - "multiqc_genes_section_1_11.txt:md5,fd76100a211f14f9b80b2599cb56d2e0", - "multiqc_genes_section_1_12.txt:md5,36a46ea8a77c58c416d1613875cc6602", - "multiqc_genes_section_1_13.txt:md5,2fc42e355addb3239cc9c380cf742263", - "multiqc_genes_section_1_14.txt:md5,98c341cb90776890172e8e0bd92017a4", - "multiqc_genes_section_1_15.txt:md5,c5d77e362c183b5fe73937850f3a34a4", - "multiqc_genes_section_1_16.txt:md5,109f673e5129d117d0a1b6528457dd87", - "multiqc_genes_section_1_17.txt:md5,9f9f97f85d6605978b286942ac69ba2c", - "multiqc_genes_section_1_18.txt:md5,ab6c6e6e1a658ba92baa6dd2b68f56bf", - "multiqc_genes_section_1_19.txt:md5,5d4910983359e122e07fdbe2aeda10f7", - "multiqc_genes_section_1_2.txt:md5,61a4cad3929028e901871b3f571d836b", - "multiqc_genes_section_1_3.txt:md5,ad31ec3eee4ee79e841a0e6af1913a38", - "multiqc_genes_section_1_4.txt:md5,f180fa5c862ce58c6575f4a86f9d0139", - "multiqc_genes_section_1_5.txt:md5,98f0a1cc04d925a1dfbf8848e7244916", - "multiqc_genes_section_1_6.txt:md5,b6ff7e64a6eafc83fbc638b09b815cb2", - "multiqc_genes_section_1_7.txt:md5,c04a0c3731287cb18e4dc081452b5ed3", - "multiqc_genes_section_1_8.txt:md5,cac0e9f713cc58337449d5a8bd1a9e90", - "multiqc_genes_section_1_9.txt:md5,8c2af6dc9205f83808c8bf8581ac1797", + "multiqc_gene_statistics.txt:md5,3b1adf5ef95c58c0c40e185cf2d97a70", + "multiqc_genes_section_1.txt:md5,e3273e4f60c81932e55ace4d7c05b78c", + "multiqc_genes_section_1_1.txt:md5,eabf3d9c7e88d2cfd3afa9ee0d6cf50c", + "multiqc_genes_section_1_2.txt:md5,a92d6f1618c08611ad01e8e9e8e247dc", + "multiqc_genes_section_1_3.txt:md5,f50ae8ceb8bb2f2bba9b7d11afb1f18e", + "multiqc_genes_section_1_4.txt:md5,f6335c8566ace507f185067812c94451", + "multiqc_genes_section_1_5.txt:md5,353915e8385577dfa125fc8f93fb1924", + "multiqc_genes_section_1_6.txt:md5,c7f4ff37052cf9501253010af45ce7bd", + "multiqc_genes_section_1_7.txt:md5,93cbbd5baa9859e74dc34e718ceff027", + "multiqc_genes_section_1_8.txt:md5,c09ff4e1ed27d900bdf47f0d096c2f3b", + "multiqc_genes_section_1_9.txt:md5,ac78528b913709594e2c02e76251192e", "multiqc_id_mapping_stats.txt:md5,d7c6d500c8ea91c32da4980b5557d15e", "multiqc_normalised_expr_distrib_section_1.txt:md5,ca5d7149e7570d1ecf9c2897ecc552e4", - "multiqc_normalised_expr_distrib_section_1_1.txt:md5,d23029ef13cd88f6f83825380dd2a778", - "multiqc_normalised_expr_distrib_section_1_10.txt:md5,7aec4daa566bc03455e220132fc97efc", - "multiqc_normalised_expr_distrib_section_1_11.txt:md5,a621c99ea936f07c9c392404cd0ee168", - "multiqc_normalised_expr_distrib_section_1_12.txt:md5,3aa9ebca1833875baa95311d01b46663", - "multiqc_normalised_expr_distrib_section_1_13.txt:md5,2d302b1f6c1ba752477f678cda3e5a45", - "multiqc_normalised_expr_distrib_section_1_14.txt:md5,b1425c40932ddf69c46b43cdf26f364f", - "multiqc_normalised_expr_distrib_section_1_15.txt:md5,90c99c72e3b65730018bb56d485d665e", - "multiqc_normalised_expr_distrib_section_1_16.txt:md5,254f1e9f71b0690da8624e30d88b1a84", - "multiqc_normalised_expr_distrib_section_1_17.txt:md5,adf99bc87dd29499a1bfc50c3c26488c", - "multiqc_normalised_expr_distrib_section_1_18.txt:md5,8b64cbab2e0cca85575b18b41f973aa5", - "multiqc_normalised_expr_distrib_section_1_19.txt:md5,4544499f66cd9de554f2d26944028cd5", - "multiqc_normalised_expr_distrib_section_1_2.txt:md5,f8441a6f1239f57e079cfd4d9ccbf971", - "multiqc_normalised_expr_distrib_section_1_3.txt:md5,03b34d4cf3672e3b7e41cfbe0dfbe486", - "multiqc_normalised_expr_distrib_section_1_4.txt:md5,a9b49c8664c80469fb7e9a4398a92c73", - "multiqc_normalised_expr_distrib_section_1_5.txt:md5,7c4e6c377551d81c85e93c7ced06b598", - "multiqc_normalised_expr_distrib_section_1_6.txt:md5,666295d732e7f848a0ac2e853e489935", - "multiqc_normalised_expr_distrib_section_1_7.txt:md5,d9262246eeb0c8cf61c4dc428dd22164", - "multiqc_normalised_expr_distrib_section_1_8.txt:md5,12e3a609a06897b53866fcb8afe1763b", - "multiqc_normalised_expr_distrib_section_1_9.txt:md5,034cd80a7c14804d6647b1ad43bc3080", + "multiqc_normalised_expr_distrib_section_1_1.txt:md5,4646dac8ca1f9b4f2fbba3d873916d00", + "multiqc_normalised_expr_distrib_section_1_2.txt:md5,ca5671131afe6f14bcd496a0aadb0cb3", + "multiqc_normalised_expr_distrib_section_1_3.txt:md5,d0ba56529939bba2c66e016a0f0a6046", + "multiqc_normalised_expr_distrib_section_1_4.txt:md5,fdc1a1746f2b3289f1178948553ec6bd", + "multiqc_normalised_expr_distrib_section_1_5.txt:md5,2f5ef99dece553f7696760329d0c7bd6", + "multiqc_normalised_expr_distrib_section_1_6.txt:md5,4f0e881f406c1ba87c28717f5c09ede8", + "multiqc_normalised_expr_distrib_section_1_7.txt:md5,b1425c40932ddf69c46b43cdf26f364f", + "multiqc_normalised_expr_distrib_section_1_8.txt:md5,254f1e9f71b0690da8624e30d88b1a84", + "multiqc_normalised_expr_distrib_section_1_9.txt:md5,8b64cbab2e0cca85575b18b41f973aa5", "multiqc_null_values_filter.txt:md5,88b2d9e16cd8ab52f58a48fd5d915b8c", "multiqc_ratio_nulls.txt:md5,c9ac04a67937c7bacfebc33fcd50aab1", "multiqc_ratio_zeros.txt:md5,9f50cd64ea4afe3723c7e222182981f6", @@ -1680,7 +1426,7 @@ "zero_values_filter_stats.csv:md5,17fc6d525450d34445bf9cc25defe18a" ] ], - "timestamp": "2026-06-16T15:27:16.909149067", + "timestamp": "2026-06-18T17:59:16.584703544", "meta": { "nf-test": "0.9.5", "nextflow": "26.04.3" diff --git a/tests/modules/local/aggregate_results/main.nf.test.snap b/tests/modules/local/aggregate_results/main.nf.test.snap index ef6e609a..7529a69f 100644 --- a/tests/modules/local/aggregate_results/main.nf.test.snap +++ b/tests/modules/local/aggregate_results/main.nf.test.snap @@ -3,18 +3,18 @@ "content": [ { "0": [ - "all_genes_summary.csv:md5,67da835eca8de21309e7b3ec0f6a31f7" + "all_genes_summary.csv:md5,3a16cde6f60003b478202bb3ddd7ea32" ], "1": [ [ - "section_1.most_stable_genes_summary.csv:md5,a4c693ec5ae3f4e0e5313811dd96fa21", - "section_2.most_stable_genes_summary.csv:md5,1c33432a2576231c821e52424113a65b" + "section_1.most_stable_genes_summary.csv:md5,542b219460ec57fb81130046625fb297", + "section_2.most_stable_genes_summary.csv:md5,e901728d1736cc7a31a837409d6e1829" ] ], "2": [ [ - "section_1.most_stable_genes_transposed_counts.csv:md5,30f84570c2104f7cfac4289d583b68cd", - "section_2.most_stable_genes_transposed_counts.csv:md5,3ffbb8370e2bdd0c1867610a51405260" + "section_1.most_stable_genes_transposed_counts.csv:md5,67d8ff94a2724dc2982edf17cd9c660d", + "section_2.most_stable_genes_transposed_counts.csv:md5,1e0068dc0f56eff7103c3cfae2a8a46b" ] ], "3": [ @@ -42,47 +42,47 @@ ] ], "all_genes_summary": [ - "all_genes_summary.csv:md5,67da835eca8de21309e7b3ec0f6a31f7" + "all_genes_summary.csv:md5,3a16cde6f60003b478202bb3ddd7ea32" ], "custom_content_multiqc_config": [ "custom_content_multiqc_config.yaml:md5,edf372668919bebe05783bc16995c5c4" ], "most_stable_genes_summary": [ [ - "section_1.most_stable_genes_summary.csv:md5,a4c693ec5ae3f4e0e5313811dd96fa21", - "section_2.most_stable_genes_summary.csv:md5,1c33432a2576231c821e52424113a65b" + "section_1.most_stable_genes_summary.csv:md5,542b219460ec57fb81130046625fb297", + "section_2.most_stable_genes_summary.csv:md5,e901728d1736cc7a31a837409d6e1829" ] ], "most_stable_genes_transposed_counts_filtered": [ [ - "section_1.most_stable_genes_transposed_counts.csv:md5,30f84570c2104f7cfac4289d583b68cd", - "section_2.most_stable_genes_transposed_counts.csv:md5,3ffbb8370e2bdd0c1867610a51405260" + "section_1.most_stable_genes_transposed_counts.csv:md5,67d8ff94a2724dc2982edf17cd9c660d", + "section_2.most_stable_genes_transposed_counts.csv:md5,1e0068dc0f56eff7103c3cfae2a8a46b" ] ] } ], - "timestamp": "2026-04-04T09:38:02.365611798", + "timestamp": "2026-06-16T15:40:35.527804728", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "26.04.3" } }, "Without microarray": { "content": [ { "0": [ - "all_genes_summary.csv:md5,62a7b6ba136e4e2f7ab954386a6fbe5e" + "all_genes_summary.csv:md5,a63c6d701804d0ea0a2371e7a05e3e67" ], "1": [ [ - "section_1.most_stable_genes_summary.csv:md5,8f75c2b1041d3cea08f13dfa05378a78", - "section_2.most_stable_genes_summary.csv:md5,edc6b56e2f4710c490906cd8c9a54790" + "section_1.most_stable_genes_summary.csv:md5,81dc31ef8d7b0d08f91fbad010373891", + "section_2.most_stable_genes_summary.csv:md5,dcf66398d549acc8301ccbb718015c01" ] ], "2": [ [ - "section_1.most_stable_genes_transposed_counts.csv:md5,30f84570c2104f7cfac4289d583b68cd", - "section_2.most_stable_genes_transposed_counts.csv:md5,3ffbb8370e2bdd0c1867610a51405260" + "section_1.most_stable_genes_transposed_counts.csv:md5,67d8ff94a2724dc2982edf17cd9c660d", + "section_2.most_stable_genes_transposed_counts.csv:md5,1e0068dc0f56eff7103c3cfae2a8a46b" ] ], "3": [ @@ -110,47 +110,47 @@ ] ], "all_genes_summary": [ - "all_genes_summary.csv:md5,62a7b6ba136e4e2f7ab954386a6fbe5e" + "all_genes_summary.csv:md5,a63c6d701804d0ea0a2371e7a05e3e67" ], "custom_content_multiqc_config": [ "custom_content_multiqc_config.yaml:md5,3b4d962847a26bdc7c0fa34c4fcff168" ], "most_stable_genes_summary": [ [ - "section_1.most_stable_genes_summary.csv:md5,8f75c2b1041d3cea08f13dfa05378a78", - "section_2.most_stable_genes_summary.csv:md5,edc6b56e2f4710c490906cd8c9a54790" + "section_1.most_stable_genes_summary.csv:md5,81dc31ef8d7b0d08f91fbad010373891", + "section_2.most_stable_genes_summary.csv:md5,dcf66398d549acc8301ccbb718015c01" ] ], "most_stable_genes_transposed_counts_filtered": [ [ - "section_1.most_stable_genes_transposed_counts.csv:md5,30f84570c2104f7cfac4289d583b68cd", - "section_2.most_stable_genes_transposed_counts.csv:md5,3ffbb8370e2bdd0c1867610a51405260" + "section_1.most_stable_genes_transposed_counts.csv:md5,67d8ff94a2724dc2982edf17cd9c660d", + "section_2.most_stable_genes_transposed_counts.csv:md5,1e0068dc0f56eff7103c3cfae2a8a46b" ] ] } ], - "timestamp": "2026-03-30T14:06:37.615799808", + "timestamp": "2026-06-16T15:40:17.55580834", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "26.04.3" } }, "One invalid target gene": { "content": [ { "0": [ - "all_genes_summary.csv:md5,67da835eca8de21309e7b3ec0f6a31f7" + "all_genes_summary.csv:md5,3a16cde6f60003b478202bb3ddd7ea32" ], "1": [ [ - "section_1.most_stable_genes_summary.csv:md5,a4c693ec5ae3f4e0e5313811dd96fa21", - "section_2.most_stable_genes_summary.csv:md5,1c33432a2576231c821e52424113a65b" + "section_1.most_stable_genes_summary.csv:md5,542b219460ec57fb81130046625fb297", + "section_2.most_stable_genes_summary.csv:md5,e901728d1736cc7a31a837409d6e1829" ] ], "2": [ [ - "section_1.most_stable_genes_transposed_counts.csv:md5,30f84570c2104f7cfac4289d583b68cd", - "section_2.most_stable_genes_transposed_counts.csv:md5,3ffbb8370e2bdd0c1867610a51405260" + "section_1.most_stable_genes_transposed_counts.csv:md5,67d8ff94a2724dc2982edf17cd9c660d", + "section_2.most_stable_genes_transposed_counts.csv:md5,1e0068dc0f56eff7103c3cfae2a8a46b" ] ], "3": [ @@ -178,42 +178,42 @@ ] ], "all_genes_summary": [ - "all_genes_summary.csv:md5,67da835eca8de21309e7b3ec0f6a31f7" + "all_genes_summary.csv:md5,3a16cde6f60003b478202bb3ddd7ea32" ], "custom_content_multiqc_config": [ "custom_content_multiqc_config.yaml:md5,401b9b35a47e29a8dfac3ca7700e26bd" ], "most_stable_genes_summary": [ [ - "section_1.most_stable_genes_summary.csv:md5,a4c693ec5ae3f4e0e5313811dd96fa21", - "section_2.most_stable_genes_summary.csv:md5,1c33432a2576231c821e52424113a65b" + "section_1.most_stable_genes_summary.csv:md5,542b219460ec57fb81130046625fb297", + "section_2.most_stable_genes_summary.csv:md5,e901728d1736cc7a31a837409d6e1829" ] ], "most_stable_genes_transposed_counts_filtered": [ [ - "section_1.most_stable_genes_transposed_counts.csv:md5,30f84570c2104f7cfac4289d583b68cd", - "section_2.most_stable_genes_transposed_counts.csv:md5,3ffbb8370e2bdd0c1867610a51405260" + "section_1.most_stable_genes_transposed_counts.csv:md5,67d8ff94a2724dc2982edf17cd9c660d", + "section_2.most_stable_genes_transposed_counts.csv:md5,1e0068dc0f56eff7103c3cfae2a8a46b" ] ] } ], - "timestamp": "2026-03-30T14:47:07.501875225", + "timestamp": "2026-06-16T15:40:44.846750227", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "26.04.3" } }, "One section": { "content": [ { "0": [ - "all_genes_summary.csv:md5,d2d279f4c5243b3af01130ca04b5603d" + "all_genes_summary.csv:md5,71d2e6411951cf65b7035a5eceac4d3e" ], "1": [ - "section_1.most_stable_genes_summary.csv:md5,8f75c2b1041d3cea08f13dfa05378a78" + "section_1.most_stable_genes_summary.csv:md5,81dc31ef8d7b0d08f91fbad010373891" ], "2": [ - "section_1.most_stable_genes_transposed_counts.csv:md5,30f84570c2104f7cfac4289d583b68cd" + "section_1.most_stable_genes_transposed_counts.csv:md5,67d8ff94a2724dc2982edf17cd9c660d" ], "3": [ "custom_content_multiqc_config.yaml:md5,4941e220852b2c814302f508cf5837cd" @@ -240,41 +240,41 @@ ] ], "all_genes_summary": [ - "all_genes_summary.csv:md5,d2d279f4c5243b3af01130ca04b5603d" + "all_genes_summary.csv:md5,71d2e6411951cf65b7035a5eceac4d3e" ], "custom_content_multiqc_config": [ "custom_content_multiqc_config.yaml:md5,4941e220852b2c814302f508cf5837cd" ], "most_stable_genes_summary": [ - "section_1.most_stable_genes_summary.csv:md5,8f75c2b1041d3cea08f13dfa05378a78" + "section_1.most_stable_genes_summary.csv:md5,81dc31ef8d7b0d08f91fbad010373891" ], "most_stable_genes_transposed_counts_filtered": [ - "section_1.most_stable_genes_transposed_counts.csv:md5,30f84570c2104f7cfac4289d583b68cd" + "section_1.most_stable_genes_transposed_counts.csv:md5,67d8ff94a2724dc2982edf17cd9c660d" ] } ], - "timestamp": "2026-03-30T14:47:13.474058057", + "timestamp": "2026-06-16T15:40:53.924180048", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "26.04.3" } }, "With microarray": { "content": [ { "0": [ - "all_genes_summary.csv:md5,67da835eca8de21309e7b3ec0f6a31f7" + "all_genes_summary.csv:md5,3a16cde6f60003b478202bb3ddd7ea32" ], "1": [ [ - "section_1.most_stable_genes_summary.csv:md5,a4c693ec5ae3f4e0e5313811dd96fa21", - "section_2.most_stable_genes_summary.csv:md5,1c33432a2576231c821e52424113a65b" + "section_1.most_stable_genes_summary.csv:md5,542b219460ec57fb81130046625fb297", + "section_2.most_stable_genes_summary.csv:md5,e901728d1736cc7a31a837409d6e1829" ] ], "2": [ [ - "section_1.most_stable_genes_transposed_counts.csv:md5,30f84570c2104f7cfac4289d583b68cd", - "section_2.most_stable_genes_transposed_counts.csv:md5,3ffbb8370e2bdd0c1867610a51405260" + "section_1.most_stable_genes_transposed_counts.csv:md5,67d8ff94a2724dc2982edf17cd9c660d", + "section_2.most_stable_genes_transposed_counts.csv:md5,1e0068dc0f56eff7103c3cfae2a8a46b" ] ], "3": [ @@ -302,29 +302,29 @@ ] ], "all_genes_summary": [ - "all_genes_summary.csv:md5,67da835eca8de21309e7b3ec0f6a31f7" + "all_genes_summary.csv:md5,3a16cde6f60003b478202bb3ddd7ea32" ], "custom_content_multiqc_config": [ "custom_content_multiqc_config.yaml:md5,3b4d962847a26bdc7c0fa34c4fcff168" ], "most_stable_genes_summary": [ [ - "section_1.most_stable_genes_summary.csv:md5,a4c693ec5ae3f4e0e5313811dd96fa21", - "section_2.most_stable_genes_summary.csv:md5,1c33432a2576231c821e52424113a65b" + "section_1.most_stable_genes_summary.csv:md5,542b219460ec57fb81130046625fb297", + "section_2.most_stable_genes_summary.csv:md5,e901728d1736cc7a31a837409d6e1829" ] ], "most_stable_genes_transposed_counts_filtered": [ [ - "section_1.most_stable_genes_transposed_counts.csv:md5,30f84570c2104f7cfac4289d583b68cd", - "section_2.most_stable_genes_transposed_counts.csv:md5,3ffbb8370e2bdd0c1867610a51405260" + "section_1.most_stable_genes_transposed_counts.csv:md5,67d8ff94a2724dc2982edf17cd9c660d", + "section_2.most_stable_genes_transposed_counts.csv:md5,1e0068dc0f56eff7103c3cfae2a8a46b" ] ] } ], - "timestamp": "2026-03-30T14:46:55.231695582", + "timestamp": "2026-06-16T15:40:26.501568291", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "26.04.3" } } } \ No newline at end of file diff --git a/tests/modules/local/compute_gene_statistics/main.nf.test.snap b/tests/modules/local/compute_gene_statistics/main.nf.test.snap index 9db76e85..2be9f174 100644 --- a/tests/modules/local/compute_gene_statistics/main.nf.test.snap +++ b/tests/modules/local/compute_gene_statistics/main.nf.test.snap @@ -3,7 +3,7 @@ "content": [ { "0": [ - "rnaseq.stats_all_genes.csv:md5,e2a15d08a3ada8daba6d5b834dbe1de7" + "rnaseq.stats_all_genes.csv:md5,9944aa2a366b7647be87134a4f45ad5d" ], "1": [ [ @@ -20,21 +20,21 @@ ] ], "stats": [ - "rnaseq.stats_all_genes.csv:md5,e2a15d08a3ada8daba6d5b834dbe1de7" + "rnaseq.stats_all_genes.csv:md5,9944aa2a366b7647be87134a4f45ad5d" ] } ], - "timestamp": "2026-03-30T14:48:46.011713833", + "timestamp": "2026-06-16T15:41:20.924690922", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "26.04.3" } }, "No platform": { "content": [ { "0": [ - "stats_all_genes.csv:md5,42e9e52c43527e80489294a2c2dbbec0" + "stats_all_genes.csv:md5,7bd63edd3b80decff114f5dc7e7b0384" ], "1": [ [ @@ -51,21 +51,21 @@ ] ], "stats": [ - "stats_all_genes.csv:md5,42e9e52c43527e80489294a2c2dbbec0" + "stats_all_genes.csv:md5,7bd63edd3b80decff114f5dc7e7b0384" ] } ], - "timestamp": "2026-03-30T14:48:33.525954126", + "timestamp": "2026-06-16T15:41:02.798127853", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "26.04.3" } }, "RNAseq platform": { "content": [ { "0": [ - "rnaseq.stats_all_genes.csv:md5,e2a15d08a3ada8daba6d5b834dbe1de7" + "rnaseq.stats_all_genes.csv:md5,9944aa2a366b7647be87134a4f45ad5d" ], "1": [ [ @@ -82,14 +82,14 @@ ] ], "stats": [ - "rnaseq.stats_all_genes.csv:md5,e2a15d08a3ada8daba6d5b834dbe1de7" + "rnaseq.stats_all_genes.csv:md5,9944aa2a366b7647be87134a4f45ad5d" ] } ], - "timestamp": "2026-03-30T14:48:39.77826003", + "timestamp": "2026-06-16T15:41:12.049719767", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "26.04.3" } } } \ No newline at end of file diff --git a/tests/modules/local/compute_stability_scores/main.nf.test.snap b/tests/modules/local/compute_stability_scores/main.nf.test.snap index 042578f7..d39ec078 100644 --- a/tests/modules/local/compute_stability_scores/main.nf.test.snap +++ b/tests/modules/local/compute_stability_scores/main.nf.test.snap @@ -3,7 +3,7 @@ "content": [ { "0": [ - "section_1.stats_with_scores.csv:md5,e78b6a9fdc451be6c6c6831d9885078a" + "section_1.stats_with_scores.csv:md5,22ea4f444a2972d5f107abc26cd417ec" ], "1": [ [ @@ -20,11 +20,11 @@ ] ], "stats_with_stability_scores": [ - "section_1.stats_with_scores.csv:md5,e78b6a9fdc451be6c6c6831d9885078a" + "section_1.stats_with_scores.csv:md5,22ea4f444a2972d5f107abc26cd417ec" ] } ], - "timestamp": "2026-06-10T20:55:21.077439961", + "timestamp": "2026-06-16T15:41:29.684036082", "meta": { "nf-test": "0.9.5", "nextflow": "26.04.3" @@ -34,7 +34,7 @@ "content": [ { "0": [ - "section_1.stats_with_scores.csv:md5,227d924080d1115b380328d6d9f50456" + "section_1.stats_with_scores.csv:md5,cdd1e28e31dc0bc592cb36557f5e5a69" ], "1": [ [ @@ -51,11 +51,11 @@ ] ], "stats_with_stability_scores": [ - "section_1.stats_with_scores.csv:md5,227d924080d1115b380328d6d9f50456" + "section_1.stats_with_scores.csv:md5,cdd1e28e31dc0bc592cb36557f5e5a69" ] } ], - "timestamp": "2026-06-10T20:55:30.462849706", + "timestamp": "2026-06-16T15:41:38.574352608", "meta": { "nf-test": "0.9.5", "nextflow": "26.04.3" diff --git a/tests/modules/local/genorm/compute_m_measure/main.nf.test b/tests/modules/local/genorm/compute_m_measure/main.nf.test index fbcd556c..89cf984a 100644 --- a/tests/modules/local/genorm/compute_m_measure/main.nf.test +++ b/tests/modules/local/genorm/compute_m_measure/main.nf.test @@ -12,7 +12,6 @@ nextflow_process { """ input[0] = [ [section: "section_1"], - file( '$projectDir/tests/test_data/genorm/make_chunks/input/counts.parquet', checkIfExists: true), file( '$projectDir/tests/test_data/genorm/compute_m_measure/input/std.*.parquet', checkIfExists: true).collect() ] """ diff --git a/tests/modules/local/genorm/compute_m_measure/main.nf.test.snap b/tests/modules/local/genorm/compute_m_measure/main.nf.test.snap index f8ea8893..19defb76 100644 --- a/tests/modules/local/genorm/compute_m_measure/main.nf.test.snap +++ b/tests/modules/local/genorm/compute_m_measure/main.nf.test.snap @@ -7,7 +7,7 @@ { "section": "section_1" }, - "m_measures.csv:md5,2119b16fe13e2d0bc0fedc3c9d3d1733" + "m_measures.csv:md5,48e7d6e3338f60468bf5ade2361eccd4" ] ], "1": [ @@ -21,7 +21,7 @@ [ "COMPUTE_M_MEASURE", "polars", - "1.39.2" + "1.41.2" ] ], "m_measures": [ @@ -29,15 +29,15 @@ { "section": "section_1" }, - "m_measures.csv:md5,2119b16fe13e2d0bc0fedc3c9d3d1733" + "m_measures.csv:md5,48e7d6e3338f60468bf5ade2361eccd4" ] ] } ], - "timestamp": "2026-03-30T15:40:23.09370734", + "timestamp": "2026-06-18T18:14:52.007426435", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "26.04.3" } } } \ No newline at end of file diff --git a/tests/modules/local/genorm/ratio_standard_variation/main.nf.test.snap b/tests/modules/local/genorm/ratio_standard_variation/main.nf.test.snap index a16d5709..95e19d61 100644 --- a/tests/modules/local/genorm/ratio_standard_variation/main.nf.test.snap +++ b/tests/modules/local/genorm/ratio_standard_variation/main.nf.test.snap @@ -9,7 +9,7 @@ "index_1": 0, "index_2": 1 }, - "std.0.1.parquet:md5,10e262fc1dff8efe522a2efcee6ccb87" + "std.0.1.parquet:md5,3b7f7bca32f49e59bc9683e47dbb8550" ] ], "1": [ @@ -33,15 +33,15 @@ "index_1": 0, "index_2": 1 }, - "std.0.1.parquet:md5,10e262fc1dff8efe522a2efcee6ccb87" + "std.0.1.parquet:md5,3b7f7bca32f49e59bc9683e47dbb8550" ] ] } ], - "timestamp": "2026-04-01T09:41:51.590963847", + "timestamp": "2026-06-18T18:15:25.820090001", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "26.04.3" } } } \ No newline at end of file diff --git a/tests/modules/local/normfinder/main.nf.test.snap b/tests/modules/local/normfinder/main.nf.test.snap index 4e90417c..17d6bb75 100644 --- a/tests/modules/local/normfinder/main.nf.test.snap +++ b/tests/modules/local/normfinder/main.nf.test.snap @@ -7,7 +7,7 @@ { "section": "section_1" }, - "stability_values.normfinder.csv:md5,05b3b9508930923bd86c281e8febe6b6" + "stability_values.normfinder.csv:md5,9feb77b35b597334e978b8db48fad80c" ] ], "1": [ @@ -50,15 +50,15 @@ { "section": "section_1" }, - "stability_values.normfinder.csv:md5,05b3b9508930923bd86c281e8febe6b6" + "stability_values.normfinder.csv:md5,9feb77b35b597334e978b8db48fad80c" ] ] } ], - "timestamp": "2026-03-30T15:45:00.995645591", + "timestamp": "2026-06-16T15:49:44.122013283", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "26.04.3" } }, "Very small dataset - Cq values": { @@ -69,7 +69,7 @@ { "section": "section_1" }, - "stability_values.normfinder.csv:md5,a7c936faa9135439fd1b86c195f60414" + "stability_values.normfinder.csv:md5,23af9fdc4bf6805666657b08f9a9de50" ] ], "1": [ @@ -112,15 +112,15 @@ { "section": "section_1" }, - "stability_values.normfinder.csv:md5,a7c936faa9135439fd1b86c195f60414" + "stability_values.normfinder.csv:md5,23af9fdc4bf6805666657b08f9a9de50" ] ] } ], - "timestamp": "2026-03-30T15:44:51.060894512", + "timestamp": "2026-06-16T15:49:30.601400305", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "26.04.3" } } } \ No newline at end of file diff --git a/tests/prepare_pr/check_consistency.sh b/tests/prepare_pr/check_consistency.sh index 98f1aacb..1d0e09b0 100755 --- a/tests/prepare_pr/check_consistency.sh +++ b/tests/prepare_pr/check_consistency.sh @@ -21,7 +21,7 @@ do if [ $i -eq 1 ]; then reference_outdir="$outdir" else - res=$(diff --recursive --brief --exclude='pipeline_info' $outdir $reference_outdir | awk -F' ' '{print $3}') + res=$(diff --recursive --brief --exclude='pipeline_info' --exclude='multiqc' $outdir $reference_outdir | awk -F' ' '{print $3}') if [ $res ]; then echo "The following files differ: $res" exit 1 diff --git a/tests/subworkflows/local/genorm/main.nf.test.snap b/tests/subworkflows/local/genorm/main.nf.test.snap index 978495e7..ffc95b9c 100644 --- a/tests/subworkflows/local/genorm/main.nf.test.snap +++ b/tests/subworkflows/local/genorm/main.nf.test.snap @@ -7,7 +7,7 @@ { "section": "section_1" }, - "m_measures.csv:md5,3d6a1e0b6884f140ed9b8b0a3bbfc42d" + "m_measures.csv:md5,8aa2220a4aaf776c98b5348c6c03ce17" ] ], "m_measures": [ @@ -15,15 +15,15 @@ { "section": "section_1" }, - "m_measures.csv:md5,3d6a1e0b6884f140ed9b8b0a3bbfc42d" + "m_measures.csv:md5,8aa2220a4aaf776c98b5348c6c03ce17" ] ] } ], - "timestamp": "2026-06-12T08:18:09.899448871", + "timestamp": "2026-06-18T18:22:25.511162076", "meta": { "nf-test": "0.9.5", - "nextflow": "25.04.0" + "nextflow": "26.04.3" } }, "10 genes": { @@ -34,7 +34,7 @@ { "section": "section_1" }, - "m_measures.csv:md5,8bfea16844f247e2b871a8f559a3dd73" + "m_measures.csv:md5,6fcefb6d5314e83ecca3f448e29475d8" ] ], "m_measures": [ @@ -42,15 +42,15 @@ { "section": "section_1" }, - "m_measures.csv:md5,8bfea16844f247e2b871a8f559a3dd73" + "m_measures.csv:md5,6fcefb6d5314e83ecca3f448e29475d8" ] ] } ], - "timestamp": "2026-04-01T09:55:53.207791305", + "timestamp": "2026-06-16T15:54:47.330224093", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.4" + "nf-test": "0.9.5", + "nextflow": "26.04.3" } } } \ No newline at end of file From 44e75f146d388666b1540f4c57c77b7c8c06c849 Mon Sep 17 00:00:00 2001 From: Olivier Coen Date: Fri, 19 Jun 2026 17:18:47 +0200 Subject: [PATCH 30/31] add possibility to provide gff file as URL --- nextflow.config | 1 + nextflow_schema.json | 9 ++++++++- subworkflows/local/expression_normalisation/main.nf | 4 +++- subworkflows/local/get_transcript_lengths/main.nf | 3 +++ .../local/utils_nfcore_stableexpression_pipeline/main.nf | 4 ++++ workflows/stableexpression.nf | 1 + 6 files changed, 20 insertions(+), 2 deletions(-) diff --git a/nextflow.config b/nextflow.config index 90069dbe..5444147d 100644 --- a/nextflow.config +++ b/nextflow.config @@ -49,6 +49,7 @@ params { normalisation_method = 'tpm' gene_length = null gff = null + gff_url = null quantile_norm_target_distrib = 'uniform' nb_sections = 10 nb_candidates_per_section = 250 diff --git a/nextflow_schema.json b/nextflow_schema.json index f6eb5ce2..828df669 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -262,11 +262,18 @@ "format": "file-path", "exists": true, "mimetype": "text/tsv", - "pattern": "^\\S+\\.(gff|dat)$", + "pattern": "^\\S+\\.(gff|gff3|dat)(\\.gz)?$", "description": "Genome annotation file (GFF format)", "help_text": "Path to genome annotation file (GFF format). Cannot be compressed.", "fa_icon": "fas fa-file-alt" }, + "gff_url": { + "type": "string", + "format": "uri", + "description": "URL to genome annotation file (GFF format)", + "help_text": "URL to genome annotation file (GFF format). Cannot be compressed.", + "fa_icon": "fas fa-file-alt" + }, "gene_length": { "type": "string", "format": "file-path", diff --git a/subworkflows/local/expression_normalisation/main.nf b/subworkflows/local/expression_normalisation/main.nf index 84130edd..7abcb699 100644 --- a/subworkflows/local/expression_normalisation/main.nf +++ b/subworkflows/local/expression_normalisation/main.nf @@ -18,6 +18,7 @@ workflow EXPRESSION_NORMALISATION { normalisation_method quantile_norm_target_distrib gff_file + gff_url gene_length_file main: @@ -47,7 +48,8 @@ workflow EXPRESSION_NORMALISATION { // and computing length of the longest transcript gene per gene GET_TRANSCRIPT_LENGTHS( species, - gff_file + gff_file, + gff_url ) ch_gene_length_file = GET_TRANSCRIPT_LENGTHS.out.csv diff --git a/subworkflows/local/get_transcript_lengths/main.nf b/subworkflows/local/get_transcript_lengths/main.nf index df54de83..87762448 100644 --- a/subworkflows/local/get_transcript_lengths/main.nf +++ b/subworkflows/local/get_transcript_lengths/main.nf @@ -13,11 +13,14 @@ workflow GET_TRANSCRIPT_LENGTHS { take: species gff_file + gff_url main: if ( gff_file ) { ch_annotation = channel.fromPath( gff_file, checkIfExists: true ) + } else if ( gff_url ) { + ch_annotation = channel.fromPath( gff_url, checkIfExists: true ) } else { DOWNLOAD_ENSEMBL_ANNOTATION( species ) ch_annotation = DOWNLOAD_ENSEMBL_ANNOTATION.out.gff3 diff --git a/subworkflows/local/utils_nfcore_stableexpression_pipeline/main.nf b/subworkflows/local/utils_nfcore_stableexpression_pipeline/main.nf index ed736dd6..f1af972a 100644 --- a/subworkflows/local/utils_nfcore_stableexpression_pipeline/main.nf +++ b/subworkflows/local/utils_nfcore_stableexpression_pipeline/main.nf @@ -209,6 +209,10 @@ def validateInputParameters(params) { log.warn "Ignoring keywords as accessions will not be fetched from Expression Atlas or GEO" } + if ( params.gff && params.gff_url ) { + log.warn "Both gff and gff_url parameters are provided. Using gff." + } + } // diff --git a/workflows/stableexpression.nf b/workflows/stableexpression.nf index a823a320..0bff1b0c 100644 --- a/workflows/stableexpression.nf +++ b/workflows/stableexpression.nf @@ -132,6 +132,7 @@ workflow STABLEEXPRESSION { params.normalisation_method, params.quantile_norm_target_distrib, params.gff, + params.gff_url, params.gene_length ) From 0e33f9b9d48429d18a4ae34e8a7eed1a107a8255 Mon Sep 17 00:00:00 2001 From: Olivier Coen Date: Fri, 19 Jun 2026 17:55:09 +0200 Subject: [PATCH 31/31] Update main.nf.test --- .../local/expression_normalisation/main.nf.test | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tests/subworkflows/local/expression_normalisation/main.nf.test b/tests/subworkflows/local/expression_normalisation/main.nf.test index 34632aff..1378d3d7 100644 --- a/tests/subworkflows/local/expression_normalisation/main.nf.test +++ b/tests/subworkflows/local/expression_normalisation/main.nf.test @@ -36,6 +36,7 @@ nextflow_workflow { input[3] = "uniform" input[4] = null input[5] = null + input[6] = null """ } } @@ -78,7 +79,8 @@ nextflow_workflow { input[2] = "tpm" input[3] = "uniform" input[4] = null - input[5] = file( '$projectDir/tests/test_data/input_datasets/gene_lengths.csv', checkIfExists: true ) + input[5] = null + input[6] = file( '$projectDir/tests/test_data/input_datasets/gene_lengths.csv', checkIfExists: true ) """ } } @@ -122,6 +124,7 @@ nextflow_workflow { input[3] = "uniform" input[4] = null input[5] = null + input[6] = null """ } } @@ -156,6 +159,7 @@ nextflow_workflow { input[3] = "uniform" input[4] = null input[5] = null + input[6] = null """ } }