Skip to content

Prepare PySnpTools 1.0.1 with robust downloads and Python 3.14 HDF5 bounds - #23

Merged
CarlKCarlK merged 2 commits into
mainfrom
release-1.0.1
Nov 14, 2026
Merged

CarlKCarlK merged 2 commits into
mainfrom
release-1.0.1

Conversation

@CarlKCarlK

@CarlKCarlK CarlKCarlK commented Nov 14, 2026 •

Copy link
Copy Markdown
Contributor

PySnpTools 1.0.1 restores reliable sample downloads and corrects the sample catalog against its existing immutable source commit.

  • Include the merged retry/timeout/atomic-write fix; close handled HTTP error responses and test their cleanup.
  • Correct 69 stale hashes. The URL, commit pin, file list, and fixture bytes remain unchanged. The original hashes matched an older snapshot but were left behind as the source pin advanced.
  • Add regression downloads comparing generated genotypes, IDs, and coordinates with the seeded generator, and a distributed piece with independently hashed metadata. Bed's documented PLINK-zero-to-NaN representation is checked explicitly. Both tests failed with the original catalog.
  • Require h5py >=3.15 on Python >=3.14, preserving earlier Python requirements.
  • Add monthly uv updates and portable attribution guidance in AGENTS.md; remove the redundant CLAUDE.md stub.

Validation completed: all 244 downloaded catalog entries pass integrity checks; all 229 main-catalog files match their pinned Git blobs byte for byte. Direct and source-derived wheels match, distribution metadata passes, Ruff passes, and the corrected wheel and sdist pass download/retry regression tests in isolated Python 3.11, 3.14, and 3.15 environments outside the checkout. The earlier full core suites, optional BGEN suites, strict Sphinx builds, and tutorial/paper notebooks passed; notebook text outputs were unchanged. The final 741-test canonical suite passed on Python 3.14; the full platform matrix is running on this updated head.

See specs/SAMPLE_MANIFEST_INTEGRITY_SPEC.md for the history and data-consistency evidence. No dependency versions were upgraded by the lockfile update. No release tag has been pushed; PyPI publication remains a separate maintainer step after final CI succeeds.

@CarlKCarlK
CarlKCarlK merged commit 8c68afc into main Nov 14, 2026
39 checks passed
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