Skip to main content

RPC client helpers for DMX tester firmware

Project description

dmx-tester-rpc

Python package for communicating with DMX tester firmware over the RPC serial interface.

Install for development

python -m venv .venv
source .venv/bin/activate
python -m pip install -e .[dev]

Run the CLI

After installation, the package exposes a dmx_tester command:

source .venv/bin/activate
dmx_tester --help
dmx_tester /dev/ttyACM1 latency --n-reports 3
dmx_tester 1050266122 send --data-val 0x12 --data-len 24

Build distributables

source .venv/bin/activate
python -m build

Upload to PyPI

source .venv/bin/activate
python -m twine upload dist/*

GitLab tag release

GitLab CI publishes this package automatically when a tag matches:

python-v<MAJOR>.<MINOR>.<PATCH>

Example:

git tag python-v1.2.3
git push origin python-v1.2.3

For tag builds, CI sets the package version to the tag value without the python-v prefix (for example, python-v1.2.3 -> 1.2.3) and uploads to pypi.org.

Publishing uses PyPI Trusted Publisher (OIDC) from GitLab CI/CD, so no long-lived PyPI token is stored in CI variables.

Configure Trusted Publisher once in PyPI for this project:

  • Go to the project on pypi.org and open Publishing.
  • Add a GitLab CI/CD trusted publisher for this repository/tag workflow.
  • Ensure the project is owned/managed by the bofh69 PyPI account.

The CI pipeline runs a Trusted Publisher preflight job before the actual publish step, so tag pipelines fail early with a clear configuration error if OIDC trust is not set up correctly.

PyPI does not allow re-uploading the same package name/version files. If a publish already happened for a version, create and push a new python-v... tag.

Run with PyPy

pypy3 -m venv .venv-pypy
source .venv-pypy/bin/activate
python -m pip install -e .
python -c "from dmx_tester import RpcClient, DmxCommands; print('ok')"

License

This package is licensed under the MIT License. See the LICENSE file.

Project details


Download files

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

Source Distribution

lr_dmx_tester-0.0.3.tar.gz (9.0 kB view details)

Uploaded Source

Built Distribution

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

lr_dmx_tester-0.0.3-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file lr_dmx_tester-0.0.3.tar.gz.

File metadata

  • Download URL: lr_dmx_tester-0.0.3.tar.gz
  • Upload date:
  • Size: 9.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for lr_dmx_tester-0.0.3.tar.gz
Algorithm Hash digest
SHA256 18e85e99f46edf27d5d02a74fcc2514ee1e70082de91623e6077fdc01a1d69b8
MD5 383b9e983c0ad1ac4ee7828a27ec34bf
BLAKE2b-256 df8d8860bfbc8cf1b2cad82a21e1f1c4e4af06bebeb10f579a947fd3064e9f98

See more details on using hashes here.

File details

Details for the file lr_dmx_tester-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: lr_dmx_tester-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for lr_dmx_tester-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 357daa76143a7ffc7059d1d6a248e11b588404a653c9cc7e046d0d9242d84ff7
MD5 9da6b5f6ad27bbd160d7499dbc0f4593
BLAKE2b-256 28b6ae92d18d140040f237f5790caa1c92c114235a6adac2b19c29b86074e418

See more details on using hashes here.

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