Skip to main content

Conversion between CBOR and CBOR Diagnostic Notation

Project description

This Python module is a minimal wapper around the cbor-diag crate. Unlike the crate, which offers lots of functionality for manipulating an AST, this module only exposes two very simple functions:

  • diag2cbor, which parses diagnostic notation and produces a corresponding CBOR binary string, and

  • cbor2diag, which does the inverse.

It is recommended to use the cbor2 package to actually process the CBOR data.

Documentation is available on readthedocs.

Installation

This project can be installed from PyPI; binary wheels are available there for the common platforms.

Maintenance

This package is considered feature-complete at release, and maintainened reactively – when changes to the ecosystem threaten to make it unusable.

New features are only expected to be added if they are already present in the underlying cbor-diag crate, and will likely manifest as extra arguments to cbor2diag.

This package is built using maturin and pyo3 and largely follows their template. The built module is renamed from cbor_diag to _cbor_diag (and consequently wrapped manually) to avoid it being part of the package’s public API. (The need for the workaround is tracked at maturin and through there in the typing module).

The package is currently hosted on GitHub at https://github.com/chrysn/cbor-diag-py because maturin can not yet build pipelines for GitLab or codeberg.

License

This package was written by Christian Amsüss <chrysn@fsfe.org>, and is published under the terms of MIT or Apache-2.0 license, at the user’s choice.

Credit for its functionality goes to Nemo157 as the maintainer of the underlying cbor-diag crate.

Project details


Download files

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

Source Distribution

cbor_diag-1.0.2.tar.gz (9.0 kB view hashes)

Uploaded Source

Built Distributions

cbor_diag-1.0.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

cbor_diag-1.0.2-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.3 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ s390x

cbor_diag-1.0.2-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ppc64le

cbor_diag-1.0.2-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARMv7l

cbor_diag-1.0.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARM64

cbor_diag-1.0.2-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.5+ i686

cbor_diag-1.0.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

cbor_diag-1.0.2-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.3 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ s390x

cbor_diag-1.0.2-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ppc64le

cbor_diag-1.0.2-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARMv7l

cbor_diag-1.0.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARM64

cbor_diag-1.0.2-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.5+ i686

cbor_diag-1.0.2-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

cbor_diag-1.0.2-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.3 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ s390x

cbor_diag-1.0.2-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ppc64le

cbor_diag-1.0.2-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARMv7l

cbor_diag-1.0.2-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARM64

cbor_diag-1.0.2-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.5+ i686

cbor_diag-1.0.2-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

cbor_diag-1.0.2-pp37-pypy37_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.3 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ s390x

cbor_diag-1.0.2-pp37-pypy37_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.2 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ppc64le

cbor_diag-1.0.2-pp37-pypy37_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARMv7l

cbor_diag-1.0.2-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARM64

cbor_diag-1.0.2-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.5+ i686

cbor_diag-1.0.2-cp312-none-win_amd64.whl (211.7 kB view hashes)

Uploaded CPython 3.12 Windows x86-64

cbor_diag-1.0.2-cp312-none-win32.whl (213.8 kB view hashes)

Uploaded CPython 3.12 Windows x86

cbor_diag-1.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

cbor_diag-1.0.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.3 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ s390x

cbor_diag-1.0.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.1 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ppc64le

cbor_diag-1.0.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARMv7l

cbor_diag-1.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

cbor_diag-1.0.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.5+ i686

cbor_diag-1.0.2-cp312-cp312-macosx_11_0_arm64.whl (313.9 kB view hashes)

Uploaded CPython 3.12 macOS 11.0+ ARM64

cbor_diag-1.0.2-cp312-cp312-macosx_10_12_x86_64.whl (323.7 kB view hashes)

Uploaded CPython 3.12 macOS 10.12+ x86-64

cbor_diag-1.0.2-cp311-none-win_amd64.whl (211.7 kB view hashes)

Uploaded CPython 3.11 Windows x86-64

cbor_diag-1.0.2-cp311-none-win32.whl (213.8 kB view hashes)

Uploaded CPython 3.11 Windows x86

cbor_diag-1.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

cbor_diag-1.0.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.3 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ s390x

cbor_diag-1.0.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.1 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ppc64le

cbor_diag-1.0.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARMv7l

cbor_diag-1.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

cbor_diag-1.0.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.5+ i686

cbor_diag-1.0.2-cp311-cp311-macosx_11_0_arm64.whl (314.0 kB view hashes)

Uploaded CPython 3.11 macOS 11.0+ ARM64

cbor_diag-1.0.2-cp311-cp311-macosx_10_12_x86_64.whl (324.1 kB view hashes)

Uploaded CPython 3.11 macOS 10.12+ x86-64

cbor_diag-1.0.2-cp310-none-win_amd64.whl (211.7 kB view hashes)

Uploaded CPython 3.10 Windows x86-64

cbor_diag-1.0.2-cp310-none-win32.whl (213.8 kB view hashes)

Uploaded CPython 3.10 Windows x86

cbor_diag-1.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

cbor_diag-1.0.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.3 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ s390x

cbor_diag-1.0.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.1 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ppc64le

cbor_diag-1.0.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARMv7l

cbor_diag-1.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

cbor_diag-1.0.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.5+ i686

cbor_diag-1.0.2-cp310-cp310-macosx_11_0_arm64.whl (314.0 kB view hashes)

Uploaded CPython 3.10 macOS 11.0+ ARM64

cbor_diag-1.0.2-cp310-cp310-macosx_10_12_x86_64.whl (324.1 kB view hashes)

Uploaded CPython 3.10 macOS 10.12+ x86-64

cbor_diag-1.0.2-cp39-none-win_amd64.whl (211.7 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

cbor_diag-1.0.2-cp39-none-win32.whl (213.7 kB view hashes)

Uploaded CPython 3.9 Windows x86

cbor_diag-1.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

cbor_diag-1.0.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.3 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ s390x

cbor_diag-1.0.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.1 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ppc64le

cbor_diag-1.0.2-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARMv7l

cbor_diag-1.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

cbor_diag-1.0.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.5+ i686

cbor_diag-1.0.2-cp38-none-win_amd64.whl (211.6 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

cbor_diag-1.0.2-cp38-none-win32.whl (213.8 kB view hashes)

Uploaded CPython 3.8 Windows x86

cbor_diag-1.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

cbor_diag-1.0.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.3 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ s390x

cbor_diag-1.0.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.1 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ppc64le

cbor_diag-1.0.2-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARMv7l

cbor_diag-1.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

cbor_diag-1.0.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.5+ i686

cbor_diag-1.0.2-cp37-none-win_amd64.whl (211.6 kB view hashes)

Uploaded CPython 3.7 Windows x86-64

cbor_diag-1.0.2-cp37-none-win32.whl (213.8 kB view hashes)

Uploaded CPython 3.7 Windows x86

cbor_diag-1.0.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

cbor_diag-1.0.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.3 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ s390x

cbor_diag-1.0.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.1 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ppc64le

cbor_diag-1.0.2-cp37-cp37m-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ARMv7l

cbor_diag-1.0.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ARM64

cbor_diag-1.0.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.5+ i686

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page