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.11.tar.gz (329.7 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.11-cp314-cp314-win_arm64.whl (3.9 MB view details)

Uploaded CPython 3.14Windows ARM64

pyxcp-0.29.11-cp314-cp314-win_amd64.whl (4.2 MB view details)

Uploaded CPython 3.14Windows x86-64

pyxcp-0.29.11-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (5.3 MB view details)

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

pyxcp-0.29.11-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.11-cp314-cp314-macosx_11_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

pyxcp-0.29.11-cp313-cp313-win_arm64.whl (3.2 MB view details)

Uploaded CPython 3.13Windows ARM64

pyxcp-0.29.11-cp313-cp313-win_amd64.whl (3.4 MB view details)

Uploaded CPython 3.13Windows x86-64

pyxcp-0.29.11-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.11-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.11-cp313-cp313-macosx_11_0_arm64.whl (3.3 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pyxcp-0.29.11-cp312-cp312-win_arm64.whl (2.6 MB view details)

Uploaded CPython 3.12Windows ARM64

pyxcp-0.29.11-cp312-cp312-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.12Windows x86-64

pyxcp-0.29.11-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.11-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.11-cp312-cp312-macosx_11_0_arm64.whl (2.6 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyxcp-0.29.11-cp311-cp311-win_arm64.whl (2.0 MB view details)

Uploaded CPython 3.11Windows ARM64

pyxcp-0.29.11-cp311-cp311-win_amd64.whl (2.0 MB view details)

Uploaded CPython 3.11Windows x86-64

pyxcp-0.29.11-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.11-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (2.2 MB view details)

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

pyxcp-0.29.11-cp311-cp311-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyxcp-0.29.11-cp310-cp310-win_arm64.whl (1.4 MB view details)

Uploaded CPython 3.10Windows ARM64

pyxcp-0.29.11-cp310-cp310-win_amd64.whl (1.3 MB view details)

Uploaded CPython 3.10Windows x86-64

pyxcp-0.29.11-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.4 MB view details)

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

pyxcp-0.29.11-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (1.3 MB view details)

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

pyxcp-0.29.11-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.11.tar.gz.

File metadata

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

File hashes

Hashes for pyxcp-0.29.11.tar.gz
Algorithm Hash digest
SHA256 a2ef4058e1f5386d7645feb8b55a12cac7ca46193df10dc0cf497c481cc5556a
MD5 b7dbebb5300d04decf7aee2c36b311db
BLAKE2b-256 db96ab5fbf0763dff9fbfd6ae3791ac66ff1d7d0070f868254bfe28b1bcb8fc1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11.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.11-cp314-cp314-win_arm64.whl.

File metadata

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

File hashes

Hashes for pyxcp-0.29.11-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 b5ed525a97a050ba4064b3f6ea3f3d5320307401c84e831e32d553bdd13ebebf
MD5 3978bae39bcd73d36564326473d29e9b
BLAKE2b-256 7f9940ff0abc8ada4588a914036427250b07370f38fbebcec2f46e67c7b3d27a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp314-cp314-win_amd64.whl.

File metadata

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

File hashes

Hashes for pyxcp-0.29.11-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 90460e9e9a73b8502e4c793119193acdd24120aaafe40e494318cbd71e6404ab
MD5 95536e6f3b7552352c831fb1fa91ce77
BLAKE2b-256 6065944dd4b488dee159a7972e6732dde3929dd875d555020d6c6b454d387e27

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.11-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2861f7cf8c31d7fb7908cd872b93e37ccb444fad65af0a05702bef0e8c6d28b4
MD5 dfb4ba5fe20144614ae0648957f286e4
BLAKE2b-256 e5ec57c539ed199ec36f2a03b2208e1a4cd258cb70bf92044650a85e29915ec7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.11-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 dd91bfc4057eaa4a3009d26c9eea8f40e4d43492095f20bbc49c65d2110eb686
MD5 a83e3ea3296bb174a9c43daf9d600894
BLAKE2b-256 9195fdca16d23ac43db5d44e6ff460d6c6f9e3cad8561a836bb907b52e76f2ab

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.11-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0d4d45f43e9cbded3b99a3f3b4bc869746527bdeb1d141b6d655e298db7789ba
MD5 6ddb458a6675fc913617ed9015b42ce4
BLAKE2b-256 863185f660f5c1fa58a4b8a85a75f785aefc1a1ffff5a3c5a99cca29f425e065

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp313-cp313-win_arm64.whl.

File metadata

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

File hashes

Hashes for pyxcp-0.29.11-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 b5b0c54f4506533997809a6ab0ca863417c3b0e66c887b421ce971b83b59414a
MD5 6bf2c1bf81edb15e901418ebb58e8828
BLAKE2b-256 10d74618591959d6c5cf9d197419a54a19887b18c79cc92521868274d7359ee6

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp313-cp313-win_amd64.whl.

File metadata

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

File hashes

Hashes for pyxcp-0.29.11-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 0685edac7ddc7966b27b11fc06419faf5cc25e45b90523335fa8e7c6fcb72334
MD5 fbd470fb7d6be16063150fa972ce2e9d
BLAKE2b-256 aeaed59e259a350ee675d58c6bcb99274a58f045ef9e32a22b0bd909d6165f54

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.11-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e219078c2dd4b11f547510a2ea0fcb4f0822fee81f8961106a58c29a3d8517b1
MD5 ab35602487c4aec04d9a98d7349eb82b
BLAKE2b-256 f52c9332cd6a6148b361cb090aee22f8ec29cb4fe5cb523fc0d257b6ed504ce7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.11-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ab9633d6c76810d65e50f1a8760abd441b21f2ec538c15dd4eeb5f5307c4a018
MD5 e37db0e27f7dbfac66592de88b9fe661
BLAKE2b-256 b7d774df0622025f0c7c5e2c8d394c004e635aea22c8e3c7d8bf9e1fc7906140

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.11-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5e37deeb96a9957b4167d5e113c338bbd8fce7c820cbdbe2aff29b83f8649b5a
MD5 92b5552e8f0215c5a39a7c844737de5f
BLAKE2b-256 ab0876f239fd2535d133714e99ad004d9c38fbefe22068ed0301aa2f28563a32

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp312-cp312-win_arm64.whl.

File metadata

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

File hashes

Hashes for pyxcp-0.29.11-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 5ad2f34c907a198a5c79d6843ef1714558f7437fe859b1558966d0bfa2b2f183
MD5 106a64b9bb6298df57875fc2ec8a096f
BLAKE2b-256 8a9e108f865a1b39b1a1fb5db4c4361147768cacba65b7d776e608b0f5c0d0ab

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp312-cp312-win_amd64.whl.

File metadata

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

File hashes

Hashes for pyxcp-0.29.11-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 23d1be101ae83bd8c3ebf752ce2ce7122c96af922091e8a9bb3758286ff62fb7
MD5 57db29c75ae58c9484666eed0523e22d
BLAKE2b-256 b1b35aee07854b2390d764c695cd4170721a21b3556113a184a4095b2484106e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.11-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7b6dac824e58513b02586a91ebb1997ae6e1c74e09053d08ed57f85df0f57700
MD5 4b9b85d5df921475ac72a485e942752f
BLAKE2b-256 ddfeba338c8e2cddf10ef8ec7fb50d63a0c9295eea29198cbf77bea72e64c984

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.11-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 94d6f286c33660c17a5e081c4d30bc026f60416f335386c8aaf7392e145e1140
MD5 f4ca68068365a8ac0b1083f017f6746f
BLAKE2b-256 53c02308731105c8e853a4bc0a4b309dc15a08cb92b4fa70516a9f02c89d4685

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.11-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4610cc2114e69d9d1fb3675002696e84b208ae21842034211804aeb9bc359a06
MD5 d7fb981232a84c84ee98b9de22dea4b6
BLAKE2b-256 41b586a5281b19379437456ff7ba43c56716423b65300b7cba278ee49e6d8bfc

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp311-cp311-win_arm64.whl.

File metadata

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

File hashes

Hashes for pyxcp-0.29.11-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 d42b23dab385cd44cae73a8077d911fb610229f56696a8fcdc256855f23a2133
MD5 be8b26e4363822d412e3942400bf090a
BLAKE2b-256 5b8cdd2c4228ff89dced646ce7245e2b3f64652cf8dced77fde6d6508ef8b08f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp311-cp311-win_amd64.whl.

File metadata

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

File hashes

Hashes for pyxcp-0.29.11-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 867b9b750ab51c83ee66e941e54a6734b7e633e8e6962826a23bd3f10c405a5e
MD5 e1d57ca5337d754b9408eabd53484a76
BLAKE2b-256 738762f9de6748eac00451eae6814c2fba9798b5a84fcd7cbea7a8abba0b0041

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.11-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e21f4a1be30d0969244c3f4caaa3167326ff10c2ff92e26bbd1f2b8c6dc29a20
MD5 11796afb8c4b3c786acb28d139ffe402
BLAKE2b-256 17b5e67eb7a9150703c265e704d0078d6ffaca7947a017bb39c6a4a12011f958

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.11-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ef6b124f20c7be5047ca0fe40c5d86a9050de479d185ed99f71e3fce94f78183
MD5 4825106691eb42f47380be523ecb600c
BLAKE2b-256 682036760569fac423b1c516818b03c6b975fabfa11932d8bba2049ad4987b5a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.11-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d1f19313b88d53b1b7ed2f0d220d916983b3daa23797dacf71095e69aee2c6dc
MD5 e047207123462e946b6cb08a53fb1b2b
BLAKE2b-256 88eb7493519ce5a6eb7ef6fc2cd23d06219df3a75ca41a4d31a92b3930dc457a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp310-cp310-win_arm64.whl.

File metadata

  • Download URL: pyxcp-0.29.11-cp310-cp310-win_arm64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.10, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pyxcp-0.29.11-cp310-cp310-win_arm64.whl
Algorithm Hash digest
SHA256 5955936faa5fdc035b387cbb61446028cce5f49fad9870dc464a4a779aa5d1d9
MD5 9d0f4af4b40c4e163a202df74431d929
BLAKE2b-256 19bcdb73e53d743bcde871a2362a0dbcaee5a32e9246c73d7578fc4ecb45ca48

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pyxcp-0.29.11-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pyxcp-0.29.11-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 5fad70c2d49570ab6a274529545ec9b256c073a066868180c1bb9bcd063d42fa
MD5 87136853fe249ad8fd2ef5c1cd5421e4
BLAKE2b-256 288cebea13672a3cdc479034789e6759146458674ed6ced0dff642aae53b6644

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.11-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 535bbb3bb1178a111e0caff933aaf6902f6ea304d18d1ae66fe476b56654c041
MD5 e8a57f55f4c05ded0dc4a5dccccd9a21
BLAKE2b-256 cb3d7d58c1c1da72b32f0020b88eaa90b63adb601a5d9f06e67d5631d18da831

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.11-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 dcb7e9ff4945c053b63dcd6e72077d111380e4516361956a1f193308ae160d89
MD5 a75dc99742eb855cfa83ed51fa7d94aa
BLAKE2b-256 634faac88b77812e9ef8e45ab914489b53346678a0da7b721fdb808dffbe0249

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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.11-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyxcp-0.29.11-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 aaec6473d58185b1b4084baaf5aac44b937f01bc63b5fa2754c774cc63c426fc
MD5 b2ea16789621e5056d371fedacdd71d8
BLAKE2b-256 76b9a17743e909d48666c2bf3f607045a3f058401bf36946e97acd0a784293b1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyxcp-0.29.11-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