Changelog

Version 0.1: March 3, 2014

  • Initial release

Version 0.2: April 23, 2014

  • Corrected installation issue (replace inplace with build_lib in setup.cfg)

  • Documentation updates

Version 0.2.1 April 24, 2014

  • C API path fix

Version 0.2.2: June 3, 2014

  • Corrected issue with parsing “SEQUENCE_PRIMER_PAIR_OK_REGION_LIST” as a python sequence object. “SEQUENCE_PRIMER_PAIR_OK_REGION_LIST” should now be provided as a list of lists or tuple of tuples (or a combination of the two). -1 should be used in the case where an index is ommitted. For example:

    Primer3 boulder IO input:   100,50,300,50 ; 900,60,,
    Primer3 python input:       [[100,50,300,50], [900,60,-1,-1]]
    

Version 0.2.3: June 5, 2014

  • Corrected several potential sources of memory leaks in the C API design bindings.

Version 0.2.4: June 17, 2014

  • Addressed bug in mispriming/mishybridization library parsing in which memory for the global parameters struct was not being properly allocated

Version 0.2.5: August 7, 2014

  • Fixed incorrect tm/salt correction method lookups in calcTm function in both bindings and wrappers

Version 0.3.0: August 12, 2014

  • Fixed memory leak in global param struct allocation for design bindings

  • Integrated C API patch code into libprimer3

  • Refactored libprimer3 to pure C (khash lib is now used in lieu of hashmap)

  • Corrected many minor compiler warnings in libprimer3

  • (POTENTIAL BREAKING CHANGE) Refactored thermodynamic alignment bindings to always return a thermoresult namedtuple (in the previous embodiment, if no structure was found, the return value was None)

Version 0.3.1: August 13, 2014

  • Improved support for sequences stored in Bytes objects

  • Renamed getThermoParams to loadThermoParams for clarity

Version 0.4.0: November 25, 2014

  • Several major bug fixes in the design bindings pipeline

  • Better testing framework for the design bindings

  • New documentation system

  • Better under-the-hood thermodynamic analysis abstraction

Version 0.4.1: November 28, 2014

  • Better documentation regarding max. seq. lengths for thermo. calcs

  • calcHairpin, calcHomodimer, calcHeterodimer, and calcEndStability now raise `RuntimeError`s as appropriate

Version 0.4.2: September 18, 2015

  • Added misprimingCheck function to primer3/thermoanalysis.pyx

  • Corrected unclear syntax in C API code

Version 0.4.3 December 1, 2015

  • Fixed compilation errors, unicode-related build problems

  • Fixed memory allocation / deallocation issues with mispriming libraries

Version 0.5.0 February 25, 2016

  • Update libprimer3 to version 2.3.7

  • Better test coverage for low level bindings

Version 0.5.1 May 25, 2016

  • Update thal.c to incorporate traceback fix from Primer3 dev team (thanks Triinu)

Version 0.5.2 May 1, 2017

  • Fixed issue where pa->num_intervals was not properly set via the bindings

  • Fixed typo that caused incorrect output for PRIMER_PAIR_EXPLAIN

Version 0.5.3 May 6, 2017

  • Fixed improper assignment of “PRIMER_PAIR_MAX_COMPL_END_TH” during design arg parsing

Version 0.5.4 June 20, 2017

  • Migration of Cython extension build process to build_clib to remove Cython as a runtime requirement for setup.py (thanks to @tdsmith)

Version 0.5.5 October 30, 2017

  • Remove unicode character from README.rst

Version 0.5.6 July 12, 2018

  • Fixes to primerdesign_helpers.c C macro errors.

  • Added the todict() methods in thermoanalysis.pyx for serialization help for tests there

Version 0.5.7 August 10, 2018

  • Changes to upper case sequences in seqtm() in oligotm.c because calls to

ThermoAnalysis.calcTm returned 0.0 for strings with lower case letters - disabled existing tests on Windows due to incompatibility with process and memory calls. TODO: create more tests for ThermoAnalysis

Version 0.6.0 May 10, 2019

  • Added functionality for bindings to expose the ASCII representation of computed dimer and hairpin structures

Version 0.6.1 May 9, 2020

  • Fixed issue related to absolute paths populated in SOURCES.txt of sdist

  • Clean up in setup.py and better Windows build support