Merged
Conversation
There was a problem hiding this comment.
Pull request overview
This pull request migrates the CameraDevice class to use PyNWB 3.1.3's DeviceModel and updates to ndx-optogenetics 0.3.0, addressing PyNWB issue #313. The changes include updating the schema, tests, and dependency specifications to align with the new API patterns.
Changes:
- Unpins pynwb from
>=2.8.3,<3.1to>=3.1.3and updates ndx-optogenetics from 0.2.0 to 0.3.0 - Updates CameraDevice schema to use a link to DeviceModel instead of string attributes for model and manufacturer
- Updates all tests to create DeviceModel instances and use the new API pattern
- Adds comprehensive optogenetics test infrastructure with virus injections, optical fibers, and stimulation sites
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| pyproject.toml | Updates dependencies to require pynwb>=3.1.3 and ndx-optogenetics==0.3.0, adds Samuel Bray as author |
| spec/ndx-franklab-novela.extensions.yaml | Changes CameraDevice model from attribute to link targeting DeviceModel, removing manufacturer attribute |
| src/pynwb/ndx_franklab_novela/init.py | Imports DeviceModel for use in package |
| src/pynwb/tests/test_cameraDevice.py | Creates DeviceModel instance and updates assertions to access model properties through model object |
| src/pynwb/tests/test_read_nwb.py | Creates and adds DeviceModel to NWB file before adding CameraDevice |
| src/pynwb/tests/test_optogenetics.py | Updates CameraDevice usage and adds comprehensive optogenetics test infrastructure using ndx-ophys-devices |
Comments suppressed due to low confidence (1)
pyproject.toml:69
- The min-reqs optional dependencies are not updated to match the new minimum versions specified in the main dependencies. Since the main dependencies now require pynwb>=3.1.3 and ndx-optogenetics==0.3.0, the min-reqs should be updated to test with these minimum versions. Update line 67 to 'pynwb==3.1.3' and line 69 to 'ndx-optogenetics==0.3.0'.
"pynwb==2.8.3",
"hdmf==4.0.0",
"ndx-optogenetics==0.2.0",
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
7 tasks
rly
reviewed
Jan 14, 2026
rly
reviewed
Jan 14, 2026
Co-authored-by: Ryan Ly <310197+rly@users.noreply.github.com>
rly
reviewed
Jan 14, 2026
Co-authored-by: Ryan Ly <310197+rly@users.noreply.github.com>
This was referenced Jan 16, 2026
Closed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
pynwbandndx-optogeneticsCameraDeviceclass to useDeviceModelCameraDeviceandFrankLabOptogeneticEpochs