Registry / devops / progressbar33

progressbar33

JSON →
library2.4pypypi✓ verified 87d ago

progressbar33 is a Python library for creating customizable text-based progress bars in terminal applications. It provides a simple API to display progress for long-running operations. The current version is 2.4, and its development appears to be in maintenance mode with infrequent updates.

pip install progressbar33
INSTALL
IMPORT
SIG · PROGRESSBAR33
P
progressbar33
devopspythonv2.4
Install
2.4s avg
Import
10ms
Disk
17MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v2.4 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.103.920 runs
installs and imports cleanly · install 0.0s · import 0.010s · 19.2MB
glibc
py 3.103.920 runs
installs and imports cleanly · install 2.4s · import 0.010s · 20MB
17MB installed
● package 17MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

ProgressBar
from progressbar import ProgressBar
from progressbar33 import ProgressBar
Despite the package name `progressbar33`, the module itself is named `progressbar`. Importing `from progressbar33` will result in a `ModuleNotFoundError`.
widgets
from progressbar import Percentage, Bar, ETA
Common widget classes like `Percentage`, `Bar`, `ETA`, etc., are also imported from the `progressbar` module.

This quickstart demonstrates how to create a basic progress bar using `progressbar33` (which imports as `progressbar`). It initializes a `ProgressBar` with a list of widgets and updates it within a loop. The `with` statement ensures the progress bar is properly finished and cleaned up.

import time from progressbar import ProgressBar, Percentage, Bar, RotatingMarker, ETA # Define widgets for the progress bar widgets = [ 'Processing: ', Percentage(), ' ', Bar(marker=RotatingMarker()), ' ', ETA(), ] # Initialize the progress bar with a maximum value max_items = 50 with ProgressBar(widgets=widgets, max_value=max_items) as bar: for i in range(max_items): # Simulate some work time.sleep(0.1) # Update the progress bar bar.update(i + 1) print('\nTask Completed!')
Debug
Known issues
breakingNamespace Collision: Installing `progressbar33` will install a module named `progressbar`. If the more actively maintained `progressbar` library (PyPI: `progressbar`, often used with `import progressbar`) is also installed or intended to be used, this will lead to conflicts and unpredictable behavior, as both attempt to provide `import progressbar`. It is strongly recommended to use separate virtual environments or choose only one library.
fix
Always use a dedicated virtual environment for your project. If you intend to use `progressbar33`, ensure the other `progressbar` library is not installed in the same environment. Consider migrating to the more active `progressbar` library if its features meet your needs.
affects: All versions of progressbar33
gotchaPython 3 Only: Despite `requires_python: None` being listed on PyPI, the library explicitly requires Python 3.4 or higher as per its `setup.py` (`python_requires='>=3.4'`). Attempting to use it with Python 2.x will result in compatibility errors.
fix
Ensure your project's Python interpreter is version 3.4 or newer.
affects: All versions of progressbar33
gotchaForgetting `bar.finish()`: If you do not use the `with` statement context manager when creating your `ProgressBar` instance, you must explicitly call `bar.finish()` after the loop or process completes. Failing to do so will leave the progress bar display incomplete or improperly terminated.
fix
Wrap your progress bar usage in a `with` statement (e.g., `with ProgressBar(...) as bar:`), or explicitly call `bar.finish()` after your loop: `bar = ProgressBar(...).start(); for ...: bar.update(...); bar.finish()`.
affects: All versions
gotcha`max_value` for finite iterables: For processes where the total number of iterations is known (e.g., iterating over a list or range), `max_value` must be explicitly set when initializing `ProgressBar`. If `max_value` is not set for a finite process, the progress bar may not display percentage or ETA correctly.
fix
Initialize `ProgressBar` with `max_value` set to the total count, e.g., `ProgressBar(max_value=len(my_list))` or `ProgressBar(max_value=100)`.
affects: All versions
Errors
Common errors & fixes
ModuleNotFoundError: No module named 'progressbar33'
The Python package `progressbar33` installs an internal module named `progressbar`, not `progressbar33`.
fix
Change your import statement from `from progressbar33 import ...` to `from progressbar import ...`.
AttributeError: 'ProgressBar' object has no attribute 'finish'
This error typically occurs if the `finish()` method was not explicitly called after the progress bar completed, and the `with` statement context manager was not used.
fix
Ensure you either use a `with` statement: `with ProgressBar(...) as bar:` or manually call `bar.finish()` after your loop: `bar = ProgressBar(...).start(); ...; bar.finish()`.
TypeError: object of type 'ProgressBar' has no len()
The `ProgressBar` instance needs to know the total number of iterations to correctly display percentage and ETA, especially when iterating over a finite sequence. This error indicates `max_value` was not set.
fix
Initialize `ProgressBar` with `max_value` set to the total count: `bar = ProgressBar(max_value=total_iterations)`.
SyntaxError: invalid syntax (on Python 2.x)
progressbar33 is a Python 3.4+ library and contains syntax incompatible with Python 2.x.
fix
Run your application with a Python 3.x interpreter (specifically 3.4 or newer).
Upgrade
Version history
2.4latest on PyPI · released Aug 29, 2014
Audit
Dependencies

No dependency data recorded yet.

Agent activity
6 hits · last 30 days
node
6
Resources
progressbar33 — pip install progressbar33 · libregistry