Skip to main content

Python SDK for Diffusion - CBOR serialisation.

Project description

Python SDK for Diffusion - Core functionality

Pre-release version; not ready for production.

This is the core module for the Python SDK for Diffusion. It provides core functionality for the Python client, in particular the native bindings for various performance-critical functions.

Supported Python Versions

The Diffusion Python SDK officially supports the following:

Supported Interpreters:

  • CPython 3.7.9 or later
  • CPython 3.8.6 or later
  • CPython 3.9.0 or later

Supported Platforms:

  • MacOS 10.13-11.5
  • Windows Intel 64-bit
  • Any Linux supported by the ManyLinux 2010/2014 binary wheel standard.

Current Capabilities

  • CBOR (the binary protocol used to communicate with the Diffusion Server):
    • indefinite encoding (the preferred variant)
    • definite encoding
  • Delta encoding/decoding (used to send and receive changes in a compact, CBOR-based format)

Test call

python
import diffusion_core.cbor as diffusion_cbor
obj = {"arbitary":["json", "data", 0.0, -35]}
diffusion_cbor.dumps(obj, indefinite=True)

import diffusion_core.delta as diffusion_delta
orig = b'\0x00'
dest = b'\0xff'
# diff returns an object which is convertible to bytes
diff = bytes(diffusion_delta.diff(orig, dest))
# patch also returns an object which is convertible to bytes
reconstructed_dest = bytes(diffusion_delta.patch(orig, diff))
assert(dest == reconstructed_dest)

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

diffusion_core-0.0.65-1-pp310-pypy310_pp73-win_amd64.whl (85.8 kB view hashes)

Uploaded PyPy Windows x86-64

diffusion_core-0.0.65-1-pp310-pypy310_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (218.1 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

diffusion_core-0.0.65-1-pp310-pypy310_pp73-manylinux2014_i686.manylinux_2_17_i686.whl (231.6 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686

diffusion_core-0.0.65-1-pp39-pypy39_pp73-win_amd64.whl (85.8 kB view hashes)

Uploaded PyPy Windows x86-64

diffusion_core-0.0.65-1-pp39-pypy39_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (217.9 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

diffusion_core-0.0.65-1-pp39-pypy39_pp73-manylinux2014_i686.manylinux_2_17_i686.whl (230.8 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686

diffusion_core-0.0.65-1-pp38-pypy38_pp73-win_amd64.whl (85.8 kB view hashes)

Uploaded PyPy Windows x86-64

diffusion_core-0.0.65-1-pp38-pypy38_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (218.2 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

diffusion_core-0.0.65-1-pp38-pypy38_pp73-manylinux2014_i686.manylinux_2_17_i686.whl (231.5 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686

diffusion_core-0.0.65-1-cp312-cp312-win_amd64.whl (86.0 kB view hashes)

Uploaded CPython 3.12 Windows x86-64

diffusion_core-0.0.65-1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (221.6 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

diffusion_core-0.0.65-1-cp312-cp312-manylinux2014_i686.manylinux_2_17_i686.whl (231.3 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ i686

diffusion_core-0.0.65-1-cp312-cp312-macosx_11_0_x86_64.whl (326.9 kB view hashes)

Uploaded CPython 3.12 macOS 11.0+ x86-64

diffusion_core-0.0.65-1-cp312-cp312-macosx_11_0_arm64.whl (355.9 kB view hashes)

Uploaded CPython 3.12 macOS 11.0+ ARM64

diffusion_core-0.0.65-1-cp312-cp312-macosx_10_15_x86_64.whl (326.9 kB view hashes)

Uploaded CPython 3.12 macOS 10.15+ x86-64

diffusion_core-0.0.65-1-cp312-cp312-macosx_10_14_x86_64.whl (327.0 kB view hashes)

Uploaded CPython 3.12 macOS 10.14+ x86-64

diffusion_core-0.0.65-1-cp311-cp311-win_amd64.whl (86.8 kB view hashes)

Uploaded CPython 3.11 Windows x86-64

diffusion_core-0.0.65-1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (219.0 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

diffusion_core-0.0.65-1-cp311-cp311-manylinux2014_i686.manylinux_2_17_i686.whl (232.1 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686

diffusion_core-0.0.65-1-cp311-cp311-macosx_11_0_x86_64.whl (326.2 kB view hashes)

Uploaded CPython 3.11 macOS 11.0+ x86-64

diffusion_core-0.0.65-1-cp311-cp311-macosx_11_0_arm64.whl (356.3 kB view hashes)

Uploaded CPython 3.11 macOS 11.0+ ARM64

diffusion_core-0.0.65-1-cp311-cp311-macosx_10_15_x86_64.whl (326.2 kB view hashes)

Uploaded CPython 3.11 macOS 10.15+ x86-64

diffusion_core-0.0.65-1-cp311-cp311-macosx_10_14_x86_64.whl (326.0 kB view hashes)

Uploaded CPython 3.11 macOS 10.14+ x86-64

diffusion_core-0.0.65-1-cp310-cp310-win_amd64.whl (86.1 kB view hashes)

Uploaded CPython 3.10 Windows x86-64

diffusion_core-0.0.65-1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (217.0 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

diffusion_core-0.0.65-1-cp310-cp310-manylinux2014_i686.manylinux_2_17_i686.whl (229.8 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686

diffusion_core-0.0.65-1-cp310-cp310-macosx_11_0_x86_64.whl (324.0 kB view hashes)

Uploaded CPython 3.10 macOS 11.0+ x86-64

diffusion_core-0.0.65-1-cp310-cp310-macosx_11_0_arm64.whl (352.7 kB view hashes)

Uploaded CPython 3.10 macOS 11.0+ ARM64

diffusion_core-0.0.65-1-cp310-cp310-macosx_10_15_x86_64.whl (324.0 kB view hashes)

Uploaded CPython 3.10 macOS 10.15+ x86-64

diffusion_core-0.0.65-1-cp310-cp310-macosx_10_14_x86_64.whl (323.9 kB view hashes)

Uploaded CPython 3.10 macOS 10.14+ x86-64

diffusion_core-0.0.65-1-cp39-cp39-win_amd64.whl (85.7 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

diffusion_core-0.0.65-1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (217.1 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

diffusion_core-0.0.65-1-cp39-cp39-manylinux2014_i686.manylinux_2_17_i686.whl (229.3 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686

diffusion_core-0.0.65-1-cp39-cp39-macosx_11_0_x86_64.whl (323.9 kB view hashes)

Uploaded CPython 3.9 macOS 11.0+ x86-64

diffusion_core-0.0.65-1-cp39-cp39-macosx_11_0_arm64.whl (353.4 kB view hashes)

Uploaded CPython 3.9 macOS 11.0+ ARM64

diffusion_core-0.0.65-1-cp39-cp39-macosx_10_15_x86_64.whl (323.9 kB view hashes)

Uploaded CPython 3.9 macOS 10.15+ x86-64

diffusion_core-0.0.65-1-cp39-cp39-macosx_10_14_x86_64.whl (323.8 kB view hashes)

Uploaded CPython 3.9 macOS 10.14+ x86-64

diffusion_core-0.0.65-1-cp38-cp38-win_amd64.whl (86.1 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

diffusion_core-0.0.65-1-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (216.6 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

diffusion_core-0.0.65-1-cp38-cp38-manylinux2014_i686.manylinux_2_17_i686.whl (228.9 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686

diffusion_core-0.0.65-1-cp38-cp38-macosx_11_0_x86_64.whl (323.0 kB view hashes)

Uploaded CPython 3.8 macOS 11.0+ x86-64

diffusion_core-0.0.65-1-cp38-cp38-macosx_11_0_arm64.whl (352.6 kB view hashes)

Uploaded CPython 3.8 macOS 11.0+ ARM64

diffusion_core-0.0.65-1-cp38-cp38-macosx_10_15_x86_64.whl (323.0 kB view hashes)

Uploaded CPython 3.8 macOS 10.15+ x86-64

diffusion_core-0.0.65-1-cp38-cp38-macosx_10_14_x86_64.whl (322.8 kB view hashes)

Uploaded CPython 3.8 macOS 10.14+ x86-64

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