MFEprimer 3.0 Versions Save

PCR Primer Quality Control

v3.3.1

2 months ago

New Feature

Added -T, --maxTm option to mfeprimer and mfeprimer spec as requested in issue #24. The default value is set to 100 to prevent any unexpected outcomes for users who missed this information. The web server will implement this feature after it has been tested in the command-line version for a period of time.

Bug Fixes

  1. Resolved an issue related to the binding of sequences containing invalid bases.
  2. Addressed and resolved an issue concerning amplicons that presented dangling ends, as highlighted in issue #23.

v3.3.0

7 months ago

New feature

In case of multiplex PCR for next-generation sequencing (e.g., tNGS), add three flags for output amplicons in fasta format.

MFEprimer SE PE 示意图

For input file, support two ways:

  1. a file with primers in fasta format: all primers in this file will be treated by mfeprimer as multiplex PCR reaction.
  2. a file with primers in tsv format: each line has at least three items: name forward_seq reverse_seq. Items since 4th will be ignored and no space are allowed in name. Primer paires in each line will be treated by mfeprimer as a normal two primer pair PCR reaction.

For output file, support two ways:

  1. traditional text format.
  2. output in a tsv format. #17

Improvement

compiled binaries for multiple platforms. #21 #20

v3.2.7

1 year ago

bug fixed

mfeprimer dimer: fixed a bug when calculating delta G values. thanks https://github.com/quwubin/MFEprimer-3.0/issues/15#issue-1241966379.

broken usage update

remove -t option for mfeprimer dimer, because the Tm for short dimers are not accurate and I recommended use delta G or Score to filter the dimers.

usage

> mfeprimer dimer -h
analysis primer dimers

Usage:
  mfeprimer dimer [flags]

Flags:
  -i, --in string      [*] a file contains primer sequences in fasta format
  -o, --out string     output file name, e.g., dimer.txt
  -d, --dg float       delta G cutoff value to filter the dimers
  -s, --score int      score cutoff to trigger a dimer (default 5)
  -m, --mismatch int   allowed max mismatches for a dimer (default 2)
  -p, --primer         only output dimers with 3'end bind
      --mono float     concentration of monovalent cations [mM] (default 50)
      --diva float     concentration of divalent cations [mM] (default 1.5)
      --dntp float     concentration of dNTPs [mM] (default 0.25)
      --oligo float    concentration of annealing oligos [nM] (default 50)
  -j, --json           output in json format
  -c, --cpu int        cpu number to use (default 2)
  -h, --help           help for dimer

mfeprimer dimer -i primer.fa -o dimer.txt -d -3.5 -s 6 -m 0 -p

a more strict settings

mfeprimer dimer -i primer.fa -o dimer.txt -d -3.0 -s 5 -m 1 -p

don't allow any dimers

mfeprimer dimer -i primer.fa -o dimer.txt -d -3.0 -s 5 -m 1

v3.2.6

2 years ago

Bug fixed

There is a step to randomly remove duplication amplicons, which defined by the same start and the same end position. However, this will result to different outputs when two different primers has the same binding sites.

Enhancement

add a sub-command split-fasta to split larget database, e.g., nt.fa into smaller ones.

>  mfeprimer split-fasta -h

split fasta into N parts with almost equal size

usage:

# to split big db nt.fa into several parts with each of 1G in size, the output should
# be like: nt.1.fa, nt.2.fa

mfeprimer split-fasta nt.fa -s 1000000000 -p nt

Usage:
  mfeprimer split-fasta [flags]

Flags:
  -s, --size int        the size of each part (default 1000000000)
  -p, --prefix string   prefix of the output (default "p")
  -P, --suffix string   suffix of the output (default "fa")
  -h, --help            help for split-fasta
(base) v93 ➜  mfeprimer index -h
index fasta file for mfeprimer

Usage:
  mfeprimer index [flags]

Flags:
  -i, --in string       [*] database to be formated in fasta format
  -k, --kvalue int      k value for format (default 9)
  -c, --cpu int         cpu number to use (default 16)
  -m, --memory float    memory percent to use, e.g., 70 for 70% (default 70)
  -s, --chunkSize int   chunk size for parallel indexing (default 5000000)
  -f, --force           reindex anyway even already index
  -h, --help            help for index

Pre-relase of other sub-commands

There are also two other sub-commands (ed and search) available, but more tests needed and I will describe the usage in the next relase.

v3.2.5

2 years ago

Improvement

flat "--cpu/-c" now can control the max number of cores.

v3.2.4

2 years ago

Bug fixed

mfeprimer dimer: A little output bug has been fixed, thanks https://github.com/quwubin/MFEprimer-3.0/issues/11#issue-1016330332

v3.2.3

2 years ago

Improvement:

mfeprimer hairpin has an option -j for json out, require -o. Thanks https://github.com/quwubin/MFEprimer-3.0/issues/10#issue-974688189.

v3.2.2

3 years ago

Improvement:

  1. dimer add -j for json out.
  2. add --parallel (-p) for parallel, don't set for primers > 100, default is false.
  3. fix some bugs.

v3.2.1

3 years ago

Improvement

  1. add --virus to check whether these primers can amplify all the variants of a virus database, e.g., SARS-CoV-2 genomes;
  2. add -f, --fasta to output amplicons in FASTA format.
  3. Some bugs fixed.

v3.2.0

4 years ago

Improvement

  1. With option "-o" and "-j", this version can output both "txt" and "json" files without run two times.
  2. With option "-o" and "-g", this version can compress the result file and write to the output file with ".gz" suffix. I found some mfeprimer result file can be large than 1 GB. So, compress can reduce the usage of disk.