Skip to content

Commit a247f15

Browse files
authored
Merge pull request #510 from nf-core/nextflow-strict-syntax
Make pipeline nextflow strict syntax compliant
2 parents b0c0f23 + 548a41c commit a247f15

File tree

11 files changed

+267
-259
lines changed

11 files changed

+267
-259
lines changed

modules.json

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,11 @@
9595
"git_sha": "81880787133db07d9b4c1febd152c090eb8325dc",
9696
"installed_by": ["modules"]
9797
},
98+
"gecco/convert": {
99+
"branch": "master",
100+
"git_sha": "2aa243bd8a9b20122ed6fb5d2d3c75b963eef171",
101+
"installed_by": ["modules"]
102+
},
98103
"gecco/run": {
99104
"branch": "master",
100105
"git_sha": "81880787133db07d9b4c1febd152c090eb8325dc",
@@ -192,12 +197,12 @@
192197
},
193198
"rgi/cardannotation": {
194199
"branch": "master",
195-
"git_sha": "531d8a465158c5842f416623017997462a240e16",
200+
"git_sha": "70c072e30155e7671be828762be16576bd4afca7",
196201
"installed_by": ["modules"]
197202
},
198203
"rgi/main": {
199204
"branch": "master",
200-
"git_sha": "531d8a465158c5842f416623017997462a240e16",
205+
"git_sha": "70c072e30155e7671be828762be16576bd4afca7",
201206
"installed_by": ["modules"]
202207
},
203208
"seqkit/seq": {

modules/nf-core/rgi/cardannotation/main.nf

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

modules/nf-core/rgi/main/main.nf

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

subworkflows/local/amp.nf

Lines changed: 109 additions & 105 deletions
Original file line numberDiff line numberDiff line change
@@ -2,164 +2,168 @@
22
Run AMP screening tools
33
*/
44

5-
include { MACREL_CONTIGS } from '../../modules/nf-core/macrel/contigs/main'
6-
include { HMMER_HMMSEARCH as AMP_HMMER_HMMSEARCH } from '../../modules/nf-core/hmmer/hmmsearch/main'
7-
include { AMPLIFY_PREDICT } from '../../modules/nf-core/amplify/predict/main'
8-
include { AMPIR } from '../../modules/nf-core/ampir/main'
9-
include { AMP_DATABASE_DOWNLOAD } from '../../modules/local/amp_database_download'
10-
include { AMPCOMBI2_PARSETABLES } from '../../modules/nf-core/ampcombi2/parsetables'
11-
include { AMPCOMBI2_COMPLETE } from '../../modules/nf-core/ampcombi2/complete'
12-
include { AMPCOMBI2_CLUSTER } from '../../modules/nf-core/ampcombi2/cluster'
13-
include { GUNZIP as GUNZIP_MACREL_PRED ; GUNZIP as GUNZIP_MACREL_ORFS } from '../../modules/nf-core/gunzip/main'
14-
include { GUNZIP as AMP_GUNZIP_HMMER_HMMSEARCH } from '../../modules/nf-core/gunzip/main'
15-
include { TABIX_BGZIP as AMP_TABIX_BGZIP } from '../../modules/nf-core/tabix/bgzip/main'
16-
include { MERGE_TAXONOMY_AMPCOMBI } from '../../modules/local/merge_taxonomy_ampcombi'
5+
include { MACREL_CONTIGS } from '../../modules/nf-core/macrel/contigs'
6+
include { HMMER_HMMSEARCH as AMP_HMMER_HMMSEARCH } from '../../modules/nf-core/hmmer/hmmsearch'
7+
include { AMPLIFY_PREDICT } from '../../modules/nf-core/amplify/predict'
8+
include { AMPIR } from '../../modules/nf-core/ampir'
9+
include { AMP_DATABASE_DOWNLOAD } from '../../modules/local/amp_database_download'
10+
include { AMPCOMBI2_PARSETABLES } from '../../modules/nf-core/ampcombi2/parsetables'
11+
include { AMPCOMBI2_COMPLETE } from '../../modules/nf-core/ampcombi2/complete'
12+
include { AMPCOMBI2_CLUSTER } from '../../modules/nf-core/ampcombi2/cluster'
13+
include { GUNZIP as GUNZIP_MACREL_PRED ; GUNZIP as GUNZIP_MACREL_ORFS } from '../../modules/nf-core/gunzip'
14+
include { GUNZIP as AMP_GUNZIP_HMMER_HMMSEARCH } from '../../modules/nf-core/gunzip'
15+
include { TABIX_BGZIP as AMP_TABIX_BGZIP } from '../../modules/nf-core/tabix/bgzip'
16+
include { MERGE_TAXONOMY_AMPCOMBI } from '../../modules/local/merge_taxonomy_ampcombi'
1717

1818
workflow AMP {
1919
take:
20-
fastas // tuple val(meta), path(contigs)
21-
faas // tuple val(meta), path(PROKKA/PRODIGAL.out.faa)
22-
tsvs // tuple val(meta), path(MMSEQS_CREATETSV.out.tsv)
23-
gbks // tuple val(meta), path(ANNOTATION_ANNOTATION_TOOL.out.gbk)
24-
tsvs_interpro // tuple val(meta), path(INTERPROSCAN.out.tsv)'
20+
fastas // tuple val(meta), path(contigs)
21+
faas // tuple val(meta), path(PROKKA/PRODIGAL.out.faa)
22+
tsvs // tuple val(meta), path(MMSEQS_CREATETSV.out.tsv)
23+
gbks // tuple val(meta), path(ANNOTATION_ANNOTATION_TOOL.out.gbk)
24+
tsvs_interpro // tuple val(meta), path(INTERPROSCAN.out.tsv)'
2525

2626
main:
27-
ch_versions = Channel.empty()
28-
ch_ampresults_for_ampcombi = Channel.empty()
29-
ch_macrel_faa = Channel.empty()
30-
ch_ampcombi_summaries = Channel.empty()
31-
ch_ampcombi_complete = null
27+
ch_versions = channel.empty()
28+
ch_ampresults_for_ampcombi = channel.empty()
29+
ch_macrel_faa = channel.empty()
30+
ch_ampcombi_summaries = channel.empty()
31+
ch_ampcombi_complete = null
3232

3333
// When adding new tool that requires FAA, make sure to update conditions
3434
// in funcscan.nf around annotation and AMP subworkflow execution
3535
// to ensure annotation is executed!
36-
ch_faa_for_amplify = faas
37-
ch_faa_for_amp_hmmsearch = faas
38-
ch_faa_for_ampir = faas
39-
ch_faa_for_ampcombi = faas
40-
ch_gbk_for_ampcombi = gbks
41-
ch_interpro_for_ampcombi = tsvs_interpro
36+
ch_faa_for_amplify = faas
37+
ch_faa_for_amp_hmmsearch = faas
38+
ch_faa_for_ampir = faas
39+
ch_faa_for_ampcombi = faas
40+
ch_gbk_for_ampcombi = gbks
41+
ch_interpro_for_ampcombi = tsvs_interpro
4242

4343
// AMPLIFY
44-
if ( !params.amp_skip_amplify ) {
45-
AMPLIFY_PREDICT ( ch_faa_for_amplify, [] )
46-
ch_versions = ch_versions.mix( AMPLIFY_PREDICT.out.versions )
47-
ch_ampresults_for_ampcombi = ch_ampresults_for_ampcombi.mix( AMPLIFY_PREDICT.out.tsv )
44+
if (!params.amp_skip_amplify) {
45+
AMPLIFY_PREDICT(ch_faa_for_amplify, [])
46+
ch_versions = ch_versions.mix(AMPLIFY_PREDICT.out.versions)
47+
ch_ampresults_for_ampcombi = ch_ampresults_for_ampcombi.mix(AMPLIFY_PREDICT.out.tsv)
4848
}
4949

5050
// MACREL
51-
if ( !params.amp_skip_macrel ) {
52-
MACREL_CONTIGS ( fastas )
53-
ch_versions = ch_versions.mix( MACREL_CONTIGS.out.versions )
54-
GUNZIP_MACREL_PRED ( MACREL_CONTIGS.out.amp_prediction )
55-
GUNZIP_MACREL_ORFS ( MACREL_CONTIGS.out.all_orfs )
56-
ch_versions = ch_versions.mix( GUNZIP_MACREL_PRED.out.versions )
57-
ch_versions = ch_versions.mix( GUNZIP_MACREL_ORFS.out.versions )
58-
ch_ampresults_for_ampcombi = ch_ampresults_for_ampcombi.mix( GUNZIP_MACREL_PRED.out.gunzip )
59-
ch_macrel_faa = ch_macrel_faa.mix( GUNZIP_MACREL_ORFS.out.gunzip )
60-
ch_faa_for_ampcombi = ch_faa_for_ampcombi.mix( ch_macrel_faa )
51+
if (!params.amp_skip_macrel) {
52+
MACREL_CONTIGS(fastas)
53+
ch_versions = ch_versions.mix(MACREL_CONTIGS.out.versions)
54+
GUNZIP_MACREL_PRED(MACREL_CONTIGS.out.amp_prediction)
55+
GUNZIP_MACREL_ORFS(MACREL_CONTIGS.out.all_orfs)
56+
ch_versions = ch_versions.mix(GUNZIP_MACREL_PRED.out.versions)
57+
ch_versions = ch_versions.mix(GUNZIP_MACREL_ORFS.out.versions)
58+
ch_ampresults_for_ampcombi = ch_ampresults_for_ampcombi.mix(GUNZIP_MACREL_PRED.out.gunzip)
59+
ch_macrel_faa = ch_macrel_faa.mix(GUNZIP_MACREL_ORFS.out.gunzip)
60+
ch_faa_for_ampcombi = ch_faa_for_ampcombi.mix(ch_macrel_faa)
6161
}
6262

6363
// AMPIR
64-
if ( !params.amp_skip_ampir ) {
65-
AMPIR ( ch_faa_for_ampir, params.amp_ampir_model, params.amp_ampir_minlength, 0.0 )
66-
ch_versions = ch_versions.mix( AMPIR.out.versions )
67-
ch_ampresults_for_ampcombi = ch_ampresults_for_ampcombi.mix( AMPIR.out.amps_tsv )
64+
if (!params.amp_skip_ampir) {
65+
AMPIR(ch_faa_for_ampir, params.amp_ampir_model, params.amp_ampir_minlength, 0.0)
66+
ch_versions = ch_versions.mix(AMPIR.out.versions)
67+
ch_ampresults_for_ampcombi = ch_ampresults_for_ampcombi.mix(AMPIR.out.amps_tsv)
6868
}
6969

7070
// HMMSEARCH
71-
if ( params.amp_run_hmmsearch ) {
72-
if ( params.amp_hmmsearch_models ) { ch_amp_hmm_models = Channel.fromPath( params.amp_hmmsearch_models, checkIfExists: true ) } else { error('[nf-core/funcscan] error: HMM model files not found for --amp_hmmsearch_models! Please check input.') }
73-
74-
ch_amp_hmm_models_meta = ch_amp_hmm_models
75-
.map {
76-
file ->
77-
def meta = [:]
78-
meta['id'] = file.extension == 'gz' ? file.name - '.hmm.gz' : file.name - '.hmm'
79-
[ meta, file ]
80-
}
71+
if (params.amp_run_hmmsearch) {
72+
if (params.amp_hmmsearch_models) {
73+
ch_amp_hmm_models = channel.fromPath(params.amp_hmmsearch_models, checkIfExists: true)
74+
}
75+
else {
76+
error('[nf-core/funcscan] error: HMM model files not found for --amp_hmmsearch_models! Please check input.')
77+
}
78+
79+
ch_amp_hmm_models_meta = ch_amp_hmm_models.map { file ->
80+
def meta = [:]
81+
meta['id'] = file.extension == 'gz' ? file.name - '.hmm.gz' : file.name - '.hmm'
82+
[meta, file]
83+
}
8184

8285
ch_in_for_amp_hmmsearch = ch_faa_for_amp_hmmsearch
83-
.combine( ch_amp_hmm_models_meta )
84-
.map {
85-
meta_faa, faa, meta_hmm, hmm ->
86-
def meta_new = [:]
87-
meta_new['id'] = meta_faa['id']
88-
meta_new['hmm_id'] = meta_hmm['id']
89-
[ meta_new, hmm, faa, params.amp_hmmsearch_savealignments, params.amp_hmmsearch_savetargets, params.amp_hmmsearch_savedomains ]
90-
}
91-
92-
AMP_HMMER_HMMSEARCH ( ch_in_for_amp_hmmsearch )
93-
ch_versions = ch_versions.mix( AMP_HMMER_HMMSEARCH.out.versions )
94-
AMP_GUNZIP_HMMER_HMMSEARCH ( AMP_HMMER_HMMSEARCH.out.output )
95-
ch_versions = ch_versions.mix( AMP_GUNZIP_HMMER_HMMSEARCH.out.versions )
96-
ch_AMP_GUNZIP_HMMER_HMMSEARCH = AMP_GUNZIP_HMMER_HMMSEARCH.out.gunzip
97-
.map { meta, file ->
98-
[ [id: meta.id], file ]
86+
.combine(ch_amp_hmm_models_meta)
87+
.map { meta_faa, faa, meta_hmm, hmm ->
88+
def meta_new = [:]
89+
meta_new['id'] = meta_faa['id']
90+
meta_new['hmm_id'] = meta_hmm['id']
91+
[meta_new, hmm, faa, params.amp_hmmsearch_savealignments, params.amp_hmmsearch_savetargets, params.amp_hmmsearch_savedomains]
9992
}
100-
ch_ampresults_for_ampcombi = ch_ampresults_for_ampcombi.mix( ch_AMP_GUNZIP_HMMER_HMMSEARCH )
93+
94+
AMP_HMMER_HMMSEARCH(ch_in_for_amp_hmmsearch)
95+
ch_versions = ch_versions.mix(AMP_HMMER_HMMSEARCH.out.versions)
96+
AMP_GUNZIP_HMMER_HMMSEARCH(AMP_HMMER_HMMSEARCH.out.output)
97+
ch_versions = ch_versions.mix(AMP_GUNZIP_HMMER_HMMSEARCH.out.versions)
98+
ch_AMP_GUNZIP_HMMER_HMMSEARCH = AMP_GUNZIP_HMMER_HMMSEARCH.out.gunzip.map { meta, file ->
99+
[[id: meta.id], file]
100+
}
101+
ch_ampresults_for_ampcombi = ch_ampresults_for_ampcombi.mix(ch_AMP_GUNZIP_HMMER_HMMSEARCH)
101102
}
102103

103104
// AMPCOMBI2
104105
ch_input_for_ampcombi = ch_ampresults_for_ampcombi
105106
.groupTuple()
106-
.join( ch_faa_for_ampcombi )
107-
.join( ch_gbk_for_ampcombi )
108-
.join( ch_interpro_for_ampcombi )
109-
.multiMap{
110-
input: [ it[0], it[1] ]
107+
.join(ch_faa_for_ampcombi)
108+
.join(ch_gbk_for_ampcombi)
109+
.join(ch_interpro_for_ampcombi)
110+
.multiMap {
111+
input: [it[0], it[1]]
111112
faa: it[2]
112113
gbk: it[3]
113-
interpro: it [4]
114+
interpro: it[4]
114115
}
115116

116117
// AMPCOMBI2::PARSETABLES
117-
if ( params.amp_ampcombi_db != null ) {
118-
AMPCOMBI2_PARSETABLES ( ch_input_for_ampcombi.input, ch_input_for_ampcombi.faa, ch_input_for_ampcombi.gbk, params.amp_ampcombi_db_id, params.amp_ampcombi_db, ch_input_for_ampcombi.interpro )
119-
} else {
120-
AMP_DATABASE_DOWNLOAD( params.amp_ampcombi_db_id )
121-
ch_versions = ch_versions.mix( AMP_DATABASE_DOWNLOAD.out.versions )
118+
if (params.amp_ampcombi_db != null) {
119+
AMPCOMBI2_PARSETABLES(ch_input_for_ampcombi.input, ch_input_for_ampcombi.faa, ch_input_for_ampcombi.gbk, params.amp_ampcombi_db_id, params.amp_ampcombi_db, ch_input_for_ampcombi.interpro)
120+
}
121+
else {
122+
AMP_DATABASE_DOWNLOAD(params.amp_ampcombi_db_id)
123+
ch_versions = ch_versions.mix(AMP_DATABASE_DOWNLOAD.out.versions)
122124
ch_ampcombi_input_db = AMP_DATABASE_DOWNLOAD.out.db
123-
AMPCOMBI2_PARSETABLES ( ch_input_for_ampcombi.input, ch_input_for_ampcombi.faa, ch_input_for_ampcombi.gbk, params.amp_ampcombi_db_id, ch_ampcombi_input_db, ch_input_for_ampcombi.interpro )
125+
AMPCOMBI2_PARSETABLES(ch_input_for_ampcombi.input, ch_input_for_ampcombi.faa, ch_input_for_ampcombi.gbk, params.amp_ampcombi_db_id, ch_ampcombi_input_db, ch_input_for_ampcombi.interpro)
124126
}
125-
ch_versions = ch_versions.mix( AMPCOMBI2_PARSETABLES.out.versions )
127+
ch_versions = ch_versions.mix(AMPCOMBI2_PARSETABLES.out.versions)
126128

127-
ch_ampcombi_summaries = AMPCOMBI2_PARSETABLES.out.tsv.map{ it[1] }.collect()
129+
ch_ampcombi_summaries = AMPCOMBI2_PARSETABLES.out.tsv.map { it[1] }.collect()
128130

129131
// AMPCOMBI2::COMPLETE
130132
ch_summary_count = ch_ampcombi_summaries.map { it.size() }.sum()
131133

132-
if ( ch_summary_count == 0 || ch_summary_count == 1 ) {
134+
if (ch_summary_count == 0 || ch_summary_count == 1) {
133135
log.warn("[nf-core/funcscan] AMPCOMBI2: ${ch_summary_count} file(s) passed. Skipping AMPCOMBI2_COMPLETE, AMPCOMBI2_CLUSTER, and TAXONOMY MERGING steps.")
134-
} else {
136+
}
137+
else {
135138
AMPCOMBI2_COMPLETE(ch_ampcombi_summaries)
136-
ch_versions = ch_versions.mix( AMPCOMBI2_COMPLETE.out.versions )
137-
ch_ampcombi_complete = AMPCOMBI2_COMPLETE.out.tsv
138-
.filter { file -> file.countLines() > 1 }
139+
ch_versions = ch_versions.mix(AMPCOMBI2_COMPLETE.out.versions)
140+
ch_ampcombi_complete = AMPCOMBI2_COMPLETE.out.tsv.filter { file -> file.countLines() > 1 }
139141
}
140142

141143
// AMPCOMBI2::CLUSTER
142-
if ( ch_ampcombi_complete != null ) {
143-
AMPCOMBI2_CLUSTER ( ch_ampcombi_complete )
144-
ch_versions = ch_versions.mix( AMPCOMBI2_CLUSTER.out.versions )
145-
} else {
144+
if (ch_ampcombi_complete != null) {
145+
AMPCOMBI2_CLUSTER(ch_ampcombi_complete)
146+
ch_versions = ch_versions.mix(AMPCOMBI2_CLUSTER.out.versions)
147+
}
148+
else {
146149
log.warn("[nf-core/funcscan] No AMP hits were found in the samples and so no clustering will be applied.")
147150
}
148151

149152
// MERGE_TAXONOMY
150-
if ( params.run_taxa_classification && ch_ampcombi_complete == null ) {
153+
if (params.run_taxa_classification && ch_ampcombi_complete == null) {
151154
log.warn("[nf-core/funcscan] No AMP hits were found in the samples, therefore no Taxonomy will be merged ")
152-
} else if ( params.run_taxa_classification && ch_ampcombi_complete != null ) {
153-
ch_mmseqs_taxonomy_list = tsvs.map{ it[1] }.collect()
155+
}
156+
else if (params.run_taxa_classification && ch_ampcombi_complete != null) {
157+
ch_mmseqs_taxonomy_list = tsvs.map { it[1] }.collect()
154158

155-
MERGE_TAXONOMY_AMPCOMBI( AMPCOMBI2_CLUSTER.out.cluster_tsv, ch_mmseqs_taxonomy_list )
156-
ch_versions = ch_versions.mix( MERGE_TAXONOMY_AMPCOMBI.out.versions )
159+
MERGE_TAXONOMY_AMPCOMBI(AMPCOMBI2_CLUSTER.out.cluster_tsv, ch_mmseqs_taxonomy_list)
160+
ch_versions = ch_versions.mix(MERGE_TAXONOMY_AMPCOMBI.out.versions)
157161

158-
ch_tabix_input = Channel.of( [ 'id':'ampcombi_complete_summary_taxonomy' ] )
159-
.combine( MERGE_TAXONOMY_AMPCOMBI.out.tsv )
162+
ch_tabix_input = channel.of(['id': 'ampcombi_complete_summary_taxonomy'])
163+
.combine(MERGE_TAXONOMY_AMPCOMBI.out.tsv)
160164

161-
AMP_TABIX_BGZIP( ch_tabix_input )
162-
ch_versions = ch_versions.mix( AMP_TABIX_BGZIP.out.versions )
165+
AMP_TABIX_BGZIP(ch_tabix_input)
166+
ch_versions = ch_versions.mix(AMP_TABIX_BGZIP.out.versions)
163167
}
164168

165169
emit:

subworkflows/local/annotation.nf

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,25 +2,25 @@
22
Run annotation tools
33
*/
44

5-
include { PROKKA } from '../../modules/nf-core/prokka/main'
6-
include { PRODIGAL } from '../../modules/nf-core/prodigal/main'
7-
include { PYRODIGAL } from '../../modules/nf-core/pyrodigal/main'
8-
include { BAKTA_BAKTADBDOWNLOAD } from '../../modules/nf-core/bakta/baktadbdownload/main'
9-
include { BAKTA_BAKTA } from '../../modules/nf-core/bakta/bakta/main'
10-
include { GUNZIP as GUNZIP_PRODIGAL_FNA } from '../../modules/nf-core/gunzip/main'
11-
include { GUNZIP as GUNZIP_PRODIGAL_FAA } from '../../modules/nf-core/gunzip/main'
12-
include { GUNZIP as GUNZIP_PRODIGAL_GBK } from '../../modules/nf-core/gunzip/main'
13-
include { GUNZIP as GUNZIP_PYRODIGAL_FNA } from '../../modules/nf-core/gunzip/main'
14-
include { GUNZIP as GUNZIP_PYRODIGAL_FAA } from '../../modules/nf-core/gunzip/main'
15-
include { GUNZIP as GUNZIP_PYRODIGAL_GBK } from '../../modules/nf-core/gunzip/main'
5+
include { PROKKA } from '../../modules/nf-core/prokka'
6+
include { PRODIGAL } from '../../modules/nf-core/prodigal'
7+
include { PYRODIGAL } from '../../modules/nf-core/pyrodigal'
8+
include { BAKTA_BAKTADBDOWNLOAD } from '../../modules/nf-core/bakta/baktadbdownload'
9+
include { BAKTA_BAKTA } from '../../modules/nf-core/bakta/bakta'
10+
include { GUNZIP as GUNZIP_PRODIGAL_FNA } from '../../modules/nf-core/gunzip'
11+
include { GUNZIP as GUNZIP_PRODIGAL_FAA } from '../../modules/nf-core/gunzip'
12+
include { GUNZIP as GUNZIP_PRODIGAL_GBK } from '../../modules/nf-core/gunzip'
13+
include { GUNZIP as GUNZIP_PYRODIGAL_FNA } from '../../modules/nf-core/gunzip'
14+
include { GUNZIP as GUNZIP_PYRODIGAL_FAA } from '../../modules/nf-core/gunzip'
15+
include { GUNZIP as GUNZIP_PYRODIGAL_GBK } from '../../modules/nf-core/gunzip'
1616

1717
workflow ANNOTATION {
1818
take:
1919
fasta // tuple val(meta), path(contigs)
2020

2121
main:
22-
ch_versions = Channel.empty()
23-
ch_multiqc_files = Channel.empty()
22+
ch_versions = channel.empty()
23+
ch_multiqc_files = channel.empty()
2424

2525
if (params.annotation_tool == "pyrodigal" || (params.annotation_tool == "prodigal" && params.run_bgc_screening == true && (!params.bgc_skip_antismash || !params.bgc_skip_deepbgc || !params.bgc_skip_gecco)) || (params.annotation_tool == "prodigal" && params.run_amp_screening == true)) {
2626
// Need to use Pyrodigal for most BGC tools and AMPcombi because Prodigal GBK annotation format is incompatible with them.
@@ -71,7 +71,7 @@ workflow ANNOTATION {
7171

7272
// BAKTA prepare download
7373
if (params.annotation_bakta_db) {
74-
ch_bakta_db = Channel.fromPath(params.annotation_bakta_db, checkIfExists: true)
74+
ch_bakta_db = channel.fromPath(params.annotation_bakta_db, checkIfExists: true)
7575
.first()
7676
}
7777
else {

0 commit comments

Comments
 (0)