diff --git a/README.md b/README.md index 5c2e8b3..ec8f88a 100644 --- a/README.md +++ b/README.md @@ -44,17 +44,19 @@ export GITHUB_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx #### Step 2: Test workflow -5. Test your configuration by performing a dry-run via: +5. Test your configuration: + + 5.1. Perform a dry-run: ``` pixi run snakemake --snakefile --configfile config/config.yaml --dry-run ``` -and confirm workflow analyses by checking the DAG: + 5.2. Confirm workflow analyses by checking the DAG: ``` pixi run snakemake --snakefile --configfile config/config.yaml --dag | dot -Tsvg > dag.svg ``` -You can also create all needed `conda` environments beforehand: + 5.3. Optionaly, create all needed `conda` environments beforehand: ``` pixi run snakemake --snakefile --configfile config/config.yaml --jobs 1 --conda-create-envs-only ``` @@ -62,14 +64,19 @@ pixi run snakemake --snakefile --configfile config/config.yam #### Step 3: Execute workflow 6. Execute the workflow, using `$N` cores, either: - 6.1. locally via: + 6.1. locally: ``` pixi run snakemake --snakefile --configfile config/config.yaml --jobs $N --software-deployment-method conda ``` - 6.2. in a [SLURM](https://slurm.schedmd.com/overview.html) cluster environment via: + 6.2. in a [SLURM](https://slurm.schedmd.com/overview.html) cluster environment: ``` pixi run snakemake --snakefile --configfile config/config.yaml --jobs $N --software-deployment-method conda --executor slurm +``` + + 6.3. Optionally, you can also use binaries from local modules, by adding `env-modules` to `--software-deployment-method`: +``` +pixi run snakemake [...] --software-deployment-method env-modules conda [...] ``` #### Step 4: Check results diff --git a/examples/HD827sonic/dag.svg b/examples/HD827sonic/dag.svg index bb4cb8c..09754bf 100644 --- a/examples/HD827sonic/dag.svg +++ b/examples/HD827sonic/dag.svg @@ -4,1866 +4,1804 @@ - + snakemake_dag - + 0 - -target_taxon + +target_taxon 1 - -multiqc_taxon + +multiqc_taxon 1->0 - - + + 2 - -trim_fastqc_raw + +trim_fastqc_raw 2->1 - - + + 3 - -trim_get_fastq_raw -lane: L001 -library: lib1 -read_type_raw: R2 -sample: HD827sonic + +trim_get_fastq_raw +lane: L001 +library: lib1 +read_type_raw: R1 +sample: HD827sonic - + 3->2 - - + + - - -11 - -trim_adapterremoval_fastq_pe + + +10 + +trim_adapterremoval_fastq_pe - - -3->11 - - + + +3->10 + + 4 - -trim_fastqc_raw + +trim_fastqc_raw 4->1 - - + + 5 - -trim_get_fastq_raw -lane: L002 -library: lib1 -read_type_raw: R2 -sample: HD827sonic + +trim_get_fastq_raw +lane: L002 +library: lib1 +read_type_raw: R1 +sample: HD827sonic - + 5->4 - - + + - - -10 - -trim_adapterremoval_fastq_pe + + +11 + +trim_adapterremoval_fastq_pe - - -5->10 - - + + +5->11 + + 6 - -trim_fastqc_raw + +trim_fastqc_raw 6->1 - - + + 7 - -trim_get_fastq_raw -lane: L001 -library: lib1 -read_type_raw: R1 -sample: HD827sonic + +trim_get_fastq_raw +lane: L002 +library: lib1 +read_type_raw: R2 +sample: HD827sonic - + 7->6 - - + + - + 7->11 - - + + 8 - -trim_fastqc_raw + +trim_fastqc_raw 8->1 - - + + 9 - -trim_get_fastq_raw -lane: L002 -library: lib1 -read_type_raw: R1 -sample: HD827sonic + +trim_get_fastq_raw +lane: L001 +library: lib1 +read_type_raw: R2 +sample: HD827sonic - + 9->8 - - + + - + 9->10 - - + + 10->1 - - + + + + + +12 + +trim_fastqc_trim +read_type_trim: R1 + + + +10->12 + + 13 - -trim_fastqc_trim -read_type_trim: R2 + +trim_fastqc_trim +read_type_trim: R2 - + 10->13 - - + + 14 - -trim_fastqc_trim -read_type_trim: R1 + +trim_fastqc_trim +read_type_trim: collapsed - + 10->14 - - + + 15 - -trim_fastqc_trim -read_type_trim: collapsedtrunc + +trim_fastqc_trim +read_type_trim: singleton - + 10->15 - - + + - - -20 - -trim_fastqc_trim -read_type_trim: singleton - - - -10->20 - - - - - -21 - -trim_fastqc_trim -read_type_trim: collapsed + + +16 + +trim_fastqc_trim +read_type_trim: collapsedtrunc - - -10->21 - - + + +10->16 + + 23 - -derep_merge_lanes -read_type_trim: collapsed + +derep_merge_lanes +read_type_trim: collapsed - + 10->23 - - + + 11->1 - - - - - -12 - -trim_fastqc_trim -read_type_trim: collapsedtrunc - - - -11->12 - - - - - -16 - -trim_fastqc_trim -read_type_trim: R1 - - - -11->16 - - + + 17 - -trim_fastqc_trim -read_type_trim: R2 + +trim_fastqc_trim +read_type_trim: collapsed - + 11->17 - - + + 18 - -trim_fastqc_trim -read_type_trim: singleton + +trim_fastqc_trim +read_type_trim: R1 - + 11->18 - - + + 19 - -trim_fastqc_trim -read_type_trim: collapsed + +trim_fastqc_trim +read_type_trim: singleton - + 11->19 - - + + + + + +20 + +trim_fastqc_trim +read_type_trim: collapsedtrunc + + + +11->20 + + + + + +21 + +trim_fastqc_trim +read_type_trim: R2 + + + +11->21 + + - + 11->23 - - + + 12->1 - - + + 13->1 - - + + 14->1 - - + + 15->1 - - + + 16->1 - - + + 17->1 - - + + 18->1 - - + + 19->1 - - + + 20->1 - - + + 21->1 - - + + 22 - -derep_fastqc -tool: merge_lanes + +derep_fastqc +tool: merge_lanes 22->1 - - + + - + 23->22 - - + + 25 - -derep_nonpareil_infer -tool: merge_lanes + +derep_nonpareil_infer +tool: merge_lanes - + 23->25 - - + + 27 - -derep_seqkit + +derep_seqkit - + 23->27 - - + + 24 - -derep_nonpareil_plot + +derep_nonpareil_plot 24->1 - - + + - + 25->24 - - + + 26 - -derep_fastqc -tool: derep + +derep_fastqc +tool: derep 26->1 - - + + - + 27->26 - - + + 29 - -derep_nonpareil_infer -tool: derep + +derep_low_complexity - + 27->29 - - - - - -31 - -derep_low_complexity - - - -27->31 - - + + 28 - -derep_nonpareil_plot + +derep_fastqc +tool: low_complexity 28->1 - - + + - + 29->28 - - - - - -30 - -derep_fastqc -tool: low_complexity + + - - -30->1 - - - - - -31->30 - - - - - -33 - -derep_nonpareil_infer -tool: low_complexity + + +31 + +prefilter_reads_extract - - -31->33 - - + + +29->31 + + - - -35 - -prefilter_reads_extract + + +38 + +taxon_prefilter_shard_bowtie2 +n_shard: 3 +read_type_map: collapsed +ref: hires_organelles_viruses_smags +tot_shards: 7 + + + +29->38 + + - - -31->35 - - + + +41 + +taxon_prefilter_shard_bowtie2 +n_shard: 2 +read_type_map: collapsed +ref: hires_organelles_viruses_smags +tot_shards: 7 + + + +29->41 + + - - -42 - -taxon_prefilter_shard_bowtie2 -n_shard: 3 -read_type_map: collapsed -ref: hires_organelles_viruses_smags -tot_shards: 7 - - - -31->42 - - + + +43 + +taxon_prefilter_shard_bowtie2 +n_shard: 1 +read_type_map: collapsed +ref: human_genome +tot_shards: 1 + + + +29->43 + + 45 - -taxon_prefilter_shard_bowtie2 -n_shard: 4 -read_type_map: collapsed -ref: hires_organelles_viruses_smags -tot_shards: 7 - - - -31->45 - - + +taxon_prefilter_shard_bowtie2 +n_shard: 4 +read_type_map: collapsed +ref: hires_organelles_viruses_smags +tot_shards: 7 + + + +29->45 + + 47 - -taxon_prefilter_shard_bowtie2 -n_shard: 2 -read_type_map: collapsed -ref: hires_organelles_viruses_smags -tot_shards: 7 - - - -31->47 - - + +taxon_prefilter_shard_bowtie2 +n_shard: 7 +read_type_map: collapsed +ref: hires_organelles_viruses_smags +tot_shards: 7 + + + +29->47 + + 49 - -taxon_prefilter_shard_bowtie2 -n_shard: 6 -read_type_map: collapsed -ref: hires_organelles_viruses_smags -tot_shards: 7 - - - -31->49 - - + +taxon_prefilter_shard_bowtie2 +n_shard: 5 +read_type_map: collapsed +ref: hires_organelles_viruses_smags +tot_shards: 7 + + + +29->49 + + - - -51 - -taxon_prefilter_shard_bowtie2 -n_shard: 7 -read_type_map: collapsed -ref: hires_organelles_viruses_smags -tot_shards: 7 - - - -31->51 - - + + +52 + +taxon_prefilter_shard_bowtie2 +n_shard: 1 +read_type_map: collapsed +ref: hires_organelles_viruses_smags +tot_shards: 7 + + + +29->52 + + - - -53 - -taxon_prefilter_shard_bowtie2 -n_shard: 1 -read_type_map: collapsed -ref: human_genome -tot_shards: 1 - - - -31->53 - - + + +54 + +taxon_prefilter_shard_bowtie2 +n_shard: 6 +read_type_map: collapsed +ref: hires_organelles_viruses_smags +tot_shards: 7 + + + +29->54 + + - - -56 - -taxon_prefilter_shard_bowtie2 -n_shard: 1 -read_type_map: collapsed -ref: hires_organelles_viruses_smags -tot_shards: 7 - - - -31->56 - - + + +101 + +taxon_prefilter_shard_saturated_reads_extract - - -58 - -taxon_prefilter_shard_bowtie2 -n_shard: 5 -read_type_map: collapsed -ref: hires_organelles_viruses_smags -tot_shards: 7 - - - -31->58 - - - - - -105 - -taxon_prefilter_shard_saturated_reads_extract - - - -31->105 - - - - - -107 - -taxon_shard_saturated_reads_extract - - - -31->107 - - + + +29->101 + + + + + +103 + +taxon_shard_saturated_reads_extract + + + +29->103 + + + + + +30 + +prefilter_fastqc + + + +30->1 + + + + + +31->30 + + + + + +80 + +taxon_shard_bowtie2 +n_shard: 1 +ref: core_nt +tot_shards: 1 + + + +31->80 + + + + + +81 + +taxon_shard_bowtie2 +n_shard: 1 +ref: refseq_mitoch +tot_shards: 1 + + + +31->81 + + + + + +82 + +taxon_shard_bowtie2 +n_shard: 1 +ref: refseq_plastid +tot_shards: 1 + + + +31->82 + + 32 - -derep_nonpareil_plot + +prefilter_reads_merge - - -32->1 - - + + +32->31 + + + + + +33 + +prefilter_reads_taxonomy - + 33->32 - - + + 34 - -prefilter_fastqc - - - -34->1 - - + +taxon_prefilter_align_merge - - -35->34 - - + + +34->33 + + - - -84 - -taxon_shard_bowtie2 -n_shard: 1 -ref: refseq_plastid -tot_shards: 1 + + +76 + +taxon_prefilter_align_stats - - -35->84 - - + + +34->76 + + - - -85 - -taxon_shard_bowtie2 -n_shard: 1 -ref: refseq_mitoch -tot_shards: 1 + + +78 + +taxon_prefilter_metadmg_lca - - -35->85 - - + + +34->78 + + - - -86 - -taxon_shard_bowtie2 -n_shard: 1 -ref: core_nt -tot_shards: 1 + + +102 + +taxon_prefilter_metadmg_damage - - -35->86 - - + + +34->102 + + + + + +35 + +taxon_prefilter_shard_sort_query + + + +35->34 + + 36 - -prefilter_reads_merge + +taxon_prefilter_shard_unicorn - + 36->35 - - + + 37 - -prefilter_reads_taxonomy + +taxon_prefilter_shard_saturated_reads_remove - + 37->36 - - + + - - -38 - -taxon_prefilter_align_merge + + +38->1 + + - + 38->37 - - - - - -80 - -taxon_prefilter_align_stats - - - -38->80 - - + + - - -82 - -taxon_prefilter_metadmg_lca + + +50 + +taxon_prefilter_shard_count_alns - - -38->82 - - - - - -106 - -taxon_prefilter_metadmg_damage - - - -38->106 - - + + +38->50 + + 39 - -taxon_prefilter_shard_sort_query + +taxon_prefilter_shard_saturated_reads_filter - - -39->38 - - + + +39->32 + + - - -40 - -taxon_prefilter_shard_unicorn + + +39->37 + + - - -40->39 - - + + +57 + +taxon_prefilter_shard_saturated_reads_remove - - -41 - -taxon_prefilter_shard_saturated_reads_remove + + +39->57 + + - - -41->40 - - + + +60 + +taxon_prefilter_shard_saturated_reads_remove - - -42->1 - - + + +39->60 + + - - -42->41 - - + + +63 + +taxon_prefilter_shard_saturated_reads_remove - - -54 - -taxon_prefilter_shard_count_alns + + +39->63 + + - - -42->54 - - + + +66 + +taxon_prefilter_shard_saturated_reads_remove - - -43 - -taxon_prefilter_shard_saturated_reads_filter + + +39->66 + + - - -43->36 - - + + +69 + +taxon_prefilter_shard_saturated_reads_remove - - -43->41 - - + + +39->69 + + - - -61 - -taxon_prefilter_shard_saturated_reads_remove + + +72 + +taxon_prefilter_shard_saturated_reads_remove - - -43->61 - - + + +39->72 + + - - -64 - -taxon_prefilter_shard_saturated_reads_remove + + +75 + +taxon_prefilter_shard_saturated_reads_remove - - -43->64 - - + + +39->75 + + - - -67 - -taxon_prefilter_shard_saturated_reads_remove + + +39->101 + + - - -43->67 - - + + +40 + +taxon_prefilter_shard_count_alns - - -70 - -taxon_prefilter_shard_saturated_reads_remove + + +40->39 + + - - -43->70 - - + + +41->1 + + - - -73 - -taxon_prefilter_shard_saturated_reads_remove + + +41->40 + + - - -43->73 - - + + +41->66 + + - - -76 - -taxon_prefilter_shard_saturated_reads_remove + + +42 + +taxon_prefilter_shard_count_alns - - -43->76 - - + + +42->39 + + - - -79 - -taxon_prefilter_shard_saturated_reads_remove + + +43->1 + + - - -43->79 - - + + +43->42 + + - - -43->105 - - + + +43->75 + + 44 - -taxon_prefilter_shard_count_alns + +taxon_prefilter_shard_count_alns - - -44->43 - - + + +44->39 + + - + 45->1 - - + + - + 45->44 - - + + - - -45->61 - - + + +45->60 + + 46 - -taxon_prefilter_shard_count_alns + +taxon_prefilter_shard_count_alns - - -46->43 - - + + +46->39 + + - + 47->1 - - + + - + 47->46 - - + + - - -47->70 - - + + +47->72 + + 48 - -taxon_prefilter_shard_count_alns + +taxon_prefilter_shard_count_alns - - -48->43 - - + + +48->39 + + - + 49->1 - - + + - + 49->48 - - + + - - -49->73 - - + + +49->69 + + - - -50 - -taxon_prefilter_shard_count_alns + + +50->39 + + - - -50->43 - - + + +51 + +taxon_prefilter_shard_count_alns - - -51->1 - - + + +51->39 + + - - -51->50 - - + + +52->1 + + - - -51->79 - - + + +52->51 + + - - -52 - -taxon_prefilter_shard_count_alns + + +52->57 + + - - -52->43 - - + + +53 + +taxon_prefilter_shard_count_alns - - -53->1 - - + + +53->39 + + - - -53->52 - - + + +54->1 + + - - -53->64 - - + + +54->53 + + - - -54->43 - - + + +54->63 + + 55 - -taxon_prefilter_shard_count_alns + +taxon_prefilter_shard_sort_query - - -55->43 - - + + +55->34 + + - - -56->1 - - + + +56 + +taxon_prefilter_shard_unicorn - + 56->55 - - - - - -56->76 - - + + - - -57 - -taxon_prefilter_shard_count_alns - - - -57->43 - - - - - -58->1 - - + + +57->56 + + - - -58->57 - - + + +58 + +taxon_prefilter_shard_sort_query - - -58->67 - - + + +58->34 + + 59 - -taxon_prefilter_shard_sort_query + +taxon_prefilter_shard_unicorn - - -59->38 - - - - - -60 - -taxon_prefilter_shard_unicorn + + +59->58 + + - + 60->59 - - + + - - -61->60 - - + + +61 + +taxon_prefilter_shard_sort_query + + + +61->34 + + 62 - -taxon_prefilter_shard_sort_query - - - -62->38 - - + +taxon_prefilter_shard_unicorn - - -63 - -taxon_prefilter_shard_unicorn + + +62->61 + + - + 63->62 - - + + - - -64->63 - - + + +64 + +taxon_prefilter_shard_sort_query + + + +64->34 + + 65 - -taxon_prefilter_shard_sort_query - - - -65->38 - - + +taxon_prefilter_shard_unicorn - - -66 - -taxon_prefilter_shard_unicorn + + +65->64 + + - + 66->65 - - + + - - -67->66 - - + + +67 + +taxon_prefilter_shard_sort_query + + + +67->34 + + 68 - -taxon_prefilter_shard_sort_query + +taxon_prefilter_shard_unicorn - - -68->38 - - - - - -69 - -taxon_prefilter_shard_unicorn + + +68->67 + + - + 69->68 - - + + - - -70->69 - - + + +70 + +taxon_prefilter_shard_sort_query + + + +70->34 + + 71 - -taxon_prefilter_shard_sort_query - - - -71->38 - - + +taxon_prefilter_shard_unicorn - - -72 - -taxon_prefilter_shard_unicorn + + +71->70 + + - + 72->71 - - + + - - -73->72 - - + + +73 + +taxon_prefilter_shard_sort_query + + + +73->34 + + 74 - -taxon_prefilter_shard_sort_query - - - -74->38 - - + +taxon_prefilter_shard_unicorn - - -75 - -taxon_prefilter_shard_unicorn + + +74->73 + + - + 75->74 - - + + - - -76->75 - - + + +76->1 + + 77 - -taxon_prefilter_shard_sort_query + +taxon_prefilter_metadmg_dfit - - -77->38 - - + + +77->1 + + - - -78 - -taxon_prefilter_shard_unicorn + + +79 + +taxon_prefilter_metadmg_aggregate + + + +77->79 + + - + 78->77 - - + + - + -79->78 - - +78->79 + + - + + +79->0 + + + + +79->1 + + + + + 80->1 - - + + - - -81 - -taxon_prefilter_metadmg_dfit + + +87 + +taxon_shard_saturated_reads_remove - - -81->1 - - + + +80->87 + + - - -83 - -taxon_prefilter_metadmg_aggregate + + +90 + +taxon_shard_count_alns - - -81->83 - - + + +80->90 + + - - -82->81 - - + + +81->1 + + - - -82->83 - - + + +89 + +taxon_shard_count_alns - - -83->0 - - + + +81->89 + + - - -83->1 - - + + +97 + +taxon_shard_saturated_reads_remove + + + +81->97 + + - + -84->1 - - +82->1 + + - - -93 - -taxon_shard_count_alns + + +91 + +taxon_shard_count_alns - - -84->93 - - + + +82->91 + + - - -101 - -taxon_shard_saturated_reads_remove + + +94 + +taxon_shard_saturated_reads_remove - - -84->101 - - + + +82->94 + + - + + +83 + +taxon_align_stats + + -85->1 - - +83->1 + + - - -91 - -taxon_shard_saturated_reads_remove + + +84 + +taxon_align_merge - - -85->91 - - + + +84->83 + + - - -95 - -taxon_shard_count_alns + + +99 + +taxon_metadmg_lca - - -85->95 - - + + +84->99 + + - - -86->1 - - + + +104 + +taxon_metadmg_damage - - -94 - -taxon_shard_count_alns + + +84->104 + + - - -86->94 - - + + +85 + +taxon_shard_sort_query - - -98 - -taxon_shard_saturated_reads_remove + + +85->84 + + - - -86->98 - - + + +86 + +taxon_shard_unicorn - - -87 - -taxon_align_stats + + +86->85 + + - - -87->1 - - + + +87->86 + + 88 - -taxon_align_merge + +taxon_shard_saturated_reads_filter - + 88->87 - - + + - - -103 - -taxon_metadmg_lca + + +88->94 + + + + + +88->97 + + - + 88->103 - - - - - -108 - -taxon_metadmg_damage - - - -88->108 - - - - - -89 - -taxon_shard_sort_query + + - + 89->88 - - + + - - -90 - -taxon_shard_unicorn + + +90->88 + + - + -90->89 - - - - - -91->90 - - +91->88 + + 92 - -taxon_shard_saturated_reads_filter - - - -92->91 - - - - - -92->98 - - + +taxon_shard_sort_query - - -92->101 - - + + +92->84 + + - - -92->107 - - + + +93 + +taxon_shard_unicorn 93->92 - - + + - + -94->92 - - +94->93 + + - - -95->92 - - + + +95 + +taxon_shard_sort_query + + + +95->84 + + 96 - -taxon_shard_sort_query - - - -96->88 - - + +taxon_shard_unicorn - - -97 - -taxon_shard_unicorn + + +96->95 + + - + 97->96 - - + + - - -98->97 - - - - - -99 - -taxon_shard_sort_query + + +98 + +taxon_metadmg_dfit - - -99->88 - - + + +98->1 + + 100 - -taxon_shard_unicorn - - - -100->99 - - + +taxon_metadmg_aggregate - + -101->100 - - - - - -102 - -taxon_metadmg_dfit - - - -102->1 - - - - - -104 - -taxon_metadmg_aggregate - - - -102->104 - - +98->100 + + - - -103->102 - - + + +99->98 + + - - -103->104 - - + + +99->100 + + - + -104->0 - - +100->0 + + - - -104->1 - - + + +100->1 + + - + -105->0 - - +101->0 + + - + -106->0 - - +102->0 + + - + -107->0 - - +103->0 + + - + -108->0 - - +104->0 + + diff --git a/examples/HD827sonic/filegraph.svg b/examples/HD827sonic/filegraph.svg index dc1d065..87197d8 100644 --- a/examples/HD827sonic/filegraph.svg +++ b/examples/HD827sonic/filegraph.svg @@ -4,1268 +4,1254 @@ - + snakemake_dag - + 0 -target_taxon - -↪ input - -reports/multiqc.taxon.html -reports/multiqc_data.taxon.zip -results/metadmg/aggregate/HD827sonic_lib1_collapsed.stat.gz -results/metadmg/aggregate/HD827sonic_lib1_collapsed.stat.gz -results/prefilter_metadmg/aggregate/HD827sonic_lib1_collapsed.stat.gz -results/prefilter_metadmg/aggregate/HD827sonic_lib1_collapsed.stat.gz -results/prefilter_reads/saturated/HD827sonic_lib1_collapsed.fastq.gz -results/prefilter_reads/saturated/HD827sonic_lib1_collapsed.fastq.gz -results/reads/saturated/HD827sonic_lib1_collapsed.fastq.gz -results/reads/saturated/HD827sonic_lib1_collapsed.fastq.gz -stats/metadmg/damage/HD827sonic_lib1_collapsed.stat.gz -stats/metadmg/damage/HD827sonic_lib1_collapsed.stat.gz -stats/prefilter_metadmg/damage/HD827sonic_lib1_collapsed.stat.gz -stats/prefilter_metadmg/damage/HD827sonic_lib1_collapsed.stat.gz -   - - - +target_taxon + +↪ input + +reports/multiqc.taxon.html +reports/multiqc_data.taxon.zip +results/metadmg/aggregate/HD827sonic_lib1_collapsed.stat.gz +results/metadmg/aggregate/HD827sonic_lib1_collapsed.stat.gz +results/prefilter_metadmg/aggregate/HD827sonic_lib1_collapsed.stat.gz +results/prefilter_metadmg/aggregate/HD827sonic_lib1_collapsed.stat.gz +results/prefilter_reads/saturated/HD827sonic_lib1_collapsed.fastq.gz +results/prefilter_reads/saturated/HD827sonic_lib1_collapsed.fastq.gz +results/reads/saturated/HD827sonic_lib1_collapsed.fastq.gz +results/reads/saturated/HD827sonic_lib1_collapsed.fastq.gz +stats/metadmg/damage/HD827sonic_lib1_collapsed.stat.gz +stats/metadmg/damage/HD827sonic_lib1_collapsed.stat.gz +stats/prefilter_metadmg/damage/HD827sonic_lib1_collapsed.stat.gz +stats/prefilter_metadmg/damage/HD827sonic_lib1_collapsed.stat.gz +   + + + 1 -multiqc_taxon - -↪ input - -/maps/projects/caeg/people/lnc113/workflows/aeDNA/aeDNA/workflow/resources/multiqc_config.yaml -logs/prefilter_shards/bowtie2/HD827sonic_lib1_collapsed.hires_organelles_viruses_smags.1-of-7.log -logs/prefilter_shards/bowtie2/HD827sonic_lib1_collapsed.hires_organelles_viruses_smags.2-of-7.log -logs/prefilter_shards/bowtie2/HD827sonic_lib1_collapsed.hires_organelles_viruses_smags.3-of-7.log -logs/prefilter_shards/bowtie2/HD827sonic_lib1_collapsed.hires_organelles_viruses_smags.4-of-7.log -logs/prefilter_shards/bowtie2/HD827sonic_lib1_collapsed.hires_organelles_viruses_smags.5-of-7.log -logs/prefilter_shards/bowtie2/HD827sonic_lib1_collapsed.hires_organelles_viruses_smags.6-of-7.log -logs/prefilter_shards/bowtie2/HD827sonic_lib1_collapsed.hires_organelles_viruses_smags.7-of-7.log -logs/prefilter_shards/bowtie2/HD827sonic_lib1_collapsed.human_genome.1-of-1.log -logs/shards/bowtie2/HD827sonic_lib1_collapsed.core_nt.1-of-1.log -logs/shards/bowtie2/HD827sonic_lib1_collapsed.refseq_mitoch.1-of-1.log -logs/shards/bowtie2/HD827sonic_lib1_collapsed.refseq_plastid.1-of-1.log -results/metadmg/aggregate/HD827sonic_lib1_collapsed.stat.gz -results/metadmg/aggregate/HD827sonic_lib1_collapsed.stat.gz -results/metadmg/dfit/HD827sonic_lib1_collapsed.dfit.gz -results/metadmg/dfit/HD827sonic_lib1_collapsed.dfit.gz -results/prefilter_metadmg/aggregate/HD827sonic_lib1_collapsed.stat.gz -results/prefilter_metadmg/aggregate/HD827sonic_lib1_collapsed.stat.gz -results/prefilter_metadmg/dfit/HD827sonic_lib1_collapsed.dfit.gz -results/prefilter_metadmg/dfit/HD827sonic_lib1_collapsed.dfit.gz -stats/aligns/samtools_stats/HD827sonic_lib1_collapsed.txt -stats/aligns/samtools_stats/HD827sonic_lib1_collapsed.txt -stats/aligns/samtools_stats/HD827sonic_lib1_collapsed.txt -stats/aligns/samtools_stats/HD827sonic_lib1_collapsed.txt -stats/aligns/samtools_stats/HD827sonic_lib1_collapsed.txt -stats/aligns/samtools_stats/HD827sonic_lib1_collapsed.txt -stats/prefilter_aligns/samtools_stats/HD827sonic_lib1_collapsed.txt -stats/prefilter_aligns/samtools_stats/HD827sonic_lib1_collapsed.txt -stats/prefilter_aligns/samtools_stats/HD827sonic_lib1_collapsed.txt -stats/prefilter_aligns/samtools_stats/HD827sonic_lib1_collapsed.txt -stats/reads/fastqc/derep/HD827sonic_lib1_collapsed_fastqc.zip -stats/reads/fastqc/low_complexity/HD827sonic_lib1_collapsed_fastqc.zip -stats/reads/fastqc/merge_lanes/HD827sonic_lib1_collapsed_fastqc.zip -stats/reads/fastqc/prefilter/HD827sonic_lib1_collapsed_fastqc.zip -stats/reads/fastqc/prefilter/HD827sonic_lib1_collapsed_fastqc.zip -stats/reads/fastqc/raw/HD827sonic_lib1_L001_R1.html -stats/reads/fastqc/raw/HD827sonic_lib1_L001_R1_fastqc.zip -stats/reads/fastqc/raw/HD827sonic_lib1_L001_R2.html -stats/reads/fastqc/raw/HD827sonic_lib1_L001_R2_fastqc.zip -stats/reads/fastqc/raw/HD827sonic_lib1_L002_R1.html -stats/reads/fastqc/raw/HD827sonic_lib1_L002_R1_fastqc.zip -stats/reads/fastqc/raw/HD827sonic_lib1_L002_R2.html -stats/reads/fastqc/raw/HD827sonic_lib1_L002_R2_fastqc.zip -stats/reads/fastqc/trim/HD827sonic_lib1_L001_R1.html -stats/reads/fastqc/trim/HD827sonic_lib1_L001_R1_fastqc.zip -stats/reads/fastqc/trim/HD827sonic_lib1_L001_R2.html -stats/reads/fastqc/trim/HD827sonic_lib1_L001_R2_fastqc.zip -stats/reads/fastqc/trim/HD827sonic_lib1_L001_collapsed.html -stats/reads/fastqc/trim/HD827sonic_lib1_L001_collapsed_fastqc.zip -stats/reads/fastqc/trim/HD827sonic_lib1_L001_collapsedtrunc.html -stats/reads/fastqc/trim/HD827sonic_lib1_L001_collapsedtrunc_fastqc.zip -stats/reads/fastqc/trim/HD827sonic_lib1_L001_singleton.html -stats/reads/fastqc/trim/HD827sonic_lib1_L001_singleton_fastqc.zip -stats/reads/fastqc/trim/HD827sonic_lib1_L002_R1.html -stats/reads/fastqc/trim/HD827sonic_lib1_L002_R1_fastqc.zip -stats/reads/fastqc/trim/HD827sonic_lib1_L002_R2.html -stats/reads/fastqc/trim/HD827sonic_lib1_L002_R2_fastqc.zip -stats/reads/fastqc/trim/HD827sonic_lib1_L002_collapsed.html -stats/reads/fastqc/trim/HD827sonic_lib1_L002_collapsed_fastqc.zip -stats/reads/fastqc/trim/HD827sonic_lib1_L002_collapsedtrunc.html -stats/reads/fastqc/trim/HD827sonic_lib1_L002_collapsedtrunc_fastqc.zip -stats/reads/fastqc/trim/HD827sonic_lib1_L002_singleton.html -stats/reads/fastqc/trim/HD827sonic_lib1_L002_singleton_fastqc.zip -stats/reads/nonpareil/derep/HD827sonic_lib1_collapsed.json -stats/reads/nonpareil/low_complexity/HD827sonic_lib1_collapsed.json -stats/reads/nonpareil/merge_lanes/HD827sonic_lib1_collapsed.json -stats/reads/trim/HD827sonic_lib1_L001_pe.settings -stats/reads/trim/HD827sonic_lib1_L002_pe.settings - -output → - -reports/multiqc.taxon.html -reports/multiqc_data.taxon.zip - - - +multiqc_taxon + +↪ input + +/maps/projects/caeg/people/lnc113/workflows/aeDNA/aeDNA/workflow/resources/multiqc_config.yaml +logs/prefilter_shards/bowtie2/HD827sonic_lib1_collapsed.hires_organelles_viruses_smags.1-of-7.log +logs/prefilter_shards/bowtie2/HD827sonic_lib1_collapsed.hires_organelles_viruses_smags.2-of-7.log +logs/prefilter_shards/bowtie2/HD827sonic_lib1_collapsed.hires_organelles_viruses_smags.3-of-7.log +logs/prefilter_shards/bowtie2/HD827sonic_lib1_collapsed.hires_organelles_viruses_smags.4-of-7.log +logs/prefilter_shards/bowtie2/HD827sonic_lib1_collapsed.hires_organelles_viruses_smags.5-of-7.log +logs/prefilter_shards/bowtie2/HD827sonic_lib1_collapsed.hires_organelles_viruses_smags.6-of-7.log +logs/prefilter_shards/bowtie2/HD827sonic_lib1_collapsed.hires_organelles_viruses_smags.7-of-7.log +logs/prefilter_shards/bowtie2/HD827sonic_lib1_collapsed.human_genome.1-of-1.log +logs/shards/bowtie2/HD827sonic_lib1_collapsed.core_nt.1-of-1.log +logs/shards/bowtie2/HD827sonic_lib1_collapsed.refseq_mitoch.1-of-1.log +logs/shards/bowtie2/HD827sonic_lib1_collapsed.refseq_plastid.1-of-1.log +results/metadmg/aggregate/HD827sonic_lib1_collapsed.stat.gz +results/metadmg/aggregate/HD827sonic_lib1_collapsed.stat.gz +results/metadmg/dfit/HD827sonic_lib1_collapsed.dfit.gz +results/metadmg/dfit/HD827sonic_lib1_collapsed.dfit.gz +results/prefilter_metadmg/aggregate/HD827sonic_lib1_collapsed.stat.gz +results/prefilter_metadmg/aggregate/HD827sonic_lib1_collapsed.stat.gz +results/prefilter_metadmg/dfit/HD827sonic_lib1_collapsed.dfit.gz +results/prefilter_metadmg/dfit/HD827sonic_lib1_collapsed.dfit.gz +stats/aligns/samtools_stats/HD827sonic_lib1_collapsed.txt +stats/aligns/samtools_stats/HD827sonic_lib1_collapsed.txt +stats/aligns/samtools_stats/HD827sonic_lib1_collapsed.txt +stats/aligns/samtools_stats/HD827sonic_lib1_collapsed.txt +stats/aligns/samtools_stats/HD827sonic_lib1_collapsed.txt +stats/aligns/samtools_stats/HD827sonic_lib1_collapsed.txt +stats/prefilter_aligns/samtools_stats/HD827sonic_lib1_collapsed.txt +stats/prefilter_aligns/samtools_stats/HD827sonic_lib1_collapsed.txt +stats/prefilter_aligns/samtools_stats/HD827sonic_lib1_collapsed.txt +stats/prefilter_aligns/samtools_stats/HD827sonic_lib1_collapsed.txt +stats/reads/fastqc/derep/HD827sonic_lib1_collapsed_fastqc.zip +stats/reads/fastqc/low_complexity/HD827sonic_lib1_collapsed_fastqc.zip +stats/reads/fastqc/merge_lanes/HD827sonic_lib1_collapsed_fastqc.zip +stats/reads/fastqc/prefilter/HD827sonic_lib1_collapsed_fastqc.zip +stats/reads/fastqc/prefilter/HD827sonic_lib1_collapsed_fastqc.zip +stats/reads/fastqc/raw/HD827sonic_lib1_L001_R1.html +stats/reads/fastqc/raw/HD827sonic_lib1_L001_R1_fastqc.zip +stats/reads/fastqc/raw/HD827sonic_lib1_L001_R2.html +stats/reads/fastqc/raw/HD827sonic_lib1_L001_R2_fastqc.zip +stats/reads/fastqc/raw/HD827sonic_lib1_L002_R1.html +stats/reads/fastqc/raw/HD827sonic_lib1_L002_R1_fastqc.zip +stats/reads/fastqc/raw/HD827sonic_lib1_L002_R2.html +stats/reads/fastqc/raw/HD827sonic_lib1_L002_R2_fastqc.zip +stats/reads/fastqc/trim/HD827sonic_lib1_L001_R1.html +stats/reads/fastqc/trim/HD827sonic_lib1_L001_R1_fastqc.zip +stats/reads/fastqc/trim/HD827sonic_lib1_L001_R2.html +stats/reads/fastqc/trim/HD827sonic_lib1_L001_R2_fastqc.zip +stats/reads/fastqc/trim/HD827sonic_lib1_L001_collapsed.html +stats/reads/fastqc/trim/HD827sonic_lib1_L001_collapsed_fastqc.zip +stats/reads/fastqc/trim/HD827sonic_lib1_L001_collapsedtrunc.html +stats/reads/fastqc/trim/HD827sonic_lib1_L001_collapsedtrunc_fastqc.zip +stats/reads/fastqc/trim/HD827sonic_lib1_L001_singleton.html +stats/reads/fastqc/trim/HD827sonic_lib1_L001_singleton_fastqc.zip +stats/reads/fastqc/trim/HD827sonic_lib1_L002_R1.html +stats/reads/fastqc/trim/HD827sonic_lib1_L002_R1_fastqc.zip +stats/reads/fastqc/trim/HD827sonic_lib1_L002_R2.html +stats/reads/fastqc/trim/HD827sonic_lib1_L002_R2_fastqc.zip +stats/reads/fastqc/trim/HD827sonic_lib1_L002_collapsed.html +stats/reads/fastqc/trim/HD827sonic_lib1_L002_collapsed_fastqc.zip +stats/reads/fastqc/trim/HD827sonic_lib1_L002_collapsedtrunc.html +stats/reads/fastqc/trim/HD827sonic_lib1_L002_collapsedtrunc_fastqc.zip +stats/reads/fastqc/trim/HD827sonic_lib1_L002_singleton.html +stats/reads/fastqc/trim/HD827sonic_lib1_L002_singleton_fastqc.zip +stats/reads/nonpareil/merge_lanes/HD827sonic_lib1_collapsed.json +stats/reads/trim/HD827sonic_lib1_L001_pe.settings +stats/reads/trim/HD827sonic_lib1_L002_pe.settings + +output → + +reports/multiqc.taxon.html +reports/multiqc_data.taxon.zip + + + - + 1->0 - - + + 2 -trim_fastqc_raw - -↪ input - -results/reads/raw/{sample}_{library}_{lane}_{read_type_raw}.fastq.gz - -output → - -stats/reads/fastqc/raw/{sample}_{library}_{lane}_{read_type_raw,R2|R1}.html -stats/reads/fastqc/raw/{sample}_{library}_{lane}_{read_type_raw,R2|R1}_fastqc.zip - - - +trim_fastqc_raw + +↪ input + +results/reads/raw/{sample}_{library}_{lane}_{read_type_raw}.fastq.gz + +output → + +stats/reads/fastqc/raw/{sample}_{library}_{lane}_{read_type_raw,R2|R1}.html +stats/reads/fastqc/raw/{sample}_{library}_{lane}_{read_type_raw,R2|R1}_fastqc.zip + + + - + 2->1 - - + + 3 -trim_get_fastq_raw - -↪ input - -<input function> - -output → - -results/reads/raw/{sample}_{library}_{lane}_{read_type_raw,R2|R1}.fastq.gz - - - +trim_get_fastq_raw + +↪ input + +<input function> + +output → + +results/reads/raw/{sample}_{library}_{lane}_{read_type_raw,R2|R1}.fastq.gz + + + 3->2 - - + + 4 -trim_adapterremoval_fastq_pe - -↪ input - -<input function> - -output → - -results/reads/trim/{sample}_{library}_{lane}_R1.fastq.gz -results/reads/trim/{sample}_{library}_{lane}_R2.fastq.gz -results/reads/trim/{sample}_{library}_{lane}_collapsed.fastq.gz -results/reads/trim/{sample}_{library}_{lane}_collapsedtrunc.fastq.gz -results/reads/trim/{sample}_{library}_{lane}_discarded.fastq.gz -results/reads/trim/{sample}_{library}_{lane}_singleton.fastq.gz -stats/reads/trim/{sample}_{library}_{lane}_pe.settings - - - +trim_adapterremoval_fastq_pe + +↪ input + +<input function> + +output → + +results/reads/trim/{sample}_{library}_{lane}_R1.fastq.gz +results/reads/trim/{sample}_{library}_{lane}_R2.fastq.gz +results/reads/trim/{sample}_{library}_{lane}_collapsed.fastq.gz +results/reads/trim/{sample}_{library}_{lane}_collapsedtrunc.fastq.gz +results/reads/trim/{sample}_{library}_{lane}_discarded.fastq.gz +results/reads/trim/{sample}_{library}_{lane}_singleton.fastq.gz +stats/reads/trim/{sample}_{library}_{lane}_pe.settings + + + 3->4 - - + + - + 4->1 - - + + 5 -trim_fastqc_trim - -↪ input - -results/reads/trim/{sample}_{library}_{lane}_{read_type_trim}.fastq.gz - -output → - -stats/reads/fastqc/trim/{sample}_{library}_{lane}_{read_type_trim,R1|R2|collapsedtrunc|collapsed|singleton}.html -stats/reads/fastqc/trim/{sample}_{library}_{lane}_{read_type_trim,R1|R2|collapsedtrunc|collapsed|singleton}_fastqc.zip - - - +trim_fastqc_trim + +↪ input + +results/reads/trim/{sample}_{library}_{lane}_{read_type_trim}.fastq.gz + +output → + +stats/reads/fastqc/trim/{sample}_{library}_{lane}_{read_type_trim,collapsed|singleton|R2|collapsedtrunc|R1}.html +stats/reads/fastqc/trim/{sample}_{library}_{lane}_{read_type_trim,collapsed|singleton|R2|collapsedtrunc|R1}_fastqc.zip + + + 4->5 - - + + 7 -derep_merge_lanes - -↪ input - -<input function> - -output → - -temp/reads/merge_lanes/{sample}_{library}_{read_type_trim}.fastq.gz - - - +derep_merge_lanes + +↪ input + +<input function> + +output → + +temp/reads/merge_lanes/{sample}_{library}_{read_type_trim}.fastq.gz + + + 4->7 - - + + - + 5->1 - - + + 6 -derep_fastqc - -↪ input - -<input function> - -output → - -stats/reads/fastqc/{tool,merge_lanes|extend/tadpole|derep|represent/grep|low_complexity}/{sample}_{library}_{read_type_trim}.html -stats/reads/fastqc/{tool,merge_lanes|extend/tadpole|derep|represent/grep|low_complexity}/{sample}_{library}_{read_type_trim}_fastqc.zip - - - +derep_fastqc + +↪ input + +<input function> + +output → + +stats/reads/fastqc/{tool,merge_lanes|extend/tadpole|derep|represent/grep|low_complexity}/{sample}_{library}_{read_type_trim}.html +stats/reads/fastqc/{tool,merge_lanes|extend/tadpole|derep|represent/grep|low_complexity}/{sample}_{library}_{read_type_trim}_fastqc.zip + + + - + 6->1 - - + + 7->6 - - + + 9 -derep_nonpareil_infer - -↪ input - -<input function> - -output → - -stats/reads/nonpareil/{tool}/{sample}_{library}_{read_type_trim}.log -stats/reads/nonpareil/{tool}/{sample}_{library}_{read_type_trim}.npa -stats/reads/nonpareil/{tool}/{sample}_{library}_{read_type_trim}.npc -stats/reads/nonpareil/{tool}/{sample}_{library}_{read_type_trim}.npo - - - +derep_nonpareil_infer + +↪ input + +<input function> + +output → + +stats/reads/nonpareil/{tool}/{sample}_{library}_{read_type_trim}.log +stats/reads/nonpareil/{tool}/{sample}_{library}_{read_type_trim}.npa +stats/reads/nonpareil/{tool}/{sample}_{library}_{read_type_trim}.npc +stats/reads/nonpareil/{tool}/{sample}_{library}_{read_type_trim}.npo + + + 7->9 - - + + 10 -derep_seqkit - -↪ input - -temp/reads/merge_lanes/{sample}_{library}_{read_type_trim}.fastq.gz - -output → - -stats/reads/derep/{sample}_{library}_{read_type_trim}.dup.tsv -temp/reads/derep/{sample}_{library}_{read_type_trim}.fastq.gz - - - +derep_seqkit + +↪ input + +temp/reads/merge_lanes/{sample}_{library}_{read_type_trim}.fastq.gz + +output → + +stats/reads/derep/{sample}_{library}_{read_type_trim}.dup.tsv +temp/reads/derep/{sample}_{library}_{read_type_trim}.fastq.gz + + + - + 7->10 - - + + 8 -derep_nonpareil_plot - -↪ input - -stats/reads/nonpareil/{tool}/{sample}_{library}_{read_type_trim}.npo - -output → - -reports/reads/nonpareil/{tool}/{sample}_{library}_{read_type_trim}.pdf -stats/reads/nonpareil/{tool}/{sample}_{library}_{read_type_trim}.json -stats/reads/nonpareil/{tool}/{sample}_{library}_{read_type_trim}.tsv - - - +derep_nonpareil_plot + +↪ input + +stats/reads/nonpareil/{tool}/{sample}_{library}_{read_type_trim}.npo + +output → + +reports/reads/nonpareil/{tool}/{sample}_{library}_{read_type_trim}.pdf +stats/reads/nonpareil/{tool}/{sample}_{library}_{read_type_trim}.json +stats/reads/nonpareil/{tool}/{sample}_{library}_{read_type_trim}.tsv + + + - + 8->1 - - + + 9->8 - - + + 10->6 - - - - - -10->9 - - + + 11 -derep_low_complexity - -↪ input - -temp/reads/derep/{sample}_{library}_{read_type_trim}.fastq.gz - -output → - -results/reads/low_complexity/{sample}_{library}_{read_type_trim}.fastq.gz -stats/reads/low_complexity/{sample}_{library}_{read_type_trim}.txt -temp/reads/low_complexity/{sample}_{library}_{read_type_trim}.discarded.fastq.gz - - - +derep_low_complexity + +↪ input + +temp/reads/derep/{sample}_{library}_{read_type_trim}.fastq.gz + +output → + +results/reads/low_complexity/{sample}_{library}_{read_type_trim}.fastq.gz +stats/reads/low_complexity/{sample}_{library}_{read_type_trim}.txt +temp/reads/low_complexity/{sample}_{library}_{read_type_trim}.discarded.fastq.gz + + + - + 10->11 - - + + 11->6 - - - - - -11->9 - - + + 13 -prefilter_reads_extract - -↪ input - -<input function> -temp/reads/prefilter/merge/{sample}_{library}_{read_type_map}.read_ids - -output → - -results/reads/prefilter/extract/{sample,HD827sonic}_{library,lib1}_{read_type_map}.fastq.gz - - - +prefilter_reads_extract + +↪ input + +<input function> +temp/reads/prefilter/merge/{sample}_{library}_{read_type_map}.read_ids + +output → + +results/reads/prefilter/extract/{sample,HD827sonic}_{library,lib1}_{read_type_map}.fastq.gz + + + - + 11->13 - - + + 20 -taxon_prefilter_shard_bowtie2 - -↪ input - -<input function> -<input function> - -output → - -temp/prefilter_shards/bowtie2/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.bam - - - +taxon_prefilter_shard_bowtie2 + +↪ input + +<input function> +<input function> + +output → + +temp/prefilter_shards/bowtie2/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.bam + + + - + 11->20 - - + + 38 -taxon_prefilter_shard_saturated_reads_extract - -↪ input - -<input function> -temp/prefilter_shards/saturated_reads/filter/{sample}_{library}_{read_type_map}.tsv - -output → - -results/prefilter_reads/saturated/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.fastq.gz - - - +taxon_prefilter_shard_saturated_reads_extract + +↪ input + +<input function> +temp/prefilter_shards/saturated_reads/filter/{sample}_{library}_{read_type_map}.tsv + +output → + +results/prefilter_reads/saturated/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.fastq.gz + + + - + 11->38 - - + + 40 -taxon_shard_saturated_reads_extract - -↪ input - -<input function> -temp/shards/saturated_reads/filter/{sample}_{library}_{read_type_map}.tsv - -output → - -results/reads/saturated/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.fastq.gz - - - +taxon_shard_saturated_reads_extract + +↪ input + +<input function> +temp/shards/saturated_reads/filter/{sample}_{library}_{read_type_map}.tsv + +output → + +results/reads/saturated/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.fastq.gz + + + - + 11->40 - - + + 12 -prefilter_fastqc - -↪ input - -results/reads/prefilter/extract/{sample}_{library}_{read_type_map}.fastq.gz - -output → - -stats/reads/fastqc/prefilter/{sample,HD827sonic}_{library,lib1}_{read_type_map}.html -stats/reads/fastqc/prefilter/{sample,HD827sonic}_{library,lib1}_{read_type_map}_fastqc.zip - - - +prefilter_fastqc + +↪ input + +results/reads/prefilter/extract/{sample}_{library}_{read_type_map}.fastq.gz + +output → + +stats/reads/fastqc/prefilter/{sample,HD827sonic}_{library,lib1}_{read_type_map}.html +stats/reads/fastqc/prefilter/{sample,HD827sonic}_{library,lib1}_{read_type_map}_fastqc.zip + + + 12->1 - - + + - + 13->12 - - + + 27 -taxon_shard_bowtie2 - -↪ input - -<input function> -results/reads/prefilter/extract/{sample}_{library}_{read_type_map}.fastq.gz - -output → - -temp/shards/bowtie2/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.bam - - - +taxon_shard_bowtie2 + +↪ input + +<input function> +results/reads/prefilter/extract/{sample}_{library}_{read_type_map}.fastq.gz + +output → + +temp/shards/bowtie2/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.bam + + + - + 13->27 - - + + 14 -prefilter_reads_merge - -↪ input - -temp/prefilter_shards/saturated_reads/filter/{sample}_{library}_{read_type_map}.tsv -temp/reads/prefilter/taxonomy/{sample}_{library}_{read_type_map}.read_ids - -output → - -temp/reads/prefilter/merge/{sample,HD827sonic}_{library,lib1}_{read_type_map}.read_ids - - - +prefilter_reads_merge + +↪ input + +temp/prefilter_shards/saturated_reads/filter/{sample}_{library}_{read_type_map}.tsv +temp/reads/prefilter/taxonomy/{sample}_{library}_{read_type_map}.read_ids + +output → + +temp/reads/prefilter/merge/{sample,HD827sonic}_{library,lib1}_{read_type_map}.read_ids + + + - + 14->13 - - + + 15 -prefilter_reads_taxonomy - -↪ input - -/datasets/caeg_dataset/references/hires-organelles-viruses-smags/20240313/taxonomy/hires-organelles-viruses-smags.acc2taxid.gz -/datasets/caeg_dataset/references/human_genome/GCF_000001405.40/taxonomy/hires-organelles-viruses-smags/GCF_000001405.40_GRCh38.p14_genomic.acc2taxid.gz -/datasets/caeg_dataset/taxonomy/hires-organelles-viruses-smags/20240313/names.dmp -/datasets/caeg_dataset/taxonomy/hires-organelles-viruses-smags/20240313/nodes.dmp -results/prefilter_aligns/merge/{sample}_{library}_{read_type_map}.bam - -output → - -temp/reads/prefilter/taxonomy/{sample,HD827sonic}_{library,lib1}_{read_type_map}.read_ids - - - +prefilter_reads_taxonomy + +↪ input + +/datasets/caeg_dataset/references/hires-organelles-viruses-smags/20240313/taxonomy/hires-organelles-viruses-smags.acc2taxid.gz +/datasets/caeg_dataset/references/human_genome/GCF_000001405.40/taxonomy/hires-organelles-viruses-smags/GCF_000001405.40_GRCh38.p14_genomic.acc2taxid.gz +/datasets/caeg_dataset/taxonomy/hires-organelles-viruses-smags/20240313/names.dmp +/datasets/caeg_dataset/taxonomy/hires-organelles-viruses-smags/20240313/nodes.dmp +results/prefilter_aligns/merge/{sample}_{library}_{read_type_map}.bam + +output → + +temp/reads/prefilter/taxonomy/{sample,HD827sonic}_{library,lib1}_{read_type_map}.read_ids + + + - + 15->14 - - + + 16 -taxon_prefilter_align_merge - -↪ input - -<input function> - -output → - -results/prefilter_aligns/merge/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.bam - - - +taxon_prefilter_align_merge + +↪ input + +<input function> + +output → + +results/prefilter_aligns/merge/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.bam + + + - + 16->15 - - + + 23 -taxon_prefilter_align_stats - -↪ input - -results/prefilter_aligns/merge/{sample}_{library}_{read_type_map}.bam - -output → - -stats/prefilter_aligns/samtools_stats/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.txt - - - +taxon_prefilter_align_stats + +↪ input + +results/prefilter_aligns/merge/{sample}_{library}_{read_type_map}.bam + +output → + +stats/prefilter_aligns/samtools_stats/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.txt + + + - + 16->23 - - + + 25 -taxon_prefilter_metadmg_lca - -↪ input - -/datasets/caeg_dataset/references/hires-organelles-viruses-smags/20240313/taxonomy/hires-organelles-viruses-smags.acc2taxid.gz -/datasets/caeg_dataset/references/human_genome/GCF_000001405.40/taxonomy/hires-organelles-viruses-smags/GCF_000001405.40_GRCh38.p14_genomic.acc2taxid.gz -/datasets/caeg_dataset/taxonomy/hires-organelles-viruses-smags/20240313/names.dmp -/datasets/caeg_dataset/taxonomy/hires-organelles-viruses-smags/20240313/nodes.dmp -<function <lambda> at 0x7f4cd16b3c40> - -output → - -results/prefilter_metadmg/lca/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.bdamage.gz -results/prefilter_metadmg/lca/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.lca.gz -stats/prefilter_metadmg/lca/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.rlens.gz -stats/prefilter_metadmg/lca/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.stat.gz - - - +taxon_prefilter_metadmg_lca + +↪ input + +/datasets/caeg_dataset/references/hires-organelles-viruses-smags/20240313/taxonomy/hires-organelles-viruses-smags.acc2taxid.gz +/datasets/caeg_dataset/references/human_genome/GCF_000001405.40/taxonomy/hires-organelles-viruses-smags/GCF_000001405.40_GRCh38.p14_genomic.acc2taxid.gz +/datasets/caeg_dataset/taxonomy/hires-organelles-viruses-smags/20240313/names.dmp +/datasets/caeg_dataset/taxonomy/hires-organelles-viruses-smags/20240313/nodes.dmp +<function <lambda> at 0x7fb89b7442c0> + +output → + +results/prefilter_metadmg/lca/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.bdamage.gz +results/prefilter_metadmg/lca/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.lca.gz +stats/prefilter_metadmg/lca/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.rlens.gz +stats/prefilter_metadmg/lca/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.stat.gz + + + - + 16->25 - - + + 39 -taxon_prefilter_metadmg_damage - -↪ input - -<function <lambda> at 0x7f4cd16b3420> - -output → - -results/prefilter_metadmg/damage/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.bdamage.gz -results/prefilter_metadmg/damage/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.res.gz -stats/prefilter_metadmg/damage/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.rlens.gz -stats/prefilter_metadmg/damage/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.stat.gz - - - +taxon_prefilter_metadmg_damage + +↪ input + +<function <lambda> at 0x7fb89b747d80> + +output → + +results/prefilter_metadmg/damage/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.bdamage.gz +results/prefilter_metadmg/damage/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.res.gz +stats/prefilter_metadmg/damage/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.rlens.gz +stats/prefilter_metadmg/damage/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.stat.gz + + + - + 16->39 - - + + 17 -taxon_prefilter_shard_sort_query - -↪ input - -temp/prefilter_shards/unicorn/{sample}_{library}_{read_type_map}.{ref}.{n_shard}-of-{tot_shards}.bam - -output → - -temp/prefilter_shards/sort_query/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.bam - - - +taxon_prefilter_shard_sort_query + +↪ input + +temp/prefilter_shards/unicorn/{sample}_{library}_{read_type_map}.{ref}.{n_shard}-of-{tot_shards}.bam + +output → + +temp/prefilter_shards/sort_query/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.bam + + + - + 17->16 - - + + 18 -taxon_prefilter_shard_unicorn - -↪ input - -temp/prefilter_shards/saturated_reads/remove/{sample}_{library}_{read_type_map}.{ref}.{n_shard}-of-{tot_shards}.bam - -output → - -stats/prefilter_shards/unicorn/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.tsv -temp/prefilter_shards/unicorn/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.bam - - - +taxon_prefilter_shard_unicorn + +↪ input + +temp/prefilter_shards/saturated_reads/remove/{sample}_{library}_{read_type_map}.{ref}.{n_shard}-of-{tot_shards}.bam + +output → + +stats/prefilter_shards/unicorn/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.tsv +temp/prefilter_shards/unicorn/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.bam + + + - + 18->17 - - + + 19 -taxon_prefilter_shard_saturated_reads_remove - -↪ input - -<input function> -temp/prefilter_shards/saturated_reads/filter/{sample}_{library}_{read_type_map}.tsv - -output → - -temp/prefilter_shards/saturated_reads/remove/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.bam - - - +taxon_prefilter_shard_saturated_reads_remove + +↪ input + +<input function> +temp/prefilter_shards/saturated_reads/filter/{sample}_{library}_{read_type_map}.tsv + +output → + +temp/prefilter_shards/saturated_reads/remove/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.bam + + + - + 19->18 - - + + - + 20->1 - - + + - + 20->19 - - + + 22 -taxon_prefilter_shard_count_alns - -↪ input - -<input function> - -output → - -temp/prefilter_shards/count_alns/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.tsv - - - +taxon_prefilter_shard_count_alns + +↪ input + +<input function> + +output → + +temp/prefilter_shards/count_alns/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.tsv + + + - + 20->22 - - + + 21 -taxon_prefilter_shard_saturated_reads_filter - -↪ input - -temp/prefilter_shards/count_alns/{sample}_{library}_collapsed.hires_organelles_viruses_smags.1-of-7.tsv -temp/prefilter_shards/count_alns/{sample}_{library}_collapsed.hires_organelles_viruses_smags.2-of-7.tsv -temp/prefilter_shards/count_alns/{sample}_{library}_collapsed.hires_organelles_viruses_smags.3-of-7.tsv -temp/prefilter_shards/count_alns/{sample}_{library}_collapsed.hires_organelles_viruses_smags.4-of-7.tsv -temp/prefilter_shards/count_alns/{sample}_{library}_collapsed.hires_organelles_viruses_smags.5-of-7.tsv -temp/prefilter_shards/count_alns/{sample}_{library}_collapsed.hires_organelles_viruses_smags.6-of-7.tsv -temp/prefilter_shards/count_alns/{sample}_{library}_collapsed.hires_organelles_viruses_smags.7-of-7.tsv -temp/prefilter_shards/count_alns/{sample}_{library}_collapsed.human_genome.1-of-1.tsv - -output → - -temp/prefilter_shards/saturated_reads/filter/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.tsv - - - +taxon_prefilter_shard_saturated_reads_filter + +↪ input + +temp/prefilter_shards/count_alns/{sample}_{library}_collapsed.hires_organelles_viruses_smags.1-of-7.tsv +temp/prefilter_shards/count_alns/{sample}_{library}_collapsed.hires_organelles_viruses_smags.2-of-7.tsv +temp/prefilter_shards/count_alns/{sample}_{library}_collapsed.hires_organelles_viruses_smags.3-of-7.tsv +temp/prefilter_shards/count_alns/{sample}_{library}_collapsed.hires_organelles_viruses_smags.4-of-7.tsv +temp/prefilter_shards/count_alns/{sample}_{library}_collapsed.hires_organelles_viruses_smags.5-of-7.tsv +temp/prefilter_shards/count_alns/{sample}_{library}_collapsed.hires_organelles_viruses_smags.6-of-7.tsv +temp/prefilter_shards/count_alns/{sample}_{library}_collapsed.hires_organelles_viruses_smags.7-of-7.tsv +temp/prefilter_shards/count_alns/{sample}_{library}_collapsed.human_genome.1-of-1.tsv + +output → + +temp/prefilter_shards/saturated_reads/filter/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.tsv + + + - + 21->14 - - + + - + 21->19 - - + + - + 21->38 - - + + - + 22->21 - - + + - + 23->1 - - + + 24 -taxon_prefilter_metadmg_dfit - -↪ input - -/datasets/caeg_dataset/taxonomy/hires-organelles-viruses-smags/20240313/names.dmp -/datasets/caeg_dataset/taxonomy/hires-organelles-viruses-smags/20240313/nodes.dmp -results/prefilter_metadmg/lca/{sample}_{library}_{read_type_map}.bdamage.gz - -output → - -results/prefilter_metadmg/dfit/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.boot.stat.gz -results/prefilter_metadmg/dfit/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.dfit.gz - - - +taxon_prefilter_metadmg_dfit + +↪ input + +/datasets/caeg_dataset/taxonomy/hires-organelles-viruses-smags/20240313/names.dmp +/datasets/caeg_dataset/taxonomy/hires-organelles-viruses-smags/20240313/nodes.dmp +results/prefilter_metadmg/lca/{sample}_{library}_{read_type_map}.bdamage.gz + +output → + +results/prefilter_metadmg/dfit/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.boot.stat.gz +results/prefilter_metadmg/dfit/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.dfit.gz + + + - + 24->1 - - + + 26 -taxon_prefilter_metadmg_aggregate - -↪ input - -/datasets/caeg_dataset/taxonomy/hires-organelles-viruses-smags/20240313/names.dmp -/datasets/caeg_dataset/taxonomy/hires-organelles-viruses-smags/20240313/nodes.dmp -results/prefilter_metadmg/dfit/{sample}_{library}_{read_type_map}.dfit.gz -results/prefilter_metadmg/lca/{sample}_{library}_{read_type_map}.bdamage.gz -stats/prefilter_metadmg/lca/{sample}_{library}_{read_type_map}.stat.gz - -output → - -results/prefilter_metadmg/aggregate/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.stat.gz - - - +taxon_prefilter_metadmg_aggregate + +↪ input + +/datasets/caeg_dataset/taxonomy/hires-organelles-viruses-smags/20240313/names.dmp +/datasets/caeg_dataset/taxonomy/hires-organelles-viruses-smags/20240313/nodes.dmp +results/prefilter_metadmg/dfit/{sample}_{library}_{read_type_map}.dfit.gz +results/prefilter_metadmg/lca/{sample}_{library}_{read_type_map}.bdamage.gz +stats/prefilter_metadmg/lca/{sample}_{library}_{read_type_map}.stat.gz + +output → + +results/prefilter_metadmg/aggregate/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.stat.gz + + + - + 24->26 - - + + - + 25->24 - - + + - + 25->26 - - + + - + 26->0 - - + + - + 26->1 - - + + - + 27->1 - - + + 32 -taxon_shard_saturated_reads_remove - -↪ input - -<input function> -temp/shards/saturated_reads/filter/{sample}_{library}_{read_type_map}.tsv - -output → - -temp/shards/saturated_reads/remove/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.bam - - - +taxon_shard_saturated_reads_remove + +↪ input + +<input function> +temp/shards/saturated_reads/filter/{sample}_{library}_{read_type_map}.tsv + +output → + +temp/shards/saturated_reads/remove/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.bam + + + - + 27->32 - - + + 34 -taxon_shard_count_alns - -↪ input - -<input function> - -output → - -temp/shards/count_alns/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.tsv - - - +taxon_shard_count_alns + +↪ input + +<input function> + +output → + +temp/shards/count_alns/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.tsv + + + - + 27->34 - - + + 28 -taxon_align_stats - -↪ input - -results/aligns/merge/{sample}_{library}_{read_type_map}.bam - -output → - -stats/aligns/samtools_stats/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.txt - - - +taxon_align_stats + +↪ input + +results/aligns/merge/{sample}_{library}_{read_type_map}.bam + +output → + +stats/aligns/samtools_stats/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.txt + + + 28->1 - - + + 29 -taxon_align_merge - -↪ input - -<input function> - -output → - -results/aligns/merge/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.bam - - - +taxon_align_merge + +↪ input + +<input function> + +output → + +results/aligns/merge/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.bam + + + - + 29->28 - - + + 36 -taxon_metadmg_lca - -↪ input - -/datasets/caeg_dataset/references/ncbi/20250530/taxonomy/ncbi/core_nt.acc2taxid.gz -/datasets/caeg_dataset/references/ncbi/20250530/taxonomy/ncbi/refseq_mitochondrion.genomic.acc2taxid.gz -/datasets/caeg_dataset/references/ncbi/20250530/taxonomy/ncbi/refseq_plastid.genomic.acc2taxid.gz -/datasets/caeg_dataset/taxonomy/ncbi/20250530/names.dmp -/datasets/caeg_dataset/taxonomy/ncbi/20250530/nodes.dmp -<function <lambda> at 0x7f4cd182f880> - -output → - -results/metadmg/lca/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.bdamage.gz -results/metadmg/lca/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.lca.gz -stats/metadmg/lca/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.rlens.gz -stats/metadmg/lca/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.stat.gz - - - +taxon_metadmg_lca + +↪ input + +/datasets/caeg_dataset/references/ncbi/20250530/taxonomy/ncbi/core_nt.acc2taxid.gz +/datasets/caeg_dataset/references/ncbi/20250530/taxonomy/ncbi/refseq_mitochondrion.genomic.acc2taxid.gz +/datasets/caeg_dataset/references/ncbi/20250530/taxonomy/ncbi/refseq_plastid.genomic.acc2taxid.gz +/datasets/caeg_dataset/taxonomy/ncbi/20250530/names.dmp +/datasets/caeg_dataset/taxonomy/ncbi/20250530/nodes.dmp +<function <lambda> at 0x7fb89ba32020> + +output → + +results/metadmg/lca/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.bdamage.gz +results/metadmg/lca/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.lca.gz +stats/metadmg/lca/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.rlens.gz +stats/metadmg/lca/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.stat.gz + + + - + 29->36 - - + + 41 -taxon_metadmg_damage - -↪ input - -<function <lambda> at 0x7f4cd182fb00> - -output → - -results/metadmg/damage/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.bdamage.gz -results/metadmg/damage/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.res.gz -stats/metadmg/damage/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.rlens.gz -stats/metadmg/damage/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.stat.gz - - - +taxon_metadmg_damage + +↪ input + +<function <lambda> at 0x7fb89b7bcf40> + +output → + +results/metadmg/damage/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.bdamage.gz +results/metadmg/damage/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.res.gz +stats/metadmg/damage/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.rlens.gz +stats/metadmg/damage/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.stat.gz + + + - + 29->41 - - + + 30 -taxon_shard_sort_query - -↪ input - -temp/shards/unicorn/{sample}_{library}_{read_type_map}.{ref}.{n_shard}-of-{tot_shards}.bam - -output → - -temp/shards/sort_query/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.bam - - - +taxon_shard_sort_query + +↪ input + +temp/shards/unicorn/{sample}_{library}_{read_type_map}.{ref}.{n_shard}-of-{tot_shards}.bam + +output → + +temp/shards/sort_query/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.bam + + + - + 30->29 - - + + 31 -taxon_shard_unicorn - -↪ input - -temp/shards/saturated_reads/remove/{sample}_{library}_{read_type_map}.{ref}.{n_shard}-of-{tot_shards}.bam - -output → - -stats/shards/unicorn/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.tsv -temp/shards/unicorn/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.bam - - - +taxon_shard_unicorn + +↪ input + +temp/shards/saturated_reads/remove/{sample}_{library}_{read_type_map}.{ref}.{n_shard}-of-{tot_shards}.bam + +output → + +stats/shards/unicorn/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.tsv +temp/shards/unicorn/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.{ref}.{n_shard}-of-{tot_shards}.bam + + + - + 31->30 - - + + - + 32->31 - - + + 33 -taxon_shard_saturated_reads_filter - -↪ input - -temp/shards/count_alns/{sample}_{library}_collapsed.core_nt.1-of-1.tsv -temp/shards/count_alns/{sample}_{library}_collapsed.refseq_mitoch.1-of-1.tsv -temp/shards/count_alns/{sample}_{library}_collapsed.refseq_plastid.1-of-1.tsv - -output → - -temp/shards/saturated_reads/filter/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.tsv - - - +taxon_shard_saturated_reads_filter + +↪ input + +temp/shards/count_alns/{sample}_{library}_collapsed.core_nt.1-of-1.tsv +temp/shards/count_alns/{sample}_{library}_collapsed.refseq_mitoch.1-of-1.tsv +temp/shards/count_alns/{sample}_{library}_collapsed.refseq_plastid.1-of-1.tsv + +output → + +temp/shards/saturated_reads/filter/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.tsv + + + - + 33->32 - - + + - + 33->40 - - + + - + 34->33 - - + + 35 -taxon_metadmg_dfit - -↪ input - -/datasets/caeg_dataset/taxonomy/ncbi/20250530/names.dmp -/datasets/caeg_dataset/taxonomy/ncbi/20250530/nodes.dmp -results/metadmg/lca/{sample}_{library}_{read_type_map}.bdamage.gz - -output → - -results/metadmg/dfit/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.boot.stat.gz -results/metadmg/dfit/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.dfit.gz - - - +taxon_metadmg_dfit + +↪ input + +/datasets/caeg_dataset/taxonomy/ncbi/20250530/names.dmp +/datasets/caeg_dataset/taxonomy/ncbi/20250530/nodes.dmp +results/metadmg/lca/{sample}_{library}_{read_type_map}.bdamage.gz + +output → + +results/metadmg/dfit/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.boot.stat.gz +results/metadmg/dfit/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.dfit.gz + + + - + 35->1 - - + + 37 -taxon_metadmg_aggregate - -↪ input - -/datasets/caeg_dataset/taxonomy/ncbi/20250530/names.dmp -/datasets/caeg_dataset/taxonomy/ncbi/20250530/nodes.dmp -results/metadmg/dfit/{sample}_{library}_{read_type_map}.dfit.gz -results/metadmg/lca/{sample}_{library}_{read_type_map}.bdamage.gz -stats/metadmg/lca/{sample}_{library}_{read_type_map}.stat.gz - -output → - -results/metadmg/aggregate/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.stat.gz - - - +taxon_metadmg_aggregate + +↪ input + +/datasets/caeg_dataset/taxonomy/ncbi/20250530/names.dmp +/datasets/caeg_dataset/taxonomy/ncbi/20250530/nodes.dmp +results/metadmg/dfit/{sample}_{library}_{read_type_map}.dfit.gz +results/metadmg/lca/{sample}_{library}_{read_type_map}.bdamage.gz +stats/metadmg/lca/{sample}_{library}_{read_type_map}.stat.gz + +output → + +results/metadmg/aggregate/{sample}_{library}_{read_type_map,pe|se|singleton|collapsed}.stat.gz + + + - + 35->37 - - + + - + 36->35 - - + + - + 36->37 - - + + 37->0 - - + + - + 37->1 - - + + - + 38->0 - - + + - + 39->0 - - + + - + 40->0 - - + + 41->0 - - + + diff --git a/examples/HD827sonic/rulegraph.svg b/examples/HD827sonic/rulegraph.svg index d4d4058..112235b 100644 --- a/examples/HD827sonic/rulegraph.svg +++ b/examples/HD827sonic/rulegraph.svg @@ -4,694 +4,682 @@ - + snakemake_dag - + 0 - -target_taxon + +target_taxon 1 - -multiqc_taxon + +multiqc_taxon - + 1->0 - - + + 2 - -trim_fastqc_raw + +trim_fastqc_raw - + 2->1 - - + + 3 - -trim_get_fastq_raw + +trim_get_fastq_raw 3->2 - - + + 4 - -trim_adapterremoval_fastq_pe + +trim_adapterremoval_fastq_pe 3->4 - - + + - + 4->1 - - + + 5 - -trim_fastqc_trim + +trim_fastqc_trim 4->5 - - + + 7 - -derep_merge_lanes + +derep_merge_lanes 4->7 - - + + 5->1 - - + + 6 - -derep_fastqc + +derep_fastqc - + 6->1 - - + + 7->6 - - + + 9 - -derep_nonpareil_infer + +derep_nonpareil_infer - + 7->9 - - + + 10 - -derep_seqkit + +derep_seqkit - + 7->10 - - + + 8 - -derep_nonpareil_plot + +derep_nonpareil_plot - + 8->1 - - + + 9->8 - - + + 10->6 - - - - - -10->9 - - + + 11 - -derep_low_complexity + +derep_low_complexity - + 10->11 - - + + 11->6 - - - - - -11->9 - - + + 13 - -prefilter_reads_extract + +prefilter_reads_extract - + 11->13 - - + + 20 - -taxon_prefilter_shard_bowtie2 + +taxon_prefilter_shard_bowtie2 - + 11->20 - - + + 38 - -taxon_prefilter_shard_saturated_reads_extract + +taxon_prefilter_shard_saturated_reads_extract - + 11->38 - - + + 40 - -taxon_shard_saturated_reads_extract + +taxon_shard_saturated_reads_extract - + 11->40 - - + + 12 - -prefilter_fastqc + +prefilter_fastqc - + 12->1 - - + + - + 13->12 - - + + 27 - -taxon_shard_bowtie2 + +taxon_shard_bowtie2 - + 13->27 - - + + 14 - -prefilter_reads_merge + +prefilter_reads_merge - + 14->13 - - + + 15 - -prefilter_reads_taxonomy + +prefilter_reads_taxonomy - + 15->14 - - + + 16 - -taxon_prefilter_align_merge + +taxon_prefilter_align_merge - + 16->15 - - + + 23 - -taxon_prefilter_align_stats + +taxon_prefilter_align_stats - + 16->23 - - + + 25 - -taxon_prefilter_metadmg_lca + +taxon_prefilter_metadmg_lca - + 16->25 - - + + 39 - -taxon_prefilter_metadmg_damage + +taxon_prefilter_metadmg_damage - + 16->39 - - + + 17 - -taxon_prefilter_shard_sort_query + +taxon_prefilter_shard_sort_query - + 17->16 - - + + 18 - -taxon_prefilter_shard_unicorn + +taxon_prefilter_shard_unicorn - + 18->17 - - + + 19 - -taxon_prefilter_shard_saturated_reads_remove + +taxon_prefilter_shard_saturated_reads_remove - + 19->18 - - + + - + 20->1 - - + + - + 20->19 - - + + 22 - -taxon_prefilter_shard_count_alns + +taxon_prefilter_shard_count_alns - + 20->22 - - + + 21 - -taxon_prefilter_shard_saturated_reads_filter + +taxon_prefilter_shard_saturated_reads_filter - + 21->14 - - + + - + 21->19 - - + + - + 21->38 - - + + - + 22->21 - - + + - + 23->1 - - + + 24 - -taxon_prefilter_metadmg_dfit + +taxon_prefilter_metadmg_dfit - + 24->1 - - + + 26 - -taxon_prefilter_metadmg_aggregate + +taxon_prefilter_metadmg_aggregate - + 24->26 - - + + - + 25->24 - - + + - + 25->26 - - + + - + 26->0 - - + + - + 26->1 - - + + - + 27->1 - - + + 32 - -taxon_shard_saturated_reads_remove + +taxon_shard_saturated_reads_remove - + 27->32 - - + + 34 - -taxon_shard_count_alns + +taxon_shard_count_alns - + 27->34 - - + + 28 - -taxon_align_stats + +taxon_align_stats - + 28->1 - - + + 29 - -taxon_align_merge + +taxon_align_merge - + 29->28 - - + + 36 - -taxon_metadmg_lca + +taxon_metadmg_lca - + 29->36 - - + + 41 - -taxon_metadmg_damage + +taxon_metadmg_damage - + 29->41 - - + + 30 - -taxon_shard_sort_query + +taxon_shard_sort_query - + 30->29 - - + + 31 - -taxon_shard_unicorn + +taxon_shard_unicorn - + 31->30 - - + + - + 32->31 - - + + 33 - -taxon_shard_saturated_reads_filter + +taxon_shard_saturated_reads_filter - + 33->32 - - + + - + 33->40 - - + + - + 34->33 - - + + 35 - -taxon_metadmg_dfit + +taxon_metadmg_dfit - + 35->1 - - + + 37 - -taxon_metadmg_aggregate + +taxon_metadmg_aggregate - + 35->37 - - + + - + 36->35 - - + + - + 36->37 - - + + - + 37->0 - - + + - + 37->1 - - + + - + 38->0 - - + + - + 39->0 - - + + - + 40->0 - - + + - + 41->0 - - + + diff --git a/pixi.lock b/pixi.lock index a15adf0..e9cdc6f 100644 --- a/pixi.lock +++ b/pixi.lock @@ -15,8 +15,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.7.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/appdirs-1.4.4-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/archspec-0.2.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-25.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/argon2-cffi-bindings-25.1.0-py312h4c3975b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/argparse-dataclass-2.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.3.0-pyh71513ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.17.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/bcrypt-5.0.0-py312h868fb18_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/blinker-1.9.0-pyhff2d567_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/boltons-25.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py312h1289d80_4.conda @@ -34,6 +39,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/coin-or-utils-2.11.12-hc93afbd_6.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/coloredlogs-15.0.1-pyhd8ed1ab_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/colour-0.1.5-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/conda-25.9.0-py312h7900ff3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/conda-inject-1.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/conda-libmamba-solver-25.4.0-pyhd8ed1ab_0.conda @@ -43,6 +49,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/connection_pool-0.0.3-pyhd3deb0d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/cpp-expected-1.3.1-h171cf75_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cryptography-46.0.2-py312hee9fe19_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cyrus-sasl-2.1.28-hd9c7081_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distro-1.9.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/docutils-0.22.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dpath-2.2.0-pyha770c72_0.conda @@ -51,8 +58,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/fmt-11.2.0-h07f6e7f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/frozendict-2.4.6-py312h4c3975b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ftputil-5.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/furl-2.1.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/gitdb-4.0.12-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/gitpython-3.1.45-pyhff2d567_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/greenlet-3.2.4-py312h1289d80_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 @@ -60,7 +69,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-75.1-he02047a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/immutables-0.21-py312h4c3975b_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-8.7.0-pyhe01879c_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/infinity-1.5-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/intervals-0.9.2-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonpatch-1.33-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/jsonpointer-3.0.0-py312h7900ff3_2.conda @@ -78,11 +90,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.1-hecca717_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.6-h2dba641_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-h767d61c_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-hcd61629_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-h767d61c_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-h767d61c_6.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_6.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_6.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-hcd61629_6.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-h767d61c_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-36_h47877c9_openblas.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/liblapacke-3.9.0-36_h6ae95b6_openblas.conda @@ -91,12 +103,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libmambapy-2.3.2-py312he1eb750_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.67.0-had1ee68_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hb9d3cd8_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libntlm-1.8-hb9d3cd8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.30-pthreads_h94d23a6_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-18.0-h3675c94_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsolv-0.7.35-h9463b59_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.50.4-h0c1763c_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hcf80075_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-h4852527_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_6.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-h4852527_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-16-2.15.0-ha9997c6_1.conda @@ -114,15 +128,21 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/nlohmann_json-3.11.3-he02047a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py312heda63a1_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/oauthlib-3.3.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openldap-2.6.10-he970967_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.5.4-h26f9b46_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/orderedmultidict-1.0.1-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.3.3-py312hf79963d_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/passlib-1.7.4-pyhd8ed1ab_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pendulum-3.1.0-py312h12e396e_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pephubclient-0.4.4-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/peppy-0.40.7-pyhd8ed1ab_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/phonenumbers-9.0.15-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/plac-1.4.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.4.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-7.1.0-py312h4c3975b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/psycopg2-2.9.10-py312hf59bad3_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pulp-2.8.0-py312hd0750ca_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pybind11-abi-4-hd8ed1ab_3.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/pycosat-0.6.6-py312h4c3975b_3.conda @@ -156,11 +176,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/shellingham-1.5.4-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/simdjson-4.0.7-hb700be7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/slack-sdk-3.36.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/slack_sdk-3.36.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/slack-sdk-3.37.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/slack_sdk-3.37.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/smart_open-7.3.1-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/smmap-5.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-9.12.0-hdfd78af_0.conda + - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-9.11.2-hdfd78af_0.conda - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-executor-plugin-slurm-1.8.0-pyhdfd78af_0.conda - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-executor-plugin-slurm-jobstep-0.3.0-pyhdfd78af_0.tar.bz2 - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-interface-common-1.22.0-pyhd4c3c12_0.conda @@ -169,11 +189,25 @@ environments: - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-interface-report-plugins-1.2.0-pyhdfd78af_0.tar.bz2 - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-interface-scheduler-plugins-2.0.1-pyhd4c3c12_0.conda - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-interface-storage-plugins-4.2.3-pyhd4c3c12_0.conda - - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-minimal-9.12.0-pyhdfd78af_0.conda + - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-minimal-9.11.2-pyhdfd78af_0.conda - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-storage-plugin-ftp-0.1.3-pyhdfd78af_0.tar.bz2 - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-storage-plugin-http-0.3.0-pyhdfd78af_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlalchemy-2.0.43-py312h4c3975b_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-arrow-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-babel-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-base-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-color-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-encrypted-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-intervals-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-password-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-pendulum-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-phone-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-timezone-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-url-0.42.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/throttler-1.2.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/time-machine-2.19.0-py312h5253ce2_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_hd72426e_102.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.2.1-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tqdm-4.67.1-pyhd8ed1ab_1.conda @@ -182,6 +216,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/typer-0.19.2-pyhef33e25_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typer-slim-0.19.2-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typer-slim-standard-0.19.2-h6e3bb38_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20250822-pyhd8ed1ab_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_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda @@ -193,20 +228,19 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h280c20c_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-cpp-0.8.0-h3f2d84a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/yte-1.8.1-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.23.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.25.0-py312h5253ce2_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda - pypi: https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/39/4a/4c61d4c84cfd9befb6fa08a702535b27b21fff08c946bc2f6139decbf7f7/alembic-1.16.5-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/76/a8/0787af1185f990023d69240a61c46b853bad35d040206b9704179bac8dac/beaupy-3.10.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d6/bf/42536b458a7108a3b880bbfc99783e73b1c3b4c24d4ede3057bb22c44e07/beaupy-3.10.2-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e1/5e/4b5aaaabddfacfe36ba7768817bd1f71a7a810a43705e531f3ae4c690767/emoji-2.15.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/19/0d/6660d55f7373b2ff8152401a83e02084956da23ae58cddbfb0b330978fe9/greenlet-3.2.4-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/42/72571b24514b5f59c328f12e5294b246958951b889fac2bd5321e08a4bab/python_yakh-0.4.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/53/d5/71ad81de9c569b1b2e2baa5a60e85102c35fe898007de7ea2136c291b4ce/questo-0.4.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/42/ee/470d1c0d47039eb02198b0031af4746d96dfdfe0c7a99f06f4744781b987/snakemake_logger_plugin_snkmt-0.1.4-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/59/bc/23e64878871cce3a42dc50734cbbc43c4e08cddb62c6d39c4807895c01de/snkmt-0.2.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/6e/0e/3d155e264d2ed2778484006ef04647bc63f55b3e2d12e6a4f787747b5900/sqlalchemy-2.0.43-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pypi: https://files.pythonhosted.org/packages/c5/93/02c7adec57a594af28388d85da9972703a4af94ae1399542555cd9581952/textual-6.2.1-py3-none-any.whl format: channels: @@ -224,8 +258,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.44-ha97dd6f_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.1-hecca717_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.6-h2dba641_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-h767d61c_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-h767d61c_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-h767d61c_6.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-h767d61c_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.50.4-h0c1763c_0.conda @@ -260,11 +294,16 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.7.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/appdirs-1.4.4-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/archspec-0.2.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-25.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/argon2-cffi-bindings-25.1.0-py312h4c3975b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/argparse-dataclass-2.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/at-spi2-atk-2.38.0-h0630a04_3.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/at-spi2-core-2.40.3-h0630a04_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/atk-1.0-2.38.0-h04ea711_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.3.0-pyh71513ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.17.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/bcrypt-5.0.0-py312h868fb18_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/blinker-1.9.0-pyhff2d567_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/boltons-25.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py312h1289d80_4.conda @@ -283,6 +322,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/coin-or-utils-2.11.12-hc93afbd_6.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/coloredlogs-15.0.1-pyhd8ed1ab_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/colour-0.1.5-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/conda-25.9.0-py312h7900ff3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/conda-inject-1.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/conda-libmamba-solver-25.4.0-pyhd8ed1ab_0.conda @@ -292,6 +332,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/connection_pool-0.0.3-pyhd3deb0d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/cpp-expected-1.3.1-h171cf75_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cryptography-46.0.2-py312hee9fe19_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cyrus-sasl-2.1.28-hd9c7081_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.16.2-h3c4dab8_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distro-1.9.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/docutils-0.22.2-pyhd8ed1ab_0.conda @@ -311,6 +352,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/fribidi-1.0.16-hb03c661_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/frozendict-2.4.6-py312h4c3975b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ftputil-5.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/furl-2.1.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/bioconda/noarch/gatk4-4.6.2.0-py310hdfd78af_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/gdk-pixbuf-2.44.3-h2b0a6b4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.2-hd590300_0.conda @@ -319,6 +361,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.86.0-hf516916_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.14-hecca717_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/graphviz-13.1.2-h87b6fe6_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/greenlet-3.2.4-py312h1289d80_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gtk3-3.24.43-h0c6a113_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gts-0.7.6-h977cf35_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda @@ -330,7 +373,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-75.1-he02047a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/immutables-0.21-py312h4c3975b_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-8.7.0-pyhe01879c_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/infinity-1.5-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/intervals-0.9.2-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonpatch-1.33-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/jsonpointer-3.0.0-py312h7900ff3_2.conda @@ -357,18 +403,18 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.6-h2dba641_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libfreetype-2.14.1-ha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libfreetype6-2.14.1-h73754d4_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-h767d61c_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-h767d61c_6.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgd-2.3.3-h6f5c62b_11.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-hcd61629_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_6.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-hcd61629_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgl-1.7.0-ha4b6fd6_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgl-devel-1.7.0-ha4b6fd6_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.86.0-h1fed272_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libglvnd-1.7.0-ha4b6fd6_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libglx-1.7.0-ha4b6fd6_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libglx-devel-1.7.0-ha4b6fd6_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-h767d61c_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-h767d61c_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.0-hb9d3cd8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-36_h47877c9_openblas.conda @@ -378,15 +424,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libmambapy-2.3.2-py312he1eb750_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.67.0-had1ee68_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hb9d3cd8_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libntlm-1.8-hb9d3cd8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.30-pthreads_h94d23a6_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libpciaccess-0.18-hb9d3cd8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.50-h421ea60_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-18.0-h3675c94_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/librsvg-2.60.0-h61e6d4b_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsolv-0.7.35-h9463b59_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.50.4-h0c1763c_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hcf80075_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-h4852527_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_6.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-h4852527_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h8261f1e_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.6.0-hd42ef1d_0.conda @@ -409,18 +457,24 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py312heda63a1_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/oauthlib-3.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openjdk-17.0.15-h5ddf6bc_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openldap-2.6.10-he970967_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.5.4-h26f9b46_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/orderedmultidict-1.0.1-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.3.3-py312hf79963d_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pango-1.56.4-hadf4263_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/passlib-1.7.4-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.46-h1321c63_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pendulum-3.1.0-py312h12e396e_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pephubclient-0.4.4-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/peppy-0.40.7-pyhd8ed1ab_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/phonenumbers-9.0.15-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.46.4-h54a6638_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/plac-1.4.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.4.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-7.1.0-py312h4c3975b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/psycopg2-2.9.10-py312hf59bad3_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-hb9d3cd8_1002.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pulp-2.8.0-py312hd0750ca_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pybind11-abi-4-hd8ed1ab_3.tar.bz2 @@ -455,11 +509,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/shellingham-1.5.4-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/simdjson-4.0.7-hb700be7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/slack-sdk-3.36.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/slack_sdk-3.36.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/slack-sdk-3.37.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/slack_sdk-3.37.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/smart_open-7.3.1-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/smmap-5.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-9.12.0-hdfd78af_0.conda + - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-9.11.2-hdfd78af_0.conda - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-executor-plugin-slurm-1.8.0-pyhdfd78af_0.conda - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-executor-plugin-slurm-jobstep-0.3.0-pyhdfd78af_0.tar.bz2 - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-interface-common-1.22.0-pyhd4c3c12_0.conda @@ -468,11 +522,25 @@ environments: - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-interface-report-plugins-1.2.0-pyhdfd78af_0.tar.bz2 - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-interface-scheduler-plugins-2.0.1-pyhd4c3c12_0.conda - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-interface-storage-plugins-4.2.3-pyhd4c3c12_0.conda - - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-minimal-9.12.0-pyhdfd78af_0.conda + - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-minimal-9.11.2-pyhdfd78af_0.conda - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-storage-plugin-ftp-0.1.3-pyhdfd78af_0.tar.bz2 - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-storage-plugin-http-0.3.0-pyhdfd78af_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlalchemy-2.0.43-py312h4c3975b_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-arrow-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-babel-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-base-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-color-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-encrypted-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-intervals-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-password-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-pendulum-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-phone-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-timezone-0.42.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-url-0.42.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/throttler-1.2.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/time-machine-2.19.0-py312h5253ce2_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_hd72426e_102.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.2.1-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tqdm-4.67.1-pyhd8ed1ab_1.conda @@ -481,6 +549,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/typer-0.19.2-pyhef33e25_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typer-slim-0.19.2-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typer-slim-standard-0.19.2-h6e3bb38_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20250822-pyhd8ed1ab_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_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda @@ -512,20 +581,19 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h280c20c_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-cpp-0.8.0-h3f2d84a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/yte-1.8.1-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.23.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.25.0-py312h5253ce2_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda - pypi: https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/39/4a/4c61d4c84cfd9befb6fa08a702535b27b21fff08c946bc2f6139decbf7f7/alembic-1.16.5-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/76/a8/0787af1185f990023d69240a61c46b853bad35d040206b9704179bac8dac/beaupy-3.10.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d6/bf/42536b458a7108a3b880bbfc99783e73b1c3b4c24d4ede3057bb22c44e07/beaupy-3.10.2-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e1/5e/4b5aaaabddfacfe36ba7768817bd1f71a7a810a43705e531f3ae4c690767/emoji-2.15.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/19/0d/6660d55f7373b2ff8152401a83e02084956da23ae58cddbfb0b330978fe9/greenlet-3.2.4-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/42/72571b24514b5f59c328f12e5294b246958951b889fac2bd5321e08a4bab/python_yakh-0.4.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/53/d5/71ad81de9c569b1b2e2baa5a60e85102c35fe898007de7ea2136c291b4ce/questo-0.4.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/42/ee/470d1c0d47039eb02198b0031af4746d96dfdfe0c7a99f06f4744781b987/snakemake_logger_plugin_snkmt-0.1.4-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/59/bc/23e64878871cce3a42dc50734cbbc43c4e08cddb62c6d39c4807895c01de/snkmt-0.2.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/6e/0e/3d155e264d2ed2778484006ef04647bc63f55b3e2d12e6a4f787747b5900/sqlalchemy-2.0.43-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pypi: https://files.pythonhosted.org/packages/c5/93/02c7adec57a594af28388d85da9972703a4af94ae1399542555cd9581952/textual-6.2.1-py3-none-any.whl packages: - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 @@ -647,6 +715,36 @@ packages: - pkg:pypi/archspec?source=hash-mapping size: 50894 timestamp: 1737352715041 +- conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-25.1.0-pyhd8ed1ab_0.conda + sha256: bea62005badcb98b1ae1796ec5d70ea0fc9539e7d59708ac4e7d41e2f4bb0bad + md5: 8ac12aff0860280ee0cff7fa2cf63f3b + depends: + - argon2-cffi-bindings + - python >=3.9 + - typing-extensions + constrains: + - argon2_cffi ==999 + license: MIT + license_family: MIT + purls: + - pkg:pypi/argon2-cffi?source=hash-mapping + size: 18715 + timestamp: 1749017288144 +- conda: https://conda.anaconda.org/conda-forge/linux-64/argon2-cffi-bindings-25.1.0-py312h4c3975b_1.conda + sha256: 2eeb4a3a81149fec8e94e1454a21042f9eeb63b8f667672afcc63af69fb0bbbf + md5: 161fbbd6a2f41743c687ef83ba220ce9 + depends: + - __glibc >=2.17,<3.0.a0 + - cffi >=1.0.1 + - libgcc >=14 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + license: MIT + license_family: MIT + purls: + - pkg:pypi/argon2-cffi-bindings?source=hash-mapping + size: 35458 + timestamp: 1759486360792 - conda: https://conda.anaconda.org/conda-forge/noarch/argparse-dataclass-2.0.0-pyhd8ed1ab_0.conda sha256: 67e8c1fde7cd025bc7b3190b83bfe967099672a2bcff8e6864f52abfcc25769b md5: be47a0ee841e940a9a8eec03c2f776a3 @@ -658,6 +756,19 @@ packages: - pkg:pypi/argparse-dataclass?source=hash-mapping size: 12203 timestamp: 1691002812997 +- conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_1.conda + sha256: c4b0bdb3d5dee50b60db92f99da3e4c524d5240aafc0a5fcc15e45ae2d1a3cd1 + md5: 46b53236fdd990271b03c3978d4218a9 + depends: + - python >=3.9 + - python-dateutil >=2.7.0 + - types-python-dateutil >=2.8.10 + license: Apache-2.0 + license_family: Apache + purls: + - pkg:pypi/arrow?source=hash-mapping + size: 99951 + timestamp: 1733584345583 - conda: https://conda.anaconda.org/conda-forge/linux-64/at-spi2-atk-2.38.0-h0630a04_3.tar.bz2 sha256: 26ab9386e80bf196e51ebe005da77d57decf6d989b4f34d96130560bc133479c md5: 6b889f174df1e0f816276ae69281af4d @@ -701,21 +812,49 @@ packages: purls: [] size: 355900 timestamp: 1713896169874 -- conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.3.0-pyh71513ae_0.conda - sha256: 99c53ffbcb5dc58084faf18587b215f9ac8ced36bbfb55fa807c00967e419019 - md5: a10d11958cadc13fdb43df75f8b1903f +- conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda + sha256: f6c3c19fa599a1a856a88db166c318b148cac3ee4851a9905ed8a04eeec79f45 + md5: c7944d55af26b6d2d7629e27e9a972c1 depends: - - python >=3.9 + - python >=3.10 license: MIT license_family: MIT purls: - - pkg:pypi/attrs?source=hash-mapping - size: 57181 - timestamp: 1741918625732 -- pypi: https://files.pythonhosted.org/packages/76/a8/0787af1185f990023d69240a61c46b853bad35d040206b9704179bac8dac/beaupy-3.10.1-py3-none-any.whl + - pkg:pypi/attrs?source=compressed-mapping + size: 60101 + timestamp: 1759762331492 +- conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.17.0-pyhd8ed1ab_0.conda + sha256: 1c656a35800b7f57f7371605bc6507c8d3ad60fbaaec65876fce7f73df1fc8ac + md5: 0a01c169f0ab0f91b26e77a3301fbfe4 + depends: + - python >=3.9 + - pytz >=2015.7 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/babel?source=hash-mapping + size: 6938256 + timestamp: 1738490268466 +- conda: https://conda.anaconda.org/conda-forge/linux-64/bcrypt-5.0.0-py312h868fb18_0.conda + sha256: 5d81bb420f61f94695c549ba155bec376bdcb3f6bbd7e86c828caa3ac1a530d1 + md5: 0d18b0a1351d54284be066418e80c09c + depends: + - python + - libgcc >=14 + - __glibc >=2.17,<3.0.a0 + - python_abi 3.12.* *_cp312 + constrains: + - __glibc >=2.17 + license: Apache-2.0 + license_family: APACHE + purls: + - pkg:pypi/bcrypt?source=hash-mapping + size: 290489 + timestamp: 1758841782610 +- pypi: https://files.pythonhosted.org/packages/d6/bf/42536b458a7108a3b880bbfc99783e73b1c3b4c24d4ede3057bb22c44e07/beaupy-3.10.2-py3-none-any.whl name: beaupy - version: 3.10.1 - sha256: b31337581fc445fc81b07701d97de6409d6b13a4d0b620ca461475c2756c45ca + version: 3.10.2 + sha256: c5398416b6a9dfed25d56be4caf4b995c41c9d18aa132203ef69fa3d8953bcc5 requires_dist: - emoji>=2.0.0,<3.0.0 - python-yakh>=0.4.1,<0.5.0 @@ -1023,6 +1162,17 @@ packages: - pkg:pypi/coloredlogs?source=hash-mapping size: 43758 timestamp: 1733928076798 +- conda: https://conda.anaconda.org/conda-forge/noarch/colour-0.1.5-pyhd8ed1ab_2.conda + sha256: 7571a828f68576502c124c3386f3868ac7b489874e188f63ab3a3ec89eebc537 + md5: 897ac24edd65c5a9948b51cb3327953c + depends: + - python >=3.9 + license: BSD-2-Clause + license_family: BSD + purls: + - pkg:pypi/colour?source=hash-mapping + size: 21815 + timestamp: 1733900282006 - conda: https://conda.anaconda.org/conda-forge/linux-64/conda-25.9.0-py312h7900ff3_1.conda sha256: 66feb9238ecde33be547b1c6ec1c5d1272833127049e8d862d8026a1289fc21a md5: 2d4cc5218cfcdf31a199107a4dbf0760 @@ -1162,6 +1312,22 @@ packages: - pkg:pypi/cryptography?source=hash-mapping size: 1712569 timestamp: 1759320688700 +- conda: https://conda.anaconda.org/conda-forge/linux-64/cyrus-sasl-2.1.28-hd9c7081_0.conda + sha256: ee09ad7610c12c7008262d713416d0b58bf365bc38584dce48950025850bdf3f + md5: cae723309a49399d2949362f4ab5c9e4 + depends: + - __glibc >=2.17,<3.0.a0 + - krb5 >=1.21.3,<1.22.0a0 + - libgcc >=13 + - libntlm >=1.8,<2.0a0 + - libstdcxx >=13 + - libxcrypt >=4.4.36 + - openssl >=3.5.0,<4.0a0 + license: BSD-3-Clause-Attribution + license_family: BSD + purls: [] + size: 209774 + timestamp: 1750239039316 - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.16.2-h3c4dab8_0.conda sha256: 3b988146a50e165f0fa4e839545c679af88e4782ec284cc7b6d07dd226d6a068 md5: 679616eb5ad4e521c83da4650860aba7 @@ -1394,6 +1560,18 @@ packages: - pkg:pypi/ftputil?source=hash-mapping size: 46749 timestamp: 1704576673582 +- conda: https://conda.anaconda.org/conda-forge/noarch/furl-2.1.4-pyhd8ed1ab_0.conda + sha256: eca093d4b0e057803d5c1c6b0af37cdaf35ee28abf4f7df2855d4b52a1fafee8 + md5: ae62f6c56946309738c5f6d0654ad85c + depends: + - orderedmultidict >=1.0 + - python >=3.9 + - six >=1.8.0 + license: Unlicense + purls: + - pkg:pypi/furl?source=hash-mapping + size: 30441 + timestamp: 1741505873840 - conda: https://conda.anaconda.org/bioconda/noarch/gatk4-4.6.2.0-py310hdfd78af_0.tar.bz2 noarch: generic sha256: 525179af9f76f6d5ea178a6f31131db89aabba1ae372e29890508670e8c3f602 @@ -1505,17 +1683,21 @@ packages: purls: [] size: 2427887 timestamp: 1754732581595 -- pypi: https://files.pythonhosted.org/packages/19/0d/6660d55f7373b2ff8152401a83e02084956da23ae58cddbfb0b330978fe9/greenlet-3.2.4-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl - name: greenlet - version: 3.2.4 - sha256: 3b3812d8d0c9579967815af437d96623f45c0f2ae5f04e366de62a12d83a8fb0 - requires_dist: - - sphinx ; extra == 'docs' - - furo ; extra == 'docs' - - objgraph ; extra == 'test' - - psutil ; extra == 'test' - - setuptools ; extra == 'test' - requires_python: '>=3.9' +- conda: https://conda.anaconda.org/conda-forge/linux-64/greenlet-3.2.4-py312h1289d80_1.conda + sha256: 70cfb228b535389686c4ab66dfe59b9c216eca303a732911e1c6f46eab8a1fff + md5: e5e4c495ffa157da0c9a0457736f18cd + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - libstdcxx >=14 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + license: MIT + license_family: MIT + purls: + - pkg:pypi/greenlet?source=hash-mapping + size: 238219 + timestamp: 1756752228639 - conda: https://conda.anaconda.org/conda-forge/linux-64/gtk3-3.24.43-h0c6a113_5.conda sha256: d36263cbcbce34ec463ce92bd72efa198b55d987959eab6210cc256a0e79573b md5: 67d00e9cfe751cfe581726c5eff7c184 @@ -1682,6 +1864,30 @@ packages: - pkg:pypi/immutables?source=hash-mapping size: 54524 timestamp: 1757685416665 +- conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-8.7.0-pyhe01879c_1.conda + sha256: c18ab120a0613ada4391b15981d86ff777b5690ca461ea7e9e49531e8f374745 + md5: 63ccfdc3a3ce25b027b8767eb722fca8 + depends: + - python >=3.9 + - zipp >=3.20 + - python + license: Apache-2.0 + license_family: APACHE + purls: + - pkg:pypi/importlib-metadata?source=hash-mapping + size: 34641 + timestamp: 1747934053147 +- conda: https://conda.anaconda.org/conda-forge/noarch/infinity-1.5-pyhd8ed1ab_1.conda + sha256: 648509e19d61e2f0358178b0c7a9be4ed068d2f742b794175d3dabe91d4d5e57 + md5: 7695dbb646305e0ead120099b18e8154 + depends: + - python >=3.9 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/infinity?source=hash-mapping + size: 9247 + timestamp: 1733902670056 - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda sha256: 0ec8f4d02053cd03b0f3e63168316530949484f80e16f5e2fb199a1d117a89ca md5: 6837f3eff7dcea42ecd714ce1ac2b108 @@ -1693,6 +1899,18 @@ packages: - pkg:pypi/iniconfig?source=hash-mapping size: 11474 timestamp: 1733223232820 +- conda: https://conda.anaconda.org/conda-forge/noarch/intervals-0.9.2-pyhd8ed1ab_1.conda + sha256: ef200a6727e8c2df6c9c8cf5d531d1a8b8e3b687e6862e2dd143da77725c8baa + md5: 20f2431ad3a39dcbc58c219c7158cc47 + depends: + - infinity >=0.1.3 + - python >=3.9 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/intervals?source=hash-mapping + size: 14020 + timestamp: 1733902692838 - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.6-pyhd8ed1ab_0.conda sha256: f1ac18b11637ddadc05642e8185a851c7fab5998c6f5470d716812fae943b2af md5: 446bd6c8cb26050d528881df495ce646 @@ -2033,28 +2251,28 @@ packages: purls: [] size: 386739 timestamp: 1757945416744 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-h767d61c_5.conda - sha256: cf6c34d2c024f1a28ad48f9a352ffbed5dfd0767be0fae50c4ccaa96f2538116 - md5: 67b79092aee4aa9705e4febdf3b73808 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-h767d61c_6.conda + sha256: 29c6ce15cf54f89282581d19329c99d1639036c5dde049bf1cae48dcc4137470 + md5: 99eee6aa5abea12f326f7fc010aef0c8 depends: - __glibc >=2.17,<3.0.a0 - _openmp_mutex >=4.5 constrains: - - libgomp 15.2.0 h767d61c_5 - - libgcc-ng ==15.2.0=*_5 + - libgomp 15.2.0 h767d61c_6 + - libgcc-ng ==15.2.0=*_6 license: GPL-3.0-only WITH GCC-exception-3.1 purls: [] - size: 822400 - timestamp: 1759682592694 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_5.conda - sha256: ca3f87dcd3fe1a3f82f52bae1f09f75d29cb399825d636befdb5be91ff624fa9 - md5: e0b75800b155ea7af9740beb1efa97c4 + size: 823770 + timestamp: 1759796589812 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_6.conda + sha256: 12c91470ceb8d7d38fcee1a4ff1f50524625349059988f6bd0e8e6b27599a1ad + md5: d9717466cca9b9584226ce57a7cd58e6 depends: - - libgcc 15.2.0 h767d61c_5 + - libgcc 15.2.0 h767d61c_6 license: GPL-3.0-only WITH GCC-exception-3.1 purls: [] - size: 29305 - timestamp: 1759682602078 + size: 29249 + timestamp: 1759796603487 - conda: https://conda.anaconda.org/conda-forge/linux-64/libgd-2.3.3-h6f5c62b_11.conda sha256: 19e5be91445db119152217e8e8eec4fd0499d854acc7d8062044fb55a70971cd md5: 68fc66282364981589ef36868b1a7c78 @@ -2076,20 +2294,20 @@ packages: purls: [] size: 177082 timestamp: 1737548051015 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_5.conda - sha256: 8c4310fb4819362e21d1c4808f9e89254646a16bb97df77502e2ab978e5e9149 - md5: b6683cec57969bc26f813252482d323b +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_6.conda + sha256: 37ac19d22718d371b1fd78207eee37bc384c5e7f8880e06187cb817f1124d1e2 + md5: c41f84a30601e911a1e7a30f53531a59 depends: - - libgfortran5 15.2.0 hcd61629_5 + - libgfortran5 15.2.0 hcd61629_6 constrains: - - libgfortran-ng ==15.2.0=*_5 + - libgfortran-ng ==15.2.0=*_6 license: GPL-3.0-only WITH GCC-exception-3.1 purls: [] - size: 29260 - timestamp: 1759682636685 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-hcd61629_5.conda - sha256: 5ca0123f95c095521222a2378d931a9145eb89cb99aa34e0f496581774821cb0 - md5: dd6b1ea02e2e7dc42b06d16d946c7fb1 + size: 29238 + timestamp: 1759796648430 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-hcd61629_6.conda + sha256: 5046054c10fe5c81433849aa5d569e50ae051c4eac44b3e2a9bb34945eb16fc8 + md5: 8fc1650fb7c7fca583cc3537a808e21b depends: - __glibc >=2.17,<3.0.a0 - libgcc >=15.2.0 @@ -2097,8 +2315,8 @@ packages: - libgfortran 15.2.0 license: GPL-3.0-only WITH GCC-exception-3.1 purls: [] - size: 1572668 - timestamp: 1759682614775 + size: 1572922 + timestamp: 1759796621088 - conda: https://conda.anaconda.org/conda-forge/linux-64/libgl-1.7.0-ha4b6fd6_2.conda sha256: dc2752241fa3d9e40ce552c1942d0a4b5eeb93740c9723873f6fcf8d39ef8d2d md5: 928b8be80851f5d8ffb016f9c81dae7a @@ -2169,15 +2387,15 @@ packages: purls: [] size: 26388 timestamp: 1731331003255 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-h767d61c_5.conda - sha256: 1ceeacb18c2b5f93361387909d5bff7c2c67734dd85229405ab102d252e083ef - md5: 2cf9c351b3c581dcb4d7368fee0aca94 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-h767d61c_6.conda + sha256: 60263a73f3826f4e24a45d18826cb324711c980c13c0155e9d10eaca8a399851 + md5: a8637a77aec40557feb12dbc8dc37c6f depends: - __glibc >=2.17,<3.0.a0 license: GPL-3.0-only WITH GCC-exception-3.1 purls: [] - size: 448982 - timestamp: 1759682511761 + size: 448095 + timestamp: 1759796487876 - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda sha256: c467851a7312765447155e071752d7bf9bf44d610a5687e32706f480aad2833f md5: 915f5995e94f60e9a4826e0b0920ee88 @@ -2326,6 +2544,16 @@ packages: purls: [] size: 33731 timestamp: 1750274110928 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libntlm-1.8-hb9d3cd8_0.conda + sha256: 3b3f19ced060013c2dd99d9d46403be6d319d4601814c772a3472fe2955612b0 + md5: 7c7927b404672409d9917d49bff5f2d6 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=13 + license: LGPL-2.1-or-later + purls: [] + size: 33418 + timestamp: 1734670021371 - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.30-pthreads_h94d23a6_2.conda sha256: 1b51d1f96e751dc945cc06f79caa91833b0c3326efe24e9b506bd64ef49fc9b0 md5: dfc5aae7b043d9f56ba99514d5e60625 @@ -2363,6 +2591,20 @@ packages: purls: [] size: 317390 timestamp: 1753879899951 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-18.0-h3675c94_0.conda + sha256: 81d9ac5c23257745eb73b81103b3c42442ac13c5d38226916debbf55573540dd + md5: 064887eafa473cbfae9ee8bedd3b7432 + depends: + - __glibc >=2.17,<3.0.a0 + - icu >=75.1,<76.0a0 + - krb5 >=1.21.3,<1.22.0a0 + - libgcc >=14 + - openldap >=2.6.10,<2.7.0a0 + - openssl >=3.5.3,<4.0a0 + license: PostgreSQL + purls: [] + size: 2849367 + timestamp: 1758820440469 - conda: https://conda.anaconda.org/conda-forge/linux-64/librsvg-2.60.0-h61e6d4b_0.conda sha256: 960b137673b2b8293e2a12d194add72967b3bf12fcdf691e7ad8bd5c8318cec3 md5: 91e6d4d684e237fba31b9815c4b40edf @@ -2417,25 +2659,25 @@ packages: purls: [] size: 304790 timestamp: 1745608545575 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_5.conda - sha256: 803eb5a488314b5e127f014001279795ad0e9a2a096f4a0c84d20bc543109104 - md5: 5dd6bd4f77a17945d5b6054155836a14 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_6.conda + sha256: fafd1c1320384a664f57e5d75568f214a31fe2201fc8baace6c15d88b8cf89a8 + md5: 9acaf38d72dcddace144f28506d45afa depends: - __glibc >=2.17,<3.0.a0 - - libgcc 15.2.0 h767d61c_5 + - libgcc 15.2.0 h767d61c_6 license: GPL-3.0-only WITH GCC-exception-3.1 purls: [] - size: 3897513 - timestamp: 1759682630586 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-h4852527_5.conda - sha256: 8a176713fe3bd9c620ec2adf47040fc53cbebacc98c338c3fc1aaa5816764063 - md5: ca44d750b5f9add2716ad342be3ad7a3 + size: 3903545 + timestamp: 1759796640725 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-h4852527_6.conda + sha256: 462fa002d3ab6702045ee330ab45719ac2958a092a4634a955cebc095f564794 + md5: 89611cb5b685d19e6201065720f97561 depends: - - libstdcxx 15.2.0 h8f9b012_5 + - libstdcxx 15.2.0 h8f9b012_6 license: GPL-3.0-only WITH GCC-exception-3.1 purls: [] - size: 29339 - timestamp: 1759682673925 + size: 29290 + timestamp: 1759796693929 - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h8261f1e_0.conda sha256: ddda0d7ee67e71e904a452010c73e32da416806f5cb9145fb62c322f97e717fb md5: 72b531694ebe4e8aa6f5745d1015c1b4 @@ -2801,6 +3043,21 @@ packages: purls: [] size: 169690733 timestamp: 1750158435033 +- conda: https://conda.anaconda.org/conda-forge/linux-64/openldap-2.6.10-he970967_0.conda + sha256: cb0b07db15e303e6f0a19646807715d28f1264c6350309a559702f4f34f37892 + md5: 2e5bf4f1da39c0b32778561c3c4e5878 + depends: + - __glibc >=2.17,<3.0.a0 + - cyrus-sasl >=2.1.27,<3.0a0 + - krb5 >=1.21.3,<1.22.0a0 + - libgcc >=13 + - libstdcxx >=13 + - openssl >=3.5.0,<4.0a0 + license: OLDAP-2.8 + license_family: BSD + purls: [] + size: 780253 + timestamp: 1748010165522 - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.5.4-h26f9b46_0.conda sha256: e807f3bad09bdf4075dbb4168619e14b0c0360bacb2e12ef18641a834c8c5549 md5: 14edad12b59ccbfa3910d42c72adc2a0 @@ -2813,6 +3070,17 @@ packages: purls: [] size: 3119624 timestamp: 1759324353651 +- conda: https://conda.anaconda.org/conda-forge/noarch/orderedmultidict-1.0.1-pyhd8ed1ab_2.conda + sha256: 5b531c89ed6fa678fbdce61d870570ef655c37e52d2fe5af3ef8c15d152c90f5 + md5: d6d0b0e2258fc15e7ef30cc85211d21f + depends: + - python >=3.9 + - six >=1.8.0 + license: Unlicense + purls: + - pkg:pypi/orderedmultidict?source=hash-mapping + size: 16278 + timestamp: 1733900401804 - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda sha256: 289861ed0c13a15d7bbb408796af4de72c2fe67e2bcb0de98f4c3fce259d7991 md5: 58335b26c38bf4a20f399384c33cbcf9 @@ -2898,6 +3166,20 @@ packages: purls: [] size: 455420 timestamp: 1751292466873 +- conda: https://conda.anaconda.org/conda-forge/noarch/passlib-1.7.4-pyhd8ed1ab_2.conda + sha256: 2adfe01cdab93c39c4d8dfe3de74a31ae6fded21213f26925208ce6053cea93d + md5: fba64c154edb7d7935af0d46d97ff536 + depends: + - argon2-cffi >=19.2.0 + - bcrypt >=3.1.0 + - cryptography + - python >=3.9 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/passlib?source=hash-mapping + size: 388265 + timestamp: 1733838886459 - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_1.conda sha256: 9f64009cdf5b8e529995f18e03665b03f5d07c0b17445b8badef45bde76249ee md5: 617f15191456cc6a13db418a275435e5 @@ -2920,6 +3202,25 @@ packages: purls: [] size: 1209177 timestamp: 1756742976157 +- conda: https://conda.anaconda.org/conda-forge/linux-64/pendulum-3.1.0-py312h12e396e_0.conda + sha256: 8b827b8c57eeb1c7efaec9e20215350308d0e5feff1cc3802f60f04660495724 + md5: 5ca8b76bb043f5df6a95134118c9af06 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=13 + - python >=3.12,<3.13.0a0 + - python-dateutil >=2.6 + - python_abi 3.12.* *_cp312 + - time-machine >=2.6.0 + - tzdata >=2020.1 + constrains: + - __glibc >=2.17 + license: MIT + license_family: MIT + purls: + - pkg:pypi/pendulum?source=hash-mapping + size: 405751 + timestamp: 1745083011918 - conda: https://conda.anaconda.org/conda-forge/noarch/pephubclient-0.4.4-pyhd8ed1ab_1.conda sha256: fe53097b62d73a991a9233659d47aac28e973e055d931ae5bfbcce4d824c03ee md5: 08d92912686d87b05d53ce04f00142c8 @@ -2955,6 +3256,17 @@ packages: - pkg:pypi/peppy?source=hash-mapping size: 29516 timestamp: 1735078302613 +- conda: https://conda.anaconda.org/conda-forge/noarch/phonenumbers-9.0.15-pyhd8ed1ab_0.conda + sha256: db3a761c61c6449945fd23c737756a0ba6d01fb4f584a6f6336934fd0a76f5b0 + md5: 4a77fccc3fd43a4b357c2ebe453c5c7a + depends: + - python >=3.10 + license: Apache-2.0 + license_family: Apache + purls: + - pkg:pypi/phonenumbers?source=hash-mapping + size: 1459762 + timestamp: 1758881459623 - conda: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.46.4-h54a6638_1.conda sha256: 43d37bc9ca3b257c5dd7bf76a8426addbdec381f6786ff441dc90b1a49143b6a md5: c01af13bdc553d1a8fbfff6e8db075f0 @@ -3016,6 +3328,21 @@ packages: - pkg:pypi/psutil?source=compressed-mapping size: 475455 timestamp: 1758169358813 +- conda: https://conda.anaconda.org/conda-forge/linux-64/psycopg2-2.9.10-py312hf59bad3_3.conda + sha256: 6ea8c3c5a1c24ea52aa334f6f60e55b76dd539e04a5bd8ea5df5b41cf3718b3d + md5: 30901f539b9e8596d7adba6c8dfe2057 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - libpq >=18.0,<19.0a0 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + license: LGPL-3.0-or-later + license_family: LGPL + purls: + - pkg:pypi/psycopg2?source=hash-mapping + size: 189532 + timestamp: 1758891623121 - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-hb9d3cd8_1002.conda sha256: 9c88f8c64590e9567c6c80823f0328e58d3b1efb0e1c539c0315ceca764e0973 md5: b3c17d95b5a10c6e64a21fa17573e70e @@ -3522,28 +3849,26 @@ packages: - pkg:pypi/six?source=hash-mapping size: 18455 timestamp: 1753199211006 -- conda: https://conda.anaconda.org/conda-forge/noarch/slack-sdk-3.36.0-pyhd8ed1ab_0.conda - sha256: dde69ea9f8e0ce9f6e4d41b344b84f3034f6173d5f00ae90be1e320f2db6e207 - md5: 805c3dfdd71f715b929bbbfb7a84f970 +- conda: https://conda.anaconda.org/conda-forge/noarch/slack-sdk-3.37.0-pyhd8ed1ab_0.conda + sha256: f51550c4aacd7c4be56ae0356d7faf7567f5bfb923327e3fa374e078374d9435 + md5: 8b726fdb979c6c117eddfef45e2b6adf depends: - - python >=3.9 + - python >=3.10 license: MIT - license_family: MIT purls: - pkg:pypi/slack-sdk?source=hash-mapping - size: 150190 - timestamp: 1752115487317 -- conda: https://conda.anaconda.org/conda-forge/noarch/slack_sdk-3.36.0-hd8ed1ab_0.conda + size: 153654 + timestamp: 1759799082481 +- conda: https://conda.anaconda.org/conda-forge/noarch/slack_sdk-3.37.0-hd8ed1ab_0.conda noarch: python - sha256: 220a1f781fe91096e2515f1e27478567220373c76fee73fa7de58aca1030ef34 - md5: ae10b68ae0b58ef05bd9c476019f674a + sha256: dd507adfcc53beb52c1e8d6483f8c1f58eff98ed2f05f1e2f9c9ffb8e225e694 + md5: ef0fa5cc3884df325aa7edd6e629b5fd depends: - - slack-sdk 3.36.0 pyhd8ed1ab_0 + - slack-sdk 3.37.0 pyhd8ed1ab_0 license: MIT - license_family: MIT purls: [] - size: 6796 - timestamp: 1752115488666 + size: 6810 + timestamp: 1759799083667 - conda: https://conda.anaconda.org/conda-forge/noarch/smart_open-7.3.1-pyhcf101f3_0.conda sha256: 90fcbf3e017d0045dfc6d43869987d314d0430d2cc21fe91714dbb20e2b5d63e md5: 4f2afb0e09f9288e1dfc0aec31602fd4 @@ -3579,21 +3904,21 @@ packages: license_family: MIT size: 33339 timestamp: 1756948827679 -- conda: https://conda.anaconda.org/bioconda/noarch/snakemake-9.12.0-hdfd78af_0.conda - sha256: 48046920cc0a92f08d655b368d972bb6d00af82e14eb5107c0324fbeb052bee6 - md5: bd686d8da326177544dfc65a180d115d +- conda: https://conda.anaconda.org/bioconda/noarch/snakemake-9.11.2-hdfd78af_0.conda + sha256: d42049249823bcea63b533518472841e482853e1e93c0fc095c14f6608fcdd62 + md5: af80fce7f2b0e2cb75c779c782948005 depends: - eido - pandas - peppy - pygments - slack_sdk - - snakemake-minimal 9.12.0.* + - snakemake-minimal 9.11.2.* license: MIT license_family: MIT purls: [] - size: 10454 - timestamp: 1759583967071 + size: 10501 + timestamp: 1757421050272 - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-executor-plugin-slurm-1.8.0-pyhdfd78af_0.conda sha256: 4a4bf648fd2dccc7be4c3b0798c73731bb107e40ee26b451b33dfbe38d21937d md5: c6676377d65310d605199dc5011b8c7f @@ -3712,9 +4037,9 @@ packages: - ruff>=0.9.10 ; extra == 'dev' - snakemake>=9.0.1 ; extra == 'dev' requires_python: '>=3.11,<4.0' -- conda: https://conda.anaconda.org/bioconda/noarch/snakemake-minimal-9.12.0-pyhdfd78af_0.conda - sha256: 9915c846ae7737f71ea87f8137ec959753ede602f659a7f412c236955a1ebae3 - md5: 90b5fc698c5e64af08added5914df2e1 +- conda: https://conda.anaconda.org/bioconda/noarch/snakemake-minimal-9.11.2-pyhdfd78af_0.conda + sha256: 4d431c6a1525a69160c3cc7173438d0e16356cffcb77ecb403400f08c5af6d61 + md5: 2e730dd45d956279ef458085e5566f9e depends: - appdirs - conda-inject >=1.3.1,<2.0 @@ -3750,8 +4075,8 @@ packages: license_family: MIT purls: - pkg:pypi/snakemake?source=hash-mapping - size: 863816 - timestamp: 1759583964801 + size: 861758 + timestamp: 1757421047972 - conda: https://conda.anaconda.org/bioconda/noarch/snakemake-storage-plugin-ftp-0.1.3-pyhdfd78af_0.tar.bz2 sha256: 38b295f953f29c59919e814ce6958d29894d3f3cdb088ebc1fff76f2c1e5a1e1 md5: 46403ce80fe3e30c5a23fb70172f2bf7 @@ -3793,44 +4118,164 @@ packages: - textual>=3.1.1 - typer>=0.15.3 requires_python: '>=3.11' -- pypi: https://files.pythonhosted.org/packages/6e/0e/3d155e264d2ed2778484006ef04647bc63f55b3e2d12e6a4f787747b5900/sqlalchemy-2.0.43-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - name: sqlalchemy - version: 2.0.43 - sha256: 1a113da919c25f7f641ffbd07fbc9077abd4b3b75097c888ab818f962707eb48 - requires_dist: - - importlib-metadata ; python_full_version < '3.8' - - greenlet>=1 ; (python_full_version < '3.14' and platform_machine == 'AMD64') or (python_full_version < '3.14' and platform_machine == 'WIN32') or (python_full_version < '3.14' and platform_machine == 'aarch64') or (python_full_version < '3.14' and platform_machine == 'amd64') or (python_full_version < '3.14' and platform_machine == 'ppc64le') or (python_full_version < '3.14' and platform_machine == 'win32') or (python_full_version < '3.14' and platform_machine == 'x86_64') - - typing-extensions>=4.6.0 - - greenlet>=1 ; extra == 'asyncio' - - mypy>=0.910 ; extra == 'mypy' - - pyodbc ; extra == 'mssql' - - pymssql ; extra == 'mssql-pymssql' - - pyodbc ; extra == 'mssql-pyodbc' - - mysqlclient>=1.4.0 ; extra == 'mysql' - - mysql-connector-python ; extra == 'mysql-connector' - - mariadb>=1.0.1,!=1.1.2,!=1.1.5,!=1.1.10 ; extra == 'mariadb-connector' - - cx-oracle>=8 ; extra == 'oracle' - - oracledb>=1.0.1 ; extra == 'oracle-oracledb' - - psycopg2>=2.7 ; extra == 'postgresql' - - pg8000>=1.29.1 ; extra == 'postgresql-pg8000' - - greenlet>=1 ; extra == 'postgresql-asyncpg' - - asyncpg ; extra == 'postgresql-asyncpg' - - psycopg2-binary ; extra == 'postgresql-psycopg2binary' - - psycopg2cffi ; extra == 'postgresql-psycopg2cffi' - - psycopg>=3.0.7 ; extra == 'postgresql-psycopg' - - psycopg[binary]>=3.0.7 ; extra == 'postgresql-psycopgbinary' - - pymysql ; extra == 'pymysql' - - greenlet>=1 ; extra == 'aiomysql' - - aiomysql>=0.2.0 ; extra == 'aiomysql' - - greenlet>=1 ; extra == 'aioodbc' - - aioodbc ; extra == 'aioodbc' - - greenlet>=1 ; extra == 'asyncmy' - - asyncmy>=0.2.3,!=0.2.4,!=0.2.6 ; extra == 'asyncmy' - - greenlet>=1 ; extra == 'aiosqlite' - - aiosqlite ; extra == 'aiosqlite' - - typing-extensions!=3.10.0.1 ; extra == 'aiosqlite' - - sqlcipher3-binary ; extra == 'sqlcipher' - requires_python: '>=3.7' +- conda: https://conda.anaconda.org/conda-forge/linux-64/sqlalchemy-2.0.43-py312h4c3975b_1.conda + sha256: 0a235fad9c2be40cd32cbcb5481ece19c494647f66f55cff22a684ada7a2b802 + md5: 95d7654483188c67bd579374361473b8 + depends: + - __glibc >=2.17,<3.0.a0 + - greenlet !=0.4.17 + - libgcc >=14 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + - typing-extensions >=4.6.0 + license: MIT + purls: + - pkg:pypi/sqlalchemy?source=hash-mapping + size: 3569644 + timestamp: 1759824837659 +- conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-0.42.0-hd8ed1ab_0.conda + sha256: f9d1faff86a14fab525822a5158d551f9c1187a5f8f270f4f3296270572cbcd9 + md5: 56baaf2337dcedeecdd2c43c59598659 + depends: + - sqlalchemy-utils-arrow >=0.42.0,<0.42.1.0a0 + - sqlalchemy-utils-babel >=0.42.0,<0.42.1.0a0 + - sqlalchemy-utils-base >=0.42.0,<0.42.1.0a0 + - sqlalchemy-utils-color >=0.42.0,<0.42.1.0a0 + - sqlalchemy-utils-encrypted >=0.42.0,<0.42.1.0a0 + - sqlalchemy-utils-intervals >=0.42.0,<0.42.1.0a0 + - sqlalchemy-utils-password >=0.42.0,<0.42.1.0a0 + - sqlalchemy-utils-pendulum >=0.42.0,<0.42.1.0a0 + - sqlalchemy-utils-phone >=0.42.0,<0.42.1.0a0 + - sqlalchemy-utils-timezone >=0.42.0,<0.42.1.0a0 + - sqlalchemy-utils-url >=0.42.0,<0.42.1.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 7740 + timestamp: 1756597391285 +- conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-arrow-0.42.0-hd8ed1ab_0.conda + sha256: 39b2cb6c968a369d5b7751f919de57de9987a07d15ab22674ba6482b3d7aea4d + md5: 0ee80e44691eead80ff2924790f747c9 + depends: + - arrow >=0.3.4 + - sqlalchemy-utils-base >=0.42.0,<0.42.1.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 7706 + timestamp: 1756597389417 +- conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-babel-0.42.0-hd8ed1ab_0.conda + sha256: 2ddd2bb9eae52a6e010406e803372d6465eeadc74138e9f7de813db011fefed9 + md5: defe5afb6f662a1188233499a1c0da25 + depends: + - babel >=1.3 + - sqlalchemy-utils-base >=0.42.0,<0.42.1.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 7701 + timestamp: 1756597389599 +- conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-base-0.42.0-pyhd8ed1ab_0.conda + sha256: 7faf88760e78e8cbf8549bfa986b5adc8490b7c64918d36a47763e7a1fa65f7d + md5: 396300b1f5a391af23c638a26a388dfc + depends: + - importlib-metadata + - python >=3.10 + - sqlalchemy >=1.3 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/sqlalchemy-utils?source=hash-mapping + size: 69618 + timestamp: 1756597388807 +- conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-color-0.42.0-hd8ed1ab_0.conda + sha256: 30ec9d7ec0acf8b5b519eecd0d28a5774b7fe00fd1c4c852a37a8a173d67239e + md5: 722d8c743345fc159dbf1801fae610b3 + depends: + - colour >=0.0.4 + - sqlalchemy-utils-base >=0.42.0,<0.42.1.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 7711 + timestamp: 1756597389781 +- conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-encrypted-0.42.0-hd8ed1ab_0.conda + sha256: 731268ebab6a384ff4758833864c82f50aa203e8a3588acf7ed0b673616f9884 + md5: 93a3e74f307e405db230b8d21162bb4c + depends: + - cryptography >=0.6 + - sqlalchemy-utils-base >=0.42.0,<0.42.1.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 7726 + timestamp: 1756597389966 +- conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-intervals-0.42.0-hd8ed1ab_0.conda + sha256: fc6cb40fdcf35821b57bd10c237320711df76de5ecbe1f7afac3cabf30e5a3ce + md5: e2553ef9281152d57a8c2291d1b9c3b1 + depends: + - intervals >=0.7.1 + - sqlalchemy-utils-base >=0.42.0,<0.42.1.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 7717 + timestamp: 1756597390151 +- conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-password-0.42.0-hd8ed1ab_0.conda + sha256: fd1c8902c45186edfe8299967745be78c964e72c677d1b57de1e41343345a254 + md5: 2d3b7b2af9da2a93392ea4336990e8d2 + depends: + - passlib >=1.6,<2.0 + - sqlalchemy-utils-base >=0.42.0,<0.42.1.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 7718 + timestamp: 1756597390336 +- conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-pendulum-0.42.0-hd8ed1ab_0.conda + sha256: ff4650cd4c1a7d2f158c5d001bb5e2ea2c8c5a4831a8f45b0131be2b13266c7b + md5: fb37571eeebcb462f95efb2b0c4e9d71 + depends: + - pendulum >=2.0.5 + - sqlalchemy-utils-base >=0.42.0,<0.42.1.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 7736 + timestamp: 1756597390521 +- conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-phone-0.42.0-hd8ed1ab_0.conda + sha256: cd47a71c149ebf1a178b306eb35e93d7bfeab3433f280668423f06dd2bfff5a2 + md5: 36daaec51a22703451834960d21f3da0 + depends: + - phonenumbers >=5.9.2 + - sqlalchemy-utils-base >=0.42.0,<0.42.1.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 7698 + timestamp: 1756597390708 +- conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-timezone-0.42.0-hd8ed1ab_0.conda + sha256: 2f5c3acc2dafdec0d61e09e5c457aba4b7b7acd48b2bce359920105973bbac73 + md5: 658ee0f9a01140a8f46600dcd7e489c6 + depends: + - python-dateutil + - sqlalchemy-utils-base >=0.42.0,<0.42.1.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 7730 + timestamp: 1756597390896 +- conda: https://conda.anaconda.org/conda-forge/noarch/sqlalchemy-utils-url-0.42.0-hd8ed1ab_0.conda + sha256: e776550e157d720b0dac339dbcbd4c56306105c8f8b3b9e9f34f2f640f409203 + md5: 954e3b160545f617ca922af0046e3d12 + depends: + - furl >=0.4.1 + - sqlalchemy-utils-base >=0.42.0,<0.42.1.0a0 + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 7699 + timestamp: 1756597391087 - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_2.conda sha256: 090023bddd40d83468ef86573976af8c514f64119b2bd814ee63a838a542720a md5: 959484a66b4b76befcddc4fa97c95567 @@ -3880,6 +4325,21 @@ packages: - pkg:pypi/throttler?source=hash-mapping size: 12341 timestamp: 1691135604942 +- conda: https://conda.anaconda.org/conda-forge/linux-64/time-machine-2.19.0-py312h5253ce2_1.conda + sha256: c5d7672e929883b4e90c3f9b8647131da3134d6bee0ef95c5eeefa636ff8fff6 + md5: 1a3c63a47e042490184007287ad148e0 + depends: + - python + - python-dateutil + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - python_abi 3.12.* *_cp312 + license: MIT + license_family: MIT + purls: + - pkg:pypi/time-machine?source=hash-mapping + size: 45285 + timestamp: 1756482573058 - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_hd72426e_102.conda sha256: a84ff687119e6d8752346d1d408d5cf360dee0badd487a472aa8ddedfdc219e1 md5: a0116df4f4ed05c303811a837d5b39d8 @@ -3981,6 +4441,16 @@ packages: purls: [] size: 5300 timestamp: 1758635560770 +- conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20250822-pyhd8ed1ab_0.conda + sha256: dfdf6e3dea87c873a86cfa47f7cba6ffb500bad576d083b3de6ad1b17e1a59c3 + md5: 5e9220c892fe069da8de2b9c63663319 + depends: + - python >=3.10 + license: Apache-2.0 AND MIT + purls: + - pkg:pypi/types-python-dateutil?source=hash-mapping + size: 24939 + timestamp: 1755865615651 - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda sha256: 7c2df5721c742c2a47b2c8f960e718c930031663ac1174da67c1ed5999f7938c md5: edd329d7d3a4ab45dcf905899a7a6115 @@ -4368,6 +4838,17 @@ packages: - pkg:pypi/yte?source=hash-mapping size: 15805 timestamp: 1749657286268 +- conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.23.0-pyhd8ed1ab_0.conda + sha256: 7560d21e1b021fd40b65bfb72f67945a3fcb83d78ad7ccf37b8b3165ec3b68ad + md5: df5e78d904988eb55042c0c97446079f + depends: + - python >=3.9 + license: MIT + license_family: MIT + purls: + - pkg:pypi/zipp?source=hash-mapping + size: 22963 + timestamp: 1749421737203 - conda: https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.25.0-py312h5253ce2_0.conda sha256: 1a3beda8068b55639edb92da8e0dc2d487e2a11aba627f709aab1d3cd5dd271c md5: 05d73100768745631ab3de9dc1e08da2 diff --git a/pixi.toml b/pixi.toml index def8da4..67e61e6 100644 --- a/pixi.toml +++ b/pixi.toml @@ -7,15 +7,18 @@ version = "1.1.0" [tasks] [dependencies] -snakemake = ">=9.0.1,<10" +snakemake = ">=9.0.1,<9.11.3" conda = ">=25.1.1,<26" python = "<=3.12.8" +sqlalchemy = ">=2.0.43,<3" +sqlalchemy-utils = ">=0.42.0,<1" +psycopg2 = ">=2.9.10,<3" snakemake-executor-plugin-slurm = ">=1.1.0,<2" snakemake-storage-plugin-http = ">=0.3.0,<0.4" snakemake-storage-plugin-ftp = ">=0.1.3,<0.2" [environments] -test = { features = ["test"] } +test = { features = ["test"]} format = { features = ["format"], no-default-feature = true } [feature.test.dependencies] diff --git a/scripts/launch_runs.py b/scripts/launch_runs.py index ae52529..214e47e 100755 --- a/scripts/launch_runs.py +++ b/scripts/launch_runs.py @@ -72,53 +72,51 @@ # Infer Pixi env and workflow paths -if args.workflow.startswith("prod"): +if args.workflow == "prod": pixi_env = workflow_path = "/projects/caeg/apps/aeDNA" extra_args += " --profile /projects/caeg/data/resources/profile_production" - if args.workflow == "prod-legacy": - workflow_path = "/projects/caeg/apps/aeDNA-legacy" - elif args.workflow == "prod-test": - pixi_env = workflow_path = "/projects/caeg/people/lnc113/workflows/aeDNA/aeDNA" +elif args.workflow == "prod-legacy": + pixi_env = "/projects/caeg/apps/aeDNA" + workflow_path = "/projects/caeg/apps/aeDNA-legacy" +elif args.workflow == "prod-test": + pixi_env = workflow_path = "/projects/caeg/people/lnc113/workflows/aeDNA/aeDNA" elif args.workflow == "caterpillar": pixi_env = workflow_path = "/projects/caeg/people/lnc113/workflows/caterpillar" # Infer hostname, HPC account and partition -cmd = f"env --chdir={{id}} bash -c " -if args.run == "local": - logging.info(f"Running jobs locally") - opts_hpc = "" +import socket +hostname = socket.gethostname() +if hostname.startswith("dandy"): + hpc_snakemake_account = hpc_job_account = "prod" + hpc_job_partition = "compregular" + hpc_snakemake_partition = "compsnake" +elif hostname.startswith("rubus"): + hpc_snakemake_account = hpc_job_account = "bench" + hpc_snakemake_partition = "epyc_long,xeon_fat_long" + hpc_job_partition = "epyc,epyc_noht,xeon_fat" +else: + logging.error(f"Host {hostname} not supported yet!") + exit(-1) + + +# Run Workflow +if args.submit_snakemake: + cmd = f"sbatch --chdir {{id}} --job-name {{id}} --account {hpc_snakemake_account} --partition {hpc_snakemake_partition} --cpus-per-task 1 --mem 1G --time 5-00 --no-requeue --wrap=" + logging.info(f"Workflows will be submitted to the {args.run} HPC, on account '{hpc_snakemake_account}' and partition '{hpc_snakemake_partition}'.") else: - import socket - - opts_hpc = f"--executor {args.run}" - hostname = socket.gethostname() - if hostname.startswith("dandy"): - hpc_snakemake_account = hpc_job_account = "prod" - hpc_job_partition = "compregular" - hpc_snakemake_partition = "compsnake" - elif hostname.startswith("rubus"): - hpc_snakemake_account = hpc_job_account = "bench" - hpc_snakemake_partition = "epyc_long,xeon_fat_long" - hpc_job_partition = "epyc,epyc_noht,xeon_fat" - else: - logging.error(f"Host {hostname} not supported yet!") - exit(-1) - - - if args.submit_snakemake: - if args.run == "slurm": - cmd = f"sbatch --chdir {{id}} --job-name {{id}} --account {hpc_snakemake_account} --partition {hpc_snakemake_partition} --cpus-per-task 1 --mem 1G --time 5-00 --no-requeue --wrap=" - opts_hpc += f" --default-resources slurm_account={hpc_job_account} slurm_partition={hpc_job_partition} tmpdir='{args.tmp_dir}' --slurm-status-attempts 1000" - else: - logging.error(f"HPC {args.run} not supported yet!") - exit(-1) - - logging.info(f"Workflows will be submitted to the {args.run} HPC, on account '{hpc_snakemake_account}' and partition '{hpc_snakemake_partition}'.") - else: - logging.info(f"Workflows will be run locally on host {hostname}") + cmd = f"env --chdir={{id}} bash -c " + logging.info(f"Workflows will be run locally on host {hostname}") + +# Run jobs +opts = "--jobs 300 --retries 1" +if args.run == "local": + logging.info(f"Running jobs locally") + opts += f" --default-resources tmpdir='{args.tmp_dir}'" +elif args.run == "slurm": logging.info(f"Jobs will be submitted to the {args.run} HPC, on account '{hpc_job_account}' and partition '{hpc_job_partition}'.") + opts += f" --executor {args.run} --default-resources slurm_account={hpc_job_account} slurm_partition={hpc_job_partition} tmpdir='{args.tmp_dir}'" # Read job list @@ -140,6 +138,6 @@ logging.info("Build command") for id in df.index: - print(f'{cmd.format(id=id)}"pixi run --manifest-path {pixi_env} snakemake --snakefile {workflow_path}/workflow/Snakefile --workflow-profile /projects/caeg/data/resources/profile {extra_args} {opts_hpc}"; sleep 0.5') + print(f'{cmd.format(id=id)}"pixi run --manifest-path {pixi_env} snakemake --snakefile {workflow_path}/workflow/Snakefile --workflow-profile /projects/caeg/data/resources/profile {extra_args} {opts}"; sleep 0.5') exit(0) diff --git a/workflow/resources/multiqc_config.yaml b/workflow/resources/multiqc_config.yaml index 0932708..10e4b40 100644 --- a/workflow/resources/multiqc_config.yaml +++ b/workflow/resources/multiqc_config.yaml @@ -65,14 +65,11 @@ table_cond_formatting_colours: ## To remove a section of a module # https://multiqc.info/docs/#removing-modules-or-sections module_order: - - samtools - - - picard - - - biobambam2: - name: 'BamSorMaDup' + - samtools: + name: 'Samtools' + anchor: 'samtools' path_filters: - - '*.metrics.txt' + - '*/aligns/samtools_stats/*' - bowtie2: name: 'Bowtie2' @@ -82,11 +79,18 @@ module_order: - fastqc: name: 'FastQC (prefilter)' - anchor: 'prefilter' + anchor: 'fastqc_prefilter' info: 'FastQC results after prefiltering.' path_filters: - '*/fastqc/prefilter/*' + - samtools: + name: 'Samtools (prefilter)' + anchor: 'samtools_prefilter' + info: 'Samtools Stats for prefiltering.' + path_filters: + - '*/prefilter_aligns/samtools_stats/*' + - bowtie2: name: 'Bowtie2 (prefilter)' anchor: 'bowtie2_prefilter' diff --git a/workflow/rules/prefilter.smk b/workflow/rules/prefilter.smk index 50fc6f0..bbca664 100644 --- a/workflow/rules/prefilter.smk +++ b/workflow/rules/prefilter.smk @@ -21,8 +21,8 @@ rule prefilter_reads_taxonomy: ) threads: 1 resources: - mem=lambda w, input, attempt: f"{3* attempt} GiB", - runtime=lambda w, input, attempt: f"{(0.06* input.size_gb+2)* attempt} h", + mem=lambda w, input, attempt: f"{5* attempt} GiB", + runtime=lambda w, input, attempt: f"{(0.05* input.size_gb+2)* attempt} h", shell: "(extract_reads bytaxid -hts {input.bam} -names {input.names} -nodes {input.nodes} -acc2tax <(cat {input.acc2taxid}) {params.extra} -strict 1 -forcedump 1 -out - -type sam | awk '!/^@/' | cut -f 1 | uniq > {output.read_id}) 2> {log}"