Skip to main content

Universal Calibration Protocol for Python

Project description

pyxcp_social.svg

Reliable Python tooling for the ASAM MCD-1 XCP protocol (measurement, calibration, flashing) with multiple transports (CAN, Ethernet, USB, Serial) and handy CLI utilities.

PyPI Python Versions License: LGPL v3+ Ruff Ask DeepWiki PDF Manual

pyXCP is a production-ready Python library for communicating with XCP-enabled devices, most commonly automotive ECUs. Use it to take measurements, adjust parameters (calibration), stream DAQ/STIM, and program devices during development.

Highlights:

  • Transports: Ethernet (TCP/IP), CAN, USB, Serial (SxI)

  • Cross-platform: Windows, Linux, macOS

  • Rich CLI tools for common XCP tasks

  • Extensible architecture and layered design


Installation

The easiest way is from PyPI:

pip install pyxcp

To install from the main branch:

pip install git+https://github.com/christoph2/pyxcp.git

Requirements

  • Python >= 3.10

  • Building from source requires a working C/C++ toolchain (native extensions are used for performance). Wheels are provided for common platforms and Python versions; if a wheel is not available, pip will build from source.

  • An XCP slave device (or simulator)

Quick start

New to pyXCP? Start with the 15-minute Quickstart Guide for a hands-on introduction.

The comprehensive tutorial walks you through typical tasks end-to-end.

Using A2L files? See the A2L Integration Guide for symbolic access to ECU parameters.

Minimal example using the built-in argument parser and context manager:

from pyxcp.cmdline import ArgumentParser

ap = ArgumentParser(description="pyXCP hello world")

with ap.run() as x:
    x.connect()
    identifier = x.identifier(0x01)
    print(f"ID: {identifier!r}")
    print(x.slaveProperties)
    x.disconnect()

Async facade for awaitable command handling plus DAQ/event streaming:

import asyncio

from pyxcp.cmdline import ArgumentParser
from pyxcp.transport import AsyncPolicyAdapter


async def main():
    ap = ArgumentParser(description="pyXCP async example")
    policy = AsyncPolicyAdapter()

    async with ap.async_run(policy=policy) as x:
        await x.connect()
        status = await x.getStatus()
        print(status)

        daq_frames = x.subscribe_daq()
        frame = await daq_frames.get()
        print(frame.category, frame.counter, frame.payload.hex())


asyncio.run(main())

Configuration

pyXCP supports a traitlets-based configuration system.

  • Recommended Python config example and generator: tutorial and configuration

  • Legacy TOML examples remain available for compatibility.

Command‑line tools

Installed entry points (see pyproject.toml):

  • xcp-info — print capabilities and properties

  • xcp-id-scanner — scan for slave identifiers

  • xcp-fetch-a2l — retrieve A2L from target (if supported)

  • xcp-profile — generate/convert config files

  • xcp-examples — launch assorted demos/examples

  • xcp-discovery — multicast discovery for XCP on Ethernet (with optional SET_SLAVE_IP_ADDRESS)

  • xmraw-converter — convert recorder .xmraw data

  • pyxcp-probe-can-drivers — list available CAN interfaces

Run any tool with -h for options.

Features

  • Multiple transport layers: Ethernet (TCP), CAN, USB, SxI (serial/UART)

  • High-precision IEEE 1588/PTP hardware timestamping (Ethernet/UDP on Windows and Linux)

  • Data Acquisition (DAQ) and Stimulation (STIM)

  • Calibration (read/write parameters)

  • Flashing/programming workflows

  • A2L (ASAM MCD‑2 MC) support — symbolic access via pya2ldb

  • Recorder utilities and converters (see recorder)

  • Extensible architecture for custom transports

Documentation

To build the Sphinx documentation locally:

  1. Install doc requirements:

    pip install -r docs/requirements.txt

  2. Build:

    sphinx-build -b html docs docs/_build/html

  3. Open

    docs/_build/html/index.html

Compatibility

  • Operating systems: Windows, Linux, macOS

  • Python: 3.10 - 3.14, CPython wheels where available

  • CAN backends: python-can compatible drivers (see howto_can_driver)

Contributing

Contributions are welcome! Please: - Read CODE_OF_CONDUCT - Open an issue or discussion before large changes - Use pre-commit to run linters and tests locally

License

GNU Lesser General Public License v3 or later (LGPLv3+). See LICENSE for details.

References

About ASAM MCD‑1 XCP

XCP (Universal Measurement and Calibration Protocol) is an ASAM standard defining a vendor‑neutral protocol to access internal data of electronic control units (ECUs) for measurement, calibration (parameter tuning), and programming. XCP decouples the protocol from the physical transport, so the same command set can be carried over different buses such as CAN, FlexRay, Ethernet, USB, or Serial.

  • Roles: An XCP Master (this library) communicates with an XCP Slave (your device/ECU or simulator).

  • Layered concept: XCP defines an application layer and transport layers. pyXCP implements the application layer and multiple transport bindings.

  • Use cases:

    • Measurement: Read variables from the ECU in real‑time, including high‑rate DAQ streaming.

    • Calibration: Read/write parameters (calibration data) in RAM/flash.

    • Programming: Download new program/data to flash (where the slave supports it).

For the authoritative description, see the ASAM page: https://www.asam.net/standards/detail/mcd-1-xcp/

XCP in a nutshell

  • Connect/Session: The master establishes a connection, negotiates capabilities/features, and optionally unlocks protected functions via seed & key.

  • Addressing: Memory is accessed via absolute or segment‑relative addresses. Addressing modes are described in the associated A2L file (ASAM MCD‑2 MC), which maps symbolic names to addresses, data types, and conversion rules.

  • Events: The slave exposes events (e.g., “1 ms task”, “Combustion cycle”), which trigger DAQ sampling. The master assigns signals (ODTs) to these events for time‑aligned acquisition.

  • DAQ/STIM: DAQ = Data Acquisition (slave → master), STIM = Stimulation (master → slave). Both use event‑driven lists for deterministic timing.

  • Timestamps: DAQ may carry timestamps from the slave for precise time correlation.

  • Security: Access to sensitive commands (e.g., programming, calibration) can be protected by a seed & key algorithm negotiated at runtime.

  • Checksums: XCP defines checksum services useful for verifying memory regions (e.g., after flashing).

Relation to A2L (ASAM MCD‑2 MC)

While XCP defines the protocol, the A2L file describes the measurement and calibration objects (characteristics, measurements), data types, conversion rules, and memory layout. In practice, you use pyXCP together with an A2L to: - Resolve symbolic names to addresses and data types. - Configure DAQ lists from human‑readable signal names. - Interpret raw values using the appropriate conversion methods.

pyXCP provides utilities to fetch A2L data when supported by the slave and to work with A2L‑described objects. See also pya2ldb!

Transports and addressing

XCP is transport‑agnostic. pyXCP supports multiple transports and addressing schemes: - CAN (XCP on CAN): Robust and ubiquitous in vehicles; limited payload and bandwidth; suited for many calibration tasks and moderate DAQ rates. - Ethernet (XCP on TCP/UDP): High bandwidth with low latency; well suited for rich DAQ and programming workflows. - USB: High throughput for lab setups; requires device support. - Serial/SxI: Simple point‑to‑point links for embedded targets and simulators.

The exact capabilities (e.g., max CTO/DTO, checksum types, timestamping) are negotiated at connect time and depend on the slave and transport.

Supported features (overview)

The scope of features depends on the connected slave. At the library level, pyXCP provides: - Session management: CONNECT/DISCONNECT, GET_STATUS/SLAVE_PROPERTIES, communication mode setup, error handling. - Memory access: Upload/short upload, Download/Download Next, verifications, optional paged memory where supported. - DAQ/STIM: Configuration of DAQ lists/ODTs, event assignment, data streaming, timestamp handling when available. - Programming helpers: Building blocks for program/erase/write flows (exact sequence per slave’s flash algorithm and A2L description). - Security/Seed & Key: Pluggable seed‑to‑key resolution including 32↔64‑bit bridge on Windows. - Utilities: Identifier scanning, A2L helpers, recorder and converters.

Refer to tutorial and configuration for feature usage, and xcp-info for a capability dump of your target.

Compliance and versions

pyXCP aims to be compatible with commonly used parts of ASAM MCD‑1 XCP. Specific optional features are enabled when a slave advertises them during CONNECT. Because implementations vary across vendors and ECU projects, always consult your A2L and use xcp-info to confirm negotiated options (e.g., checksum type, timestamp unit, max DTO size, address granularity).

If you rely on a particular XCP feature/profile not mentioned here, please open an issue with details about your slave and A2L so we can clarify support and—if feasible—add coverage.

Safety, performance, and limitations

  • Safety‑critical systems: XCP is a development and testing protocol. Do not enable measurement/calibration on safety‑critical systems in the field unless your system‑level safety case covers it.

  • Performance: Achievable DAQ rates depend on transport bandwidth, ECU event rates, DTO sizes, and host processing. Ethernet typically yields the highest throughput.

  • Latency/jitter: Event scheduling in the slave and OS scheduling on the host can affect determinism. Use timestamps to correlate data precisely.

  • Access control: Seed & key protects sensitive functions; your organization’s policy should govern algorithm distribution and access.

Further resources

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

pyxcp-0.29.9.tar.gz (317.8 kB view details)

Uploaded Source

Built Distributions

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

pyxcp-0.29.9-cp314-cp314-win_arm64.whl (3.5 MB view details)

Uploaded CPython 3.14Windows ARM64

pyxcp-0.29.9-cp314-cp314-win_amd64.whl (3.5 MB view details)

Uploaded CPython 3.14Windows x86-64

pyxcp-0.29.9-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (5.2 MB view details)

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

pyxcp-0.29.9-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (4.8 MB view details)

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

pyxcp-0.29.9-cp314-cp314-macosx_11_0_arm64.whl (4.0 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

pyxcp-0.29.9-cp313-cp313-win_arm64.whl (2.8 MB view details)

Uploaded CPython 3.13Windows ARM64

pyxcp-0.29.9-cp313-cp313-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.13Windows x86-64

pyxcp-0.29.9-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (4.3 MB view details)

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

pyxcp-0.29.9-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (3.9 MB view details)

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

pyxcp-0.29.9-cp313-cp313-macosx_11_0_arm64.whl (3.3 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pyxcp-0.29.9-cp312-cp312-win_arm64.whl (2.2 MB view details)

Uploaded CPython 3.12Windows ARM64

pyxcp-0.29.9-cp312-cp312-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.12Windows x86-64

pyxcp-0.29.9-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.3 MB view details)

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

pyxcp-0.29.9-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (3.0 MB view details)

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

pyxcp-0.29.9-cp312-cp312-macosx_11_0_arm64.whl (2.6 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyxcp-0.29.9-cp311-cp311-win_arm64.whl (1.6 MB view details)

Uploaded CPython 3.11Windows ARM64

pyxcp-0.29.9-cp311-cp311-win_amd64.whl (1.6 MB view details)

Uploaded CPython 3.11Windows x86-64

pyxcp-0.29.9-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.3 MB view details)

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

pyxcp-0.29.9-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (2.1 MB view details)

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

pyxcp-0.29.9-cp311-cp311-macosx_11_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyxcp-0.29.9-cp310-cp310-win_arm64.whl (982.1 kB view details)

Uploaded CPython 3.10Windows ARM64

pyxcp-0.29.9-cp310-cp310-win_amd64.whl (982.8 kB view details)

Uploaded CPython 3.10Windows x86-64

pyxcp-0.29.9-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.3 MB view details)

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

pyxcp-0.29.9-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (1.2 MB view details)

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

pyxcp-0.29.9-cp310-cp310-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file pyxcp-0.29.9.tar.gz.

File metadata

  • Download URL: pyxcp-0.29.9.tar.gz
  • Upload date:
  • Size: 317.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyxcp-0.29.9.tar.gz
Algorithm Hash digest
SHA256 ef8ae858031f57c971cd4d03ab979f5d64d9b860f6f419e1cd1ec016b7ef8e19
MD5 8d860341565557856a00838c60c9d7b1
BLAKE2b-256 3e2a32897e2c87d0d2f86194ab00db3745c54176f2238d9042b51dcf1a22e372

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9.tar.gz:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp314-cp314-win_arm64.whl.

File metadata

  • Download URL: pyxcp-0.29.9-cp314-cp314-win_arm64.whl
  • Upload date:
  • Size: 3.5 MB
  • Tags: CPython 3.14, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyxcp-0.29.9-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 2733cc30eef50bb2b49463c19084c39cc7fcf8e2f0634b4e4b26f2d930d94e65
MD5 c0a36615bf8bcc7fb12f1534156563be
BLAKE2b-256 643624ad00fa5dd8b9a700a73bac0ba66e3d620dbefa9b09d9b8c2ac62a08069

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp314-cp314-win_arm64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: pyxcp-0.29.9-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 3.5 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyxcp-0.29.9-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 7a7c788c95c659ce810ccd832964bc9b65f6de02158f93df94984c894b9b46f5
MD5 d7cb264cc128ea1e026cc8e28365b978
BLAKE2b-256 3081de51ec48021557152f133c5750548a6751fe8117bae3e6983f62d02f96f2

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp314-cp314-win_amd64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.9-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1426180ee5d1126c69b4ff4c2e5f124194e3cc00ae609ac4e379ab42980bcb3a
MD5 4d241b42093ec73472a1e5c86f55200c
BLAKE2b-256 0970dc9fbbd507068d8a2900851ba0ba6d4b149ff4db160d2a16e81dfc40fad4

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.9-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e16bc59e20ed524fbea42df15ba2ca86519da64f6f2b2aff083d143e6a5d4605
MD5 6503d641e6e064dcd4e5787f6df53a0b
BLAKE2b-256 fe7d4a2e5f266d6ebd1526fef129b3516dcb8b62b9c06c2203e218dca505fe19

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.9-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a68ab0a4c2a107ca7d76b7cbb8bbbe68d9d106a3af26eb1b1c4c516400a610eb
MD5 3c318e0ff6558c2531b55ca8f3df1370
BLAKE2b-256 867ac7bdfb2020d5f012380ffe0e43b1c4c9a0d14629a28ede5bc3716517f863

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp313-cp313-win_arm64.whl.

File metadata

  • Download URL: pyxcp-0.29.9-cp313-cp313-win_arm64.whl
  • Upload date:
  • Size: 2.8 MB
  • Tags: CPython 3.13, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyxcp-0.29.9-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 c40bdc3f8d09780918af3a1cd5d59ad995e2943132c5a3ee715b36d5392d52d8
MD5 e4e8008f290ba2fcd08a876d8ccf7f57
BLAKE2b-256 7c112245fbd7cffe21cb0155b292f3cb47092fc7e8ba763893ac392a2c6230ad

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp313-cp313-win_arm64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pyxcp-0.29.9-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 2.8 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyxcp-0.29.9-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 555c3ee84fc8acbb26fe0dc2ddc98fc4e1a80b4c82bfd7dcc45885740c0248a8
MD5 a168079666830d3a289187306b1b3d79
BLAKE2b-256 3f985adbce244b30ee1955e70dddfba3b15e2522be2e73f4d9f02eda5b3f59a9

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp313-cp313-win_amd64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.9-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bca8434339b8e7c96b034d06f3141b953271fee8a420304ba242a1b2440722f6
MD5 2be6f5b7747bbbe7a61d9115c7606e9d
BLAKE2b-256 58db42a1ee9b04b29d782ed738b36bb81417ca8e7e66f20ba51169e69d26d875

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.9-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9a398544c158290e12182783050c20d2113fb655daa10f4d6d6cb1430d8c04e3
MD5 de9a9ad9fa83389b994016e5e8fdd2c4
BLAKE2b-256 9649bc1865b3309e3334a245a3aa20141a6dcacbb0923298dd8df62bbc3c5433

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.9-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 df3e896fbad329e6c8e41f583af8600003a0798657c55204ed09189ec14e2058
MD5 2d5695a57a97c6fdac6a2bd0c89b8476
BLAKE2b-256 fa6f4f2ae49c2e5dfada099674be0b3309596b9ff9ce7b8a77ef06b25f182d4d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp312-cp312-win_arm64.whl.

File metadata

  • Download URL: pyxcp-0.29.9-cp312-cp312-win_arm64.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: CPython 3.12, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyxcp-0.29.9-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 f547f880752d33a8f9e25d8eb5b0eecefdbce00799e449dfc2651221dc1f34f6
MD5 e533934ca5390f64ab66f06da1dfefdc
BLAKE2b-256 062d3146ee42f4b050de8cf705b8be0fc42b1f589b1395a975e2ea06d9cd5969

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp312-cp312-win_arm64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pyxcp-0.29.9-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyxcp-0.29.9-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 a995e3aba25730f7e10a6e427c978651765e5fd03f25c1c3bcbebe0eb1867416
MD5 a29970d2c567d4efeadfc35e0708e7e0
BLAKE2b-256 1208099834c0408f40ea680d229e814ff73ca9bb591589d111b51610c18ca611

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp312-cp312-win_amd64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.9-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3b99d32490a260dff1cdde376358371ddf4e2087ac9269d402bcca7fe451042c
MD5 a1c64db42fdedf8f1d801df8fdaeaa04
BLAKE2b-256 02fb4ea19bda5a6bceda76e4abfbf2fd3ef9e92a004ec665b7fca5ce8d84689a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.9-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 96658916dcf0af0ecd982a02f54e3c1a6df860c7d12b4b07c737f731d6f10ca7
MD5 eda6fb2ff3f6534733ad97b79ced4840
BLAKE2b-256 3ef02936a73bb3c32876ea54ec26c4a923e81cdef73ada23188e072ed8fa5dbb

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.9-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 069f78474514914e2b756c8c84b685e9c829360f3731e0ef46c975417b92fc65
MD5 c6c9ac0c0b166db717dab7dfb4f94c2e
BLAKE2b-256 e3efcf2b28808c32d41d526c42e8cfa45a7a22d5ec60ac9d15404e1b7f6a7a90

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp311-cp311-win_arm64.whl.

File metadata

  • Download URL: pyxcp-0.29.9-cp311-cp311-win_arm64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: CPython 3.11, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyxcp-0.29.9-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 ee9573140090f20c860297693033204ae0e2d938408c415621663bdc75976cdf
MD5 22c532b372871058400311ef097fab05
BLAKE2b-256 7c14b81bb6a4c7945cbb61a27bdc181cb9f39f2f1acf9c0e3287137fe9dd0e72

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp311-cp311-win_arm64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pyxcp-0.29.9-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyxcp-0.29.9-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 febbb1eabfa09845f2856c8f19553b03043bfdea470b674a5656fb2d64bdd3ff
MD5 cc5c7509a6f37cefa32d5d845d1f8f04
BLAKE2b-256 c65c985725a100ff9ad99987191b8f91e1a93457a0280725ee14c582975e8d3e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp311-cp311-win_amd64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.9-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 176e9fbeb09e0f08496aee68fb2517ac3239d04964a7fd72b08512f1314d78ff
MD5 c1b9f1f36d44b913d9f45c79737c72c5
BLAKE2b-256 89e582adea2ef41934f9361bf56f42e0a0928d8c77cfca734aa9d3b031e2cf96

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.9-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ee71b7a1d039c9ce05557faf4ad149644fca7a7831490fd36f76417acb24d396
MD5 297bd35608d8f25e472a94fce493a608
BLAKE2b-256 b50643ec7dfd5d9a586da4f09411218d71d38524e9bef673f24c07dee82b1189

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.9-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e4a4a8f9f8330149baf124a607123f9e2bf7a6cb5dd09655e02cec45d3459e0d
MD5 eb47dbfa77f7b704c1050dafc2ba35ce
BLAKE2b-256 8f3ef48caaf1529b751ecaa1cddc2353c52920005e94a937f198b0cd62fd58fd

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp310-cp310-win_arm64.whl.

File metadata

  • Download URL: pyxcp-0.29.9-cp310-cp310-win_arm64.whl
  • Upload date:
  • Size: 982.1 kB
  • Tags: CPython 3.10, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyxcp-0.29.9-cp310-cp310-win_arm64.whl
Algorithm Hash digest
SHA256 55103ad81489c11cfe13fa93b854ef2d5fab7f205e36fe77383d688ce6879e60
MD5 a99a12f776181a0f7338d551914c6538
BLAKE2b-256 41ba8f4a35d01bb8695544fbd63466c9aeb3d060d6812d36e0b52e4319270b27

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp310-cp310-win_arm64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pyxcp-0.29.9-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 982.8 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyxcp-0.29.9-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ba92b73ece69857d5a8357a7f87f499ed00a69aaa0c61ac21ab49588055a4697
MD5 ed36b7b6b67dff295ebea2376be9a4d6
BLAKE2b-256 7d6cf6c01e33ac3afb62bd09f13f0d28ab9c5e72c6127719754ab3bd7aa1279c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp310-cp310-win_amd64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.9-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b472bbcc6200e9a82a64621b895317b0d2baf76933e5fff3b7355a2638709282
MD5 c461552f015324f12549824a2ed1396f
BLAKE2b-256 31b0c78d35592ccdad92f7b257a7861ea8878f48ed332983eb42f454b993ca7b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.9-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 7acba57d7303c32b9878af27370201c26e0978c15f6b7d46c44b604ff64559e5
MD5 eedead4877241fa90ef64853b591a9de
BLAKE2b-256 0a95704a2d42545042c230521290ae8af1402248bc429710223e5072b65dc624

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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

File details

Details for the file pyxcp-0.29.9-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.9-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8d85467397def5cfd3c1298ad4a40afd57dec0b0934dd6f0de96a572586a218b
MD5 6b584157fc5412a23639d70085c321af
BLAKE2b-256 98e667e91505bc1f7b45971492530b4f6c8bfd4181341f37f72129f63e9af936

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.9-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: pythonapp.yml on christoph2/pyxcp

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