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&amp;utm_medium=referral&amp;utm_content=tqdm/tqdm&amp;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


Reply via email to