Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-typepy for openSUSE:Factory 
checked in at 2021-05-01 00:46:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-typepy (Old)
 and      /work/SRC/openSUSE:Factory/.python-typepy.new.1947 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-typepy"

Sat May  1 00:46:55 2021 rev:6 rq:889547 version:1.1.5

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-typepy/python-typepy.changes      
2020-07-08 19:20:42.324538222 +0200
+++ /work/SRC/openSUSE:Factory/.python-typepy.new.1947/python-typepy.changes    
2021-05-01 00:46:59.083375556 +0200
@@ -1,0 +2,18 @@
+Fri Apr 23 11:27:31 UTC 2021 - Matej Cepl <[email protected]>
+
+- Update to version 1.1.5:
+  - Change packaging dependency from mandatory to optional.
+
+-------------------------------------------------------------------
+Sat Mar  6 13:20:09 UTC 2021 - Martin Hauke <[email protected]>
+
+- Update to version 1.1.4
+  * Fix bool values conversion
+- Update to version 1.1.3
+  * Add support for Python 3.10
+  * Improve error messages when conversion error happens.
+  * Drop dependency of deprecated distutils
+- Update to version 1.1.2
+  * Modify dependencies
+
+-------------------------------------------------------------------

Old:
----
  typepy-1.1.1.tar.gz

New:
----
  typepy-1.1.5.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-typepy.spec ++++++
--- /var/tmp/diff_new_pack.qLUjpP/_old  2021-05-01 00:46:59.599373257 +0200
+++ /var/tmp/diff_new_pack.qLUjpP/_new  2021-05-01 00:46:59.603373240 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package python-typepy
 #
-# Copyright (c) 2020 SUSE LLC
+# Copyright (c) 2021 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -19,7 +19,7 @@
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 %define skip_python2 1
 Name:           python-typepy
-Version:        1.1.1
+Version:        1.1.5
 Release:        0
 Summary:        Python library for run time variable type checker 
 License:        MIT
@@ -33,17 +33,14 @@
 BuildRequires:  %{python_module pytest-runner}
 BuildRequires:  %{python_module python-dateutil >= 2.8.0}
 BuildRequires:  %{python_module pytz >= 2018.9}
-BuildRequires:  %{python_module six >= 1.10.0}
-BuildRequires:  %{python_module termcolor}
+BuildRequires:  %{python_module tcolorpy}
 # /SECTION
 BuildRequires:  fdupes
 Requires:       python-mbstrdecoder >= 1.0.0
-Requires:       python-setuptools >= 38.3.0
-Requires:       python-six >= 1.10.0
 Suggests:       python-python-dateutil >= 2.8.0
 Suggests:       python-pytz >= 2018.9
 Suggests:       python-path.py
-Suggests:       python-termcolor
+Suggests:       python-tcolorpy
 BuildArch:      noarch
 
 %python_subpackages
@@ -69,8 +66,8 @@
 %pytest
 
 %files %{python_files}
-%doc README.rst
 %license LICENSE
+%doc README.rst
 %{python_sitelib}/typepy*
 
 %changelog

++++++ typepy-1.1.1.tar.gz -> typepy-1.1.5.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/PKG-INFO new/typepy-1.1.5/PKG-INFO
--- old/typepy-1.1.1/PKG-INFO   2020-05-04 04:01:17.000172000 +0200
+++ new/typepy-1.1.5/PKG-INFO   2021-04-11 14:44:49.806168000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: typepy
-Version: 1.1.1
+Version: 1.1.5
 Summary: typepy is a Python library for variable type 
checker/validator/converter at a run time.
 Home-page: https://github.com/thombashi/typepy
 Author: Tsuyoshi Hombashi
@@ -9,6 +9,7 @@
 Project-URL: Documentation, https://typepy.rtfd.io/
 Project-URL: Source, https://github.com/thombashi/typepy
 Project-URL: Tracker, https://github.com/thombashi/typepy/issues
+Project-URL: Changes, https://github.com/thombashi/typepy/releases
 Description: .. contents:: **typepy**
            :backlinks: top
            :depth: 2
@@ -21,6 +22,10 @@
             :target: https://badge.fury.io/py/typepy
             :alt: PyPI package version
         
+        .. image:: https://anaconda.org/conda-forge/typepy/badges/version.svg
+            :target: https://anaconda.org/conda-forge/typepy
+            :alt: conda-forge package version
+        
         .. image:: https://img.shields.io/pypi/pyversions/typepy.svg
             :target: https://pypi.org/project/typepy
             :alt: Supported Python versions
@@ -29,22 +34,14 @@
             :target: https://pypi.org/project/typepy
             :alt: Supported Python implementations
         
-        .. image:: 
https://img.shields.io/travis/thombashi/typepy/master.svg?label=Linux/macOS%20CI
-            :target: https://travis-ci.org/thombashi/typepy
-            :alt: Linux/macOS CI status
-        
-        .. image:: 
https://img.shields.io/appveyor/ci/thombashi/typepy/master.svg?label=Windows%20CI
-            :target: https://ci.appveyor.com/project/thombashi/typepy
-            :alt: Windows CI status
+        .. image:: 
https://github.com/thombashi/typepy/workflows/Tests/badge.svg
+            :target: 
https://github.com/thombashi/typepy/actions?query=workflow%3ATests
+            :alt: Linux/macOS/Windows CI status
         
         .. image:: 
https://coveralls.io/repos/github/thombashi/typepy/badge.svg?branch=master
             :target: https://coveralls.io/github/thombashi/typepy?branch=master
             :alt: Test coverage
         
-        .. image:: 
https://img.shields.io/github/stars/thombashi/typepy.svg?style=social&label=Star
-            :target: https://github.com/thombashi/typepy
-            :alt: GitHub stars
-        
         Features
         ==========
         - checking a value type
@@ -72,6 +69,48 @@
             ``str`` (IP address)                              `IpAddress 
<https://typepy.rtfd.io/en/latest/pages/reference/type.html#ip-address-type>`__
             ================================================  
=======================================================================================================
         
+        Installation
+        ============
+        
+        Installation: pip
+        ------------------------------
+        ::
+        
+            pip install typepy
+        
+        Install additional dependency packages with the following command if 
using ``typepy.DateTime`` class
+        
+        ::
+        
+            pip install typepy[datetime]
+        
+        Installation: conda
+        ------------------------------
+        ::
+        
+            conda install -c conda-forge typepy
+        
+        Installation: apt
+        ------------------------------
+        ::
+        
+            sudo add-apt-repository ppa:thombashi/ppa
+            sudo apt update
+            sudo apt install python3-typepy
+        
+        
+        Dependencies
+        ============
+        - Python 3.5+
+        - `Python package dependencies (automatically installed) 
<https://github.com/thombashi/typepy/network/dependencies>`__
+        
+        Optioal dependencies
+        ----------------------------------
+        These packages can be installed via ``pip install typepy[datetime]``:
+        
+        - `python-dateutil <https://dateutil.readthedocs.io/en/stable/>`__
+        - `pytz <https://pypi.org/project/pytz/>`__
+        
         Usage
         =======
         Type Check Method
@@ -158,48 +197,6 @@
         More information can be found in the
         `API reference 
<https://typepy.rtfd.io/en/latest/pages/reference/index.html>`__.
         
-        Installation
-        ============
-        
-        Install from PyPI
-        ------------------------------
-        ::
-        
-            pip install typepy
-        
-        Install additional dependency packages with the following command if 
using ``typepy.DateTime`` class
-        
-        ::
-        
-            pip install typepy[datetime]
-        
-        Install from PPA (for Ubuntu)
-        ------------------------------
-        ::
-        
-            sudo add-apt-repository ppa:thombashi/ppa
-            sudo apt update
-            sudo apt install python3-typepy
-        
-        
-        Dependencies
-        ============
-        Python 3.5+
-        
-        - `mbstrdecoder <https://github.com/thombashi/mbstrdecoder>`__
-        
-        Optioal dependencies
-        ----------------------------------
-        These packages can be installed via ``pip install typepy[datetime]``:
-        
-        - `python-dateutil <https://dateutil.readthedocs.io/en/stable/>`__
-        - `pytz <https://pypi.org/project/pytz/>`__
-        
-        Test dependencies
-        ----------------------------------
-        - `pytest <https://docs.pytest.org/en/latest/>`__
-        - `tox <https://testrun.org/tox/latest/>`__
-        
         Documentation
         ===============
         https://typepy.rtfd.io/
@@ -218,6 +215,7 @@
 Classifier: Programming Language :: Python :: 3.7
 Classifier: Programming Language :: Python :: 3.8
 Classifier: Programming Language :: Python :: 3.9
+Classifier: Programming Language :: Python :: 3.10
 Classifier: Programming Language :: Python :: 3 :: Only
 Classifier: Programming Language :: Python :: Implementation :: CPython
 Classifier: Programming Language :: Python :: Implementation :: PyPy
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/README.rst new/typepy-1.1.5/README.rst
--- old/typepy-1.1.1/README.rst 2020-03-28 16:09:58.000000000 +0100
+++ new/typepy-1.1.5/README.rst 2021-04-11 14:44:33.000000000 +0200
@@ -10,6 +10,10 @@
     :target: https://badge.fury.io/py/typepy
     :alt: PyPI package version
 
+.. image:: https://anaconda.org/conda-forge/typepy/badges/version.svg
+    :target: https://anaconda.org/conda-forge/typepy
+    :alt: conda-forge package version
+
 .. image:: https://img.shields.io/pypi/pyversions/typepy.svg
     :target: https://pypi.org/project/typepy
     :alt: Supported Python versions
@@ -18,22 +22,14 @@
     :target: https://pypi.org/project/typepy
     :alt: Supported Python implementations
 
-.. image:: 
https://img.shields.io/travis/thombashi/typepy/master.svg?label=Linux/macOS%20CI
-    :target: https://travis-ci.org/thombashi/typepy
-    :alt: Linux/macOS CI status
-
-.. image:: 
https://img.shields.io/appveyor/ci/thombashi/typepy/master.svg?label=Windows%20CI
-    :target: https://ci.appveyor.com/project/thombashi/typepy
-    :alt: Windows CI status
+.. image:: https://github.com/thombashi/typepy/workflows/Tests/badge.svg
+    :target: https://github.com/thombashi/typepy/actions?query=workflow%3ATests
+    :alt: Linux/macOS/Windows CI status
 
 .. image:: 
https://coveralls.io/repos/github/thombashi/typepy/badge.svg?branch=master
     :target: https://coveralls.io/github/thombashi/typepy?branch=master
     :alt: Test coverage
 
-.. image:: 
https://img.shields.io/github/stars/thombashi/typepy.svg?style=social&label=Star
-    :target: https://github.com/thombashi/typepy
-    :alt: GitHub stars
-
 Features
 ==========
 - checking a value type
@@ -61,6 +57,48 @@
     ``str`` (IP address)                              `IpAddress 
<https://typepy.rtfd.io/en/latest/pages/reference/type.html#ip-address-type>`__
     ================================================  
=======================================================================================================
 
+Installation
+============
+
+Installation: pip
+------------------------------
+::
+
+    pip install typepy
+
+Install additional dependency packages with the following command if using 
``typepy.DateTime`` class
+
+::
+
+    pip install typepy[datetime]
+
+Installation: conda
+------------------------------
+::
+
+    conda install -c conda-forge typepy
+
+Installation: apt
+------------------------------
+::
+
+    sudo add-apt-repository ppa:thombashi/ppa
+    sudo apt update
+    sudo apt install python3-typepy
+
+
+Dependencies
+============
+- Python 3.5+
+- `Python package dependencies (automatically installed) 
<https://github.com/thombashi/typepy/network/dependencies>`__
+
+Optioal dependencies
+----------------------------------
+These packages can be installed via ``pip install typepy[datetime]``:
+
+- `python-dateutil <https://dateutil.readthedocs.io/en/stable/>`__
+- `pytz <https://pypi.org/project/pytz/>`__
+
 Usage
 =======
 Type Check Method
@@ -147,48 +185,6 @@
 More information can be found in the
 `API reference 
<https://typepy.rtfd.io/en/latest/pages/reference/index.html>`__.
 
-Installation
-============
-
-Install from PyPI
-------------------------------
-::
-
-    pip install typepy
-
-Install additional dependency packages with the following command if using 
``typepy.DateTime`` class
-
-::
-
-    pip install typepy[datetime]
-
-Install from PPA (for Ubuntu)
-------------------------------
-::
-
-    sudo add-apt-repository ppa:thombashi/ppa
-    sudo apt update
-    sudo apt install python3-typepy
-
-
-Dependencies
-============
-Python 3.5+
-
-- `mbstrdecoder <https://github.com/thombashi/mbstrdecoder>`__
-
-Optioal dependencies
-----------------------------------
-These packages can be installed via ``pip install typepy[datetime]``:
-
-- `python-dateutil <https://dateutil.readthedocs.io/en/stable/>`__
-- `pytz <https://pypi.org/project/pytz/>`__
-
-Test dependencies
-----------------------------------
-- `pytest <https://docs.pytest.org/en/latest/>`__
-- `tox <https://testrun.org/tox/latest/>`__
-
 Documentation
 ===============
 https://typepy.rtfd.io/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/pyproject.toml 
new/typepy-1.1.5/pyproject.toml
--- old/typepy-1.1.1/pyproject.toml     2020-01-12 06:10:00.000000000 +0100
+++ new/typepy-1.1.5/pyproject.toml     2021-04-11 14:44:33.000000000 +0200
@@ -1,3 +1,6 @@
+[build-system]
+requires = ["setuptools", "wheel"]
+
 [tool.black]
 line-length = 100
 exclude = '''
@@ -17,7 +20,6 @@
 '''
 
 [tool.isort]
-dont_skip = "*/**/__init__.py"
 known_third_party = [
     'dateutil',
     'logbook',
@@ -25,7 +27,7 @@
     'pytest',
     'pytz',
     'sphinx_rtd_theme',
-    'termcolor',
+    'tcolorpy',
 ]
 include_trailing_comma = true
 line_length = 100
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/requirements/docs_requirements.txt 
new/typepy-1.1.5/requirements/docs_requirements.txt
--- old/typepy-1.1.1/requirements/docs_requirements.txt 2020-02-08 
09:02:23.000000000 +0100
+++ new/typepy-1.1.5/requirements/docs_requirements.txt 2021-04-11 
14:44:33.000000000 +0200
@@ -1,2 +1,2 @@
 sphinx_rtd_theme
-Sphinx
+Sphinx>=2.4
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/requirements/test_requirements.txt 
new/typepy-1.1.5/requirements/test_requirements.txt
--- old/typepy-1.1.1/requirements/test_requirements.txt 2019-10-13 
10:11:22.000000000 +0200
+++ new/typepy-1.1.5/requirements/test_requirements.txt 2021-04-11 
14:44:33.000000000 +0200
@@ -1,2 +1,2 @@
-pytest
-termcolor
+pytest>=6.0.1
+tcolorpy
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/setup.py new/typepy-1.1.5/setup.py
--- old/typepy-1.1.1/setup.py   2020-03-29 16:10:12.000000000 +0200
+++ new/typepy-1.1.5/setup.py   2021-04-11 14:44:33.000000000 +0200
@@ -41,10 +41,10 @@
     tests_requires = [line.strip() for line in f if line.strip()]
 
 
-SETUPTOOLS_REQUIRES = ["setuptools>=38.3.0"]
 DATETIME_REQUIRES = [
     "python-dateutil>=2.8.0,<3.0.0",
     "pytz>=2018.9",
+    "packaging",
 ]
 
 setuptools.setup(
@@ -65,10 +65,10 @@
         "Documentation": "https://{:s}.rtfd.io/".format(MODULE_NAME),
         "Source": REPOSITORY_URL,
         "Tracker": "{:s}/issues".format(REPOSITORY_URL),
+        "Changes": "{:s}/releases".format(REPOSITORY_URL),
     },
     python_requires=">=3.5",
-    install_requires=SETUPTOOLS_REQUIRES + install_requires,
-    setup_requires=SETUPTOOLS_REQUIRES,
+    install_requires=install_requires,
     extras_require={"datetime": DATETIME_REQUIRES, "test": tests_requires + 
DATETIME_REQUIRES},
     classifiers=[
         "Development Status :: 5 - Production/Stable",
@@ -82,6 +82,7 @@
         "Programming Language :: Python :: 3.7",
         "Programming Language :: Python :: 3.8",
         "Programming Language :: Python :: 3.9",
+        "Programming Language :: Python :: 3.10",
         "Programming Language :: Python :: 3 :: Only",
         "Programming Language :: Python :: Implementation :: CPython",
         "Programming Language :: Python :: Implementation :: PyPy",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/test/checker/test_checker_bool.py 
new/typepy-1.1.5/test/checker/test_checker_bool.py
--- old/typepy-1.1.1/test/checker/test_checker_bool.py  2020-03-28 
16:22:04.000000000 +0100
+++ new/typepy-1.1.5/test/checker/test_checker_bool.py  2021-04-11 
14:44:33.000000000 +0200
@@ -5,7 +5,7 @@
 import itertools
 
 import pytest
-from termcolor import colored
+from tcolorpy import tcolor
 
 from typepy import Bool, StrictLevel, Typecode
 
@@ -36,7 +36,7 @@
 
     @pytest.mark.parametrize(
         ["value", "strip_ansi_escape", "expected"],
-        [[colored("True", "red"), False, False], [colored("True", "red"), 
True, True]],
+        [[tcolor("True", "red"), False, False], [tcolor("True", "red"), True, 
True]],
     )
     def test_normal_ansi(self, value, strip_ansi_escape, expected):
         type_checker = class_under_test(value, StrictLevel.MIN, 
strip_ansi_escape=strip_ansi_escape)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/test/checker/test_checker_datetime.py 
new/typepy-1.1.5/test/checker/test_checker_datetime.py
--- old/typepy-1.1.1/test/checker/test_checker_datetime.py      2020-03-28 
16:22:09.000000000 +0100
+++ new/typepy-1.1.5/test/checker/test_checker_datetime.py      2021-04-11 
14:44:33.000000000 +0200
@@ -7,7 +7,7 @@
 
 import pytest
 from dateutil.tz import tzoffset
-from termcolor import colored
+from tcolorpy import tcolor
 
 from typepy import DateTime, StrictLevel, Typecode
 
@@ -31,7 +31,13 @@
         )
         + list(
             itertools.product(
-                [None, "invalid time string", 9223372036854775807, "100-0004", 
"?????????".encode(),],
+                [
+                    None,
+                    "invalid time string",
+                    9223372036854775807,
+                    "100-0004",
+                    "?????????".encode(),
+                ],
                 [StrictLevel.MIN, StrictLevel.MIN + 1, StrictLevel.MAX],
                 [False],
             )
@@ -45,7 +51,9 @@
         )
         + list(
             itertools.product(
-                ["2017-03-22T10:00:00+0900", 1485685623, "1485685623"], 
[StrictLevel.MAX], [False],
+                ["2017-03-22T10:00:00+0900", 1485685623, "1485685623"],
+                [StrictLevel.MAX],
+                [False],
             )
         ),
     )
@@ -58,8 +66,8 @@
     @pytest.mark.parametrize(
         ["value", "strip_ansi_escape", "expected"],
         [
-            [colored("2017-03-22T10:00:00", "red"), False, False],
-            [colored("2017-03-22T10:00:00", "red"), True, True],
+            [tcolor("2017-03-22T10:00:00", "red"), False, False],
+            [tcolor("2017-03-22T10:00:00", "red"), True, True],
         ],
     )
     def test_normal_ansi(self, value, strip_ansi_escape, expected):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/test/checker/test_checker_dictionary.py 
new/typepy-1.1.5/test/checker/test_checker_dictionary.py
--- old/typepy-1.1.1/test/checker/test_checker_dictionary.py    2020-04-15 
17:35:14.000000000 +0200
+++ new/typepy-1.1.5/test/checker/test_checker_dictionary.py    2021-04-11 
14:44:33.000000000 +0200
@@ -30,7 +30,10 @@
                 [True],
             )
         )
-        + [['{"foo": 10}', StrictLevel.MIN, True], ['{"foo": 10}', 
StrictLevel.MAX, False],]
+        + [
+            ['{"foo": 10}', StrictLevel.MIN, True],
+            ['{"foo": 10}', StrictLevel.MAX, False],
+        ]
         + list(
             itertools.product(
                 [1, "a", "???".encode("utf8"), nan, True, None],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/test/checker/test_checker_integer.py 
new/typepy-1.1.5/test/checker/test_checker_integer.py
--- old/typepy-1.1.1/test/checker/test_checker_integer.py       2020-03-28 
16:22:24.000000000 +0100
+++ new/typepy-1.1.5/test/checker/test_checker_integer.py       2021-04-11 
14:44:33.000000000 +0200
@@ -7,7 +7,7 @@
 from decimal import Decimal
 
 import pytest
-from termcolor import colored
+from tcolorpy import tcolor
 
 from typepy import Integer, StrictLevel, Typecode
 
@@ -76,7 +76,7 @@
 
     @pytest.mark.parametrize(
         ["value", "strip_ansi_escape", "expected"],
-        [[colored("1", "red"), False, False], [colored("1", "red"), True, 
True]],
+        [[tcolor("1", "red"), False, False], [tcolor("1", "red"), True, True]],
     )
     def test_normal_ansi(self, value, strip_ansi_escape, expected):
         type_checker = class_under_test(value, StrictLevel.MIN, 
strip_ansi_escape=strip_ansi_escape)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/test/checker/test_checker_ipaddress.py 
new/typepy-1.1.5/test/checker/test_checker_ipaddress.py
--- old/typepy-1.1.1/test/checker/test_checker_ipaddress.py     2020-03-28 
16:22:28.000000000 +0100
+++ new/typepy-1.1.5/test/checker/test_checker_ipaddress.py     2021-04-11 
14:44:33.000000000 +0200
@@ -7,7 +7,7 @@
 from ipaddress import ip_address
 
 import pytest
-from termcolor import colored
+from tcolorpy import tcolor
 
 from typepy import IpAddress, StrictLevel, Typecode
 
@@ -20,7 +20,7 @@
 class Test_IpAddress_is_type:
     @pytest.mark.parametrize(
         ["value", "strict_level", "expected"],
-        [[colored("127.0.0.1", "red"), StrictLevel.MIN, True]]
+        [[tcolor("127.0.0.1", "red"), StrictLevel.MIN, True]]
         + list(
             itertools.product(
                 ["", " ", sys.maxsize, str(sys.maxsize), inf, nan, None],
@@ -46,7 +46,7 @@
 
     @pytest.mark.parametrize(
         ["value", "strip_ansi_escape", "expected"],
-        [[colored("127.0.0.1", "red"), False, False], [colored("127.0.0.1", 
"red"), True, True]],
+        [[tcolor("127.0.0.1", "red"), False, False], [tcolor("127.0.0.1", 
"red"), True, True]],
     )
     def test_normal_ansi(self, value, strip_ansi_escape, expected):
         type_checker = class_under_test(value, StrictLevel.MIN, 
strip_ansi_escape=strip_ansi_escape)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/test/checker/test_checker_realnumber.py 
new/typepy-1.1.5/test/checker/test_checker_realnumber.py
--- old/typepy-1.1.1/test/checker/test_checker_realnumber.py    2020-03-28 
16:22:42.000000000 +0100
+++ new/typepy-1.1.5/test/checker/test_checker_realnumber.py    2021-04-11 
14:44:33.000000000 +0200
@@ -7,7 +7,7 @@
 from decimal import Decimal
 
 import pytest
-from termcolor import colored
+from tcolorpy import tcolor
 
 from typepy import RealNumber, StrictLevel, Typecode
 
@@ -89,7 +89,7 @@
 
     @pytest.mark.parametrize(
         ["value", "strip_ansi_escape", "expected"],
-        [[colored("1.1", "red"), False, False], [colored("1.1", "red"), True, 
True]],
+        [[tcolor("1.1", "red"), False, False], [tcolor("1.1", "red"), True, 
True]],
     )
     def test_normal_ansi(self, value, strip_ansi_escape, expected):
         type_checker = class_under_test(value, StrictLevel.MIN, 
strip_ansi_escape=strip_ansi_escape)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/test/converter/test_bool.py 
new/typepy-1.1.5/test/converter/test_bool.py
--- old/typepy-1.1.1/test/converter/test_bool.py        2020-03-28 
16:22:51.000000000 +0100
+++ new/typepy-1.1.5/test/converter/test_bool.py        2021-04-11 
14:44:33.000000000 +0200
@@ -14,47 +14,57 @@
         ["method", "strict_level", "value", "expected"],
         [
             ["convert", 0, True, True],
+            ["convert", 0, False, False],
             ["convert", 0, "true", True],
+            ["convert", 0, "FALSE", False],
             ["convert", 0, 1, True],
             ["convert", 0, 1.1, "E"],
             ["convert", 0, None, "E"],
             ["convert", 1, True, True],
             ["convert", 1, "true", True],
+            ["convert", 1, "FALSE", False],
             ["convert", 1, 1, "E"],
             ["convert", 1, 1.1, "E"],
             ["convert", 1, None, "E"],
             ["convert", 2, True, True],
             ["convert", 2, "true", "E"],
+            ["convert", 2, "FALSE", "E"],
             ["convert", 2, 1, "E"],
             ["convert", 2, 1.1, "E"],
             ["convert", 2, None, "E"],
             ["try_convert", 0, True, True],
             ["try_convert", 0, "true", True],
+            ["try_convert", 0, "FALSE", False],
             ["try_convert", 0, 1, True],
             ["try_convert", 0, 1.1, None],
             ["try_convert", 0, None, None],
             ["try_convert", 1, True, True],
             ["try_convert", 1, "true", True],
+            ["try_convert", 1, "FALSE", False],
             ["try_convert", 1, 1, None],
             ["try_convert", 1, 1.1, None],
             ["try_convert", 1, None, None],
             ["try_convert", 2, True, True],
             ["try_convert", 2, "true", None],
+            ["try_convert", 2, "FALSE", None],
             ["try_convert", 2, 1, None],
             ["try_convert", 2, 1.1, None],
             ["try_convert", 2, None, None],
             ["force_convert", 0, True, True],
             ["force_convert", 0, "true", True],
+            ["force_convert", 0, "FALSE", False],
             ["force_convert", 0, 1, True],
             ["force_convert", 0, 1.1, "E"],
             ["force_convert", 0, None, "E"],
             ["force_convert", 1, True, True],
             ["force_convert", 1, "true", True],
+            ["force_convert", 1, "FALSE", False],
             ["force_convert", 1, 1, True],
             ["force_convert", 1, 1.1, "E"],
             ["force_convert", 1, None, "E"],
             ["force_convert", 2, True, True],
             ["force_convert", 2, "true", True],
+            ["force_convert", 2, "FALSE", False],
             ["force_convert", 2, 1, True],
             ["force_convert", 2, 1.1, "E"],
             ["force_convert", 2, None, "E"],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/test/converter/test_realnumber.py 
new/typepy-1.1.5/test/converter/test_realnumber.py
--- old/typepy-1.1.1/test/converter/test_realnumber.py  2020-03-28 
16:22:57.000000000 +0100
+++ new/typepy-1.1.5/test/converter/test_realnumber.py  2021-04-11 
14:44:33.000000000 +0200
@@ -130,8 +130,7 @@
         ],
     )
     def test_normal(self, method, strict_level, value, expected):
-        from typepy import StrictLevel
-        from typepy import Nan
+        from typepy import Nan, StrictLevel
 
         actual = convert_wrapper(typepy.RealNumber(value, strict_level), 
method)
         if Nan(expected, strict_level=StrictLevel.MIN).is_type():
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/tox.ini new/typepy-1.1.5/tox.ini
--- old/typepy-1.1.1/tox.ini    2020-04-20 12:28:20.000000000 +0200
+++ new/typepy-1.1.5/tox.ini    2021-04-11 14:44:33.000000000 +0200
@@ -1,6 +1,6 @@
 [tox]
 envlist =
-    py{35,36,37,38,39}
+    py{35,36,37,38,39,310}
     pypy3
     build
     clean
@@ -8,7 +8,6 @@
     docs
     lint
     readme
-    release
 
 [testenv]
 deps =
@@ -27,6 +26,7 @@
     python setup.py clean --all
 
 [testenv:clean]
+skip_install = true
 deps =
     cleanpy
 commands =
@@ -35,7 +35,7 @@
 [testenv:cov]
 deps =
     .[test]
-    coverage[toml]
+    coverage[toml]>=5
     pytest-cov
 commands =
     pytest --cov {posargs:-vv}
@@ -49,17 +49,19 @@
 
 [testenv:fmt]
 basepython = python3.8
+skip_install = true
 deps =
     autoflake
     black
-    isort[pyproject]
+    isort>=5
 commands =
     black setup.py test typepy
     autoflake --in-place --recursive --remove-all-unused-imports 
--ignore-init-module-imports .
-    isort --apply --recursive
+    isort .
 
 [testenv:lint]
-basepython = python3.7
+basepython = python3.8
+skip_install = true
 deps =
     codespell
     pylama
@@ -69,14 +71,9 @@
     pylama
 
 [testenv:readme]
+skip_install = true
 changedir = docs
 deps =
     readmemaker>=1.0.0
 commands =
     python make_readme.py
-
-[testenv:release]
-deps =
-    releasecmd>=0.3.1,<1
-commands =
-    python setup.py release --sign {posargs}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/typepy/__version__.py 
new/typepy-1.1.5/typepy/__version__.py
--- old/typepy-1.1.1/typepy/__version__.py      2020-05-04 04:00:25.000000000 
+0200
+++ new/typepy-1.1.5/typepy/__version__.py      2021-04-11 14:44:33.000000000 
+0200
@@ -1,6 +1,6 @@
 __author__ = "Tsuyoshi Hombashi"
 __copyright__ = "Copyright 2017, {}".format(__author__)
 __license__ = "MIT License"
-__version__ = "1.1.1"
+__version__ = "1.1.5"
 __maintainer__ = __author__
 __email__ = "[email protected]"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/typepy/converter/_bool.py 
new/typepy-1.1.5/typepy/converter/_bool.py
--- old/typepy-1.1.1/typepy/converter/_bool.py  2020-03-28 16:24:31.000000000 
+0100
+++ new/typepy-1.1.5/typepy/converter/_bool.py  2021-04-11 14:44:33.000000000 
+0200
@@ -30,18 +30,17 @@
 
     @staticmethod
     def __strict_strtobool(value):
-        from distutils.util import strtobool
-
         if isinstance(value, bool):
             return value
 
         try:
-            lower_text = value.lower()
+            lower_text = value.casefold()
         except AttributeError:
             raise ValueError("invalid value '{}'".format(str(value)))
 
-        binary_value = strtobool(lower_text)
-        if lower_text not in ["true", "false"]:
-            raise ValueError("invalid value '{}'".format(str(value)))
+        if lower_text in ["true"]:
+            return True
+        elif lower_text in ["false"]:
+            return False
 
-        return bool(binary_value)
+        raise ValueError("invalid value '{}'".format(str(value)))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/typepy/converter/_datetime.py 
new/typepy-1.1.5/typepy/converter/_datetime.py
--- old/typepy-1.1.1/typepy/converter/_datetime.py      2020-03-28 
16:24:34.000000000 +0100
+++ new/typepy-1.1.5/typepy/converter/_datetime.py      2021-04-11 
14:44:33.000000000 +0200
@@ -3,7 +3,6 @@
 """
 
 from datetime import date, datetime
-from distutils.version import StrictVersion
 
 from .._common import strip_ansi_escape
 from .._const import DefaultValue, ParamKey
@@ -145,13 +144,15 @@
         validation is not executed.
         """
 
+        from packaging.version import InvalidVersion, Version
+
         try:
             try:
-                StrictVersion(self._value)
+                Version(self._value)
                 raise TypeConversionError(
                     "invalid datetime string: version string found 
{}".format(self._value)
                 )
-            except ValueError:
+            except InvalidVersion:
                 pass
         except TypeError:
             raise TypeConversionError("invalid datetime string: 
type={}".format(type(self._value)))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/typepy/type/_base.py 
new/typepy-1.1.5/typepy/type/_base.py
--- old/typepy-1.1.1/typepy/type/_base.py       2020-04-15 13:49:42.000000000 
+0200
+++ new/typepy-1.1.5/typepy/type/_base.py       2021-04-11 14:44:33.000000000 
+0200
@@ -115,7 +115,9 @@
             return self.force_convert()
 
         raise TypeConversionError(
-            "failed to convert from {} to 
{}".format(type(self._data).__name__, self.typename)
+            "failed to convert {} from {} to {}".format(
+                self._data, type(self._data).__name__, self.typename
+            )
         )
 
     def force_convert(self):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/typepy.egg-info/PKG-INFO 
new/typepy-1.1.5/typepy.egg-info/PKG-INFO
--- old/typepy-1.1.1/typepy.egg-info/PKG-INFO   2020-05-04 04:01:16.000000000 
+0200
+++ new/typepy-1.1.5/typepy.egg-info/PKG-INFO   2021-04-11 14:44:49.000000000 
+0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: typepy
-Version: 1.1.1
+Version: 1.1.5
 Summary: typepy is a Python library for variable type 
checker/validator/converter at a run time.
 Home-page: https://github.com/thombashi/typepy
 Author: Tsuyoshi Hombashi
@@ -9,6 +9,7 @@
 Project-URL: Documentation, https://typepy.rtfd.io/
 Project-URL: Source, https://github.com/thombashi/typepy
 Project-URL: Tracker, https://github.com/thombashi/typepy/issues
+Project-URL: Changes, https://github.com/thombashi/typepy/releases
 Description: .. contents:: **typepy**
            :backlinks: top
            :depth: 2
@@ -21,6 +22,10 @@
             :target: https://badge.fury.io/py/typepy
             :alt: PyPI package version
         
+        .. image:: https://anaconda.org/conda-forge/typepy/badges/version.svg
+            :target: https://anaconda.org/conda-forge/typepy
+            :alt: conda-forge package version
+        
         .. image:: https://img.shields.io/pypi/pyversions/typepy.svg
             :target: https://pypi.org/project/typepy
             :alt: Supported Python versions
@@ -29,22 +34,14 @@
             :target: https://pypi.org/project/typepy
             :alt: Supported Python implementations
         
-        .. image:: 
https://img.shields.io/travis/thombashi/typepy/master.svg?label=Linux/macOS%20CI
-            :target: https://travis-ci.org/thombashi/typepy
-            :alt: Linux/macOS CI status
-        
-        .. image:: 
https://img.shields.io/appveyor/ci/thombashi/typepy/master.svg?label=Windows%20CI
-            :target: https://ci.appveyor.com/project/thombashi/typepy
-            :alt: Windows CI status
+        .. image:: 
https://github.com/thombashi/typepy/workflows/Tests/badge.svg
+            :target: 
https://github.com/thombashi/typepy/actions?query=workflow%3ATests
+            :alt: Linux/macOS/Windows CI status
         
         .. image:: 
https://coveralls.io/repos/github/thombashi/typepy/badge.svg?branch=master
             :target: https://coveralls.io/github/thombashi/typepy?branch=master
             :alt: Test coverage
         
-        .. image:: 
https://img.shields.io/github/stars/thombashi/typepy.svg?style=social&label=Star
-            :target: https://github.com/thombashi/typepy
-            :alt: GitHub stars
-        
         Features
         ==========
         - checking a value type
@@ -72,6 +69,48 @@
             ``str`` (IP address)                              `IpAddress 
<https://typepy.rtfd.io/en/latest/pages/reference/type.html#ip-address-type>`__
             ================================================  
=======================================================================================================
         
+        Installation
+        ============
+        
+        Installation: pip
+        ------------------------------
+        ::
+        
+            pip install typepy
+        
+        Install additional dependency packages with the following command if 
using ``typepy.DateTime`` class
+        
+        ::
+        
+            pip install typepy[datetime]
+        
+        Installation: conda
+        ------------------------------
+        ::
+        
+            conda install -c conda-forge typepy
+        
+        Installation: apt
+        ------------------------------
+        ::
+        
+            sudo add-apt-repository ppa:thombashi/ppa
+            sudo apt update
+            sudo apt install python3-typepy
+        
+        
+        Dependencies
+        ============
+        - Python 3.5+
+        - `Python package dependencies (automatically installed) 
<https://github.com/thombashi/typepy/network/dependencies>`__
+        
+        Optioal dependencies
+        ----------------------------------
+        These packages can be installed via ``pip install typepy[datetime]``:
+        
+        - `python-dateutil <https://dateutil.readthedocs.io/en/stable/>`__
+        - `pytz <https://pypi.org/project/pytz/>`__
+        
         Usage
         =======
         Type Check Method
@@ -158,48 +197,6 @@
         More information can be found in the
         `API reference 
<https://typepy.rtfd.io/en/latest/pages/reference/index.html>`__.
         
-        Installation
-        ============
-        
-        Install from PyPI
-        ------------------------------
-        ::
-        
-            pip install typepy
-        
-        Install additional dependency packages with the following command if 
using ``typepy.DateTime`` class
-        
-        ::
-        
-            pip install typepy[datetime]
-        
-        Install from PPA (for Ubuntu)
-        ------------------------------
-        ::
-        
-            sudo add-apt-repository ppa:thombashi/ppa
-            sudo apt update
-            sudo apt install python3-typepy
-        
-        
-        Dependencies
-        ============
-        Python 3.5+
-        
-        - `mbstrdecoder <https://github.com/thombashi/mbstrdecoder>`__
-        
-        Optioal dependencies
-        ----------------------------------
-        These packages can be installed via ``pip install typepy[datetime]``:
-        
-        - `python-dateutil <https://dateutil.readthedocs.io/en/stable/>`__
-        - `pytz <https://pypi.org/project/pytz/>`__
-        
-        Test dependencies
-        ----------------------------------
-        - `pytest <https://docs.pytest.org/en/latest/>`__
-        - `tox <https://testrun.org/tox/latest/>`__
-        
         Documentation
         ===============
         https://typepy.rtfd.io/
@@ -218,6 +215,7 @@
 Classifier: Programming Language :: Python :: 3.7
 Classifier: Programming Language :: Python :: 3.8
 Classifier: Programming Language :: Python :: 3.9
+Classifier: Programming Language :: Python :: 3.10
 Classifier: Programming Language :: Python :: 3 :: Only
 Classifier: Programming Language :: Python :: Implementation :: CPython
 Classifier: Programming Language :: Python :: Implementation :: PyPy
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.1.1/typepy.egg-info/requires.txt 
new/typepy-1.1.5/typepy.egg-info/requires.txt
--- old/typepy-1.1.1/typepy.egg-info/requires.txt       2020-05-04 
04:01:16.000000000 +0200
+++ new/typepy-1.1.5/typepy.egg-info/requires.txt       2021-04-11 
14:44:49.000000000 +0200
@@ -1,12 +1,13 @@
-setuptools>=38.3.0
 mbstrdecoder<2,>=1.0.0
 
 [datetime]
 python-dateutil<3.0.0,>=2.8.0
 pytz>=2018.9
+packaging
 
 [test]
-pytest
-termcolor
+pytest>=6.0.1
+tcolorpy
 python-dateutil<3.0.0,>=2.8.0
 pytz>=2018.9
+packaging

Reply via email to