Skip to main content

Python client library for Fluvio

Project description

Fluvio Client for Python

Python binding for Fluvio streaming platform.

Build License PyPi

Documentation

Fluvio client uses pdoc to generate the client API documentation.

Installation

pip install fluvio

This will get the wheel for the os/architecture of the installation system if available, otherwise it will try to build from source. If building from source, you will need the rust compiler and maybe some operating system sources.

Example Usage

Producer

from fluvio import Fluvio
fluvio = Fluvio.connect()
producer = fluvio.topic_producer('my-topic')
producer.send_string("FOOBAR")
producer.flush()

Consumer

from fluvio import (Fluvio, Offset)
fluvio = Fluvio.connect()
consumer = fluvio.partition_consumer('my-topic', 0)
stream = consumer.stream(Offset.beginning())

for i in stream:
    print(i.value_string())

Developer Notes

This project uses flapigen to genate the C static library and setuptools-rust to bundle it into a python package. For cross platform builds, cibuildwheel is used.

Running the tests locally require having already setup a fluvio locally or on fluvio cloud.

Add python unit tests in the tests directory using the built in python unittest framework

You should probably stick to using make integration-tests which will create the virtual environment and install the package in the site-packages in the venv directory. This makes sure that the package is also packaged correctly.

If you'd like more rapid testing, once you've got the virtual environment activated, python setup.py test will compile the rust as a static library and put it as fluvio/fluvio_python.cpython-39-x86_64-linux-gnu.so. This filename is dependent on the host OS and python version. FLUVIO_CLOUD_TEST_PASSWORD` to your fork's secrets.

When submitting a PR, CI checks a few things:

  • make integration-tests against a fluvio cluster in CI.
  • make macos-ci-tests with no fluvio cluster present (the macOS github runner is flakey) to verify linking is done correctly.
  • make lint. This checks that cargo fmt, flake8 and black are all clear.

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

fluvio-0.16.4-cp312-cp312-manylinux_2_28_x86_64.whl (5.7 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.28+ x86-64

fluvio-0.16.4-cp312-cp312-macosx_10_9_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.12 macOS 10.9+ x86-64

fluvio-0.16.4-cp312-cp312-macosx_10_9_universal2.whl (10.9 MB view details)

Uploaded CPython 3.12 macOS 10.9+ universal2 (ARM64, x86-64)

fluvio-0.16.4-cp311-cp311-manylinux_2_28_x86_64.whl (5.7 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.28+ x86-64

fluvio-0.16.4-cp311-cp311-macosx_10_9_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

fluvio-0.16.4-cp311-cp311-macosx_10_9_universal2.whl (10.9 MB view details)

Uploaded CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)

fluvio-0.16.4-cp310-cp310-manylinux_2_28_x86_64.whl (5.7 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.28+ x86-64

fluvio-0.16.4-cp310-cp310-macosx_10_9_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

fluvio-0.16.4-cp310-cp310-macosx_10_9_universal2.whl (10.9 MB view details)

Uploaded CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)

fluvio-0.16.4-cp39-cp39-manylinux_2_28_x86_64.whl (5.7 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.28+ x86-64

fluvio-0.16.4-cp39-cp39-macosx_10_9_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

fluvio-0.16.4-cp39-cp39-macosx_10_9_universal2.whl (10.9 MB view details)

Uploaded CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64)

fluvio-0.16.4-cp38-cp38-manylinux_2_28_x86_64.whl (5.7 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.28+ x86-64

fluvio-0.16.4-cp38-cp38-macosx_10_9_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

fluvio-0.16.4-cp38-cp38-macosx_10_9_universal2.whl (10.9 MB view details)

Uploaded CPython 3.8 macOS 10.9+ universal2 (ARM64, x86-64)

fluvio-0.16.4-cp38-abi3-manylinux2014_aarch64.whl (6.1 MB view details)

Uploaded CPython 3.8+

fluvio-0.16.4-cp38-abi3-linux_armv7l.whl (5.2 MB view details)

Uploaded CPython 3.8+

fluvio-0.16.4-cp38-abi3-linux_armv6l.whl (5.3 MB view details)

Uploaded CPython 3.8+

File details

Details for the file fluvio-0.16.4-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 77fc62cacd136689b0857014a054466ac3a154d1331619390ce1565a6c155c33
MD5 2bb4690a800da3160ad280463ae54de8
BLAKE2b-256 e7fda65d384083add7d9e3eafc6c206e22040ed57ab347892e120dd062d3aac8

See more details on using hashes here.

File details

Details for the file fluvio-0.16.4-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4c6d841b4642d54f841f5e6c5c7bfbfec5fd5d7eb244236acadbe285290ede7c
MD5 725ce957e9939cdd1084b8b2d1b1ffe1
BLAKE2b-256 17a33be3fa0efee46eb877c4d7aaa09e9ce3a30f7ad9498ad8681960c16c856f

See more details on using hashes here.

File details

Details for the file fluvio-0.16.4-cp312-cp312-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp312-cp312-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 af5c4976ade5d6504049d69f2a3dcdbf5e460f4a5ba5c1098e225d29a561160d
MD5 a732ada82b7b31039387a01705dd9152
BLAKE2b-256 8a4920ab9e231c4a8fa3a3167cf6858f97100635b7acf4bdcda3619b0cec08bc

See more details on using hashes here.

File details

Details for the file fluvio-0.16.4-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 dafe23e79a5ef8f84004dede646d767d0789b2cfc138fbc63bd4ba272badfa68
MD5 a9835cee6a1ac4046820b82ee506501d
BLAKE2b-256 3ac11eb2447006dbd73f164ed5405e51633553f1a682010f7b65dddbce5f1b78

See more details on using hashes here.

File details

Details for the file fluvio-0.16.4-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 72a5aa10ae459e9310fa82db9fb3c5db3d0b7f3a82ba0fc6868fa7074362df5e
MD5 8c58e515c56196414b0f73f66e3c4206
BLAKE2b-256 49dedf6802856cc01ceb7d5bda0212e28228f81fab66985b3aecb9be002f8f6d

See more details on using hashes here.

File details

Details for the file fluvio-0.16.4-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 b9d72bfa25e04fc2a6a7dbf449caccf90c8b5729b1818cc0a9b1966277cdbd68
MD5 6818cd282a86416786292c97c5faa058
BLAKE2b-256 1a8c7ff7097048a8681573a3fa60f0d8b529836f6001e78fa703ee91db67ffc7

See more details on using hashes here.

File details

Details for the file fluvio-0.16.4-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f04027de24da0f049665243f7094b8805d647b5f7efcf16cd75d28807939319e
MD5 eb0869615363958aaf9f2a444dcdc719
BLAKE2b-256 feb6781948d2629592df144640a7bc585c197d61dd62321fbdbe74040ea1e6bd

See more details on using hashes here.

File details

Details for the file fluvio-0.16.4-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a32ba10eaa761e75d618bb9e6c9d67a3294baaa887428d277fd0f39d78e5882b
MD5 8113fd6ab5bd1255692b01b6e5ecbf31
BLAKE2b-256 35e26fa4268b631a1da16f288a80c488e42780a09bd572685f0d3a3ab5aeac1c

See more details on using hashes here.

File details

Details for the file fluvio-0.16.4-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 759b70cbeeb8bf65198cc6e7609718bca991d08e6c0fe3973c6b30325494022d
MD5 b2e53b3b6215b4a2795e0bbb51db3f91
BLAKE2b-256 0deb82d8ed3fa6bbc66eda03ee9ea8a0a0afa19aa5cd13328aef350ca589a40b

See more details on using hashes here.

File details

Details for the file fluvio-0.16.4-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fca4e27fb7d7038059dcb4933544a913271be1e2b792178abee42eddf63a6d0d
MD5 bac2a9d0d51bbc7b6b1d716da40f3744
BLAKE2b-256 fb9d1fbb1108cfbd263c543152014a06e606543e9ae8fc8e55862a5adec0a886

See more details on using hashes here.

File details

Details for the file fluvio-0.16.4-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 14a0e72647eb0f80dabceb03a3b7f981905ca43d10bc87f41da314830090bcd8
MD5 0d49791beafdddb26f8b4a47edd08214
BLAKE2b-256 0b3efa8ce8e167c57a95d98f2fda506ae9803d4043c166b05ca0bedf2131345e

See more details on using hashes here.

File details

Details for the file fluvio-0.16.4-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 8116981366ebcb69d29b8ba2d1fc24486e610b80db5f9bfa8ba9416f7e348ad6
MD5 95da4b72231af3146cf74892d70f78c7
BLAKE2b-256 944f2b23b72c33d7417217ef2b245974aa03a682ceeed57980857cdc405560ff

See more details on using hashes here.

File details

Details for the file fluvio-0.16.4-cp38-cp38-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp38-cp38-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 50692625e25d9384d46c128859b1f91f481095d893d0f1918a7e6cb1df278090
MD5 6119c3c0abd86cc2d75f0dc9ffd5f11f
BLAKE2b-256 84677053710684642f5834f89824d9d4b6e5990e454f1f72af128aeb97c3f679

See more details on using hashes here.

File details

Details for the file fluvio-0.16.4-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 cb920fe5fc791c9153af94a0dd3dc9ac5283f77e8987341ca921abc00a0ae663
MD5 ab8afdabb175fe56616f1bad95950955
BLAKE2b-256 4c39c76373b0747c9efadeb79c3ec6b4fa94897c7e5e0e92028becef52bbfa50

See more details on using hashes here.

File details

Details for the file fluvio-0.16.4-cp38-cp38-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp38-cp38-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 fe74ec02bcda0b7f4e5dc51a5bb2fdfbe6c60c7d29bf628049e3a550295be9b3
MD5 f7c979bc3f73a1bd9f5c29313120f7d4
BLAKE2b-256 493f49eb0ace071b69aa7f43953615091bd70a758ecb06eebea7faebc2d336be

See more details on using hashes here.

File details

Details for the file fluvio-0.16.4-cp38-abi3-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp38-abi3-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 615d0890f4dd5aa5e9c9e5da26df780657155b27167f52d26dcc83fc82c44981
MD5 12df14d2e9a6fa5b047b600204ddd1ad
BLAKE2b-256 73bc065e7a3a4300b34cfeb190d039cbb4be7c2213fd396179dd7284cbe87012

See more details on using hashes here.

File details

Details for the file fluvio-0.16.4-cp38-abi3-linux_armv7l.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp38-abi3-linux_armv7l.whl
Algorithm Hash digest
SHA256 b3fdba9f2522970cf574f56d10a2f2b9ed1254875a220abd1a8b89c563813683
MD5 1c7ceee7452807d1d6dbb54a04496709
BLAKE2b-256 2a580a89a86393b445c7fdb6dbb58b5e2f680fea9c09dd235a0fcc34f3ce51b0

See more details on using hashes here.

File details

Details for the file fluvio-0.16.4-cp38-abi3-linux_armv6l.whl.

File metadata

File hashes

Hashes for fluvio-0.16.4-cp38-abi3-linux_armv6l.whl
Algorithm Hash digest
SHA256 7caf86b8209653c11587c6d1b9dbe21e96472dcffa00c62a70d975307ede0185
MD5 84c95c6e4a6eea8fdf41f931e9c04f07
BLAKE2b-256 1fc5a878bec7083d7bf073462953e28e7cdb1b001bb2714a48cba653b6b27c28

See more details on using hashes here.

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