-
Notifications
You must be signed in to change notification settings - Fork 39
Get it working again for newer versions of dependencies #582
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
Merged
Conversation
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
Fix somes invalid imports introduced in the previous commits. Also support numpy v1 and v2 with a fallback import.
This probably changed with some python upgrade.
Since numpy 1.18 creating ragged arrays requires explit opt-in via dtype-object [1]. Let's to that then. [1]: numpy/numpy#14794
ic_electrodes was renamed to icephys_electrodes and the same for add_ic_electrode/create_ic_electrode.
Since pynwb 1.1.0 the unit for stimuli are hardcoded, but supplying a different one gives a warning. So let's just pass in the correct one. [1]: NeurodataWithoutBorders/pynwb#1186 (comment)
The SweepTable was the first icephys table for grouping different patch clamp series together, see NeurodataWithoutBorders/pynwb@21f91920 (Add a SweepTable for icephys data, 2018-11-02) for pynwb 0.6.0. This was superseeded by the icephys metadata tables introduced in pynwb 2.0.0 and finally removed in 3.0.0. While migrating to the icephys metadata tables is on the list [1], we don't want to do this here now. So let's add a nasty hack for injecting a sweep table. [1]: AllenInstitute/IPNWB#47
This is removed in python 3.12. And we can also directly use __version__.
… module This is removed in python 3.12. We can leverage the importlib.resources module introduced in python 3.9 instead.
…ackage This is required for the python 3.14 CI job as not all packages ship wheels.
This is required for the python 3.14-rc on premise job as not all packages ship wheels.
The on-premise tests were fixed in 078bda8 (Merge pull request #581 from AllenInstitute/fix-on-premise-tests, 2025-08-26) and also passed on master [1]. Now they are not passing again with an error like: credentials = dict((k, os.environ.get(env_var, LIMS_DB_CREDENTIAL_DEFAULTS[env_var])) for k, env_var in LIMS_DB_CREDENTIAL_MAP.items()) KeyError: 'LIMS_PASSWORD' The dict LIMS_DB_CREDENTIAL_DEFAULTS does not contain an entry with "LIMS_PASSWORD" as key which should be okay as we are always having that in the envrionment. But this seems to be racy as sometimes we try indexing LIMS_DB_CREDENTIAL_DEFAULTS with "LIMS_PASSWORD" anyway. Let's fix that by adding an entry do LIMS_DB_CREDENTIAL_DEFAULTS. [1]: https://github.com/AllenInstitute/ipfx/actions/runs/17247644153
We don't have feature/XXX branches and this makes it fail.
gouwens
reviewed
Sep 5, 2025
gouwens
approved these changes
Sep 5, 2025
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.
This is a collaborative work to decruft ipfx. The goal is to make it usable with newer python/numpy/pynwb versions.
The tests without LIMS pass here locally with python 3.9-3.14rc2, numpy 2.32 and pynwb 3.1.2.
ToDos:
Close #561
Close #567