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.14.tar.gz (616.9 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.14-cp314-cp314-win_arm64.whl (1.4 MB view details)

Uploaded CPython 3.14Windows ARM64

pyxcp-0.29.14-cp314-cp314-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.14Windows x86-64

pyxcp-0.29.14-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.3 MB view details)

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

pyxcp-0.29.14-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (1.2 MB view details)

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

pyxcp-0.29.14-cp314-cp314-macosx_11_0_arm64.whl (1.0 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

pyxcp-0.29.14-cp313-cp313-win_arm64.whl (1.3 MB view details)

Uploaded CPython 3.13Windows ARM64

pyxcp-0.29.14-cp313-cp313-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.13Windows x86-64

pyxcp-0.29.14-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.3 MB view details)

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

pyxcp-0.29.14-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (1.2 MB view details)

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

pyxcp-0.29.14-cp313-cp313-macosx_11_0_arm64.whl (1.0 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pyxcp-0.29.14-cp312-cp312-win_arm64.whl (1.3 MB view details)

Uploaded CPython 3.12Windows ARM64

pyxcp-0.29.14-cp312-cp312-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.12Windows x86-64

pyxcp-0.29.14-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.3 MB view details)

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

pyxcp-0.29.14-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (1.2 MB view details)

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

pyxcp-0.29.14-cp312-cp312-macosx_11_0_arm64.whl (1.0 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyxcp-0.29.14-cp311-cp311-win_arm64.whl (1.3 MB view details)

Uploaded CPython 3.11Windows ARM64

pyxcp-0.29.14-cp311-cp311-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.11Windows x86-64

pyxcp-0.29.14-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.3 MB view details)

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

pyxcp-0.29.14-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (1.2 MB view details)

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

pyxcp-0.29.14-cp311-cp311-macosx_11_0_arm64.whl (1.0 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyxcp-0.29.14-cp310-cp310-win_arm64.whl (1.3 MB view details)

Uploaded CPython 3.10Windows ARM64

pyxcp-0.29.14-cp310-cp310-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.10Windows x86-64

pyxcp-0.29.14-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.14-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.14-cp310-cp310-macosx_11_0_arm64.whl (1.0 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: pyxcp-0.29.14.tar.gz
  • Upload date:
  • Size: 616.9 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.14.tar.gz
Algorithm Hash digest
SHA256 4a6162092907ec873fae73258f6797fd4c23b814eee78669c1859ff65893ab50
MD5 2b161e641be79bbc949ea6557cfc31a4
BLAKE2b-256 6b01d3c37fb319ec440f660f0b5147811d138e1c607e7262cd512db87c411f4c

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: pyxcp-0.29.14-cp314-cp314-win_arm64.whl
  • Upload date:
  • Size: 1.4 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.14-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 8a1ef1811e6da41d3e8c04246d250d823f317ac6b4e7553fe62d567c321b2be9
MD5 8b5d1b184999774d02450f8120814900
BLAKE2b-256 f0c979a8bda05af07d2fa3c28824e51d23b0c7f566a8b43b7428a7ee40bd8b47

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: pyxcp-0.29.14-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 1.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.14-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 c25fa81917f1c9c654da07a02f6cf0c7bec1119265451589d920d5c358820ed3
MD5 961da5f95856b0b2a216c26587cb0adb
BLAKE2b-256 45c2ef12f7746452bb2afd83477fbd80204bf965b597409d03a9c38756d169d8

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyxcp-0.29.14-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ad5212850cf83e7875381bdc0381c22119802bc6e5c51eff980d3f2cab79b97d
MD5 eb300b741aa7c65ada0d270a266cb819
BLAKE2b-256 7803dd4178baeededf3e442c912ecc919eca287b9596b27f7034932565e05cd3

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyxcp-0.29.14-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8e201c401d6d248528cce2b8928626a87b0a48d91b6226598d8b044ecb607bb0
MD5 7bebe3a4e0a7f15b91d36ed8a08b0f9b
BLAKE2b-256 f98ae5db6cce45d969006524fc146415c6d7b8e2ceb5fb6b12072993b9db4a6f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyxcp-0.29.14-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 be3e4b1e9cefce81fd7c830f5c55e5d94160e53c8a88c3539c04e7e9c34986d0
MD5 cbe972d96c71446ace52c8067b6ee370
BLAKE2b-256 dd9253e9df77a0168c75bc0b76b61dacd95921556b05533a4badcb6647ef8999

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: pyxcp-0.29.14-cp313-cp313-win_arm64.whl
  • Upload date:
  • Size: 1.3 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.14-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 a02f407ca02eb091420d473f3de76d16f876ef7cd2758aaf780253d1c76b9a29
MD5 41fad2564cdeb7241d664e784c45ee63
BLAKE2b-256 be3c423189a3ca1b6f14928b7f84a3f0723e7de062331446ab0ea82b741f20a5

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: pyxcp-0.29.14-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 1.2 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.14-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 3c2f2f92ef54e6d3234f67c104edb4714cbc6078c173a7eb9d9fde2a87ef316c
MD5 f1029cf722ceebe4ae1b00728c6dce1a
BLAKE2b-256 3cc0fe28bddbaa80630605d44895cb566701b16f711585a2552b425533c60378

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyxcp-0.29.14-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2ada770d20dfaf52bd2c0089c76cd7988bd1e7409f1e764c1dfee18178559a5e
MD5 eae41e868985a8d24843f8939962e439
BLAKE2b-256 c516285dc726568cb0adeb5ac07b29c92c1477dc71cab41e0b88445a4aa9b355

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyxcp-0.29.14-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 59023adfd9f9a2e902ae64531eb6352e87a5edff8609cc775f9299c5ac6e2b98
MD5 0f6edff22840a0a25c7501a2e1d4cefb
BLAKE2b-256 0b2c26c07565cc778836bd7b3235ca3e2337c0e54f770d06a196a2ff6fb09d61

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyxcp-0.29.14-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2ca919218992536e4bf6ca14c744296d13141432d97493b9b8c8df6ef8f6c89a
MD5 6df443de6fd0f5dc21b8544fc66e031e
BLAKE2b-256 ebc33d5b6f0873cef69e069671ea9e43c743bb4a4c2d99d7c253ff9de4802048

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: pyxcp-0.29.14-cp312-cp312-win_arm64.whl
  • Upload date:
  • Size: 1.3 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.14-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 a7efd654f3fde206ebc7adbc16374a56b6c897f77f465d6a6bd50d0ba68cf8ca
MD5 7a6cd06b086ff90ecd6e6dfdb331cd26
BLAKE2b-256 82e3b405dd15cc73f3ed26826c13bf707c6e503eaa42c12725efc9a9d5c33a39

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: pyxcp-0.29.14-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 1.2 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.14-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 01db51022eae5f118f1c646a4a289a4bbe2058ddc42ad14db5d089ac05e0cbaa
MD5 e0d387fcb59861d5dfa63c9da221cd31
BLAKE2b-256 7222aa39946258c0f79d48f2b1083ed43d6a2307198749f1bf273a96ebf6398e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyxcp-0.29.14-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 223a22794f20a32e7b6cd68935690fd488f15c7db0761005c22c1327e1e9478f
MD5 243fc34747ad1208dbb014c50a5f179d
BLAKE2b-256 8c1109fa369e566463fc571c7ebc44bee776daa70172e32553d7ba7548227243

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyxcp-0.29.14-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 bfce5bbab5e387268e351761ce62eb8e418d07a37d12ab0931bdf107b3787055
MD5 d0d8ae0bb66b1f32516422a8a1b38d29
BLAKE2b-256 58f96c5a9b7e3776217c617334df98cb70da3dd6afe52dd9965626d596882902

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyxcp-0.29.14-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 07e99a69571187567c6ce9989cadd1ae92e0c37ac9921aecca9bd226b8b85cb1
MD5 f106a9c7c6bb70299a42009d67875d58
BLAKE2b-256 dbef5f89a1d0079fbf1c5e4baa709d2881a42ef21059edf458dea3ffe5723432

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: pyxcp-0.29.14-cp311-cp311-win_arm64.whl
  • Upload date:
  • Size: 1.3 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.14-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 fbd9b458d57a5511a5cf2237df20a4a9ad7356bbbed1787ee258ab13736fcbf6
MD5 3e9123007e81dbae93139e67f0c3c4e4
BLAKE2b-256 db1b5775c8a8b3beb98eb0853e3efc0628b8c7b640b18703c11cd0aa18028cf4

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: pyxcp-0.29.14-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 1.2 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.14-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 5efa2ef51df880469a65c31f56139e5821690789ec3a5cc01de0d2b239c31497
MD5 28285f888ea7560d669a475fa1adcce5
BLAKE2b-256 3a0a3e13c6fb57a0737de2e850cb7137268c381f356df81be1527976fbb5290e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyxcp-0.29.14-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 daba520715cd66a0fcbde1226458f553cc7bbaa5e9e303af6b85d3603b040d3a
MD5 f9fc5e869d50cad8d8a5a219ba6640d5
BLAKE2b-256 22d9447a8e47eff43e3172e8f41ac70bb18f9f83408e155f0edadf8be55f6f4a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyxcp-0.29.14-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6faf60102e6e171b8b5c911aba9017f554e095e2d1c841087fd8aaf86fa1f9fa
MD5 eb421646aa773caa82cb2b5c55bc5840
BLAKE2b-256 5dad84f99877fc92c7872ee34f700c2881f1d47daabf1e2e03ef625b065220a7

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyxcp-0.29.14-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 60fbfaa01a532d834e08dccd9cb6cffb88f02845a3c1e45728c39d1dd0787e88
MD5 ebd39f6cdcd3cb818a0684f72fb3fa95
BLAKE2b-256 34003fa4416859ac58d76ffb31628c4b7697f9fd6f8879ec4ee5bf03adf4e16b

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: pyxcp-0.29.14-cp310-cp310-win_arm64.whl
  • Upload date:
  • Size: 1.3 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.14-cp310-cp310-win_arm64.whl
Algorithm Hash digest
SHA256 161854b4c6cf8179531884ca1e90897f8c18bd8c3fe9bc831f97d375018752a7
MD5 1555fd974efc6910fd48e13720b100c3
BLAKE2b-256 62bd28cbcde86bc0b56d918212dc4f9ce6b8b3d36deea90e4455587ca5320618

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: pyxcp-0.29.14-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 1.2 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.14-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f03050da22b758aa2cdf0fefda44d88057cbcd312f3f77ef09ece665363883ab
MD5 6b32a8d52bda5f7e808dadc7c9055c0d
BLAKE2b-256 1e04d687f0f1d5ceb780dd1745ab5a2eb440d49e370f9401b25100b21f1230df

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyxcp-0.29.14-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 25e2991c822ee15de2c373363b1e7aafd773eb6a5a891ba1fa21e4b554bab5ac
MD5 470bf884f8bbeb5f26857ecaf4277077
BLAKE2b-256 747b13de05dc579d5b7bc3477aa12f578d83349f3e7beaded6fe28c8d6cf4d0b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyxcp-0.29.14-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b12ad073a2d234a0413618af7c10c5f0a6e04d757a93c6b6e504a66d1d6f3ff4
MD5 b9527c29f86da6d8f350449849ff9b33
BLAKE2b-256 fcc67f1ad894dde31d6ccb8ee98da918e61fc915806801bb5c4564dac6a55f11

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyxcp-0.29.14-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 999940f301945a2d017d58d6f96de09ba7479c99f8b873bb9c57805f7451bf98
MD5 51ab72b4fa24e90bdd0ab18d23063f4f
BLAKE2b-256 d6f61b8352eb2bec438669f9cb740f59d0d102e335f1c35b9f5e01de8b2b332b

See more details on using hashes here.

Provenance

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