Releases: swansonk14/p_tqdm
Fixing typing issue in setup.py
Fixing a typing issue in setup.py that broke installs for Python <3.10. Thank you @sahiljhawar for the fix!
with...as... syntax
Changed the creation of Pool
to use with
...as
syntax (#47). Thank you @r-menezes!
Compatibility with Python 3.9+
Summary
The primary fix in this release is providing compatibility with Python 3.9+.
Merged PRs
#29 – Fix deprecated collections import for compatibility with Python 3.9.
#35 – Use the total kwarg as the tqdm length if provided.
#28 – Fix bug with no sized iterables (look before you leap).
#45 – Allow overriding tqdm function used.
#36 – Include LICENSE.txt in pip package.
Other Changes
- Switched from Travis CI to GitHub Actions for testing.
- Changed default branch from master to main.
- Changed supported Python versions from 3.5-3.8 to 3.7-3.10.
Enabling iteration over non-lists
Previously, p_tqdm
specifically checked whether the provided iterables were lists. This meant that iteration over objects like numpy arrays and generators like range
were performed incorrectly. This has now been fixed.
In the process of fixing the above, the treatment of non-lists has changed. Previously, non-lists were treated as singleton objects that were repeated as many times as the longest list. Now, singleton items (and the num_iters
kwarg) should no longer be passed to p_tqdm
maps since p_tqdm
now expects all inputs to be iterators (and iterates until it reaches the end of the shortest one). To provide a singleton object along with the iterators, please use Python's partial from the functools library. An example is in the README.
Adding six dependency
v_1.3.2 Adding six dependency
Fixing setup.py encoding issue
Fixes an encoding issue in setup.py
detailed in #11
Merging in PRs and overall refactoring
This version merges in PRs that make it possible to use p_tqdm
in jupyter notebooks and to pass kwargs
to the underlying tqdm
object. Additionally, the code is refactored to reduce redundancy and to add in Python typing, meaning p_tqdm
now only supports Python 3.5+.
Version 1.2
Includes ability to pass single variables in addition to lists
Version 1.1
Support for Python 2 and Python 3