gufo-liftbridge

Gufo Liftbridge is the Python asyncio Liftbridge client library.

https://github.com/gufolabs/gufo_liftbridge

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.3%) to scientific vocabulary

Keywords

async asyncio gufo liftbridge pypi python typed
Last synced: 6 months ago · JSON representation ·

Repository

Gufo Liftbridge is the Python asyncio Liftbridge client library.

Basic Info
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 1
Topics
async asyncio gufo liftbridge pypi python typed
Created about 3 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog Contributing Funding License Code of conduct Citation Codeowners Security

README.md

Gufo Liftbridge

An asynchronous Python Liftbridge client

PyPi version Downloads Python Versions License Build Sponsors

Ruff

Documentation: https://docs.gufolabs.com/gufo_liftbridge/

Source Code: https://github.com/gufolabs/gufo_liftbridge/


Gufo Liftbridge is the Python asyncio Liftbridge client library. It hides complex cluster topology management handling tasks and the internals of the gRPC as well. Client offers following features:

  • Publishing.
  • Subscribing.
  • Bulk publishing.
  • Cursors manipulation.
  • Cluster metadata fetching.
  • Stream creating and destroying.
  • Transparent data compression (own extension, may be not compatible with other clients).

Installing

pip install gufo_liftbridge

Publishing

``` python from gufo.liftbridge.client import LiftbridgeClient

async def publish(): async with LiftbridgeClient(["127.0.0.1:9292"]) as client: await client.publish(b"mybinarydata", stream="test", partition=0) ```

Subscribing

``` python from gufo.liftbridge.client import LiftbridgeClient

async def subscribe(): async with LiftbridgeClient(["127.0.0.1:9292"]) as client: async for msg in client.subscribe("test", partition=0): print(f"{msg.offset}: {msg.value}") ```

Features

  • Clean async API.
  • High-performance.
  • Built with security in mind.
  • Full Python typing support.
  • Editor completion.
  • Well-tested, battle-proven code.

On Gufo Stack

This product is a part of Gufo Stack - the collaborative effort led by Gufo Labs. Our goal is to create a robust and flexible set of tools to create network management software and automate routine administration tasks.

To do this, we extract the key technologies that have proven themselves in the NOC and bring them as separate packages. Then we work on API, performance tuning, documentation, and testing. The NOC uses the final result as the external dependencies.

Gufo Stack makes the NOC better, and this is our primary task. But other products can benefit from Gufo Stack too. So we believe that our effort will make the other network management products better.

Owner

  • Name: Gufo Labs
  • Login: gufolabs
  • Kind: organization
  • Location: Italy

Gufo Labs is a private consulting company based in Milan, Italy.

Citation (CITATION.cff)

cff-version: 1.2.0
title: Gufo Liftridge
message: >-
  If you use this software as part of a publication and wish to cite
  it, please use the metadata from this file.
type: software
authors:
  - name: Gufo Labs
    website: https://gufolabs.com/
  - name: Project's Contributors
    website: https://github.com/gufolabs/gufo_liftbridge
license: BSD-3-Clause

GitHub Events

Total
  • Push event: 8
Last Year
  • Push event: 8

Committers

Last synced: almost 3 years ago

All Time
  • Total Commits: 30
  • Total Committers: 1
  • Avg Commits per committer: 30.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Dmitry Volodin dv@n****g 30
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 522 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 1
  • Total maintainers: 1
pypi.org: gufo-liftbridge
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 522 Last month
Rankings
Dependent packages count: 10.1%
Downloads: 13.4%
Dependent repos count: 21.6%
Average: 22.7%
Forks count: 29.8%
Stargazers count: 38.8%
Maintainers (1)
Last synced: 6 months ago

Dependencies

.github/workflows/build-docs.yml actions
  • actions/cache v2 composite
  • actions/checkout v2 composite
.github/workflows/py-tests.yml actions
  • actions/cache v2 composite
  • actions/checkout v2 composite
  • actions/setup-python v4 composite
  • actions/setup-python v2 composite
  • pypa/gh-action-pypi-publish master composite
Dockerfile docker
  • python 3.11-slim-bullseye build
.requirements/dev.txt pypi
  • grpcio-tools ==1.51.1 development
.requirements/docs.txt pypi
  • mkdocs-gen-files ==0.4.0
  • mkdocs-literate-nav ==0.5.0
  • mkdocs-material ==8.5.8
  • mkdocstrings ==0.19.0
.requirements/ipython.txt pypi
  • ipython ==8.0.1
.requirements/lint.txt pypi
  • black ==22.3.0
  • flake8 ==4.0.1
  • mypy ==0.931
.requirements/requirements.txt pypi
  • grpcio >=1.41
  • protobuf >=3.19
  • types-protobuf >=4.20
.requirements/test.txt pypi
  • coverage ==6.5.0 test
  • pytest ==7.2.0 test
pyproject.toml pypi