Shared data contract for the mesofield -> datakit -> databench pipeline.
Project description
mesokit-schema
Shared data contract for the mesofield → datakit → databench pipeline.
This package defines the typed manifests that travel alongside data between the three repos. It is the single source of truth for:
AcquisitionManifest— what mesofield writes at the end of a session: the list of producers that ran, the files they wrote, calibration constants, time bases, and session identity. Datakit consumes this instead of globbing the filesystem.DatasetManifest— what datakit writes alongside the dataset table: schema version, datakit version, content hash of the data file, hash of the upstream acquisition manifest, masterTimeBasis, source-parser versions, declared columns. Databench validates against this on load and concatenates it into provenance.AnalysisDeclaration— what each databench analysis declares about its inputs and parameters, so a dataset can be validated against an analysis before it runs.
Plus shared building blocks: TimeBasis, ColumnSpec, BIDS path helpers, and a single SCHEMA_VERSION constant.
Install
From PyPI:
pip install mesokit-schema
From GitHub (latest main):
pip install git+https://github.com/Gronemeyer/mesokit-schema.git
Development
For local development across the pipeline, editable-install into all three envs at once:
./scripts/install-dev.sh # all envs
./scripts/install-dev.sh mesofield # one env
The script editable-installs mesokit-schema plus the env's own package (mesofield, datakit, databench) into each matching conda env. Override layout via CONDA_ENVS_ROOT, DEV_ROOT, or DATABENCH_ROOT env vars.
Or install manually:
pip install -e /path/to/mesokit-schema
Versioning
The package exposes mesokit_schema.SCHEMA_VERSION (semver). Consumers compare against the schema_version field on each manifest and refuse to load anything they don't know how to read. Bump the major version on breaking changes; minor on additive fields.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mesokit_schema-0.4.0.tar.gz.
File metadata
- Download URL: mesokit_schema-0.4.0.tar.gz
- Upload date:
- Size: 11.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6f02db2c4388d60666d2a98a9602d71cd3995eeb7232289b802794a4b5646eb0
|
|
| MD5 |
a97b47604a3a196807eec709866e88c7
|
|
| BLAKE2b-256 |
601874cb842b9e253ea5aa24008904444e7098d646348cad232b087cea63e24b
|
Provenance
The following attestation bundles were made for mesokit_schema-0.4.0.tar.gz:
Publisher:
publish.yml on Gronemeyer/mesokit-schema
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mesokit_schema-0.4.0.tar.gz -
Subject digest:
6f02db2c4388d60666d2a98a9602d71cd3995eeb7232289b802794a4b5646eb0 - Sigstore transparency entry: 1768281232
- Sigstore integration time:
-
Permalink:
Gronemeyer/mesokit-schema@a638c4cdbd7d610a07282f7f822b946a392fd201 -
Branch / Tag:
refs/tags/v1.0.0 - Owner: https://github.com/Gronemeyer
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@a638c4cdbd7d610a07282f7f822b946a392fd201 -
Trigger Event:
release
-
Statement type:
File details
Details for the file mesokit_schema-0.4.0-py3-none-any.whl.
File metadata
- Download URL: mesokit_schema-0.4.0-py3-none-any.whl
- Upload date:
- Size: 12.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d824b99f0f8bab884b0edda622652eb7c33744c1185c3039a781dcc625a7e5a1
|
|
| MD5 |
99eb4ec95a91330adad6a377c2ac60f5
|
|
| BLAKE2b-256 |
9d17ddfaca78f211d7b18cf7702c1c89b5b2377ee9be09e1a26a27b87c2b40f4
|
Provenance
The following attestation bundles were made for mesokit_schema-0.4.0-py3-none-any.whl:
Publisher:
publish.yml on Gronemeyer/mesokit-schema
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mesokit_schema-0.4.0-py3-none-any.whl -
Subject digest:
d824b99f0f8bab884b0edda622652eb7c33744c1185c3039a781dcc625a7e5a1 - Sigstore transparency entry: 1768281471
- Sigstore integration time:
-
Permalink:
Gronemeyer/mesokit-schema@a638c4cdbd7d610a07282f7f822b946a392fd201 -
Branch / Tag:
refs/tags/v1.0.0 - Owner: https://github.com/Gronemeyer
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@a638c4cdbd7d610a07282f7f822b946a392fd201 -
Trigger Event:
release
-
Statement type: