Skip to main content

uHAL module to interface with IPbus clients

Project description

uHAL PyPI Distribution

This project provides an easy way to install the uHAL Python API from the IPbus software via PyPI. This vastly simplies the installation, which is notoriously hard to get right especially with virtual environments.

Installation

The uHAL component can be installed via:

pip install uhal

Binary releases are available for Linux. Other platforms are not supported by IPbus.

Building ControlHub

While this project focuses on the install of the uHAL Python API, building the ControlHub is another challenge itself. However, since the uHAL part is now not required anymore, the installation can be done in an Erlang container.

First, the IPbus software repository needs to be cloned:

git clone --depth=1 -b v2.8.22 https://github.com/ipbus/ipbus-software.git

Then an Erlang container with the IPbus software mounted needs to be started via docker or podman:

docker run -v $(pwd)/ipbus-software:/ipbus-software -it erlang:26 /bin/bash

Inside the container, a build of the ControlHub can be achieved with the Set variable:

cd ipbus-software
make Set=controlhub

Finally after exiting the container, the ControlHub can be installed on the host:

cd ipbus-software
sudo make Set=controlhub install

Developer Notes

Adding new Python Versions

Since uHAL is a C++ library at its core, binaries for each Python version need to compiled separately. Thus if a new Python version is released, a new upload to PyPI is required. For this reason, and additional number is added to the IPbus version in meson.build which allows to create a new tag without needing a new IPbus version.

The new Python version needs to be added in pyproject.toml and .github/workflows/build_wheels.yml. Once a corresponding tag is created in the repository, a new version is uploaded to PyPI automatically.

Updating the IPbus Software

When updating the IPbus software, the version needs to updated manually in the following places:

  • everything in ipbus-software.wrap
  • the project version in meson.build
  • the project version in subprojects/packagefiles/ipbus-software/meson.build
  • the git tag mentioned in the README

Additionally it is worth checking if:

  • any of the other subprojects have a new version released
  • a newer Erlang version can be used to compile ControlHub

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

uhal-2.8.22.post1-cp314-cp314-musllinux_1_2_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

uhal-2.8.22.post1-cp314-cp314-musllinux_1_2_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

uhal-2.8.22.post1-cp314-cp314-manylinux_2_28_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

uhal-2.8.22.post1-cp314-cp314-manylinux_2_28_aarch64.whl (1.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ ARM64

uhal-2.8.22.post1-cp313-cp313-musllinux_1_2_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

uhal-2.8.22.post1-cp313-cp313-musllinux_1_2_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

uhal-2.8.22.post1-cp313-cp313-manylinux_2_28_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

uhal-2.8.22.post1-cp313-cp313-manylinux_2_28_aarch64.whl (1.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

uhal-2.8.22.post1-cp312-cp312-musllinux_1_2_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

uhal-2.8.22.post1-cp312-cp312-musllinux_1_2_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

uhal-2.8.22.post1-cp312-cp312-manylinux_2_28_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

uhal-2.8.22.post1-cp312-cp312-manylinux_2_28_aarch64.whl (1.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

uhal-2.8.22.post1-cp311-cp311-musllinux_1_2_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

uhal-2.8.22.post1-cp311-cp311-musllinux_1_2_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

uhal-2.8.22.post1-cp311-cp311-manylinux_2_28_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

uhal-2.8.22.post1-cp311-cp311-manylinux_2_28_aarch64.whl (1.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

File details

Details for the file uhal-2.8.22.post1-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for uhal-2.8.22.post1-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7ad5aac7e39d3a2811adeb67bce95d2b23ff20bbd9850d9a58610049fd375ced
MD5 837465df68d00610c303f51587cccd8a
BLAKE2b-256 2be26fcd7c25bbba487d56adb0bd035798dad4aa07fcac7b6b7d92599b17e912

See more details on using hashes here.

Provenance

The following attestation bundles were made for uhal-2.8.22.post1-cp314-cp314-musllinux_1_2_x86_64.whl:

Publisher: wheels.yml on constellation-daq/uhal-pypi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file uhal-2.8.22.post1-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for uhal-2.8.22.post1-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 3990034d20bb612031d440db787c1aec821579b220a3cde3144c7a417ccd55dc
MD5 d0ad5ae1ea43abfb95db33c6beebd30b
BLAKE2b-256 d9af60c7a40e07def387ef1be2ec8b89342c88f2d30f60059f69a44b3e09896d

See more details on using hashes here.

Provenance

The following attestation bundles were made for uhal-2.8.22.post1-cp314-cp314-musllinux_1_2_aarch64.whl:

Publisher: wheels.yml on constellation-daq/uhal-pypi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file uhal-2.8.22.post1-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for uhal-2.8.22.post1-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 dc7851f47affeb0a0ecc5249addf126f2760a5e0d84e26599570f3fdddd2f354
MD5 4e8aa195103de3b79de25e3683b570a9
BLAKE2b-256 6d403f6261ae417635e29a3d500d20c0dea0270941494dd798c332cc89907969

See more details on using hashes here.

Provenance

The following attestation bundles were made for uhal-2.8.22.post1-cp314-cp314-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on constellation-daq/uhal-pypi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file uhal-2.8.22.post1-cp314-cp314-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for uhal-2.8.22.post1-cp314-cp314-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 40b69127310a83304d66c1bb039dd2df8424e245ed86ef84b1575d728ed5f484
MD5 8ea8ae12b8ebe91c04fd5a2de605a6ec
BLAKE2b-256 c28a5805c029a716ba68f7b00fd075a9feacdb095d0a6b3348fb952d8fce0834

See more details on using hashes here.

Provenance

The following attestation bundles were made for uhal-2.8.22.post1-cp314-cp314-manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on constellation-daq/uhal-pypi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file uhal-2.8.22.post1-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for uhal-2.8.22.post1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1b1fba4b76ba6a3c6631ffc07857fd8cba97d6cd6d6132be59ed571bd1e82370
MD5 0b3593797f85c36510c720379d9dc531
BLAKE2b-256 041a7b47293fdc69533c355062d9c33314801b065f8bd1d5aa4296439fd35e87

See more details on using hashes here.

Provenance

The following attestation bundles were made for uhal-2.8.22.post1-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: wheels.yml on constellation-daq/uhal-pypi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file uhal-2.8.22.post1-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for uhal-2.8.22.post1-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 32240ad69f79f0b3149af0da7fdd995724da032af0c4df8e5472fe108d9bcf2a
MD5 33803ce48350565baa10491105ecb6ab
BLAKE2b-256 a822e914e68faebf7615f5b282b53ca97bf52dd1d76d9db275cde0e77a672b56

See more details on using hashes here.

Provenance

The following attestation bundles were made for uhal-2.8.22.post1-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: wheels.yml on constellation-daq/uhal-pypi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file uhal-2.8.22.post1-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for uhal-2.8.22.post1-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c0436238d3f65ac3562514386b6b1c1633c0a935b947edb35312cf9610b7a209
MD5 65851cebc20fae8817496d603c003dba
BLAKE2b-256 0ae7e1ae17051bf7f95b6ca9d379369bc1105fd2c0f4d88e329dffad687e944e

See more details on using hashes here.

Provenance

The following attestation bundles were made for uhal-2.8.22.post1-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on constellation-daq/uhal-pypi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file uhal-2.8.22.post1-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for uhal-2.8.22.post1-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 427da0ae333da35f4fc734d0fae797bc7a90ab2d2bd8abb5f9c9cbc16e552766
MD5 715cf5bda9faab4529797353cdd9eb79
BLAKE2b-256 3165fcc32171c4c89f47006507eb8548bb70fc311ee332976afc75d6a94d1dca

See more details on using hashes here.

Provenance

The following attestation bundles were made for uhal-2.8.22.post1-cp313-cp313-manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on constellation-daq/uhal-pypi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file uhal-2.8.22.post1-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for uhal-2.8.22.post1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 49fde18b42a7b655be649f5d0b504e9628af24e5bda7c9e1134611ecf64736bc
MD5 692f3b1197da8d6f57de4186113ead41
BLAKE2b-256 3876c66368878414374aee5c893a119daf0272e301db62d304d8c52e12c54d0c

See more details on using hashes here.

Provenance

The following attestation bundles were made for uhal-2.8.22.post1-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: wheels.yml on constellation-daq/uhal-pypi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file uhal-2.8.22.post1-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for uhal-2.8.22.post1-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 0f3136b690631bdfccb0d1c4eaa1c1184be4991818573e28844cfdf4a7de496e
MD5 23f029998c220fc2fd5ca3843d2a9a9b
BLAKE2b-256 95a22d1eab5c8524be6d5a23e5d0d4d7a32f9f11d5ef658be46e0ca09e03d669

See more details on using hashes here.

Provenance

The following attestation bundles were made for uhal-2.8.22.post1-cp312-cp312-musllinux_1_2_aarch64.whl:

Publisher: wheels.yml on constellation-daq/uhal-pypi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file uhal-2.8.22.post1-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for uhal-2.8.22.post1-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9f5b7a890ade8e3dcfdc9a99e61575e1d28a9cdddb581def3e81b5b72dc1e2df
MD5 04806efa541e1d75d7b1afc27be50aff
BLAKE2b-256 6a349cb7b1cc15f086a6449320a1d1c55027223ebefbcb2b08d06d0d0292d7f2

See more details on using hashes here.

Provenance

The following attestation bundles were made for uhal-2.8.22.post1-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on constellation-daq/uhal-pypi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file uhal-2.8.22.post1-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for uhal-2.8.22.post1-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 59719b42b9fe08661f3d26c22950a340f3abb8582cd1b381abd053584d033e53
MD5 91f048ffcd86fde719cadcf658e45cae
BLAKE2b-256 604825740dfa11464ca7f03c19aa24bd3fc6dfbcdd3cfc7827a4ec85294d732c

See more details on using hashes here.

Provenance

The following attestation bundles were made for uhal-2.8.22.post1-cp312-cp312-manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on constellation-daq/uhal-pypi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file uhal-2.8.22.post1-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for uhal-2.8.22.post1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a7cd898b459f478451c1bda07258445f432bf49d6bed24a671df8f4de2554ac6
MD5 b6ba851ce4a728c3a706abcdfa059b9c
BLAKE2b-256 940cb83e452b4c97babbdf631ad43a5513b08b70a61b35aa926276a18924de09

See more details on using hashes here.

Provenance

The following attestation bundles were made for uhal-2.8.22.post1-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: wheels.yml on constellation-daq/uhal-pypi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file uhal-2.8.22.post1-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for uhal-2.8.22.post1-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 4787033ebdac762ca291cd9bd53d35a842c8a30adbb0319997abee5a3b87502c
MD5 8d9a82579e237d2a5dea7f2b95b3b557
BLAKE2b-256 35c5614f68153b5cff586d36528ec6369f885290d692d0956e6c611ce0c76000

See more details on using hashes here.

Provenance

The following attestation bundles were made for uhal-2.8.22.post1-cp311-cp311-musllinux_1_2_aarch64.whl:

Publisher: wheels.yml on constellation-daq/uhal-pypi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file uhal-2.8.22.post1-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for uhal-2.8.22.post1-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cd8374600665d210e84f01f16242217fc925b626c80a9e0a692d5b08575f7a0b
MD5 9c20306e185bd8bdc6ba3786d6b97cc2
BLAKE2b-256 c7657baa1a3ff2d72450dc30b661a16e57119f0cb2aaa733c2a1c4ee4c75079f

See more details on using hashes here.

Provenance

The following attestation bundles were made for uhal-2.8.22.post1-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on constellation-daq/uhal-pypi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file uhal-2.8.22.post1-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for uhal-2.8.22.post1-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 25ad586c6d8145f8ed74f7aec699f5ed623520f83325c91a6b8c86739b4c1a3f
MD5 abf41102b806ec5108be3e18d3a3e222
BLAKE2b-256 2fa3a3f09e66f140ac8d71e7db0df958a4fd866f67ef814bc7ed624133ad95b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for uhal-2.8.22.post1-cp311-cp311-manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on constellation-daq/uhal-pypi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page