Skip to content

V0.2.1 - #11

Merged
ManuelTgn merged 4 commits into
mainfrom
v0.2.1
May 12, 2026
Merged

ManuelTgn merged 4 commits into
mainfrom
v0.2.1

Conversation

@ManuelTgn

Copy link
Copy Markdown
Member

This PR prepares the v0.2.1 release and introduces major improvements to packaging, installation, scoring integration, documentation, and overall usability.

Highlights

Packaging and Distribution Improvements

  • Improved Python packaging configuration for PyPI and wheel compatibility

  • Added support for shipping external scoring resources and auxiliary scripts directly within the package

  • Included bundled resources for:

    • CRISPRon
    • sgDesigner
    • Azimuth
    • Elevation
    • DeepCpf1
    • CFD score models
  • Added proper package-data configuration in pyproject.toml

  • Improved MANIFEST.in handling for non-Python assets

  • Enabled safer installation behavior with:

    • include-package-data = true
    • zip-safe = false

CRISPRon Integration

  • Added bundled CRISPRon scoring resources and scripts
  • Fixed runtime bug for TensorFlow-based CRISPRon inference
  • Added support for CPU-only execution workflows
  • Improved handling of external executables and model resources

sgDesigner Integration

  • Added bundled:

    • sgDesigner.pl
    • format_features_25.pm
  • Improved packaging and runtime accessibility of Perl-based scoring utilities

Documentation

  • Major expansion and restructuring of the README

  • Added:

    • detailed installation instructions
    • PyPI installation workflow
    • Conda/Mamba installation guidance

CLI and Workflow Improvements

  • Improved command-line usability and help messages

  • Improved support for:

    • variant-aware guide design
    • haplotype-aware workflows
    • graphical reporting
    • CRISPRitz off-target integration
  • Improved handling of external dependencies and isolated environments

ManuelTgn added 4 commits May 12, 2026 18:29
Add packaging entries to include crispron/bin scripts and sgdesigner assets in distributions. MANIFEST.in now recursively includes src/crisprhawk/scores/crispron/bin and src/crisprhawk/scores/sgdesigner, and pyproject.toml maps package data for crisprhawk.scores.crispron.bin (sh, py) and crisprhawk.scores.sgdesigner (all files) so these resources are bundled when building the package.
Export CUDA_VISIBLE_DEVICES="" in the CRISPRon.sh wrapper to prevent GPU usage. Add descriptive docstrings and argument/return/error descriptions to crispron.py helper functions: _find_output_csv, _load_crispron_scores, _generate_crispron_tmp_data, _write_guides_fasta, and compute_crispron_score. Also include minor formatting/whitespace tweaks. No behavioral changes to scoring logic aside from environment variable handling.
Add detailed docstrings and usage notes to configuration, utils, scoring and sgDesigner modules to improve clarity and maintainability. Key changes: document Config class and its load/validate methods; add validation/prepare docs for CrisprOn and sgDesigner configs; document config_utils helpers (set_command, create_mamba_env, model download/extract helpers, etc.); add docstrings for scoring wrappers (crispron, sgdesigner) and several scoring pipeline functions; add module-level descriptions and minor cleanup in sgdesigner (removed an unused _init_environ helper). These are primarily documentation and small tidy-ups with no intended behavioral changes.
Clean up whitespace and minor formatting in scoring-related modules. Fixed trailing spaces in docstrings and comments and a stray extra space in a tempfile.TemporaryDirectory call across:
- src/crisprhawk/scores/crisprhawk_scores.py
- src/crisprhawk/scores/crispron/crispron.py
- src/crisprhawk/scores/sgdesigner/sgdesigner.py
- src/crisprhawk/scoring.py

These are non-functional style changes to improve consistency and reduce diff noise; no behavioral changes intended.
@ManuelTgn ManuelTgn self-assigned this May 12, 2026
@ManuelTgn ManuelTgn added bug Something isn't working documentation Improvements or additions to documentation enhancement New feature or request v0.2.1 labels May 12, 2026
@ManuelTgn
ManuelTgn merged commit 2964dc2 into main May 12, 2026
3 checks passed
@ManuelTgn
ManuelTgn deleted the v0.2.1 branch May 12, 2026 16:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working documentation Improvements or additions to documentation enhancement New feature or request v0.2.1

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant