aind-data-schema 2.8.0__tar.gz → 2.9.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- aind_data_schema-2.9.0/.github/workflows/documentation-links.yml +23 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/.gitignore +9 -0
- aind_data_schema-2.9.0/.readthedocs.yaml +26 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/CONTRIBUTING.md +9 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/PKG-INFO +3 -5
- aind_data_schema-2.9.0/diagram-app/index.html +16 -0
- aind_data_schema-2.9.0/diagram-app/package-lock.json +2006 -0
- aind_data_schema-2.9.0/diagram-app/package.json +26 -0
- aind_data_schema-2.9.0/diagram-app/src/App.tsx +256 -0
- aind_data_schema-2.9.0/diagram-app/src/edges.tsx +21 -0
- aind_data_schema-2.9.0/diagram-app/src/graph.ts +328 -0
- aind_data_schema-2.9.0/diagram-app/src/loadSchema.ts +23 -0
- aind_data_schema-2.9.0/diagram-app/src/main-viewer.tsx +28 -0
- aind_data_schema-2.9.0/diagram-app/src/nodes.tsx +175 -0
- aind_data_schema-2.9.0/diagram-app/src/types.ts +31 -0
- aind_data_schema-2.9.0/diagram-app/src/useDarkMode.ts +29 -0
- aind_data_schema-2.9.0/diagram-app/src/vite-env.d.ts +1 -0
- aind_data_schema-2.9.0/diagram-app/tsconfig.json +16 -0
- aind_data_schema-2.9.0/diagram-app/vite.config.ts +53 -0
- aind_data_schema-2.9.0/docs/source/_static/MetadataIO.drawio.svg +4 -0
- aind_data_schema-2.9.0/docs/source/_static/coordinate_system_builder.html +1132 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/acquisition.md +3 -2
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/modalities.md +1 -0
- aind_data_schema-2.9.0/docs/source/aind_data_schema_models/organizations.md +135 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/registries.md +4 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/components/configs.md +30 -14
- aind_data_schema-2.9.0/docs/source/components/coordinates.md +140 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/components/devices.md +19 -13
- aind_data_schema-2.9.0/docs/source/components/geometry.md +25 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/components/reagent.md +19 -1
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/components/specimen_procedures.md +3 -2
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/components/subject_procedures.md +20 -2
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/components/surgery_procedures.md +14 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/conf.py +14 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/coordinate_systems.md +19 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/index.rst +9 -0
- aind_data_schema-2.9.0/docs/source/inheritance.md +86 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/instrument.md +2 -1
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/procedures.md +2 -1
- aind_data_schema-2.9.0/examples/thermistor_procedures.py +71 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/pyproject.toml +4 -7
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/schemas/acquisition_schema.json +420 -25
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/schemas/data_description_schema.json +80 -2
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/schemas/instrument_schema.json +511 -18
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/schemas/metadata_schema.json +1672 -191
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/schemas/procedures_schema.json +1047 -87
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/schemas/processing_schema.json +2 -2
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/schemas/quality_control_schema.json +30 -2
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/schemas/subject_schema.json +64 -2
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/__init__.py +1 -1
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/base.py +41 -5
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/components/configs.py +95 -15
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/components/coordinates.py +141 -12
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/components/devices.py +28 -11
- aind_data_schema-2.9.0/src/aind_data_schema/components/geometry.py +21 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/components/reagent.py +11 -1
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/components/specimen_procedures.py +37 -4
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/components/subject_procedures.py +39 -4
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/components/surgery_procedures.py +17 -1
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/core/acquisition.py +34 -6
- aind_data_schema-2.9.0/src/aind_data_schema/core/data_description.py +219 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/core/instrument.py +20 -8
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/core/metadata.py +125 -2
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/core/procedures.py +20 -5
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/core/processing.py +1 -1
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/core/quality_control.py +1 -1
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/core/subject.py +1 -1
- aind_data_schema-2.9.0/src/aind_data_schema/utils/inheritance.py +372 -0
- aind_data_schema-2.9.0/src/aind_data_schema/utils/schema_tree.py +404 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/utils/validators.py +18 -8
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema.egg-info/PKG-INFO +3 -5
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema.egg-info/SOURCES.txt +26 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema.egg-info/requires.txt +1 -4
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_acquisition_configs.py +20 -1
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_base.py +44 -13
- aind_data_schema-2.9.0/tests/test_coordinates.py +557 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_data_description.py +5 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_device.py +8 -2
- aind_data_schema-2.9.0/tests/test_geometry.py +42 -0
- aind_data_schema-2.9.0/tests/test_inheritance.py +441 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_instrument.py +3 -3
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_metadata.py +61 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_procedures.py +14 -14
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_subjects.py +11 -29
- aind_data_schema-2.9.0/uv.lock +2320 -0
- aind_data_schema-2.8.0/.readthedocs.yaml +0 -18
- aind_data_schema-2.8.0/docs/source/aind_data_schema_models/organizations.md +0 -147
- aind_data_schema-2.8.0/docs/source/components/coordinates.md +0 -103
- aind_data_schema-2.8.0/src/aind_data_schema/core/data_description.py +0 -369
- aind_data_schema-2.8.0/tests/test_coordinates.py +0 -276
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/.flake8 +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/.github/ISSUE_TEMPLATE/user-story.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/.github/workflows/link-issues-by-milestone.yml +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/.github/workflows/publish_dev.yml +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/.github/workflows/run_dev_tests.yml +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/.github/workflows/run_main_tests.yml +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/.github/workflows/tag_and_publish_main.yml +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/.github/workflows/update_dev_docs.yml +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/.github/workflows/update_docs.yml +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/CODE_OF_CONDUCT.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/LICENSE +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/README.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/Makefile +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/base/core/acquisition.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/base/core/data_description.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/base/core/instrument.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/base/core/metadata.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/base/core/model.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/base/core/procedures.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/base/core/processing.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/base/core/quality_control.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/base/core/subject.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/make.bat +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/_static/bregma_and_lambda2.png +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/_static/coordinates2.png +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/_static/coordinates2_original.png +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/_static/custom.css +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/_static/dark-logo.svg +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/_static/favicon.ico +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/_static/light-logo.svg +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/_static/session_image_1.png +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/_static/session_image_2.png +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/_static/session_image_3.png +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/atlas.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/brain_atlas.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/coordinates.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/data_name_patterns.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/devices.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/external.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/harp_types.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/licenses.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/pid_names.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/process_names.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/reagent.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/species.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/specimen_procedure_types.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/stimulus_modality.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/system_architecture.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/aind_data_schema_models/units.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/components/connections.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/components/identifiers.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/components/injection_procedures.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/components/measurements.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/components/stimulus.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/components/subjects.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/components.rst +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/data_description.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/example_workflow/example_workflow.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/example_workflow/example_workflow.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/example_workflow/example_workflow.xlsx +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/general.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/metadata.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/model.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/processing.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/quality_control.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/registries.rst +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/related_standards.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/subject.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/docs/source/validation.md +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/__init__.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/aibs_smartspim_instrument.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/aibs_smartspim_procedures.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/aind_smartspim_instrument.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/barseq_acquisition.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/barseq_instrument.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/bergamo_ophys_acquisition.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/data_description.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/ephys_acquisition.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/ephys_instrument.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/exaspim_acquisition.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/exaspim_instrument.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/exaspim_quality_control.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/fip_behavior_instrument.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/fip_ophys_acquisition.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/fip_ophys_instrument.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/isi_instrument.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/model.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/mri_acquisition.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/multiplane_ophys_acquisition.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/multiplane_ophys_instrument.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/ophys_acquisition.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/ophys_procedures.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/procedures.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/processing.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/quality_control.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/slap2_acquisition.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/slap2_instrument.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/slap2_structure_acquisition.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/examples/subject.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/schemas/model_schema.json +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/setup.cfg +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/setup.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/components/__init__.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/components/connections.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/components/identifiers.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/components/injection_procedures.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/components/measurements.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/components/stimulus.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/components/subjects.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/components/wrappers.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/core/__init__.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/core/model.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/utils/__init__.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/utils/compatibility_check.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/utils/docs/doc_generator.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/utils/docs/model_generator.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/utils/docs/registries_generator.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/utils/docs/utils.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/utils/examples_generator.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/utils/exceptions.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/utils/json_writer.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/utils/merge.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema/utils/schema_version_bump.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema.egg-info/dependency_links.txt +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/src/aind_data_schema.egg-info/top_level.txt +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/__init__.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_acquisition.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_aind_generic.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_bump_schema_versions.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_compatibility_check.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_composability_merge.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_configs.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_examples.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_identifiers.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_imaging.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_inst_acq_compatibility.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_json_writer.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_measurements.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_model.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_processing.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_quality_control.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_stimulus.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_subject.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_utils_merge.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_utils_validators.py +0 -0
- {aind_data_schema-2.8.0 → aind_data_schema-2.9.0}/tests/test_wrappers.py +0 -0
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# .github/workflows/documentation-links.yml
|
|
2
|
+
|
|
3
|
+
name: readthedocs/actions
|
|
4
|
+
on:
|
|
5
|
+
pull_request_target:
|
|
6
|
+
types:
|
|
7
|
+
- opened
|
|
8
|
+
# Execute this action only on PRs that touch
|
|
9
|
+
# documentation files
|
|
10
|
+
paths:
|
|
11
|
+
- "docs/**"
|
|
12
|
+
|
|
13
|
+
permissions:
|
|
14
|
+
pull-requests: write
|
|
15
|
+
|
|
16
|
+
jobs:
|
|
17
|
+
documentation-links:
|
|
18
|
+
runs-on: ubuntu-latest
|
|
19
|
+
steps:
|
|
20
|
+
- uses: readthedocs/actions/preview@v1
|
|
21
|
+
with:
|
|
22
|
+
# this is the slug from the non-redirected URL (scicomp-docs.readthedocs.io)
|
|
23
|
+
project-slug: "aind-data-schema"
|
|
@@ -144,6 +144,15 @@ notebook/
|
|
|
144
144
|
ephys_instrument.json
|
|
145
145
|
examples/*.json
|
|
146
146
|
*.json
|
|
147
|
+
!diagram-app/package.json
|
|
148
|
+
!diagram-app/package-lock.json
|
|
149
|
+
!diagram-app/tsconfig.json
|
|
150
|
+
|
|
151
|
+
# diagram-app (React Flow schema diagram embedded in the docs front page)
|
|
152
|
+
diagram-app/node_modules/
|
|
153
|
+
docs/source/_static/schema-diagram/
|
|
147
154
|
docs/base/models/*
|
|
148
155
|
.github/copilot-instructions.md
|
|
149
156
|
uv.lock
|
|
157
|
+
schema_tree.md
|
|
158
|
+
schema_tree.tex
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
version: 2
|
|
2
|
+
|
|
3
|
+
build:
|
|
4
|
+
os: ubuntu-22.04
|
|
5
|
+
tools:
|
|
6
|
+
python: "3.13"
|
|
7
|
+
nodejs: "20"
|
|
8
|
+
jobs:
|
|
9
|
+
# Build the interactive React Flow schema diagram bundle into
|
|
10
|
+
# docs/source/_static/ before Sphinx runs (the bundle is git-ignored and
|
|
11
|
+
# regenerated here; the JSON it fetches is generated by conf.py).
|
|
12
|
+
pre_build:
|
|
13
|
+
- npm --prefix diagram-app ci
|
|
14
|
+
- npm --prefix diagram-app run build
|
|
15
|
+
|
|
16
|
+
python:
|
|
17
|
+
install:
|
|
18
|
+
- method: pip
|
|
19
|
+
path: .
|
|
20
|
+
extra_requirements:
|
|
21
|
+
- dev
|
|
22
|
+
- docs
|
|
23
|
+
|
|
24
|
+
sphinx:
|
|
25
|
+
# Path to your Sphinx configuration file.
|
|
26
|
+
configuration: docs/source/conf.py
|
|
@@ -51,12 +51,21 @@ python src/aind_data_schema/utils/docs/registries_generator.py
|
|
|
51
51
|
python src/aind_data_schema/utils/docs/doc_generator.py
|
|
52
52
|
```
|
|
53
53
|
|
|
54
|
+
The front page embeds an interactive React Flow diagram of the `Metadata` schema (`diagram-app/`). Build its JS/CSS bundle once before building the docs (it's git-ignored and only needs rebuilding when `diagram-app/` changes):
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
npm --prefix diagram-app ci
|
|
58
|
+
npm --prefix diagram-app run build
|
|
59
|
+
```
|
|
60
|
+
|
|
54
61
|
Then to create the documentation html files, run:
|
|
55
62
|
|
|
56
63
|
```bash
|
|
57
64
|
sphinx-build -b html docs/source/ docs/build/html
|
|
58
65
|
```
|
|
59
66
|
|
|
67
|
+
This also (re)generates `docs/source/_static/schema-diagram/schema_diagram.json`, the data the diagram reads at runtime, from the current schema classes.
|
|
68
|
+
|
|
60
69
|
More info on sphinx installation can be found here: https://www.sphinx-doc.org/en/master/usage/installation.html
|
|
61
70
|
|
|
62
71
|
### Testing
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: aind-data-schema
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.9.0
|
|
4
4
|
Summary: A library that defines AIND data schema and validates JSON files.
|
|
5
5
|
License: MIT
|
|
6
6
|
Classifier: Programming Language :: Python :: 3
|
|
7
|
-
Requires-Python:
|
|
7
|
+
Requires-Python: <3.14,>=3.10
|
|
8
8
|
Description-Content-Type: text/markdown
|
|
9
9
|
License-File: LICENSE
|
|
10
|
-
Requires-Dist: aind-data-schema-models<6
|
|
10
|
+
Requires-Dist: aind-data-schema-models<7,>=6.1.0
|
|
11
11
|
Requires-Dist: pydantic<2.12,>=2.7
|
|
12
12
|
Requires-Dist: pydantic-extra-types
|
|
13
13
|
Requires-Dist: tzdata
|
|
@@ -35,8 +35,6 @@ Requires-Dist: myst-parser; extra == "docs"
|
|
|
35
35
|
Requires-Dist: openpyxl; extra == "docs"
|
|
36
36
|
Provides-Extra: transforms
|
|
37
37
|
Requires-Dist: scipy; extra == "transforms"
|
|
38
|
-
Provides-Extra: viz
|
|
39
|
-
Requires-Dist: matplotlib; extra == "viz"
|
|
40
38
|
Dynamic: license-file
|
|
41
39
|
|
|
42
40
|
# aind-data-schema
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<title>aind-data-schema diagram (dev)</title>
|
|
7
|
+
<style>
|
|
8
|
+
html, body { margin: 0; height: 100%; font-family: system-ui, sans-serif; }
|
|
9
|
+
</style>
|
|
10
|
+
</head>
|
|
11
|
+
<body>
|
|
12
|
+
<!-- In the docs this div is injected by a raw-HTML block; here it drives the dev server. -->
|
|
13
|
+
<div class="rf-schema-diagram" style="height: 100vh"></div>
|
|
14
|
+
<script type="module" src="/src/main-viewer.tsx"></script>
|
|
15
|
+
</body>
|
|
16
|
+
</html>
|