primer3-org / primer3

Primer3 is a command line tool to select primers for polymerase chain reaction (PCR).
GNU General Public License v2.0
219 stars 63 forks source link

PRIMER_LOWERCASE_MASKING=1 has no effect #13

Closed ghost closed 5 years ago

ghost commented 5 years ago

As title says, even when lowercase masking is set in the settings file it has no affect on the primers returned. Many that are returned are entirely within a lowercase masked region.

Edit: this only seems to happen in the command-line program (primer3-2.4.0). Using the same settings file for both the web and command-line version of primer3 returns different results. (The web version works correctly but the command-line version seems to ignore the PRIMER_LOWERCASE_MASKING flag)

triinuk commented 5 years ago

Please, provide us input file with input sequence and with flags. And give the Primer3 web-address that you used.

ghost commented 5 years ago

http://primer3.ut.ee/ was the web address I used. First I entered settings on the web tool and downloaded them to LOWERCASE_MASKING_SETTINGS.txt. All the flags are default except for Lowercase Masking. I used this input: TEST_SEQUENCE_INPUT.txt for both web and command-line. In the web version I get the following result: WEB_OUTPUT.txt which seems to have had the LOWERCASE_MASKING flag successfully applied. The command line version though (run with the command 'primer3_core --p3_settings_file="LOWERCASE_MASKING_SETTINGS.txt" < "TEST_SEQUENCE_INPUT.txt"') gives the output: COMMAND_LINE_OUTPUT.txt. The top primers don't match, and the command line version gives two primers that are entirely lowercase. I've confirmed that changing other flags in the command-line settings file changes the output, it seems to be only the LOWERCASE_MASKING that's being ignored.

untergasser commented 5 years ago

You are right, this is an issue. If PRIMER_MASK_TEMPLATE=0 was set, it overwrote the lowercase masking and set it also to 0. Of course, this is not how it should work. Thank you for reporting this.

It was fixed in this commit: https://github.com/primer3-org/primer3/commit/25a4ab22298a0195079e3a9c004c02a49d0262ff

Best, Andreas