Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prepare release 3.0 #2015

Draft
wants to merge 5 commits into
base: dev
Choose a base branch
from
Draft

Prepare release 3.0 #2015

wants to merge 5 commits into from

Conversation

stephprince
Copy link
Contributor

@stephprince stephprince commented Dec 23, 2024

Prepare for release of PyNWB 3.0

TODO

  • merge all PRs with breaking changes into this branch
  • make pre-release 3.0.0rc1 on GitHub and PyPi for downstream testing

Before merging:

  • Make sure all PRs to be included in this release have been merged to dev.
  • Major and minor releases: Update package versions in requirements.txt, requirements-dev.txt,
    requirements-doc.txt, requirements-opt.txt, and environment-ros3.yml to the latest versions,
    and update dependency ranges in pyproject.toml and minimums in requirements-min.txt as needed.
    Run pip install pur && pur -r requirements-dev.txt -r requirements.txt -r requirements-opt.txt
    and manually update environment-ros3.yml.
  • 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/pynwb/nwb-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, validation, and streaming tests, and inspect all warnings and outputs
    (python test.py -v -p -i -b -w -r > out.txt 2>&1). Try to remove all warnings.
  • 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/NeurodataWithoutBorders/pynwb/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/pynwb-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 > PyNWB > Download Files > View hashes for the .tar.gz file. Re-render and update
    dependencies as needed.

Copy link

codecov bot commented Dec 23, 2024

Codecov Report

Attention: Patch coverage is 97.67442% with 2 lines in your changes missing coverage. Please review.

Project coverage is 92.69%. Comparing base (80fc386) to head (e47cd5a).

Files with missing lines Patch % Lines
src/pynwb/file.py 89.47% 1 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##              dev    #2015      +/-   ##
==========================================
+ Coverage   91.69%   92.69%   +1.00%     
==========================================
  Files          27       27              
  Lines        2708     2684      -24     
  Branches      707      706       -1     
==========================================
+ Hits         2483     2488       +5     
+ Misses        149      127      -22     
+ Partials       76       69       -7     
Flag Coverage Δ
integration 73.09% <54.65%> (+0.27%) ⬆️
unit 83.56% <97.67%> (+0.92%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

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

* update deprecated classes and methods

* update deprecation warnings

* update tests for deprecated classes and functions

* fix warnings and formatting

* add scratch tests and deprecations

* keep function behavior for deprecation warnings

* update CHANGELOG.md

* add tests for deprecations

* update scratch tutorial

* skip deprecated gallery examples

* update CHANGELOG.md

* remove old icephys tutorial

* add pynwb 4.0 deprecation info

* add error on new pass on construct method

* remove warnings on construct for deprecations

* fix formatting

* update hdmf-zarr url

* Apply suggestions from code review

Co-authored-by: Ryan Ly <[email protected]>

* Update src/pynwb/core.py

Co-authored-by: Ryan Ly <[email protected]>

* add code review suggestions

* add catch for extra warning

* remove unused variable

---------

Co-authored-by: Ryan Ly <[email protected]>
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