-
Notifications
You must be signed in to change notification settings - Fork 1
Release v0.2.0 - Production Ready #7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
β¦nd unified test data structure - Add security module with path validation and input sanitization - Implement comprehensive testing framework (property-based, benchmarks, integration, mutation testing) - Create unified test data structure with cross-format consistency - Add enhanced configuration system with multi-format support - Reorganize test data into datasets/ with legacy/ preservation - Update all parsers and writers for improved performance and validation - Add extensive documentation including CLAUDE.md ultrathink guide - Implement 226 total tests with 225 passing for robust code coverage π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Comprehensive release preparation including documentation reorganization, CI optimization, validation framework, and critical bug fixes. ## Documentation Improvements ### Reorganized Structure - Created docs/technical/validation/ with comprehensive validation reports - Moved validation documentation from root to organized location - Simplified README.md (262β170 lines, user-focused) - Updated CLAUDE.md with v0.2.0 features and metrics - Enhanced docs/README.md with validation section ### Version Updates - Updated all version references to 0.2.0 - Finalized CHANGELOG.md with complete v0.2.0 feature list - Updated CITATION.cff metadata ## CI/CD Optimization - Added fast feedback job (quick-test) running ubuntu+3.11 first - Full test matrix (5 jobs) now runs only if quick-test passes - Removed duplicate testing (excluded ubuntu+3.11 from matrix) - Fixed security check that was hiding failures (removed || true) - Lint job runs in parallel for faster feedback ## Test Fixes (4 failing tests β all passing) ### Fixed STS Format Validation (3 tests) - Updated test_all_parsers.py to accept both 3-column and 4-column STS formats - v0.2.0 enhancement: auto-detection of SIZE column when available - Maintains backward compatibility with 3-column format ### Fixed Header Validation (1 test) - Enhanced STS parser to validate header column names - Now properly rejects invalid headers (e.g., "NAME\tSEQ1\tSEQ2") - Validates presence of NAME/ID field and FORWARD/REVERSE keywords ## File Cleanup - Removed 3 obsolete .old workflow files - Added logo.png to .gitignore - Deleted SESSION_SUMMARY.md (temporary session notes) ## New Features (from previous work, now committed) ### Alignment Functionality - Added align.py with high-level alignment API - Implemented 4 alignment providers: - BLAST (fast alignment) - Exonerate (sensitive alignment) - merPCR (modern Python, recommended) - me-PCR (legacy C tool) - 36 comprehensive alignment tests ### Validation Framework - Created tests/validation/ with 430-line validator - Added report_generator.py for multi-format reports - 23 real-data tests with 100% pass rate - Real tool integration testing (BLAST, Exonerate, merPCR) ### Enhanced STS Format Support - Auto-detection of 3 vs 4-column formats - Header/headerless file support - Compatible with me-PCR and merPCR output ## Test Results Before: 632 passed, 4 failed After: 636 passed, 0 failed β All 611 core tests + 23 validation tests + 2 new tests passing. ## Breaking Changes None in this commit - all changes are backward compatible. Legacy config removal was in previous commits. π€ Generated with Claude Code https://claude.com/claude-code Co-Authored-By: Claude <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Release v0.2.0 - Production Ready
This release includes comprehensive enhancements, validation, and documentation improvements for PrePrimer.
π― Highlights
π¦ What's New
Alignment Functionality
align_primers()function for primer-to-reference alignmentpreprimer align --primers primers.bed --reference genome.fasta --aligner merpcrEnhanced STS Format Support
Validation Framework
docs/technical/validation/Documentation Improvements
docs/technical/validation/README.md- Validation hubdocs/technical/validation/real-data-testing.md- Comprehensive test reportdocs/technical/validation/v0.2.0-validation.md- Release validationCI/CD Optimization
quick-testjob (ubuntu+3.11) runs first (~2-3 min)|| truethat was hiding failureslintjob runs in parallel withquick-testπ Bug Fixes
Test Fixes (4 failing tests β all passing)
STS Format Validation (3 tests fixed)
test_all_parsers.pyto accept both 3-column and 4-column STS formatsHeader Validation (1 test fixed)
π Test Results
Before: 632 passed, 4 failed
After: 636 passed, 0 failed β
π§Ή Cleanup
.oldworkflow fileslogo.pngto.gitignore(989KB unused file)SESSION_SUMMARY.md(temporary session notes)None - All changes are backward compatible.
The legacy configuration removal (
PrePrimerConfigβEnhancedConfig) was in previous commits. See CHANGELOG.md for migration guide.π Complete Details
See CHANGELOG.md for complete version history and upgrade guide.
β Validation Status
v0.2.0 is production-ready! π
π€ Generated with Claude Code