Skip to content

feat(blast): expose NCBI web BLAST algorithm parameters (#58)#229

Draft
Elarwei001 wants to merge 3 commits into
scverse:devfrom
Elarwei001:feature/blast-webapp-params-58
Draft

feat(blast): expose NCBI web BLAST algorithm parameters (#58)#229
Elarwei001 wants to merge 3 commits into
scverse:devfrom
Elarwei001:feature/blast-webapp-params-58

Conversation

@Elarwei001

Copy link
Copy Markdown
Contributor

Resolves #58

Summary

gget blast: Exposed the NCBI web BLAST "Algorithm parameters" so gget blast more fully matches the web app (resolves issue 58). New arguments word_size, gapcosts, matrix, nucl_reward, nucl_penalty, and perc_identity (CLI: -ws/--word_size, -gc/--gapcosts, -mx/--matrix, -nr/--nucl_reward, -np/--nucl_penalty, -pi/--perc_identity) are validated and forwarded to the BLAST URL API (WORD_SIZE, GAPCOSTS, MATRIX, NUCL_REWARD, NUCL_PENALTY, PERC_IDENT). All default to None (server default), so existing behavior is unchanged.

Testing

Unit tests added/extended in tests/test_blast.py with fixture entries in tests/fixtures/test_blast.json; run with pytest.

@codecov-commenter

codecov-commenter commented Jun 24, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 56.83%. Comparing base (e43a804) to head (6e32968).
⚠️ Report is 2 commits behind head on dev.

Additional details and impacted files
@@            Coverage Diff             @@
##              dev     #229      +/-   ##
==========================================
+ Coverage   56.70%   56.83%   +0.13%     
==========================================
  Files          29       29              
  Lines        9392     9423      +31     
==========================================
+ Hits         5326     5356      +30     
- Misses       4066     4067       +1     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@Elarwei001 Elarwei001 marked this pull request as draft June 25, 2026 03:44
@lauraluebbert lauraluebbert deleted the branch scverse:dev June 28, 2026 20:31
@lauraluebbert lauraluebbert reopened this Jun 28, 2026
Elarwei001 and others added 3 commits June 28, 2026 19:51
Add word_size, gapcosts, matrix, nucl_reward, nucl_penalty, and
perc_identity arguments to `gget blast` (Python API and CLI) so the tool
more fully matches the "Algorithm parameters" panel of the NCBI web BLAST
app. Values are validated and forwarded to the BLAST URL API (WORD_SIZE,
GAPCOSTS, MATRIX, NUCL_REWARD, NUCL_PENALTY, PERC_IDENT). All default to
None (server default), preserving existing behavior.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add unit tests for the invalid nucl_reward and nucl_penalty branches of
_build_algorithm_params so the helper is fully covered network-free.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@lauraluebbert lauraluebbert force-pushed the feature/blast-webapp-params-58 branch from 115ddea to 6e32968 Compare June 28, 2026 23:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants