Skip to main content

Wirestead Python

Python bindings for the Wirestead C++ communication library.

This repository contains the Python package and pybind11 bindings. The C++ core lives in the main Wirestead repository.

Package Layout

  • Python package: wirestead
  • Compiled extension: wirestead._core

Documentation

The first split release keeps the existing binding API surface. It does not add new transport functionality.

Installation

PyPI (recommended)

Prebuilt wheels are published for Python 3.10 through 3.13 on Linux (manylinux_2_28 x86_64 and aarch64), macOS (arm64), and Windows (amd64). No C++ toolchain or Wirestead core checkout is required.

pip install wirestead

The remaining installation methods below build the extension locally and are meant for contributors, other Python versions/platforms, or consuming a custom core build.

Development mode with local core source

git clone https://github.com/wirestead/wirestead.git
git clone https://github.com/wirestead/wirestead-python.git

cd wirestead-python

python -m pip install -U pip
python -m pip install -e . \
  -Ccmake.define.WIRESTEAD_CORE_SOURCE_DIR=../wirestead

Installed core package

cmake -S ../wirestead -B ../wirestead-build \
  -DCMAKE_BUILD_TYPE=Release \
  -DWIRESTEAD_BUILD_TESTS=OFF \
  -DWIRESTEAD_BUILD_DOCS=OFF

cmake --build ../wirestead-build --parallel
cmake --install ../wirestead-build --prefix ../wirestead-install

cd ../wirestead-python
python -m pip install . \
  -Ccmake.define.CMAKE_PREFIX_PATH=../wirestead-install

vcpkg core package

The repository includes a vcpkg.json manifest that depends on wirestead.

export VCPKG_ROOT=/path/to/vcpkg

python -m pip install . \
  -Ccmake.define.CMAKE_TOOLCHAIN_FILE=$VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake

Import Smoke

python -c "import wirestead; print(wirestead.__version__)"

Tests

python -m pytest -q -m "not serial"

Real TCP loopback coverage is marked as integration and is disabled unless explicitly requested:

WIRESTEAD_PYTHON_RUN_LOOPBACK_TESTS=1 python -m pytest -q -m "integration"

Release wheels are also validated as installed artifacts from a fresh virtual environment:

python scripts/run_wheel_consumer_smoke.py \
  --wheel-dir dist \
  --project-root .

For local validation across supported core consumption paths, use:

scripts/verify.sh --core-source ../wirestead

Set VCPKG_ROOT to enable the vcpkg path, or pass --skip-vcpkg when it is not applicable. Add --installed-prefix /path/to/wirestead/install to validate against an installed core package.

Compatibility

Wirestead Python follows the same minor release line as the Wirestead C++ core.

Wirestead Python Wirestead core
0.9.x 0.9.x

Patch versions may differ when Python-only packaging, binding, documentation, or CI fixes do not require a matching core patch release.

The Python package is currently experimental until the C++ public API reaches a stable release line.

Support Matrix

Item Status
Python wheels CPython 3.10, 3.11, 3.12, and 3.13
Linux wheels manylinux_2_28 x86_64 and aarch64
Windows wheels amd64
macOS wheels arm64
Install command pip install wirestead
Source build Contributor/custom-core path only
TCP Supported and wheel-smoke tested on Linux, Windows, and macOS
UDP Supported and wheel-smoke tested on Linux, Windows, and macOS
Serial API surface is shipped; hardware loopback is not part of wheel smoke
UDS Supported and wheel-smoke tested on Linux, Windows, and macOS
Core compatibility wirestead Python 0.9.x targets Wirestead C++ core 0.9.x

Users migrating from Unilink should switch package and import names to wirestead. See the core migration guide: https://github.com/wirestead/wirestead/blob/main/docs/migration-from-unilink.md

Download files

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

Source Distribution

wirestead-0.9.5.tar.gz (46.8 kB view details)

Uploaded Source

Built Distributions

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

wirestead-0.9.5-cp313-cp313-win_amd64.whl (641.7 kB view details)

Uploaded CPython 3.13Windows x86-64

wirestead-0.9.5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

wirestead-0.9.5-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

wirestead-0.9.5-cp313-cp313-macosx_15_0_arm64.whl (697.3 kB view details)

Uploaded CPython 3.13macOS 15.0+ ARM64

wirestead-0.9.5-cp312-cp312-win_amd64.whl (642.0 kB view details)

Uploaded CPython 3.12Windows x86-64

wirestead-0.9.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

wirestead-0.9.5-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

wirestead-0.9.5-cp312-cp312-macosx_15_0_arm64.whl (697.2 kB view details)

Uploaded CPython 3.12macOS 15.0+ ARM64

wirestead-0.9.5-cp311-cp311-win_amd64.whl (640.8 kB view details)

Uploaded CPython 3.11Windows x86-64

wirestead-0.9.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

wirestead-0.9.5-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

wirestead-0.9.5-cp311-cp311-macosx_15_0_arm64.whl (697.5 kB view details)

Uploaded CPython 3.11macOS 15.0+ ARM64

wirestead-0.9.5-cp310-cp310-win_amd64.whl (639.8 kB view details)

Uploaded CPython 3.10Windows x86-64

wirestead-0.9.5-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

wirestead-0.9.5-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

wirestead-0.9.5-cp310-cp310-macosx_15_0_arm64.whl (696.5 kB view details)

Uploaded CPython 3.10macOS 15.0+ ARM64

File details

Details for the file wirestead-0.9.5.tar.gz.

File metadata

  • Download URL: wirestead-0.9.5.tar.gz
  • Upload date:
  • Size: 46.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for wirestead-0.9.5.tar.gz
Algorithm Hash digest
SHA256 74277ca07a6db3f5df71b77ee7921144b97eb297b36d7c7ded52e06ac56fdc12
MD5 8ec1c1d566daaab4ba24554aa3a54ecf
BLAKE2b-256 d0135e0a25ad226d781f16c063df21d6b2532e73230798b3427e88d69be27d17

See more details on using hashes here.

Provenance

The following attestation bundles were made for wirestead-0.9.5.tar.gz:

Publisher: release.yml on wirestead/wirestead-python

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

File details

Details for the file wirestead-0.9.5-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: wirestead-0.9.5-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 641.7 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for wirestead-0.9.5-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 7e3776aa4b8aa8d8b5f68a3b1bc2ea8d507c6164af80e70bf25ebbfc9c6bdb9b
MD5 9352f0841f2abfc46fa197183892d200
BLAKE2b-256 be029b312523469821a5c5590a912d6b9719479d9e7a3e7d205f540c57ca9346

See more details on using hashes here.

Provenance

The following attestation bundles were made for wirestead-0.9.5-cp313-cp313-win_amd64.whl:

Publisher: release.yml on wirestead/wirestead-python

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

File details

Details for the file wirestead-0.9.5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for wirestead-0.9.5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c23fc4f48a25723794b703f86eac3c2dee5e3290b8bc8160d05fd7e2297bf9e5
MD5 081f7e3c9069402545544d5cbe6411b9
BLAKE2b-256 6fa41e9be014de616f81eae4a6b2fb0a84b826165269111e56606bc249abd44d

See more details on using hashes here.

Provenance

The following attestation bundles were made for wirestead-0.9.5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on wirestead/wirestead-python

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

File details

Details for the file wirestead-0.9.5-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for wirestead-0.9.5-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 fc97c94724c01538585b3f203c2b88fdc7f4f03a1343d9434aaf19abb44d44d5
MD5 22a9b3fd9e4934524d32d75ca9120a80
BLAKE2b-256 a1e737f1024d1f4507d990fec0613a404a98ecc223209e18910090349501ae6e

See more details on using hashes here.

Provenance

The following attestation bundles were made for wirestead-0.9.5-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on wirestead/wirestead-python

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

File details

Details for the file wirestead-0.9.5-cp313-cp313-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for wirestead-0.9.5-cp313-cp313-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 9584937364118aac9b96ad8b48af6ec7ba2bca39c60206923d9261e38f990ace
MD5 7f78b32387e59ded63b58c227953bb5d
BLAKE2b-256 86b4b98d5ff1edb8f4479d80a0b959d9d1c33afaf02912f9d3f074ebf9d830c1

See more details on using hashes here.

Provenance

The following attestation bundles were made for wirestead-0.9.5-cp313-cp313-macosx_15_0_arm64.whl:

Publisher: release.yml on wirestead/wirestead-python

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

File details

Details for the file wirestead-0.9.5-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: wirestead-0.9.5-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 642.0 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for wirestead-0.9.5-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 3871d0a9004e23cabd3b9c8cf482f4ac0e58f9fae1ef6c6e7e1071a09d43b958
MD5 b2b67c760473ac275789de1d7172c610
BLAKE2b-256 32f7ddcc4b6950f57318365d246bed822923d5478da91495bbe5c3dd9ecf831a

See more details on using hashes here.

Provenance

The following attestation bundles were made for wirestead-0.9.5-cp312-cp312-win_amd64.whl:

Publisher: release.yml on wirestead/wirestead-python

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

File details

Details for the file wirestead-0.9.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for wirestead-0.9.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5f7fd4d428fe582b4594971dddd85566dd12282a05a06db5bdcfbded14e6ef7f
MD5 8854df247cf5698d293ac78da4518c2f
BLAKE2b-256 2cdb5c1a328507d1e138db19ccba56aa766def6d4066ebfc9f978531d779afc3

See more details on using hashes here.

Provenance

The following attestation bundles were made for wirestead-0.9.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on wirestead/wirestead-python

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

File details

Details for the file wirestead-0.9.5-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for wirestead-0.9.5-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4ac6fef1d27e7d37d4a9f1c6397eaa4c34abd36e0432715b7bc7a774f661f951
MD5 e5644648cc03b2e2e70f58b02332379a
BLAKE2b-256 5951f85093b9fbf52c0c652ad61404b4db8996f820f871755869fb4608843c40

See more details on using hashes here.

Provenance

The following attestation bundles were made for wirestead-0.9.5-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on wirestead/wirestead-python

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

File details

Details for the file wirestead-0.9.5-cp312-cp312-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for wirestead-0.9.5-cp312-cp312-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 1d09fd1fa50baab531db7f09f878f92fc53cbaf7f862638e9e0990e22726f6d8
MD5 9cbd8c4c7131da91a0e3fc98b7761c5f
BLAKE2b-256 e6e06838c945ef70d01bc1a9621ef8bcf04420333749f1fa7047ab03d2365d40

See more details on using hashes here.

Provenance

The following attestation bundles were made for wirestead-0.9.5-cp312-cp312-macosx_15_0_arm64.whl:

Publisher: release.yml on wirestead/wirestead-python

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

File details

Details for the file wirestead-0.9.5-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: wirestead-0.9.5-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 640.8 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for wirestead-0.9.5-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 d6303551dd2afb110d4a1723132860e07211e0a2967b6791a3b6b097a0cbb089
MD5 0bb40381ec2e2b51f0a8cd4f641b39de
BLAKE2b-256 2cb99dc19f4a4d80205accc86874f473319bbbadb6340979af977203cfe7e171

See more details on using hashes here.

Provenance

The following attestation bundles were made for wirestead-0.9.5-cp311-cp311-win_amd64.whl:

Publisher: release.yml on wirestead/wirestead-python

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

File details

Details for the file wirestead-0.9.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for wirestead-0.9.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1343f42a449f534da052ba3489b58490c1c983301dd34e38cee81b2ee14b2707
MD5 e3daea08696143aa9d0187e7dba8330e
BLAKE2b-256 0b0d129535044cb1c3446c3ac97b12c3bee981615b5800f55034aff883368f23

See more details on using hashes here.

Provenance

The following attestation bundles were made for wirestead-0.9.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on wirestead/wirestead-python

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

File details

Details for the file wirestead-0.9.5-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for wirestead-0.9.5-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9b5d5df36ce19785bac56f952b3646a2b67e093be258ace73cc04b686cc08baf
MD5 3a5c8c60810707d271e3a130e5387a7a
BLAKE2b-256 929ea7da2d5a595c2514c8e3c5377535093797cf8907ec04023da14b5a642b8c

See more details on using hashes here.

Provenance

The following attestation bundles were made for wirestead-0.9.5-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on wirestead/wirestead-python

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

File details

Details for the file wirestead-0.9.5-cp311-cp311-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for wirestead-0.9.5-cp311-cp311-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 720ca4ec199c4ec615dacd3d1a608102653bd677f2e73f0abe2c43d7d005bc38
MD5 9c5cb043d82d0ace1543e1fbc684e58d
BLAKE2b-256 83cf2eba526c89940ce1b61e09b1e3fd182fea0d73a5d941761a94f73e4448bc

See more details on using hashes here.

Provenance

The following attestation bundles were made for wirestead-0.9.5-cp311-cp311-macosx_15_0_arm64.whl:

Publisher: release.yml on wirestead/wirestead-python

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

File details

Details for the file wirestead-0.9.5-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: wirestead-0.9.5-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 639.8 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for wirestead-0.9.5-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 9da8b8ad512e3695310c2972350a05cfaf70e22214fc87fb37bf208e0cf1588d
MD5 de5f39214764b8b44cf15d2fd433099c
BLAKE2b-256 f76946621bddf5efef4d1763cbcffffbc619ce9925f409c6a1daab2c478026dd

See more details on using hashes here.

Provenance

The following attestation bundles were made for wirestead-0.9.5-cp310-cp310-win_amd64.whl:

Publisher: release.yml on wirestead/wirestead-python

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

File details

Details for the file wirestead-0.9.5-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for wirestead-0.9.5-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1b699df92c748fd314a84b6b75f4fbbcdc164f887ca7854b16c1b75ccab71cb9
MD5 5bacce15e3ac8a76db632605f7b90cb9
BLAKE2b-256 124172e07b9a98df551dd9c865142fb02ab777b069050ceba7b3cea9e02f1e21

See more details on using hashes here.

Provenance

The following attestation bundles were made for wirestead-0.9.5-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on wirestead/wirestead-python

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

File details

Details for the file wirestead-0.9.5-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for wirestead-0.9.5-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 3bf65d6e66a9466560918ced027d486eb609be5706266f9f89b7cdf007dcd900
MD5 407d44792bc30b5c9bd7f1139cefa424
BLAKE2b-256 615b330682a6f0e1a656f94147ae4db56dcfe7fa18b88c5fe71414b0151856c9

See more details on using hashes here.

Provenance

The following attestation bundles were made for wirestead-0.9.5-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on wirestead/wirestead-python

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

File details

Details for the file wirestead-0.9.5-cp310-cp310-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for wirestead-0.9.5-cp310-cp310-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 b15ad6f350c4efa985ebb297456e78f4d5b83184435f659ef372c605046ac8c7
MD5 4f11b8b3657ad61ef0ad667c9a0e92fe
BLAKE2b-256 b036c3178035e72d40a15da6b6e4c8e10ef4381081ed93788e100ad3648aafb1

See more details on using hashes here.

Provenance

The following attestation bundles were made for wirestead-0.9.5-cp310-cp310-macosx_15_0_arm64.whl:

Publisher: release.yml on wirestead/wirestead-python

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 Sentry Error logging StatusPage Status page