Skip to content

Pynwb 313 migrate#24

Merged
samuelbray32 merged 8 commits intoLorenFrankLab:masterfrom
samuelbray32:pynwb_313_migrate
Jan 16, 2026
Merged

Pynwb 313 migrate#24
samuelbray32 merged 8 commits intoLorenFrankLab:masterfrom
samuelbray32:pynwb_313_migrate

Conversation

@samuelbray32
Copy link
Collaborator

@samuelbray32 samuelbray32 commented Jan 14, 2026

  • unpins versions for pynwb and ndx-optogenetics
  • Updates the CameraDevice class to use DeviceModel
  • Updates tests for CameraDevice and FrankLabOptogeneticEpochs

@samuelbray32 samuelbray32 marked this pull request as ready for review January 14, 2026 23:04
@samuelbray32 samuelbray32 requested review from Copilot and rly January 14, 2026 23:04
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.1 to >=3.1.3 and 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.

Co-authored-by: Ryan Ly <310197+rly@users.noreply.github.com>
samuelbray32 and others added 2 commits January 14, 2026 15:50
Co-authored-by: Ryan Ly <310197+rly@users.noreply.github.com>
@samuelbray32 samuelbray32 requested a review from rly January 15, 2026 16:43
Copy link
Collaborator

@rly rly left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@samuelbray32 samuelbray32 merged commit 5f91db4 into LorenFrankLab:master Jan 16, 2026
6 checks passed
This was referenced Jan 16, 2026
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.

2 participants