Releases: CORE-Lab-Research/primerlab-genomic
Releases · CORE-Lab-Research/primerlab-genomic
Release list
v1.2.0 - Thermodynamic QC Fix, RAA Exo-Probe Architecture & Scientific Standardization
What's New in v1.2.0
🐛 Critical Thermodynamic Fixes
- ΔG Unit Normalization: Fixed unit mismatch in
reranking.pywhere rawprimer3-pyThermoAnalysisoutputs (cal/mol) were compared directly against kcal/mol thresholds, ensuring precise thermodynamic filtering. - Two-Stage Re-ranking: Fully enabled multi-candidate ranking and QC filtering across PCR, qPCR, and RAA workflows.
🧬 RAA Exo-Probe Architecture
- Automated Abasic (THF) Placement: Programmatic constraint-satisfaction algorithm enforcing TwistAmp Assay Design Manual rules (≥30 nt upstream, ≥15 nt downstream, dT-fluorophore/quencher coupling).
- Configurable Reaction Temperatures: RAA probe Tm floor is now dynamically configurable (
qc.probe_tm_min) for isothermal assays (37–42°C).
📚 Scientific References & Citations
- Integrated peer-reviewed thermodynamic literature (SantaLucia 1998/2004, Owczarzy 2004/2008, Untergasser 2012, Piepenburg 2006).
- Added standardized
CITATION.cfffor academic repository citations. - Added comprehensive in-silico benchmarking suite (
scripts/benchmark_validation.py).
🧪 Automated Test Suite
- 1,425 tests passing (100%).
v1.0.1 - Hotfix: Package structure
🐛 Hotfix Release
Fixed
- Added missing init.py files to core, config, and workflows packages
- Package now correctly includes all 132 source files
Upgrade
pip install --upgrade primerlab-genomic
v1.0.0 - Stable Release 🎉
🎉 PrimerLab v1.0.0 - Stable Release
First production-ready release of PrimerLab!
Highlights
- ✅ 1286+ passing tests with comprehensive coverage
- ✅ Full PCR Workflows: Standard PCR, qPCR, Nested PCR, Semi-Nested PCR
- ✅ Complete Analysis Suite: BLAST off-target, In-silico PCR, Dimer matrix
- ✅ Multiple Installation Options: Docker, Conda, Pip
- ✅ Comprehensive Documentation: API reference, CLI guide, tutorials
Installation
PyPI (Recommended)
pip install primerlab-genomicDocker
docker pull ghcr.io/engkinandatama/primerlab-genomic:1.0.0
docker run ghcr.io/engkinandatama/primerlab-genomic:1.0.0 --versionConda
git clone https://github.com/engkinandatama/primerlab-genomic.git
cd primerlab-genomic
conda env create -f environment.yml
conda activate primerlab
pip install -e .Quick Start
# PCR primer design
primerlab run pcr --config your_config.yaml
# qPCR with TaqMan probe
primerlab run qpcr --config qpcr_config.yaml
# Nested PCR
primerlab run nested --config nested_config.yamlWhat's New in v1.0.0
Added
- Production Status: Changed from Beta to Production/Stable
- Report Standardization: Unified report format across all workflows
- Documentation: Complete tutorials, API reference, configuration guide
- Docker Support: Multi-stage build with ViennaRNA and BLAST+ included
- PyPI Publishing: Automated release via GitHub Actions
Changed
- Version bump from 0.9.x to 1.0.0
- Updated all badges and documentation to reflect stable release
Documentation
Requirements
- Python 3.10+
- primer3-py >= 2.0.0
- biopython >= 1.80
- Optional: ViennaRNA, BLAST+ (included in Docker)
Full Changelog
See CHANGELOG.md
v0.1.0 Technical Preview
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
[0.1.0] - 2025-11-27
Added
- Core Framework:
- Modular 3-layer architecture (CLI, Workflows, Core).
- Unified YAML configuration system.
- Robust logging and progress tracking.
- PCR Workflow:
- Automated primer design using Primer3.
- Comprehensive QC (Tm, GC, Hairpin, Homodimer, Heterodimer).
- JSON and Markdown report generation.
- qPCR Workflow:
- TaqMan® probe design support.
- Primer-Probe compatibility checks.
- Efficiency estimation logic.
- API:
- Programmatic access via
primerlab.api.public. - Functions:
design_pcr_primers,design_qpcr_assays.
- Programmatic access via
- Testing:
- Full pytest suite covering PCR, qPCR, and API.
- CI/CD integration via GitHub Actions.
Fixed
- Critical bug in reverse primer coordinate calculation (Primer3 3' index vs 5' start).
- QC silent pass bug when ViennaRNA is missing (now raises explicit warnings).
- Timeout handling for stuck Primer3 processes.
Changed
- Switched to
pyproject.tomlfor modern packaging (PEP 621). - Updated documentation structure for long-term roadmap.