Hello community, here is the log from the commit of package python-tqdm for openSUSE:Factory checked in at 2018-03-07 10:36:05 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-tqdm (Old) and /work/SRC/openSUSE:Factory/.python-tqdm.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-tqdm" Wed Mar 7 10:36:05 2018 rev:7 rq:583105 version:4.19.6 Changes: -------- --- /work/SRC/openSUSE:Factory/python-tqdm/python-tqdm.changes 2017-12-11 18:57:21.640110517 +0100 +++ /work/SRC/openSUSE:Factory/.python-tqdm.new/python-tqdm.changes 2018-03-07 10:36:05.923402921 +0100 @@ -1,0 +2,14 @@ +Thu Mar 1 23:58:02 UTC 2018 - [email protected] + +- specfile: + * update copyright year + +- update to version 4.19.6: + * CLI improvements + + --bytes implies --unit B --unit_scale --unit_divisor 1024 (#503) + + allow hyphens in CLI arguments (#511) + * synchronisation: fix for sem_open on aarch64 (#513) + * framework update + + CI/tests, year 2018, py37, badges, documentation + +------------------------------------------------------------------- Old: ---- tqdm-4.19.5.tar.gz New: ---- tqdm-4.19.6.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-tqdm.spec ++++++ --- /var/tmp/diff_new_pack.7Ycpa2/_old 2018-03-07 10:36:06.559379981 +0100 +++ /var/tmp/diff_new_pack.7Ycpa2/_new 2018-03-07 10:36:06.563379837 +0100 @@ -1,7 +1,7 @@ # # spec file for package python-tqdm # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -20,10 +20,10 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} %bcond_without test Name: python-tqdm -Version: 4.19.5 +Version: 4.19.6 Release: 0 Summary: An extensible progress meter -License: MPL-2.0 and MIT +License: MPL-2.0 AND MIT Group: Development/Languages/Python Url: https://github.com/tqdm/tqdm Source: https://files.pythonhosted.org/packages/source/t/tqdm/tqdm-%{version}.tar.gz ++++++ tqdm-4.19.5.tar.gz -> tqdm-4.19.6.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tqdm-4.19.5/LICENCE new/tqdm-4.19.6/LICENCE --- old/tqdm-4.19.5/LICENCE 2017-12-10 19:21:44.000000000 +0100 +++ new/tqdm-4.19.6/LICENCE 2018-02-27 00:57:53.000000000 +0100 @@ -7,7 +7,7 @@ in reverse chronological order: * files: * - MPLv2.0 2015-2017 (c) Casper da Costa-Luis + MPLv2.0 2015-2018 (c) Casper da Costa-Luis [casperdcl](https://github.com/casperdcl). * files: tqdm/_tqdm.py MIT 2016 (c) [PR #96] on behalf of Google Inc. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tqdm-4.19.5/Makefile new/tqdm-4.19.6/Makefile --- old/tqdm-4.19.5/Makefile 2017-10-15 17:04:37.000000000 +0200 +++ new/tqdm-4.19.6/Makefile 2018-02-04 03:46:38.000000000 +0100 @@ -1,7 +1,6 @@ # IMPORTANT: for compatibility with `python setup.py make [alias]`, ensure: # 1. Every alias is preceded by @[+]make (eg: @make alias) # 2. A maximum of one @make alias or command per line -# 3. Only use tabs, not spaces to indent (compatibility with linux make) # # Sample makefile compatible with `python setup.py make`: #``` @@ -49,7 +48,7 @@ @+make build flake8: - @+flake8 --max-line-length=80 --count --statistics --exit-zero -j 8 --exclude .asv,.tox . + @+flake8 --max-line-length=80 --exclude .asv,.tox -j 8 --count --statistics --exit-zero . test: tox --skip-missing-interpreters @@ -102,12 +101,17 @@ @+python -c "import shutil; shutil.rmtree('dist', True)" @+python -c "import shutil; shutil.rmtree('tqdm.egg-info', True)" coverclean: - @+python -c "import os, glob; [os.remove(i) for i in glob.glob('.coverage')]" + @+python -c "import os; os.remove('.coverage') if os.path.exists('.coverage') else None" + @+python -c "import shutil; shutil.rmtree('tqdm/__pycache__', True)" + @+python -c "import shutil; shutil.rmtree('tqdm/tests/__pycache__', True)" clean: @+python -c "import os, glob; [os.remove(i) for i in glob.glob('*.py[co]')]" @+python -c "import os, glob; [os.remove(i) for i in glob.glob('tqdm/*.py[co]')]" @+python -c "import os, glob; [os.remove(i) for i in glob.glob('tqdm/tests/*.py[co]')]" @+python -c "import os, glob; [os.remove(i) for i in glob.glob('tqdm/examples/*.py[co]')]" +toxclean: + @+python -c "import shutil; shutil.rmtree('.tox', True)" + installdev: python setup.py develop --uninstall diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tqdm-4.19.5/PKG-INFO new/tqdm-4.19.6/PKG-INFO --- old/tqdm-4.19.5/PKG-INFO 2017-12-10 19:57:05.000000000 +0100 +++ new/tqdm-4.19.6/PKG-INFO 2018-02-27 01:02:34.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 1.1 Name: tqdm -Version: 4.19.5 +Version: 4.19.6 Summary: Fast, Extensible Progress Meter Home-page: https://github.com/tqdm/tqdm Author: tqdm developers @@ -810,10 +810,10 @@ .. |Screenshot| image:: https://raw.githubusercontent.com/tqdm/tqdm/master/images/tqdm.gif .. |Build-Status| image:: https://travis-ci.org/tqdm/tqdm.svg?branch=master :target: https://travis-ci.org/tqdm/tqdm - .. |Coverage-Status| image:: https://coveralls.io/repos/tqdm/tqdm/badge.svg - :target: https://coveralls.io/r/tqdm/tqdm - .. |Branch-Coverage-Status| image:: https://codecov.io/github/tqdm/tqdm/coverage.svg?branch=master - :target: https://codecov.io/github/tqdm/tqdm?branch=master + .. |Coverage-Status| image:: https://coveralls.io/repos/tqdm/tqdm/badge.svg?branch=master + :target: https://coveralls.io/github/tqdm/tqdm + .. |Branch-Coverage-Status| image:: https://codecov.io/gh/tqdm/tqdm/branch/master/graph/badge.svg + :target: https://codecov.io/gh/tqdm/tqdm .. |Codacy-Grade| image:: https://api.codacy.com/project/badge/Grade/3f965571598f44549c7818f29cdcf177 :target: https://www.codacy.com/app/tqdm/tqdm?utm_source=github.com&utm_medium=referral&utm_content=tqdm/tqdm&utm_campaign=Badge_Grade .. |GitHub-Status| image:: https://img.shields.io/github/tag/tqdm/tqdm.svg?maxAge=86400 @@ -855,16 +855,25 @@ Keywords: progressbar progressmeter progress bar meter rate eta console terminal time Platform: any Classifier: Development Status :: 5 - Production/Stable -Classifier: License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0) -Classifier: License :: OSI Approved :: MIT License Classifier: Environment :: Console +Classifier: Environment :: MacOS X +Classifier: Environment :: Other Environment +Classifier: Environment :: Win32 (MS Windows) +Classifier: Environment :: X11 Applications Classifier: Framework :: IPython -Classifier: Operating System :: Microsoft :: Windows +Classifier: Intended Audience :: Developers +Classifier: Intended Audience :: Education +Classifier: Intended Audience :: End Users/Desktop +Classifier: Intended Audience :: Other Audience +Classifier: Intended Audience :: System Administrators +Classifier: License :: OSI Approved :: MIT License +Classifier: License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0) Classifier: Operating System :: MacOS :: MacOS X +Classifier: Operating System :: Microsoft :: Windows Classifier: Operating System :: POSIX -Classifier: Operating System :: POSIX :: Linux Classifier: Operating System :: POSIX :: BSD Classifier: Operating System :: POSIX :: BSD :: FreeBSD +Classifier: Operating System :: POSIX :: Linux Classifier: Operating System :: POSIX :: SunOS/Solaris Classifier: Programming Language :: Python Classifier: Programming Language :: Python :: 2 @@ -876,12 +885,19 @@ Classifier: Programming Language :: Python :: 3.4 Classifier: Programming Language :: Python :: 3.5 Classifier: Programming Language :: Python :: 3.6 -Classifier: Programming Language :: Python :: Implementation :: PyPy +Classifier: Programming Language :: Python :: 3.7 +Classifier: Programming Language :: Python :: Implementation Classifier: Programming Language :: Python :: Implementation :: IronPython +Classifier: Programming Language :: Python :: Implementation :: PyPy +Classifier: Topic :: Desktop Environment +Classifier: Topic :: Education :: Testing +Classifier: Topic :: Office/Business +Classifier: Topic :: Other/Nonlisted Topic Classifier: Topic :: Software Development :: Libraries Classifier: Topic :: Software Development :: Libraries :: Python Modules Classifier: Topic :: Software Development :: User Interfaces +Classifier: Topic :: System :: Logging Classifier: Topic :: System :: Monitoring +Classifier: Topic :: System :: Shells Classifier: Topic :: Terminals Classifier: Topic :: Utilities -Classifier: Intended Audience :: Developers diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tqdm-4.19.5/README.rst new/tqdm-4.19.6/README.rst --- old/tqdm-4.19.5/README.rst 2017-12-10 19:21:44.000000000 +0100 +++ new/tqdm-4.19.6/README.rst 2018-01-29 02:14:21.000000000 +0100 @@ -801,10 +801,10 @@ .. |Screenshot| image:: https://raw.githubusercontent.com/tqdm/tqdm/master/images/tqdm.gif .. |Build-Status| image:: https://travis-ci.org/tqdm/tqdm.svg?branch=master :target: https://travis-ci.org/tqdm/tqdm -.. |Coverage-Status| image:: https://coveralls.io/repos/tqdm/tqdm/badge.svg - :target: https://coveralls.io/r/tqdm/tqdm -.. |Branch-Coverage-Status| image:: https://codecov.io/github/tqdm/tqdm/coverage.svg?branch=master - :target: https://codecov.io/github/tqdm/tqdm?branch=master +.. |Coverage-Status| image:: https://coveralls.io/repos/tqdm/tqdm/badge.svg?branch=master + :target: https://coveralls.io/github/tqdm/tqdm +.. |Branch-Coverage-Status| image:: https://codecov.io/gh/tqdm/tqdm/branch/master/graph/badge.svg + :target: https://codecov.io/gh/tqdm/tqdm .. |Codacy-Grade| image:: https://api.codacy.com/project/badge/Grade/3f965571598f44549c7818f29cdcf177 :target: https://www.codacy.com/app/tqdm/tqdm?utm_source=github.com&utm_medium=referral&utm_content=tqdm/tqdm&utm_campaign=Badge_Grade .. |GitHub-Status| image:: https://img.shields.io/github/tag/tqdm/tqdm.svg?maxAge=86400 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tqdm-4.19.5/setup.py new/tqdm-4.19.6/setup.py --- old/tqdm-4.19.5/setup.py 2017-10-15 17:04:37.000000000 +0200 +++ new/tqdm-4.19.6/setup.py 2018-01-29 02:14:21.000000000 +0100 @@ -16,10 +16,16 @@ import ConfigParser import StringIO except ImportError: # pragma: no cover + # Python 3 compatibility import configparser as ConfigParser import io as StringIO import re +# Get version from tqdm/_version.py +__version__ = None +version_file = os.path.join(os.path.dirname(__file__), 'tqdm', '_version.py') +with io_open(version_file, mode='r') as fd: + exec(fd.read()) # Makefile auxiliary functions # @@ -27,12 +33,12 @@ def parse_makefile_aliases(filepath): - ''' + """ Parse a makefile to find commands and substitute variables. Expects a makefile with only aliases and a line return between each command. Returns a dict, with a list of commands for each alias. - ''' + """ # -- Parsing the Makefile using ConfigParser # Adding a fake section to make the Makefile a valid Ini file @@ -119,11 +125,6 @@ # Main setup.py config # -# Get version from tqdm/_version.py -__version__ = None -version_file = os.path.join(os.path.dirname(__file__), 'tqdm', '_version.py') -with io_open(version_file, mode='r') as fd: - exec(fd.read()) # Executing makefile commands if specified if sys.argv[1].lower().strip() == 'make': @@ -182,16 +183,25 @@ # Trove classifiers # (https://pypi.python.org/pypi?%3Aaction=list_classifiers) 'Development Status :: 5 - Production/Stable', - 'License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)', - 'License :: OSI Approved :: MIT License', 'Environment :: Console', + 'Environment :: MacOS X', + 'Environment :: Other Environment', + 'Environment :: Win32 (MS Windows)', + 'Environment :: X11 Applications', 'Framework :: IPython', - 'Operating System :: Microsoft :: Windows', + 'Intended Audience :: Developers', + 'Intended Audience :: Education', + 'Intended Audience :: End Users/Desktop', + 'Intended Audience :: Other Audience', + 'Intended Audience :: System Administrators', + 'License :: OSI Approved :: MIT License', + 'License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)', 'Operating System :: MacOS :: MacOS X', + 'Operating System :: Microsoft :: Windows', 'Operating System :: POSIX', - 'Operating System :: POSIX :: Linux', 'Operating System :: POSIX :: BSD', 'Operating System :: POSIX :: BSD :: FreeBSD', + 'Operating System :: POSIX :: Linux', 'Operating System :: POSIX :: SunOS/Solaris', 'Programming Language :: Python', 'Programming Language :: Python :: 2', @@ -203,15 +213,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', - 'Programming Language :: Python :: Implementation :: PyPy', + 'Programming Language :: Python :: 3.7', + 'Programming Language :: Python :: Implementation', 'Programming Language :: Python :: Implementation :: IronPython', + 'Programming Language :: Python :: Implementation :: PyPy', + 'Topic :: Desktop Environment', + 'Topic :: Education :: Testing', + 'Topic :: Office/Business', + 'Topic :: Other/Nonlisted Topic', 'Topic :: Software Development :: Libraries', 'Topic :: Software Development :: Libraries :: Python Modules', 'Topic :: Software Development :: User Interfaces', + 'Topic :: System :: Logging', 'Topic :: System :: Monitoring', + 'Topic :: System :: Shells', 'Topic :: Terminals', - 'Topic :: Utilities', - 'Intended Audience :: Developers', + 'Topic :: Utilities' ], keywords='progressbar progressmeter progress bar meter' ' rate eta console terminal time', diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tqdm-4.19.5/tox.ini new/tqdm-4.19.6/tox.ini --- old/tqdm-4.19.5/tox.ini 2017-10-15 17:04:37.000000000 +0200 +++ new/tqdm-4.19.6/tox.ini 2018-01-29 02:14:21.000000000 +0100 @@ -4,79 +4,75 @@ # and then run "tox" from this directory. [tox] -# deprecation warning: py26, py32-4 -envlist = py26, py27, py33, py34, py35, py36, py37-dev, pypy, pypy3, flake8, setup.py, perf +# deprecation warning: py{26,32,33,34} +envlist = py{26,27,33,34,35,36,37,py,py3}, flake8, setup.py, perf -[testenv] -# default tests (most things) -passenv = TRAVIS TRAVIS_JOB_ID TRAVIS_BRANCH +[coverage] deps = nose - nose-timer - coverage<4 + coverage coveralls - cython - numpy - pandas commands = - nosetests --with-coverage --with-timer --cover-package=tqdm --ignore-files="tests_perf\.py" -d -v tqdm/ + nosetests --with-coverage --cover-package=tqdm --ignore-files="tests_p(erf|andas)\.py" -d -v tqdm/ - coveralls -# no cython/numpy/pandas for pypy/pypy3/py26/py33/py37-dev -[testenv:pypy] -passenv = TRAVIS TRAVIS_JOB_ID TRAVIS_BRANCH +[extra] deps = - nose + {[coverage]deps} nose-timer - coverage<4 - coveralls - virtualenv>=15.0.2 + codecov commands = - nosetests --with-coverage --cover-package=tqdm --ignore-files="tests_p(erf|andas)\.py" -d -v tqdm/ # TODO: --with-timer + nosetests --with-coverage --with-timer --cover-package=tqdm --ignore-files="tests_p(erf|andas)\.py" -d -v tqdm/ - coveralls + codecov -[testenv:pypy3] -passenv = {[testenv:pypy]passenv} +[testenv] +# default tests (most things) +passenv = CI TRAVIS TRAVIS_* deps = - {[testenv:pypy]deps} + {[extra]deps} + cython + numpy + pandas commands = - {[testenv:pypy]commands} + nosetests --with-coverage --with-timer --cover-package=tqdm --ignore-files="tests_perf\.py" -d -v tqdm/ + - coveralls + codecov + +# no cython/numpy/pandas for py{py,py3,26,33,37} [testenv:py26] -passenv = {[testenv:pypy]passenv} -deps = - {[testenv:pypy]deps} -commands = - {[testenv:pypy]commands} +# no codecov and timer for py26 +deps = {[coverage]deps} +commands = {[coverage]commands} + +[testenv:pypy] +deps = {[extra]deps} +commands = {[extra]commands} + +[testenv:pypy3] +deps = {[extra]deps} +commands = {[extra]commands} [testenv:py33] -passenv = {[testenv:pypy]passenv} -deps = - {[testenv:pypy]deps} -commands = - {[testenv:pypy]commands} +deps = {[extra]deps} +commands = {[extra]commands} -[testenv:py37-dev] -passenv = {[testenv:pypy]passenv} -deps = - {[testenv:pypy]deps} -commands = - {[testenv:pypy]commands} +[testenv:py37] +deps = {[extra]deps} +commands = {[extra]commands} -[testenv:py27] -# add codecov only for py27 (they spam a lot) -passenv = CI TRAVIS TRAVIS_* +[testenv:perf] deps = - {[testenv]deps} - codecov + nose + nose-timer commands = - {[testenv]commands} - codecov + nosetests --with-timer tqdm/tests/tests_perf.py -d -v [testenv:flake8] deps = flake8 commands = - flake8 --max-line-length=80 --count --statistics --exit-zero -j 8 --exclude .tox,.asv . + flake8 --max-line-length=80 -j 8 --count --statistics --exit-zero . [testenv:setup.py] deps = @@ -85,10 +81,3 @@ commands = python setup.py check --restructuredtext --metadata --strict python setup.py make none - -[testenv:perf] -deps = - nose - nose-timer -commands = - nosetests --with-timer tqdm/tests/tests_perf.py -d -v diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tqdm-4.19.5/tqdm/_main.py new/tqdm-4.19.6/tqdm/_main.py --- old/tqdm-4.19.5/tqdm/_main.py 2017-10-15 17:04:37.000000000 +0200 +++ new/tqdm-4.19.6/tqdm/_main.py 2018-02-27 00:46:30.000000000 +0100 @@ -2,10 +2,21 @@ from ._version import __version__ # NOQA import sys import re +import logging __all__ = ["main"] def cast(val, typ): + log = logging.getLogger(__name__) + log.debug((val, typ)) + if " or " in typ: + for t in typ.split(" or "): + try: + return cast(val, t) + except TqdmTypeError: + pass + raise TqdmTypeError(val + ' : ' + typ) + # sys.stderr.write('\ndebug | `val:type`: `' + val + ':' + typ + '`.\n') if typ == 'bool': if (val == 'True') or (val == ''): @@ -76,9 +87,9 @@ # ((opt, type), ... ) -RE_OPTS = re.compile(r'\n {8}(\S+)\s{2,}:\s*([^\s,]+)') +RE_OPTS = re.compile(r'\n {8}(\S+)\s{2,}:\s*([^,]+)') # better split method assuming no positional args -RE_SHLEX = re.compile(r'\s*--?([^\s=]+)(?:\s*|=|$)') +RE_SHLEX = re.compile(r'\s*(?<!\S)--?([^\s=]+)(?:\s*|=|$)') # TODO: add custom support for some of the following? UNSUPPORTED_OPTS = ('iterable', 'gui', 'out', 'file') @@ -87,6 +98,8 @@ CLI_EXTRA_DOC = r""" Extra CLI Options ----------------- + name : type, optional + TODO: find out why this is needed. delim : chr, optional Delimiting character [default: '\n']. Use '\0' for null. N.B.: on Windows systems, Python converts '\n' to '\r\n'. @@ -94,7 +107,10 @@ String buffer size in bytes [default: 256] used when `delim` is specified. bytes : bool, optional - If true, will count bytes and ignore `delim`. + If true, will count bytes, ignore `delim`, and default + `unit_scale` to True, `unit_divisor` to 1024, and `unit` to 'B'. + log : str, optional + CRITICAL|FATAL|ERROR|WARN(ING)|[default: 'INFO']|DEBUG|NOTSET. """ @@ -104,13 +120,27 @@ --------- fp : file-like object for tqdm """ + try: + log = sys.argv.index('--log') + except ValueError: + logLevel = 'INFO' + else: + # sys.argv.pop(log) + # logLevel = sys.argv.pop(log) + logLevel = sys.argv[log + 1] + logging.basicConfig(level=getattr(logging, logLevel)) + log = logging.getLogger(__name__) + d = tqdm.__init__.__doc__ + CLI_EXTRA_DOC opt_types = dict(RE_OPTS.findall(d)) + # opt_types['delim'] = 'chr' for o in UNSUPPORTED_OPTS: opt_types.pop(o) + log.debug(sorted(opt_types.items())) + # d = RE_OPTS.sub(r' --\1=<\1> : \2', d) split = RE_OPTS.split(d) opt_types_desc = zip(split[1::3], split[2::3], split[3::3]) @@ -137,6 +167,9 @@ argv = RE_SHLEX.split(' '.join(["tqdm"] + sys.argv[1:])) opts = dict(zip(argv[1::2], argv[2::2])) + log.debug(opts) + opts.pop('log', True) + tqdm_args = {'file': fp} try: for (o, v) in opts.items(): @@ -144,7 +177,7 @@ tqdm_args[o] = cast(v, opt_types[o]) except KeyError as e: raise TqdmKeyError(str(e)) - # fp.write('\ndebug | args: ' + str(tqdm_args) + '\n') + log.debug('args:' + str(tqdm_args)) except: fp.write('\nError:\nUsage:\n tqdm [--help | options]\n') for i in sys.stdin: @@ -155,13 +188,19 @@ delim = tqdm_args.pop('delim', '\n') delim_per_char = tqdm_args.pop('bytes', False) if delim_per_char: + tqdm_args.setdefault('unit', 'B') + tqdm_args.setdefault('unit_scale', True) + tqdm_args.setdefault('unit_divisor', 1024) + log.debug(tqdm_args) with tqdm(**tqdm_args) as t: posix_pipe(sys.stdin, sys.stdout, '', buf_size, t.update) elif delim == '\n': + log.debug(tqdm_args) for i in tqdm(sys.stdin, **tqdm_args): sys.stdout.write(i) else: + log.debug(tqdm_args) with tqdm(**tqdm_args) as t: posix_pipe(sys.stdin, sys.stdout, delim, buf_size, t.update) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tqdm-4.19.5/tqdm/_tqdm.py new/tqdm-4.19.6/tqdm/_tqdm.py --- old/tqdm-4.19.5/tqdm/_tqdm.py 2017-12-10 19:21:44.000000000 +0100 +++ new/tqdm-4.19.6/tqdm/_tqdm.py 2018-02-27 00:46:30.000000000 +0100 @@ -52,9 +52,13 @@ # works only if fork available (Linux, MacOSX, but not on Windows) try: mp_lock = mp.RLock() # multiprocessing lock - th_lock = th.RLock() # thread lock +except ImportError: # pragma: no cover + mp_lock = None except OSError: # pragma: no cover mp_lock = None +try: + th_lock = th.RLock() # thread lock +except OSError: # pragma: no cover th_lock = None diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tqdm-4.19.5/tqdm/_version.py new/tqdm-4.19.6/tqdm/_version.py --- old/tqdm-4.19.5/tqdm/_version.py 2017-12-10 19:22:26.000000000 +0100 +++ new/tqdm-4.19.6/tqdm/_version.py 2018-02-27 00:47:01.000000000 +0100 @@ -5,7 +5,7 @@ __all__ = ["__version__"] # major, minor, patch, -extra -version_info = 4, 19, 5 +version_info = 4, 19, 6 # Nice string for the version __version__ = '.'.join(map(str, version_info)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tqdm-4.19.5/tqdm/tests/tests_main.py new/tqdm-4.19.6/tqdm/tests/tests_main.py --- old/tqdm-4.19.5/tqdm/tests/tests_main.py 2017-10-15 17:04:37.000000000 +0200 +++ new/tqdm-4.19.6/tqdm/tests/tests_main.py 2018-02-27 00:46:30.000000000 +0100 @@ -2,7 +2,8 @@ import subprocess from tqdm import main, TqdmKeyError, TqdmTypeError -from tests_tqdm import with_setup, pretest, posttest, _range, closing, UnicodeIO +from tests_tqdm import with_setup, pretest, posttest, _range, closing, \ + UnicodeIO, StringIO def _sh(*cmd, **kwargs): @@ -28,8 +29,8 @@ # semi-fake test which gets coverage: _SYS = sys.stdin, sys.argv - with closing(UnicodeIO()) as sys.stdin: - sys.argv = ['', '--desc', 'Test CLI delims', + with closing(StringIO()) as sys.stdin: + sys.argv = ['', '--desc', 'Test CLI-delims', '--ascii', 'True', '--delim', r'\0', '--buf_size', '64'] sys.stdin.write('\0'.join(map(str, _range(int(1e3))))) sys.stdin.seek(0) @@ -42,10 +43,10 @@ import tqdm.__main__ # NOQA IN_DATA = '\0'.join(IN_DATA_LIST) - with closing(UnicodeIO()) as sys.stdin: + with closing(StringIO()) as sys.stdin: sys.stdin.write(IN_DATA) sys.stdin.seek(0) - sys.argv = ['', '--ascii', '--bytes'] + sys.argv = ['', '--ascii', '--bytes', '--unit_scale', 'False'] with closing(UnicodeIO()) as fp: main(fp=fp) assert (str(len(IN_DATA)) in fp.getvalue()) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tqdm-4.19.5/tqdm.1 new/tqdm-4.19.6/tqdm.1 --- old/tqdm-4.19.5/tqdm.1 2017-10-15 17:04:37.000000000 +0200 +++ new/tqdm-4.19.6/tqdm.1 2018-02-27 00:57:58.000000000 +0100 @@ -1,6 +1,6 @@ .\" Automatically generated by Pandoc 1.19.2.1 .\" -.TH "TQDM" "1" "2015\-2017" "tqdm User Manuals" "" +.TH "TQDM" "1" "2015\-2018" "tqdm User Manuals" "" .hy .SH NAME .PP @@ -215,7 +215,15 @@ .TP .B \-\-bytes=\f[I]bytes\f[] bool, optional. -If true, will count bytes and ignore \f[C]delim\f[]. +If true, will count bytes, ignore \f[C]delim\f[], and default +\f[C]unit_scale\f[] to True, \f[C]unit_divisor\f[] to 1024, and +\f[C]unit\f[] to \[aq]B\[aq]. +.RS +.RE +.TP +.B \-\-log=\f[I]log\f[] +str, optional. +CRITICAL|FATAL|ERROR|WARN(ING)|[default: \[aq]INFO\[aq]]|DEBUG|NOTSET. .RS .RE .SH AUTHORS diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tqdm-4.19.5/tqdm.egg-info/PKG-INFO new/tqdm-4.19.6/tqdm.egg-info/PKG-INFO --- old/tqdm-4.19.5/tqdm.egg-info/PKG-INFO 2017-12-10 19:57:05.000000000 +0100 +++ new/tqdm-4.19.6/tqdm.egg-info/PKG-INFO 2018-02-27 01:02:34.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 1.1 Name: tqdm -Version: 4.19.5 +Version: 4.19.6 Summary: Fast, Extensible Progress Meter Home-page: https://github.com/tqdm/tqdm Author: tqdm developers @@ -810,10 +810,10 @@ .. |Screenshot| image:: https://raw.githubusercontent.com/tqdm/tqdm/master/images/tqdm.gif .. |Build-Status| image:: https://travis-ci.org/tqdm/tqdm.svg?branch=master :target: https://travis-ci.org/tqdm/tqdm - .. |Coverage-Status| image:: https://coveralls.io/repos/tqdm/tqdm/badge.svg - :target: https://coveralls.io/r/tqdm/tqdm - .. |Branch-Coverage-Status| image:: https://codecov.io/github/tqdm/tqdm/coverage.svg?branch=master - :target: https://codecov.io/github/tqdm/tqdm?branch=master + .. |Coverage-Status| image:: https://coveralls.io/repos/tqdm/tqdm/badge.svg?branch=master + :target: https://coveralls.io/github/tqdm/tqdm + .. |Branch-Coverage-Status| image:: https://codecov.io/gh/tqdm/tqdm/branch/master/graph/badge.svg + :target: https://codecov.io/gh/tqdm/tqdm .. |Codacy-Grade| image:: https://api.codacy.com/project/badge/Grade/3f965571598f44549c7818f29cdcf177 :target: https://www.codacy.com/app/tqdm/tqdm?utm_source=github.com&utm_medium=referral&utm_content=tqdm/tqdm&utm_campaign=Badge_Grade .. |GitHub-Status| image:: https://img.shields.io/github/tag/tqdm/tqdm.svg?maxAge=86400 @@ -855,16 +855,25 @@ Keywords: progressbar progressmeter progress bar meter rate eta console terminal time Platform: any Classifier: Development Status :: 5 - Production/Stable -Classifier: License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0) -Classifier: License :: OSI Approved :: MIT License Classifier: Environment :: Console +Classifier: Environment :: MacOS X +Classifier: Environment :: Other Environment +Classifier: Environment :: Win32 (MS Windows) +Classifier: Environment :: X11 Applications Classifier: Framework :: IPython -Classifier: Operating System :: Microsoft :: Windows +Classifier: Intended Audience :: Developers +Classifier: Intended Audience :: Education +Classifier: Intended Audience :: End Users/Desktop +Classifier: Intended Audience :: Other Audience +Classifier: Intended Audience :: System Administrators +Classifier: License :: OSI Approved :: MIT License +Classifier: License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0) Classifier: Operating System :: MacOS :: MacOS X +Classifier: Operating System :: Microsoft :: Windows Classifier: Operating System :: POSIX -Classifier: Operating System :: POSIX :: Linux Classifier: Operating System :: POSIX :: BSD Classifier: Operating System :: POSIX :: BSD :: FreeBSD +Classifier: Operating System :: POSIX :: Linux Classifier: Operating System :: POSIX :: SunOS/Solaris Classifier: Programming Language :: Python Classifier: Programming Language :: Python :: 2 @@ -876,12 +885,19 @@ Classifier: Programming Language :: Python :: 3.4 Classifier: Programming Language :: Python :: 3.5 Classifier: Programming Language :: Python :: 3.6 -Classifier: Programming Language :: Python :: Implementation :: PyPy +Classifier: Programming Language :: Python :: 3.7 +Classifier: Programming Language :: Python :: Implementation Classifier: Programming Language :: Python :: Implementation :: IronPython +Classifier: Programming Language :: Python :: Implementation :: PyPy +Classifier: Topic :: Desktop Environment +Classifier: Topic :: Education :: Testing +Classifier: Topic :: Office/Business +Classifier: Topic :: Other/Nonlisted Topic Classifier: Topic :: Software Development :: Libraries Classifier: Topic :: Software Development :: Libraries :: Python Modules Classifier: Topic :: Software Development :: User Interfaces +Classifier: Topic :: System :: Logging Classifier: Topic :: System :: Monitoring +Classifier: Topic :: System :: Shells Classifier: Topic :: Terminals Classifier: Topic :: Utilities -Classifier: Intended Audience :: Developers
