Skip to content

Releases: ribokit/Primerize

v1.6.5

12 Dec 21:33
4488e9c
Compare
Choose a tag to compare

Version bump for repository update of License to MIT, fully open source, and public Github repository. No code changes.

Transfer to Ribokit

23 Jun 07:03
Compare
Choose a tag to compare

Version bump for repository ownership transfer, no code changes, only docs updates.

Check for base-pair mismatch and UNION mode

19 Dec 04:11
Compare
Choose a tag to compare
  • Added checking and warning for non-Watson-Crick base-pair in Primerize_3D jobs
  • Changed default of DIFF mode to UNION mode in Primerize_3D jobs: helices shared across all input structures are now included as negative controls in experiments
  • Restructured codebase files

Add Primerize_Custom class

11 Oct 02:41
Compare
Choose a tag to compare
  • Add Primerize_Custom class for user specified list of constructs to make.
  • Improve Construct_List and Mutation classes with merge() method, and type checking. Initiate Construct_List with 'WT' as first.
  • Bug fix _mutate_primer() now use Construct_List, instead of calling get_mutation() again. Add mutation validity and out-of-bound checking.

Fix str_2_bps multi-mutation bug

07 Jun 01:45
Compare
Choose a tag to compare

Now parses secondary structure helix-wise, and then to base-pairs. This prevents from reshuffling of base-pairs from multiple structures and the resulting disarray of multi-mutation (e.g. when N_mutations = 2). The helix-wise algorithm groups base-pairs by helix, avoiding cross-helix mutants.

Also added new library for Mutation/Rescue: "Stable", which mutates all base-pairs to G:C pairs.

Unit Test and Singleton Class

19 May 00:15
Compare
Choose a tag to compare
  • Added unit tests for entire module.
  • Added Singleton Class, and used for Primerize_1D, Primerize_2D, Primerize_3D, and Nearest_Neighbor_Parameter classes. Only one instance allowed, and already initialized under primerize namespace.
  • Moved has() to __contains__() for Plate_96Well, Mutation, and Construct_List classes. Use in from now on.
  • Added strict filter for coords using RegExp.
  • Used lambda function together with map and filter.

Drop numba dependency

13 May 02:45
Compare
Choose a tag to compare

Drop hard requirement for using numba @jit decorator on dynamic programming loop optimization. It now becomes an optional dependency for better run speed. If numba is installed, it will be detected and enabled. This is to reduce the complicated overhead for installing primerize for first-time users.

P.S. Thanks to Caleb Geniesse and Ann Kladwang for testing!

Sphinx Documentation

06 May 05:12
Compare
Choose a tag to compare

Added docstring for key classes and methods to generate Sphinx documentations, hosted on ribokit.github.io
Marked certain functions as private, and fixed import for those.

Illustration for Primerize_3D

28 Apr 01:50
Compare
Choose a tag to compare
  • Added string illustration of sequence regions and base-pairs under investigation with highlighting for Primerize_3D results.
  • Added base-pair connectivity table (bps) to Primerize_3D results.

Stable Primerize_3D designs

18 Mar 04:10
Compare
Choose a tag to compare
  • Used Mutation for plate well tag; add tag to Plate;
  • Highlighted color WT primer not just by name, but compare to ref_primers;
  • Fixed Primerize_3D diff_bps when only 1 input structure;
  • Fixed sequence unicode error;
  • Fixed bug of eq for Mutation;
  • Used init_dict for Design_* classes init; added iter for Mutation and Construct_List; added color echo for Mutation;
  • Restructred code base .py files.