Skip to content

Add biopython to requirements.txt (CI fix)#145

Closed
iskandr wants to merge 1 commit intomasterfrom
fix-biopython-dependency
Closed

Add biopython to requirements.txt (CI fix)#145
iskandr wants to merge 1 commit intomasterfrom
fix-biopython-dependency

Conversation

@iskandr
Copy link
Copy Markdown
Contributor

@iskandr iskandr commented Apr 24, 2026

Summary

`topiary.self_proteome` imports `from Bio.Align.substitution_matrices import load` for BLOSUM62 scoring (added in v5.9.0, #138), but `biopython` was never added to `requirements.txt`. As a result, `pip install -e .` in CI does not pull it in, and any PR that exercises the `test_self_proteome.py` suite fails with:

```
FAILED tests/test_self_proteome.py::TestNearest::test_exact_match_distance_zero - ModuleNotFoundError: No module named 'Bio'
... (17 failures)
```

This is blocking CI on PRs #141, #142, #143, #144.

Change

Add `biopython>=1.80` to `requirements.txt`. The 1.80 floor matches the `substitution_matrices` API surface and is conservative — any modern install will satisfy it.

No version bump; this is a declared-dependency correction, not a behavior change.

Test plan

  • Local: `import Bio; Bio.version` → 1.84
  • CI green on this branch after push

topiary.self_proteome imports from Bio.Align.substitution_matrices for
BLOSUM62 scoring (added in v5.9.0), but biopython was never declared
as a dependency — CI on any PR that triggers the self_proteome tests
fails with ModuleNotFoundError: No module named 'Bio'.
@iskandr
Copy link
Copy Markdown
Contributor Author

iskandr commented Apr 24, 2026

Closing — alternative approach coming (biopython should not be a dep).

@iskandr iskandr closed this Apr 24, 2026
@iskandr iskandr deleted the fix-biopython-dependency branch April 24, 2026 18:07
@coveralls
Copy link
Copy Markdown

Coverage Status

coverage: 88.402%. remained the same — fix-biopython-dependency into master

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.

2 participants