Skip to content

Rename to baskerville-tf; fix bugs, lint, and CI - #60

Merged
davek44 merged 7 commits into
mainfrom
rename-tf
Sep 30, 2026
Merged

davek44 merged 7 commits into
mainfrom
rename-tf

Conversation

@davek44

@davek44 davek44 commented Sep 30, 2026 •

Copy link
Copy Markdown
Collaborator

This repo is superseded by the PyTorch baskerville (currently calico/baskerville-torch), which will take over the baskerville name. This PR prepares the TF version to become calico/baskerville-tf.

Changes

  • Rename: the distribution is now baskerville-tf, and the code still imports as baskerville, so borzoi keeps working. The README, docs config and transfer tutorial point at calico/baskerville-tf. The README has a "superseded" banner.
  • Bug fixes (undefined names):
    • add the missing sys imports in blocks.py and trainer.py
    • remove the polyrelu/exp activation branches and the lambda transformer branch, which referenced classes and functions that don't exist
    • fix num_targets being used before it's defined in hound_eval_genes.py
  • Lint: ruff check passes clean, including on the newly merged hound_predvcf.py. It removes unused imports and variables and fixes == None and type comparisons.
  • CI:
    • ubuntu-latest, checkout v4, setup-python v5, and the workflows also run on pull requests
    • Python 3.10/3.11 (requires-python >= 3.10)
    • the lint workflow runs ruff; black is gone from CI and the dev extra, following main
    • the docs job installs from a new docs extra
  • Dependencies: pybedtools~=0.10.0 → ~=0.12.1. 0.10.0 exists only as source on PyPI, and its setup.py imports pkg_resources, which setuptools 81 removed, so pip install failed. 0.12.1 ships wheels and works with the pinned numpy 1.24.
    Also relaxed to minor-compatible, from relax #42: h5py, intervaltree, joblib, matplotlib, google-cloud-storage, tabulate, tqdm, pytest. The numeric stack, TensorFlow, and lint pins are unchanged.
  • hdwig: hound_data_read.py reads .hw/.w5 coverage through hdwig, an optional [hdwig] extra imported lazily. These are commits 0c563a2 and 8e54b46, which weren't on main yet.
  • Docs: the transfer tutorials (docs/transfer_human, docs/transfer_mouse, and the docs/transfer/transfer.md redirect) point at baskerville-tf.
  • Cleanup: the license classifier now says Apache, matching LICENSE. Deleted env_vars.sh (it had hardcoded user paths) and src/docs/requirements.txt (stale duplicate dependency pins).

Testing

Local unit tests (TF 2.15.1, Python 3.10): 29 passed, 2 skipped, the same as main. CI (lint and pytest on 3.10/3.11) passes on this branch.

After merge

  1. Rename this repo to calico/baskerville-tf, then re-run the docs workflow so the docs publish at calico.github.io/baskerville-tf.
  2. Merge Point at baskerville-tf; vendor the fold training script borzoi#65.
  3. Rename baskerville-torch to baskerville.

🤖 Generated with Claude Code

davek44 and others added 3 commits September 11, 2026 14:54
The TF mirror of the torch reader change.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
hdwig is internal and not on PyPI, so a hard dependency made `pip install
baskerville` unresolvable. Mirrors baskerville-torch: the import moves into
CovFace.__init__, and the pin becomes a `hdwig` extra on the git URL.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Superseded by the PyTorch baskerville, which takes over the name. The
distribution becomes baskerville-tf; the import name stays baskerville.

- Fix undefined names (missing sys imports, nonexistent PolyReLU/Exp/
  transformer_lambda branches, num_targets in hound_eval_genes).
- Ruff clean; black 23 formatting.
- CI: current runners/actions, run on PRs, Python 3.10/3.11, add ruff,
  docs deps via a docs extra.
- Apache license classifier; drop env_vars.sh and docs/requirements.txt.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
0.10.0 is sdist-only and its setup.py needs pkg_resources, removed in
setuptools 81, so pip install failed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
From #42: h5py, intervaltree, joblib, matplotlib, google-cloud-storage,
tabulate, tqdm, pytest. Numeric stack, TensorFlow, and lint pins unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@davek44 davek44 mentioned this pull request Sep 30, 2026
# Conflicts:
#	docs/transfer/transfer.md
#	pyproject.toml
@davek44
davek44 merged commit b06950b into main Sep 30, 2026
9 checks passed
@davek44
davek44 deleted the rename-tf branch September 30, 2026 22:21
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.

1 participant