Skip to content

Conversation

@rly
Copy link
Contributor

@rly rly commented Dec 18, 2025

Prepare for release of HDMF 4.2.0

Before merging:

  • Make sure all PRs to be included in this release have been merged to dev.
  • Major and minor releases: Update dependency ranges in pyproject.toml as needed.
  • Check legal file dates and information in Legal.txt, license.txt, README.rst, docs/source/conf.py,
    and any other locations as needed
  • Update pyproject.toml as needed
  • Update README.rst as needed
  • Update src/hdmf/common/hdmf-common-schema submodule as needed. Check the version number and commit SHA
    manually. Make sure we are using the latest release and not the latest commit on the main branch.
  • Update changelog (set release date) in CHANGELOG.md and any other docs as needed
  • Run tests locally including gallery tests, and inspect all warnings and outputs
    (pytest && python test_gallery.py). Try to remove all warnings.
  • Run PyNWB tests locally including gallery and validation tests, and inspect all warnings and outputs
    (cd pynwb; git checkout dev; git pull; python test.py -v > out.txt 2>&1)
  • Run HDMF-Zarr tests locally including gallery and validation tests, and inspect all warnings and outputs
    (cd hdmf-zarr; git checkout dev; git pull; pytest && python test_gallery.py)
  • Test docs locally and inspect all warnings and outputs cd docs; make clean && make html
  • After pushing this branch to GitHub, manually trigger the "Run all tests" GitHub Actions workflow on this
    branch by going to https://github.com/hdmf-dev/hdmf/actions/workflows/run_all_tests.yml, selecting
    "Run workflow" on the right, selecting this branch, and clicking "Run workflow". Make sure all tests pass.
  • Check that the readthedocs build for this PR succeeds (see the PR check)

After merging:

  1. Create release by following steps in docs/source/make_a_release.rst or use alias git pypi-release [tag] if set up
  2. After the CI bot creates the new release (wait ~10 min), update the release notes on the
    GitHub releases page with the changelog
  3. Check that the readthedocs "stable" build runs and succeeds
  4. Either monitor conda-forge/hdmf-feedstock for the
    regro-cf-autotick-bot bot to create a PR updating the version of HDMF to the latest PyPI release, usually within
    24 hours of release, or manually create a PR updating recipe/meta.yaml with the latest version number
    and SHA256 retrieved from PyPI > HDMF > Download Files > View hashes for the .tar.gz file. Re-render and
    update the dependencies as needed.

@codecov
Copy link

codecov bot commented Dec 18, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 92.44%. Comparing base (693621d) to head (0f6ae76).
⚠️ Report is 1 commits behind head on dev.

Additional details and impacted files
@@           Coverage Diff           @@
##              dev    #1362   +/-   ##
=======================================
  Coverage   92.44%   92.44%           
=======================================
  Files          42       42           
  Lines        9747     9747           
  Branches     1979     1979           
=======================================
  Hits         9011     9011           
  Misses        462      462           
  Partials      274      274           

☔ View full report in Codecov by Sentry.
📢 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.

@rly
Copy link
Contributor Author

rly commented Dec 18, 2025

I was hoping to get other PRs merged before a 4.2.0 release but the unreleased fix on string validation is blocking a project, so we would like to get it and the other changes currently on dev released sooner.

@rly rly marked this pull request as ready for review December 18, 2025 18:22
@rly rly requested a review from oruebel December 18, 2025 18:23
@rly rly enabled auto-merge (squash) December 18, 2025 18:23
@rly
Copy link
Contributor Author

rly commented Dec 18, 2025

NOTE: In the run all tests workflow, the tests that install optional dependencies fail due to an incompatibility between sssom, a dependency of oaklib, and pandas==3.0.0rc0. I created an issue there: mapping-commons/sssom-py#637

@rly rly merged commit af41ee8 into dev Dec 18, 2025
54 of 60 checks passed
@rly rly deleted the release/4.2.0 branch December 18, 2025 18:43
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