Skip to main content

Proggy

Progressively progressing through progress bar generation.

Proggy generates text-based progress bars. Mildly inspired by Rust's indicatif.

Proggy only renders progress bars to a string. Displaying them is, as of now, not handled and left to the user.

Examples

API usage

>>> from proggy import ProgressBar
>>> pb = ProgressBar(30, 100, progress=75)
>>> pb.render()
'⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇       '

CLI output

Single progress bar (test.py):

import time

from proggy import BarInfo
from proggy.tty import TTYProgressBar


with TTYProgressBar(BarInfo(size=30, total=100)) as p:
    for i in range(100):
        time.sleep(0.1)
        p.progress += 1

Output:

test.py output

Multi-progress bar with asyncio (async_test.py):

from asyncio import ensure_future, run, sleep

from proggy import BarInfo, LogicalProgressBar
from proggy.types import ProgressBar
from proggy.tty import TTYMultiProgressBar


async def task1(p: ProgressBar):
    for _ in range(100):
        await sleep(0.1)
        p.progress += 1


async def task2(p: ProgressBar):
    for _ in range(50):
        await sleep(0.1)
        p.progress += 1


async def main():
    with TTYMultiProgressBar(bar_infos=[
        BarInfo(size=30, total=100),
        BarInfo(size=30, total=50),
    ]) as mp:
        x = ensure_future(task1(mp.bar_at(0)))
        await task2(mp.bar_at(1))
        await x

run(main())

Output:

async_test.py output

Metadata

Release files for proggy 0.4.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for proggy 0.4.3
File Size Uploaded Provenance
proggy-0.4.3.tar.gz 9.1 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for proggy 0.4.3
File Interpreter ABI Platform
proggy-0.4.3-py3-none-any.whl Python 3 none any Details

Total release size: 21.0 kB

Release files / proggy-0.4.3.tar.gz

Download URL proggy-0.4.3.tar.gz
Size 9.1 kB
Tags Source
SHA-256 checksum
How to use checksums
f6b3196c71520cb8a3a56a7396156525e785c2c5ae2f49f7573216157302ea7b
BLAKE2b-256 checksum
How to use checksums
4745f940a269f30058d2b7a303bea6f47718c085ed6219ab51b79ffc48a6232d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.0.3 CPython/3.8.1 Linux/5.5.5-arch1-1

Release files / proggy-0.4.3-py3-none-any.whl

Download URL proggy-0.4.3-py3-none-any.whl
Size 11.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4afd05278588ee6b7309de897e5868a45159cbb78b005439b707a3a60c313e28
BLAKE2b-256 checksum
How to use checksums
fbaef7dbd636eb8f03a32fa6ac0a27b82dc8236d803f03060b310db52950babd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.0.3 CPython/3.8.1 Linux/5.5.5-arch1-1

Security for proggy 0.4.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page