Skip to content

Python SDK for Diffusion

Pre-release version; not ready for production.

The Diffusion Python library allows Python applications to interact with a Diffusion server.

Supported Python Versions

The Diffusion Python SDK 6.12.0 officially supports the following interpreters:

Supported Interpreters:

  • CPython 3.8.6 or later
  • CPython 3.9.0 or later
  • CPython 3.10.0 or later
  • CPython 3.11.0 or later
  • CPython 3.12.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.

We recommend using the latest available patch version of the Python interpreter.

Installing the Diffusion client

The easiest way to install the latest version is:

$ pip install diffusion

It is possible to install a specific version, for example if you need one that works with the previous version of the Diffusion server:

$ pip install "diffusion==6.12.0"

Alternatively, the package is also available in the clients directory of the Diffusion installation:

$ pip install clients/python/diffusion-6.12.0-py3-none-any.whl

Current Capabilities

  • Session:
    • Establish a session
    • Send user ping
    • Receive system ping
    • Session factory
    • SSL Context
    • Retry strategies
  • Messaging:
    • Register request handler
    • Send request to path
    • Send request to session
    • Send request to filter
    • Register filter message stream
  • Control:
    • Session trees
    • Topic metrics
    • Session metrics
  • Topics:
    • Topic subscriptions
    • Topic creation
    • Topic creation with initial topic value
    • Topic removal
    • Topic stream handlers
    • Topic update
    • Topic constraints
    • Fetch queries
  • Time Series
    • Edit
    • Append
    • Range queries