Releases: NeurodataWithoutBorders/pynwb
Releases · NeurodataWithoutBorders/pynwb
1.5.0
New features:
NWBFile.add_scratch(...)
andScratchData.__init__(...)
now accept scalar data in addition to the currently
accepted types. @rly (#1309)- Support
pathlib.Path
paths when opening files withNWBHDF5IO
. @dsleiter (#1314) - Use HDMF 2.5.1. See the HDMF release notes for details.
- Support
driver='ros3'
inNWBHDF5IO
for streaming NWB files directly from s3. @bendichter (#1331) - Update documentation, CI GitHub processes. @oruebel @yarikoptic, @bendichter, @TomDonoghue, @rly
(#1311, #1336, #1351, #1352, #1345, #1340, #1327) - Set default
neurodata_type_inc
forNWBGroupSpec
,NWBDatasetSpec
. @rly (#1295) - Block usage of h5py 3+ for now. h5py>=2.9, <3 is supported. (#1355)
- Fix incompatibility issue with downstream github-release tool used to deploy releases to GitHub. @rly (#1245)
- Fix issue with Sphinx gallery. @rly
- Add citation information to documentation and support for duecredit tool. @rly
- Remove use of ColoredTestRunner for more readable verbose test output. @rly
- Add support for nwb-schema 2.3.0. @rly (#1245, #1330)
- Add optional
waveforms
column to theUnits
table. - Add optional
strain
field toSubject
. - Add to
DecompositionSeries
an optionalDynamicTableRegion
calledsource_channels
. - Add to
ImageSeries
an optional link toDevice
. - Add optional
continuity
field toTimeSeries
. - Add optional
filtering
attribute toElectricalSeries
. - Clarify documentation for electrode impedance and filtering.
- Set the
stimulus_description
forIZeroCurrentClamp
to have the fixed value "N/A". - See https://nwb-schema.readthedocs.io/en/latest/format_release_notes.html for full schema release notes.
- Add optional
- Add support for HDMF 2.5.5 and upgrade HDMF requirement from 2.1.0 to 2.5.5. @rly @ajtritt
(#1325, #1355, #1360, #1245, #1287). This includes several relevant features and bug fixes, including:- Fix issue where dependencies of included types were not being loaded in namespaces / extensions.
- Add
HDF5IO.get_namespaces(path=path, file=file)
method which returns a dict of namespace name mapped to the
namespace version (the largest one if there are multiple) for each namespace cached in the given HDF5 file. - Add methods for automatic creation of
MultiContainerInterface
classes. - Add ability to specify a custom class for new columns to a
DynamicTable
that are notVectorData
,
DynamicTableRegion
, orVocabData
usingDynamicTable.__columns__
orDynamicTable.add_column(...)
. - Add support for creating and specifying multi-index columns in a
DynamicTable
usingadd_column(...)
. - Add capability to add a row to a column after IO.
- Add method
AbstractContainer.get_fields_conf
. - Add functionality for storing external resource references.
- Add method
hdmf.utils.get_docval_macro
to get a tuple of the current values for a docval_macro, e.g., 'array_data'
and 'scalar_data'. DynamicTable
can be automatically generated usingget_class
. Now the HDMF API can read files with extensions
that contain a DynamicTable without needing to import the extension first.- Add
EnumData
type for storing data that comes from a fixed set of values. - Add
AlignedDynamicTable
type which defines a DynamicTable that supports storing a collection of subtables. - Allow
np.bool_
as a validbool
dtype when validating. - See https://github.com/hdmf-dev/hdmf/releases for full HDMF release notes.
1.4.0
Users can now add/remove containers from a written NWB file and export the modified NWBFile to a new file path.
@rly (#1280)
- See https://pynwb.readthedocs.io/en/stable/tutorials/general/add-remove-containers.html for examples and more
information.
Internal improvements:
- Update requirements to use HDMF 2.1.0. @rly (#1256)
- Start FAQ section in documentation. @rly (#1249)
- Improve deprecation warnings. @rly (#1261)
- Update CI to test Python 3.8, update requirements. @rly (#1267, #1275)
- Make use of
MultiContainerInterface
andLabelledDict
that have been moved to HDMF. @bendichter @rly (#1260)
Bug fixes:
1.3.3
1.3.2
1.3.1
Bug fixes:
- Fix bugged
Device
constructor. @rly (#1209) - Fix link to code of conduct page in docs. @rly (#1229)
- Fix docs for get_type_map. @oruebel (#1233)
- Pass file object to parent when loading namespaces. @NileGraddis (#1242)
Internal improvements:
- Update CI to use supported MacOS version. @rly (#1211)
- Clean up tests to remove conversion warnings and use keyword args. @rly (#1202)
- Fix flake8 errors. @rly (#1235)
- Add changelog. @rly (#1215)
- Update release process with notes about coordinating with nwb-schema. @rly (#1214)
- Inform which unit value is actually overwritten. @yarikoptic (#1219)
- Do not print out logging.DEBUG statements to stdout for test.py. @rly (#1240)
- Add support for nwb-schema 2.2.4. @rly (#1213)
- Make
ImagingPlane.imaging_rate
optional. This moves theimaging_rate
argument down the list of constructor forImagingPlane.__init__
. This will break existing code that calls the constructor ofImagingPlane
with at least 6 positional arguments, such that one positional argument matchesimaging_rate
.
- Make
1.3.0
New features:
- Add support for nwb-schema 2.2.2. @rly (#1146)
- This is a large change. See the PR and schema release notes for more information: https://nwb-schema.readthedocs.io/en/latest/format_release_notes.html#march-2-2020
- Validate against most specific namespace. @t-b, @rly (#1094)
- Replace 'ic_electrode' with 'icephys_electrode' in
NWBFile
. @oruebel (#1200) - Integrate minor enhancements and bug fixes introduced in HDMF 1.6.0 and 1.6.1, including improved handling of namespaces that lack a version key,
Internal improvements:
- Add nightly testing of validation CLI. @t-b, @rly (#1164, #1195, #1197)
- Treat ipython notebooks as binary in git. @t-b (#1168)
- Use proper file removal in tests. @t-b (#1165)
- Use hdmf-docutils instead of nwb-docutils for documentation. @jcfr (#1176)
- Run minimum requirements testing n Python 3.6. @rly (#1194)
Bug fixes:
1.2.1
1.2.0
Minor enhancements:
- Add new logo to docs. @rly (#1096)
- Add warning when referencing electrode table before it exists. @ajtritt (#1098)
- Refactor internal calls to docval. @rly (#1104)
- Enhance icephys example and documentation. @t-b (#1081)
- Add multi index and time bounds to get_unit_spikes. @bendichter (#1001)
- Improve ophys docstrings. @bendichter (#1126)
- Improve icephys docstrings for gain. @bendichter (#1129)
- Update legal information. @rly (#1131)
- Add support for device description and manufacturer. @rly (#1135)
- Update dependencies and remove explicit six, unittest2 dependency. @rly (#1136, #1138, #1142, #1137, #1154)
- Add object ID tutorial. @rly (#1140)
- Update CI. @rly (#1141)
- Catch critical warnings and throw errors in unit tests. @rly (#1112)
- Create and use testing module, remove builder tests, clean up test code. @rly (#1117)
- Add and test minimum requirements for PyNWB. @rly (#1148)
- Improve docs for get_class. @bendichter (#1149)
Bug fixes:
- Fix versioneer reporting version. @rly (#1100)
- Fix
DynamicTable
import after move to hdmf.common. @bendichter (#1103) - Fix handling of unmapped attributes. @rly (#1105)
- Update tests and documentation to reflect new selection behavior of
DynamicTable
. @oruebel (#1106) - Fix reference images not being mapped in PlaneSegmentation. @rly (#1109)
- Fix legacy import of
ObjectMapper
. @rly (#1124) - Fix extensions documentation typo: 'str' -> 'text'. @bendichter (#1132)
- Revert "PatchClampSeries: Force sweep_number to uint64". @t-b (#1123)
- Fix sphinx code to use latest sphinx. @rly (#1139)
1.1.2
1.1.1
PyNWB 1.1.0 does not work with HDMF>=1.3. This release will work with HDMF>=1.3.2.
Minor improvements:
- Support newly added channel-specific conversion factor for ElectricalSeries #1072 (@bendichter)
- Move generic types out of PyNWB into hdmf-common. #1061 (@ajtritt)
- Update documentation to reflect the above changes. #1078 (@rly)
- Add new case to the iterative write tutorial. #1029 (@oruebel)
- Improve CI. #1079 (@rly)
- Pin the current latest version of HDMF to requirements for setup.py. #1083 (@rly)