Skip to content

Commit 7a60f4d

Browse files
authored
Update varvamp to version 1.3 (#7653)
* Update varvamp to version 1.3 * Tokenize profile info * Remove .lint_skip file * Fix failing test
1 parent 124108c commit 7a60f4d

7 files changed

Lines changed: 71 additions & 95 deletions

File tree

tools/varvamp/.lint_skip

Lines changed: 0 additions & 1 deletion
This file was deleted.

tools/varvamp/macros.xml

Lines changed: 11 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,19 @@
11
<?xml version="1.0"?>
22
<macros>
3-
<token name="@TOOL_VERSION@">1.2.2</token>
3+
<token name="@TOOL_VERSION@">1.3</token>
44
<token name="@VERSION_SUFFIX@">0</token>
5-
<xml name="main_parameters">
6-
<conditional name="main_params">
7-
<param name="specify_how" type="select" label="How to set the main parameters, threshold for consensus nucleotides and max ambiguous nts per primer?">
8-
<option value="set_n_ambig">Specify max ambiguous nts, estimate suitable threshold</option>
9-
<option value="set_threshold">Specify threshold, estimate max ambiguous nts</option>
10-
<option value="set_both">Specify values for both</option>
11-
</param>
12-
<when value="set_n_ambig">
13-
<param argument="--n-ambig" type="integer" min="0" value="2" label="Maximum number of ambiguous nucleotides per primer to be tolerated (default: 2)" />
14-
<yield />
15-
</when>
16-
<when value="set_threshold">
17-
<param argument="--threshold" type="float" min="0.0" max="1.0" value="0.8" label="Threshold for consensus nucleotides" />
18-
</when>
19-
<when value="set_both">
20-
<param argument="--threshold" type="float" min="0.0" max="1.0" value="0.8" label="Threshold for consensus nucleotides" />
21-
<param argument="--n-ambig" type="integer" min="0" value="2" label="Maximum number of ambiguous nucleotides per primer to be tolerated" />
22-
<yield />
23-
</when>
24-
</conditional>
5+
<token name="@PROFILE@">24.0</token>
6+
<xml name="main_parameters" token_threshold_default="" token_threshold_isoptional="true">
7+
<param argument="--threshold" type="float" min="0.0" max="1.0" value="@THRESHOLD_DEFAULT@" optional="@THRESHOLD_ISOPTIONAL@" label="Threshold for consensus nucleotides" />
8+
<param argument="--n-ambig" type="integer" min="0" value="2" label="Maximum number of ambiguous nucleotides per primer to be tolerated" />
259
</xml>
2610
<xml name="amplicon_length_restrictions">
2711
<param argument="--opt-length" type="integer" min="1" value="1000" label="Optimal length of the amplicons" />
2812
<param argument="--max-length" type="integer" min="1" value="1500" label="Maximal length of the amplicons" />
2913
</xml>
14+
<xml name="compatible_primers">
15+
<param argument="--compatible-primers" type="data" format="fasta" optional="true" label="Sequences of existing primers that newly designed ones should not form dimers with" help="Any sequences longer than 40 bases in this input will be ignored. A large number of sequences to consider can significantly increase runtime." />
16+
</xml>
3017
<xml name="blast_options">
3118
<conditional name="filter_blast_hits">
3219
<param name="choice" type="select" label="Avoid amplicons with off-target primer products?" help="This functionality requires a custom BLAST database of off-target sequences to check amplicon primer candidates against." >
@@ -83,7 +70,9 @@
8370
<param name="PRIMER_GC_END_max" type="integer" min="0" max="5" value="3" label="Maximal number of GCs among the 3'-terminal 5 bases of the probe" />
8471
<param name="PRIMER_MIN_3_WITHOUT_AMB" type="integer" min="0" value="3" label="Minimal length of 3'-end without ambiguous bases." />
8572
<param name="PRIMER_HAIRPIN" type="integer" min="0" value="47" label="Maximal melting temperature for secondary structures (hairpins) in primer" />
86-
<param name="PRIMER_MAX_DIMER_TMP" type="integer" min="0" value="47" label="Maximal melting temperature for primer dimers (homo- or heterodimers)" />
73+
<param name="PRIMER_MAX_DIMER_TMP" type="integer" min="0" value="35" label="Melting temperature threshold for primer dimer filtering; any oligos forming a structure with a lower energy are classified as dimer-forming." />
74+
<param name="PRIMER_MAX_DIMER_DELTAG" type="integer" value="-9000" label="Gibbs free energy threshold for primer dimer filtering; any oligos forming a structure with a lower energy are classified as dimer-forming." />
75+
<param name="END_OVERLAP" type="integer" min="0" value="5" label="Maximal allowed overlap in bases between the ends of any forward and reverse oligos; oligos with a higher overlap are always classified as dimer-forming." />
8776
</section>
8877
<yield />
8978
<section name="pcr_params" title="PCR Parameters" expanded="false">
@@ -134,4 +123,3 @@
134123
</param>
135124
</xml>
136125
</macros>
137-

tools/varvamp/test-data/test1.log

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
VARVAMP log
1+
VARVAMP log
22

33
MODE = single
44

@@ -20,7 +20,7 @@ PRIMER_HAIRPIN = 47
2020
PRIMER_MAX_POLYX = 4
2121
PRIMER_MAX_DINUC_REPEATS = 4
2222
PRIMER_GC_END = (1, 3)
23-
PRIMER_MAX_DIMER_TMP = 47
23+
PRIMER_MAX_DIMER_TMP = 35
2424
PRIMER_MIN_3_WITHOUT_AMB = 3
2525
PCR_MV_CONC = 100
2626
PCR_DV_CONC = 2
@@ -32,4 +32,4 @@ PRIMER_SIZE_PENALTY = 0.5
3232
PRIMER_MAX_BASE_PENALTY = 10
3333
PRIMER_3_PENALTY = (32, 16, 8, 4, 2)
3434
PRIMER_PERMUTATION_PENALTY = 0.1
35-
35+
END_OVERLAP = 5

tools/varvamp/test-data/test2.log

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
1-
VARVAMP log
1+
VARVAMP log
22

33
MODE = tiled
44

55
WARNING: your amplicon lengths might be to small. Consider increasing
6-
WARNING: your intended overlap is higher than half of your optimal length. This reduces how well varvamps will find overlapping amplicons. Consider decreasing.
6+
WARNING: your min overlap is lower than your optimal length / 2 - 2 * min primer length. This reduces how well varvamps will find overlapping amplicons. Consider decreasing.
77

88
ARG SETTINGS
99

1010
THRESHOLD = 0.6
1111
PRIMER_ALLOWED_N_AMB = 2
1212
AMPLICON_OPT_LENGTH = 150
1313
AMPLICON_MAX_LENGTH = 300
14-
MIN_OVERLAP = 76
14+
MIN_OVERLAP = 40
1515

1616
CONFIG SETTINGS
1717

@@ -22,7 +22,7 @@ PRIMER_HAIRPIN = 47
2222
PRIMER_MAX_POLYX = 4
2323
PRIMER_MAX_DINUC_REPEATS = 4
2424
PRIMER_GC_END = (1, 3)
25-
PRIMER_MAX_DIMER_TMP = 47
25+
PRIMER_MAX_DIMER_TMP = 35
2626
PRIMER_MIN_3_WITHOUT_AMB = 3
2727
PCR_MV_CONC = 100
2828
PCR_DV_CONC = 2
@@ -34,4 +34,4 @@ PRIMER_SIZE_PENALTY = 0.5
3434
PRIMER_MAX_BASE_PENALTY = 10
3535
PRIMER_3_PENALTY = (32, 16, 8, 4, 2)
3636
PRIMER_PERMUTATION_PENALTY = 0.1
37-
37+
END_OVERLAP = 5

tools/varvamp/test-data/test3.log

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
VARVAMP log
1+
VARVAMP log
22

33
MODE = qpcr
44

@@ -8,7 +8,7 @@ ARG SETTINGS
88
THRESHOLD = 0.7
99
PRIMER_ALLOWED_N_AMB = 1
1010
PROBE_ALLOWED_N_AMB = 1
11-
TEST_DELTAG_N_AMPLICONS = 180
11+
TEST_DELTAG_N_AMPLICONS = 10
1212
DELTAG_CUTOFF = -15
1313

1414
CONFIG SETTINGS
@@ -20,7 +20,7 @@ PRIMER_HAIRPIN = 47
2020
PRIMER_MAX_POLYX = 4
2121
PRIMER_MAX_DINUC_REPEATS = 4
2222
PRIMER_GC_END = (1, 3)
23-
PRIMER_MAX_DIMER_TMP = 47
23+
PRIMER_MAX_DIMER_TMP = 35
2424
PRIMER_MIN_3_WITHOUT_AMB = 3
2525
PCR_MV_CONC = 100
2626
PCR_DV_CONC = 2
@@ -32,6 +32,7 @@ PRIMER_SIZE_PENALTY = 0.5
3232
PRIMER_MAX_BASE_PENALTY = 10
3333
PRIMER_3_PENALTY = (32, 16, 8, 4, 2)
3434
PRIMER_PERMUTATION_PENALTY = 0.1
35+
END_OVERLAP = 5
3536
QPROBE_TMP = (64, 70, 67)
3637
QPROBE_SIZES = (20, 30, 25)
3738
QPROBE_GC_RANGE = (40, 80, 60)
@@ -42,4 +43,3 @@ QPROBE_DISTANCE = (4, 15)
4243
QAMPLICON_LENGTH = (70, 200)
4344
QAMPLICON_GC = (40, 60)
4445
QAMPLICON_DEL_CUTOFF = 4
45-

tools/varvamp/test-data/test4.log

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
VARVAMP log
1+
VARVAMP log
22

33
MODE = single
44

@@ -20,7 +20,7 @@ PRIMER_HAIRPIN = 47
2020
PRIMER_MAX_POLYX = 4
2121
PRIMER_MAX_DINUC_REPEATS = 4
2222
PRIMER_GC_END = (1, 3)
23-
PRIMER_MAX_DIMER_TMP = 47
23+
PRIMER_MAX_DIMER_TMP = 35
2424
PRIMER_MIN_3_WITHOUT_AMB = 3
2525
PCR_MV_CONC = 100.0
2626
PCR_DV_CONC = 2.0
@@ -32,4 +32,4 @@ PRIMER_SIZE_PENALTY = 0.5
3232
PRIMER_MAX_BASE_PENALTY = 10
3333
PRIMER_3_PENALTY = (32, 16, 8, 4, 2)
3434
PRIMER_PERMUTATION_PENALTY = 0.1
35-
35+
END_OVERLAP = 5

0 commit comments

Comments
 (0)