Releases: AllenNeuralDynamics/aind-data-schema
v2.4.0
The main change in v2.4.0 is that we now link to aind-data-schema-models v5, where the slap modality has been replaced by slap2. Other small changes have been made to support the new quality control tags format and to simplify functionality in several places in the schema.
When using GenericModel subclasses you no longer need to call .model_dump()
What's Changed
- refactor: allow passing strings to default_grouping, also build docs by @dbirman in #1648
- added protocol to calibrations by @saskiad in #1652
- fix: repair QualityControl.default_grouping merge for new list[str | tuple[str, ...]] type by @dbirman in #1655
- refactor: make headframe_part_number Optional[] by @saskiad in #1654
- fix: populate source_data properly by @dbirman in #1656
- fix: properly handle None dependency_graph during merge by @dbirman in #1657
- chore: bump to aind-data-schema-models 5, replace slap->slap2 by @dbirman in #1665
- Feat 1562 unitfix by @saskiad in #1662
- fix: reduce requirement for SLAP2 to just ImagingConfig by @dbirman in #1671
- refactor: allow instrument_id to be included in device.name fields by @dbirman in #1663
- add GenericModelType to fix serialization by @tmchartrand in #1672
- fix: small regression introduced in #1672 by @bruno-f-cruz in #1676
- fix: for backward compatibility, add defaults to _unit fields for contrast/brightness using a validator by @dbirman in #1677
- feat: compute group:value pairs for tag status by @dbirman in #1673
Full Changelog: v2.3.2...v2.4.0
v2.3.2
What's Changed
This patch release includes some small hotfixes, including limiting the version of aind-data-schema-models to <5. Version 2.3.0 is broken due to having no ceiling on that dependency, please use this release instead or manually limit aind-data-schema-models to <5.
Full Changelog: v2.3.0...v2.3.2
v2.3.0
Important change: we modified the QualityControl.tags field in a way that is "sort-of-backward-compatible". Please read the README and see the post on Teams for more information about the new approach. Old assets will need to be migrated to function properly in the new system.
What's Changed
- Fix minor typos in acquisition docs by @rly in #1633
- refactor: deprecate breeding_group and clear field by @dbirman in #1640
- feat: re-organize quality control tags as dictionary by @dbirman in #1643
- release v2.3.0 by @dbirman in #1644
New Contributors
Full Changelog: v2.2.0...v2.3.0
v2.2.0
What's Changed
- feat: adding Manipulation during acquisition by @dbirman in #1607
- docs: update docs for external registries by @dbirman in #1610
- docs: improvements to coordinate system docs by @dbirman in #1606
- fix: modify instrument merge by @dbirman in #1619
- fix: allow acquisition/procedures with None coordinate_system to merge by @dbirman in #1628
- feat: filename_suffix to do what suffix should have done by @dbirman in #1631
- Allow for partial instrument/acquisition compatibility checks without constructing Metadata object by @dbirman in #1623
- feat: DataStream.add and Acquistion._merge_data_stream_lists by @dbirman in #1634
Full Changelog: v2.1.0...v2.2.0
v2.1.0
What's Changed
- Added between-vertebrae coordinate origins by @dougollerenshaw in #1565
- Improve docs by adding title(desc) by @dbirman in #1572
- Set a ceiling on pydantic version to avoid errors with model_validators by @dbirman in #1584
- Moved the subject_details validator out of Acquisition to prevent errors by @dbirman in #1590
- add code now removes duplicates @dbirman in #1593
- Added new OlfactometerConfig to replace old stimulus configuration @dbirman in #1499
- Add DataDescription.from_data_description helper to replace from_raw by @dbirman in #1588
- Allow HarpDevice objects in lick_sensor field by @dbirman in #1595
Full Changelog: v2.0.3...v2.1.0
v2.0.3
What's Changed
- fix: adds check if dependency_graph is None by @jtyoung84 in #1576
Full Changelog: v2.0.2...v2.0.3
v2.0.2
What's Changed
- fix: prevent attribute error being raised when value.species == None by @dbirman in #1539
- fix: deprecate the channel_index field by @dbirman in #1540
- docs: add subclasses of GenericModel by @dbirman in #1551
- chore: remove (ms) annotation in title for exposure_unit by @dbirman in #1554
- refactor: remove custom exceptions, instead raise ValueError by @dbirman in #1558
- fix: check for transforms before checking for matching coord sys by @dbirman in #1559
Full Changelog: v2.0.1...v2.0.2
v2.0.1
This 2.0.1 hotfix release fixes several bugs introduced in the 2.0 upgrade. Some of these are breaking changes against 2.0.0. Please upgrade all scripts to use 2.0.1.
What's Changed
- Removed InjectionDynamics.rate which was redundant with combined volume/duration
- Added a critical description for ProbeConfig.coordinate_system
- Removed requirement that ephys modality experiments include an ephys
- Reduces requirement on Processing.dependency_graph to Optional
- Reduces requirement on DataProcess.end_date_time to
- Adds a model validator that sorts processes into chronological order using the start time
- Add a missing validator that ensure one of the required file sets is present for Metadata() validation
- Recovered a data_description.source_data field which was accidentally removed
Full Changelog: v2.0.0...v2.0.1
v2.0.0
Please view the new documentation to see the changes in aind-data-schema 2.0.
What's Changed
- Overhauled documentation to add classes definition tables and links between classes
- Merged instrument and rig, flattened instrument configurations
- Merged acquisition and session, flattened data stream and stimulus epoch configurations
- Removed connections from DAQ and moved them into their own flattened list
- Refactored Channel to better reflect the real organization of imaging experiments
- Refactored Reagents to better reflect their usage across experiments
- Flattened Processing
- Added Coordinate Systems and standardized the use of transforms
- Added many validators, including cross-file validators that ensure that duplicated fields and key references are valid
- Simplified data description and subject
- Added support for human subjects and calibration objects
- Added support for non-mouse anatomical targeting
- Added the model metadata file
- Simplified the file requirement matrix
- Flattened the quality control schema, removing the concept of evaluations
Technical improvements
- Re-organized files into components/ folder to clean up code base
- Tests now often use imported examples ensuring the schema content remains valid
- Heavily reduced the use of model_construct() in testing
Full Changelog: v1.4.0...v2.0.0
v.1.4.0
This is the final minor release of aind-data-schema v1.X
What's Changed
- Added optional objects in arena to Session
- Added optional encoder fields to Treadmill
- Removed the restriction on $/. character in GenericModel fields
- Fixed some broken developer functionality in schema bump and model_validate_json
Full Changelog: v1.3.0...v1.4.0