iqm-data-definitions
A common place for data definitions shared inside IQM. The package is meant to stay independent of any other IQM project, so that everything in the control software stack can depend on it. Concretely it contains:
- The Protobuf message formats (
protos/) used by the quantum computer control software stack, and the serialization code generated from them (src/iqm/data_definitions/). - Hand-written Python-native representations of some of those messages
(
src/iqm/models/).
Protocol versioning
Breaking changes to data definitions require a major version update. Major
versions are described in the directory paths inside protos/. For instance,
version 1.x Protobuf definitions live in
protos/iqm/data_definitions/<subpackage>/v1/*.proto, and there can be several
subpackages per version.
Backwards-compatible changes are handled as minor version upgrades. Minor
versions are not part of the path, only of the package version: version 1.2
Protobuf definitions live in the same place as version 1.1 ones, but the
distributable packages differ. The generated Python code is importable as
iqm.data_definitions.<subpackage>.v1.*_pb2.
Installation
Note: uv is highly recommended for practical Python environment and package management. The supported Python versions are
=3.11, <3.15.
uv pip install iqm-data-definitions
Reproducible installations
For reproducible installations, pinned dependency extras are available:
pin-iqm: pins inter-IQM package dependencies to exact co-released versions.pin-all: likepin-iqm, but additionally pins all transitive third-party dependencies.
For example:
uv pip install "iqm-data-definitions[pin-all]"
Note: This package was tested at release time for clean installation with
uv 0.11.20andpip 25.1.1. Other versions are likely to work but are not verified per release.
Metadata
Release files for iqm-data-definitions 3.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| iqm_data_definitions-3.1.0.tar.gz | 67.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| iqm_data_definitions-3.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 154.2 kB
Release files / iqm_data_definitions-3.1.0.tar.gz
| Download URL | iqm_data_definitions-3.1.0.tar.gz |
|---|---|
| Size | 67.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
60f6314a0cdd8946ac134939eba97336b6a3f02411e5c8968e930dc798c46af9
|
|
BLAKE2b-256 checksum How to use checksums |
7a3a7d7b2123f9a3da2dd1ad38bf3496581640421ead8b08b4307afea05c6d04
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.3
|
Release files / iqm_data_definitions-3.1.0-py3-none-any.whl
| Download URL | iqm_data_definitions-3.1.0-py3-none-any.whl |
|---|---|
| Size | 86.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
346348d976fc1b435995fd1ea5ec8d279f639fce2956f96f94f81c1a31bbf2c5
|
|
BLAKE2b-256 checksum How to use checksums |
cbd61b49d1a2e43550e3dee512484567ca162603638fa5dd2ee09dd99d8ab23b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.3
|