Skip to content

Update nwb-schema to 2.11.0 and require HDMF 6.2.0 - #2244

Open
rly wants to merge 5 commits into
devfrom
update_schema_2.11.0
Open

Update nwb-schema to 2.11.0 and require HDMF 6.2.0#2244
rly wants to merge 5 commits into
devfrom
update_schema_2.11.0

Conversation

@rly

@rly rly commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

Updates the nwb-schema submodule to the NWB Schema 2.11.0 release candidate and raises the minimum HDMF version to 6.2.0.

Companion to NeurodataWithoutBorders/nwb-schema#710, which covers the "Ensure PyNWB and MatNWB have branches that have passing tests" item on that release checklist.

Changes

  • Pointed src/pynwb/nwb-schema at f7dae71 ("Prepare 2.11.0 release"), which sets the schema version to 2.11.0 and brings in HDMF Common Schema 1.10.0.
  • Raised hdmf from >=6.1.0,<7 to >=6.2.0,<7 in pyproject.toml, and pinned environment-ros3.yml to hdmf==6.2.0.
  • Updated the changelog entry to name 2.11.0 and record the MeaningsTable.target change and the HDMF floor bump.

Why HDMF 6.2.0 is required

NWB Schema 2.11.0 carries HDMF Common Schema 1.10.0, which changes MeaningsTable.target from a link to an object-reference attribute. HDMF 6.2.0 bundles that same schema version (e7f84f0), so the Python-side MeaningsTable definition matches. HDMF 6.1.0 bundles 1.9.0 and still treats target as a link.

HDMF 6.2.0 also fixes writing the unit and time_before_peak_in_ms attributes on the Units waveform columns. Under 6.1.0 both fell back to their schema defaults on write, so TestUnitsCustomWaveformUnitIO and TestUnitsWaveformTimeBeforePeakIO failed on dev regardless of which schema commit the submodule pointed at.

Testing

Full suite run locally against schema 2.11.0 with HDMF 6.2.0:

848 passed, 15 skipped, 19 warnings, 6768 subtests passed

For comparison, the same suite on dev with HDMF 6.1.0 gives 8 failed, 844 passed, 6764 subtests passed. All 8 failures are the two waveform test classes described above and are resolved by the HDMF bump.

Before merging

The submodule points at a commit on the prepare_2.11.0 branch of nwb-schema, not a tag. Retarget it at the 2.11.0 tag once nwb-schema#710 merges and the tag is pushed.

🤖 Generated with Claude Code

rly and others added 2 commits August 18, 2026 23:34
Point the nwb-schema submodule at f7dae71 ("Prepare 2.11.0 release" on
the prepare_2.11.0 branch), which sets the schema version to 2.11.0 and
brings in hdmf-common-schema 1.10.0. Update the changelog entry to name
2.11.0 and record the MeaningsTable.target change and the HDMF 6.2.0
requirement it carries.

This branch exists so nwb-schema#710 can verify PyNWB against the
release candidate. Retarget the submodule at the 2.11.0 tag once that
PR merges and the tag is pushed.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
HDMF 6.2.0 bundles HDMF Common Schema 1.10.0, the same version NWB
Schema 2.11.0 carries, so the Python-side MeaningsTable definition
matches the schema's object-reference `target` attribute. It also
writes the `unit` and `time_before_peak_in_ms` attributes on the
`Units` waveform columns, which fell back to their schema defaults
under HDMF 6.1.0.

Raise the floor in pyproject.toml and pin the ROS3 environment to
6.2.0.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@codecov

codecov Bot commented Aug 19, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 96.22%. Comparing base (6285dd8) to head (b752816).

Additional details and impacted files
@@           Coverage Diff           @@
##              dev    #2244   +/-   ##
=======================================
  Coverage   96.22%   96.22%           
=======================================
  Files          30       30           
  Lines        2993     2993           
  Branches      433      433           
=======================================
  Hits         2880     2880           
  Misses         64       64           
  Partials       49       49           
Flag Coverage Δ
integration 75.00% <ø> (ø)
unit 86.60% <ø> (ø)

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

☔ View full report in Codecov by Harness.
📢 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 and others added 3 commits August 19, 2026 09:38
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
nwb-users.slack.com returns 403 to unauthenticated requests, so the
linkcheck job reports the CONTRIBUTING links to it as broken.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
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