Hello community,

here is the log from the commit of package python-typepy for openSUSE:Factory 
checked in at 2020-04-18 00:31:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-typepy (Old)
 and      /work/SRC/openSUSE:Factory/.python-typepy.new.2738 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-typepy"

Sat Apr 18 00:31:35 2020 rev:4 rq:794848 version:1.1.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-typepy/python-typepy.changes      
2020-03-30 23:02:46.176154853 +0200
+++ /work/SRC/openSUSE:Factory/.python-typepy.new.2738/python-typepy.changes    
2020-04-18 00:32:55.942363161 +0200
@@ -1,0 +2,8 @@
+Fri Apr 17 09:22:56 UTC 2020 - Martin Hauke <mar...@gmx.de>
+
+- Update to version 1.1.0
+  * Improve type annotations
+  * Improve dictionary type detection
+  * Rename a type from Binary to Bytes
+
+-------------------------------------------------------------------

Old:
----
  typepy-1.0.0.tar.gz

New:
----
  typepy-1.1.0.tar.gz

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

Other differences:
------------------
++++++ python-typepy.spec ++++++
--- /var/tmp/diff_new_pack.gAYDA4/_old  2020-04-18 00:32:57.538366466 +0200
+++ /var/tmp/diff_new_pack.gAYDA4/_new  2020-04-18 00:32:57.542366474 +0200
@@ -19,7 +19,7 @@
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 %define skip_python2 1
 Name:           python-typepy
-Version:        1.0.0
+Version:        1.1.0
 Release:        0
 Summary:        Python library for run time variable type checker 
 License:        MIT
@@ -29,7 +29,7 @@
 BuildRequires:  %{python_module setuptools >= 38.3.0}
 BuildRequires:  python-rpm-macros
 # SECTION test requirements
-BuildRequires:  %{python_module mbstrdecoder >= 0.8.3}
+BuildRequires:  %{python_module mbstrdecoder >= 1.0.0}
 BuildRequires:  %{python_module pytest-runner}
 BuildRequires:  %{python_module python-dateutil >= 2.8.0}
 BuildRequires:  %{python_module pytz >= 2018.9}
@@ -37,7 +37,7 @@
 BuildRequires:  %{python_module termcolor}
 # /SECTION
 BuildRequires:  fdupes
-Requires:       python-mbstrdecoder >= 0.8.3
+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

++++++ typepy-1.0.0.tar.gz -> typepy-1.1.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/PKG-INFO new/typepy-1.1.0/PKG-INFO
--- old/typepy-1.0.0/PKG-INFO   2020-03-29 16:00:25.129839000 +0200
+++ new/typepy-1.1.0/PKG-INFO   2020-04-15 18:06:04.803363600 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: typepy
-Version: 1.0.0
+Version: 1.1.0
 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
@@ -207,7 +207,7 @@
         
 Keywords: library,type-checking,type-conversion,validator
 Platform: UNKNOWN
-Classifier: Development Status :: 4 - Beta
+Classifier: Development Status :: 5 - Production/Stable
 Classifier: Intended Audience :: Developers
 Classifier: Intended Audience :: Information Technology
 Classifier: License :: OSI Approved :: MIT License
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/requirements/requirements.txt 
new/typepy-1.1.0/requirements/requirements.txt
--- old/typepy-1.0.0/requirements/requirements.txt      2020-03-28 
16:07:08.000000000 +0100
+++ new/typepy-1.1.0/requirements/requirements.txt      2020-04-04 
17:00:25.000000000 +0200
@@ -1 +1 @@
-mbstrdecoder>=0.8.3,<2
+mbstrdecoder>=1.0.0,<2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/setup.py new/typepy-1.1.0/setup.py
--- old/typepy-1.0.0/setup.py   2020-03-29 15:51:56.000000000 +0200
+++ new/typepy-1.1.0/setup.py   2020-03-29 16:10:12.000000000 +0200
@@ -71,7 +71,7 @@
     setup_requires=SETUPTOOLS_REQUIRES,
     extras_require={"datetime": DATETIME_REQUIRES, "test": tests_requires + 
DATETIME_REQUIRES},
     classifiers=[
-        "Development Status :: 4 - Beta",
+        "Development Status :: 5 - Production/Stable",
         "Intended Audience :: Developers",
         "Intended Audience :: Information Technology",
         "License :: OSI Approved :: MIT License",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/test/checker/test_checker_binary.py 
new/typepy-1.1.0/test/checker/test_checker_binary.py
--- old/typepy-1.0.0/test/checker/test_checker_binary.py        2020-03-28 
16:22:00.000000000 +0100
+++ new/typepy-1.1.0/test/checker/test_checker_binary.py        1970-01-01 
01:00:00.000000000 +0100
@@ -1,35 +0,0 @@
-"""
-.. codeauthor:: Tsuyoshi Hombashi <tsuyoshi.homba...@gmail.com>
-"""
-
-import itertools
-import sys
-
-import pytest
-
-from typepy import Binary, StrictLevel, Typecode
-
-
-nan = float("nan")
-inf = float("inf")
-
-
-class Test_Binary_is_type:
-    @pytest.mark.parametrize(
-        ["value", "strict_level", "expected"],
-        list(itertools.product([], [StrictLevel.MIN, StrictLevel.MAX], 
[False]))
-        + list(
-            itertools.product([b"abc", "いろは".encode()], [StrictLevel.MIN, 
StrictLevel.MAX], [True],)
-        )
-        + list(itertools.product([b" ", b"\n"], [StrictLevel.MIN], [True]))
-        + list(
-            itertools.product(
-                ["", " ", "\n", sys.maxsize, inf, nan, None], 
[StrictLevel.MAX], [False]
-            )
-        ),
-    )
-    def test_normal(self, value, strict_level, expected):
-        type_checker = Binary(value, strict_level=strict_level)
-
-        assert type_checker.is_type() == expected
-        assert type_checker.typecode == Typecode.STRING
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/test/checker/test_checker_bytes.py 
new/typepy-1.1.0/test/checker/test_checker_bytes.py
--- old/typepy-1.0.0/test/checker/test_checker_bytes.py 1970-01-01 
01:00:00.000000000 +0100
+++ new/typepy-1.1.0/test/checker/test_checker_bytes.py 2020-04-15 
16:56:43.000000000 +0200
@@ -0,0 +1,37 @@
+"""
+.. codeauthor:: Tsuyoshi Hombashi <tsuyoshi.homba...@gmail.com>
+"""
+
+import itertools
+import sys
+
+import pytest
+
+from typepy import Bytes, StrictLevel, Typecode
+
+
+nan = float("nan")
+inf = float("inf")
+
+
+class Test_Binary_is_type:
+    @pytest.mark.parametrize(
+        ["value", "strict_level", "expected"],
+        list(itertools.product([], [StrictLevel.MIN, StrictLevel.MAX], 
[False]))
+        + list(
+            itertools.product(
+                [b"abc", "いろは".encode("utf8")], [StrictLevel.MIN, 
StrictLevel.MAX], [True]
+            )
+        )
+        + list(itertools.product([b" ", b"\n"], [StrictLevel.MIN], [True]))
+        + list(
+            itertools.product(
+                ["", " ", "\n", sys.maxsize, inf, nan, None], 
[StrictLevel.MAX], [False]
+            )
+        ),
+    )
+    def test_normal(self, value, strict_level, expected):
+        type_checker = Bytes(value, strict_level=strict_level)
+
+        assert type_checker.is_type() == expected
+        assert type_checker.typecode == Typecode.BYTES
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/test/checker/test_checker_dictionary.py 
new/typepy-1.1.0/test/checker/test_checker_dictionary.py
--- old/typepy-1.0.0/test/checker/test_checker_dictionary.py    2020-03-28 
16:22:15.000000000 +0100
+++ new/typepy-1.1.0/test/checker/test_checker_dictionary.py    2020-04-15 
17:35:14.000000000 +0200
@@ -30,9 +30,12 @@
                 [True],
             )
         )
+        + [['{"foo": 10}', StrictLevel.MIN, True], ['{"foo": 10}', 
StrictLevel.MAX, False],]
         + list(
             itertools.product(
-                [1, "a", nan, True, None], [StrictLevel.MIN, StrictLevel.MAX], 
[False]
+                [1, "a", "あ".encode("utf8"), nan, True, None],
+                [StrictLevel.MIN, StrictLevel.MAX],
+                [False],
             )
         ),
     )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/tox.ini new/typepy-1.1.0/tox.ini
--- old/typepy-1.0.0/tox.ini    2020-03-29 15:49:08.000000000 +0200
+++ new/typepy-1.1.0/tox.ini    2020-04-15 11:43:37.000000000 +0200
@@ -27,7 +27,6 @@
     python setup.py clean --all
 
 [testenv:clean]
-basepython = python3.8
 deps =
     cleanpy
 commands =
@@ -49,7 +48,7 @@
     python setup.py build_sphinx --source-dir=docs/ --build-dir=docs/_build 
--all-files
 
 [testenv:fmt]
-basepython = python3.7
+basepython = python3.8
 deps =
     autoflake
     black
@@ -70,7 +69,6 @@
     pylama
 
 [testenv:readme]
-basepython = python3.8
 changedir = docs
 deps =
     readmemaker>=1.0.0
@@ -78,7 +76,6 @@
     python make_readme.py
 
 [testenv:release]
-basepython = python3.8
 deps =
     releasecmd>=0.3.1,<1
 commands =
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/typepy/__init__.py 
new/typepy-1.1.0/typepy/__init__.py
--- old/typepy-1.0.0/typepy/__init__.py 2020-03-29 11:43:58.000000000 +0200
+++ new/typepy-1.1.0/typepy/__init__.py 2020-04-15 12:18:16.000000000 +0200
@@ -19,6 +19,7 @@
 from .type import (
     Binary,
     Bool,
+    Bytes,
     DateTime,
     Dictionary,
     Infinity,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/typepy/__version__.py 
new/typepy-1.1.0/typepy/__version__.py
--- old/typepy-1.0.0/typepy/__version__.py      2020-03-29 15:54:43.000000000 
+0200
+++ new/typepy-1.1.0/typepy/__version__.py      2020-04-15 18:05:17.000000000 
+0200
@@ -1,6 +1,6 @@
 __author__ = "Tsuyoshi Hombashi"
 __copyright__ = "Copyright 2017, {}".format(__author__)
 __license__ = "MIT License"
-__version__ = "1.0.0"
+__version__ = "1.1.0"
 __maintainer__ = __author__
 __email__ = "tsuyoshi.homba...@gmail.com"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/typepy/_typecode.py 
new/typepy-1.1.0/typepy/_typecode.py
--- old/typepy-1.0.0/typepy/_typecode.py        2020-03-28 16:23:22.000000000 
+0100
+++ new/typepy-1.1.0/typepy/_typecode.py        2020-04-15 15:40:40.000000000 
+0200
@@ -19,3 +19,4 @@
     DICTIONARY = 1 << 8
     LIST = 1 << 9
     IP_ADDRESS = 1 << 10
+    BYTES = 1 << 11
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/typepy/checker/__init__.py 
new/typepy-1.1.0/typepy/checker/__init__.py
--- old/typepy-1.0.0/typepy/checker/__init__.py 2020-03-28 16:23:29.000000000 
+0100
+++ new/typepy-1.1.0/typepy/checker/__init__.py 2020-04-15 12:18:16.000000000 
+0200
@@ -2,8 +2,8 @@
 .. codeauthor:: Tsuyoshi Hombashi <tsuyoshi.homba...@gmail.com>
 """
 
-from ._binary import BinaryTypeChecker
 from ._bool import BoolTypeChecker
+from ._bytes import BytesTypeChecker
 from ._datetime import DateTimeTypeChecker
 from ._dictionary import DictionaryTypeChecker
 from ._infinity import InfinityTypeChecker
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/typepy/checker/_binary.py 
new/typepy-1.1.0/typepy/checker/_binary.py
--- old/typepy-1.0.0/typepy/checker/_binary.py  2020-03-28 16:23:33.000000000 
+0100
+++ new/typepy-1.1.0/typepy/checker/_binary.py  1970-01-01 01:00:00.000000000 
+0100
@@ -1,21 +0,0 @@
-"""
-.. codeauthor:: Tsuyoshi Hombashi <tsuyoshi.homba...@gmail.com>
-"""
-
-from ._checker import CheckerFactory, TypeCheckerBase, TypeCheckerDelegator
-
-
-class BinaryTypeCheckerStrictLevel0(TypeCheckerBase):
-    def is_instance(self):
-        return isinstance(self._value, bytes)
-
-    def is_valid_after_convert(self, converted_value):
-        return isinstance(converted_value, bytes)
-
-
-_factory = CheckerFactory(checker_mapping={0: BinaryTypeCheckerStrictLevel0})
-
-
-class BinaryTypeChecker(TypeCheckerDelegator):
-    def __init__(self, value, strict_level):
-        super().__init__(value=value, checker_factory=_factory, 
strict_level=strict_level)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/typepy/checker/_bytes.py 
new/typepy-1.1.0/typepy/checker/_bytes.py
--- old/typepy-1.0.0/typepy/checker/_bytes.py   1970-01-01 01:00:00.000000000 
+0100
+++ new/typepy-1.1.0/typepy/checker/_bytes.py   2020-04-15 11:42:03.000000000 
+0200
@@ -0,0 +1,21 @@
+"""
+.. codeauthor:: Tsuyoshi Hombashi <tsuyoshi.homba...@gmail.com>
+"""
+
+from ._checker import CheckerFactory, TypeCheckerBase, TypeCheckerDelegator
+
+
+class BytesTypeCheckerStrictLevel0(TypeCheckerBase):
+    def is_instance(self):
+        return isinstance(self._value, bytes)
+
+    def is_valid_after_convert(self, converted_value):
+        return isinstance(converted_value, bytes)
+
+
+_factory = CheckerFactory(checker_mapping={0: BytesTypeCheckerStrictLevel0})
+
+
+class BytesTypeChecker(TypeCheckerDelegator):
+    def __init__(self, value, strict_level):
+        super().__init__(value=value, checker_factory=_factory, 
strict_level=strict_level)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/typepy/converter/__init__.py 
new/typepy-1.1.0/typepy/converter/__init__.py
--- old/typepy-1.0.0/typepy/converter/__init__.py       2020-03-28 
16:24:23.000000000 +0100
+++ new/typepy-1.1.0/typepy/converter/__init__.py       2020-04-15 
12:18:16.000000000 +0200
@@ -2,8 +2,8 @@
 .. codeauthor:: Tsuyoshi Hombashi <tsuyoshi.homba...@gmail.com>
 """
 
-from ._binary import BinaryConverter
 from ._bool import BoolConverter
+from ._bytes import BytesConverter
 from ._datetime import DateTimeConverter
 from ._dictionary import DictionaryConverter
 from ._integer import IntegerConverter
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/typepy/converter/_binary.py 
new/typepy-1.1.0/typepy/converter/_binary.py
--- old/typepy-1.0.0/typepy/converter/_binary.py        2020-03-28 
16:24:26.000000000 +0100
+++ new/typepy-1.1.0/typepy/converter/_binary.py        1970-01-01 
01:00:00.000000000 +0100
@@ -1,11 +0,0 @@
-"""
-.. codeauthor:: Tsuyoshi Hombashi <tsuyoshi.homba...@gmail.com>
-"""
-
-from ..error import TypeConversionError
-from ._interface import AbstractValueConverter
-
-
-class BinaryConverter(AbstractValueConverter):
-    def force_convert(self):
-        raise TypeConversionError("not inmplemented")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/typepy/converter/_bytes.py 
new/typepy-1.1.0/typepy/converter/_bytes.py
--- old/typepy-1.0.0/typepy/converter/_bytes.py 1970-01-01 01:00:00.000000000 
+0100
+++ new/typepy-1.1.0/typepy/converter/_bytes.py 2020-04-15 11:42:35.000000000 
+0200
@@ -0,0 +1,11 @@
+"""
+.. codeauthor:: Tsuyoshi Hombashi <tsuyoshi.homba...@gmail.com>
+"""
+
+from ..error import TypeConversionError
+from ._interface import AbstractValueConverter
+
+
+class BytesConverter(AbstractValueConverter):
+    def force_convert(self):
+        raise TypeConversionError("not inmplemented")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/typepy/converter/_dictionary.py 
new/typepy-1.1.0/typepy/converter/_dictionary.py
--- old/typepy-1.0.0/typepy/converter/_dictionary.py    2020-03-28 
16:24:39.000000000 +0100
+++ new/typepy-1.1.0/typepy/converter/_dictionary.py    2020-04-15 
16:56:11.000000000 +0200
@@ -2,6 +2,8 @@
 .. codeauthor:: Tsuyoshi Hombashi <tsuyoshi.homba...@gmail.com>
 """
 
+import json
+
 from ..error import TypeConversionError
 from ._interface import AbstractValueConverter
 
@@ -11,6 +13,14 @@
         try:
             return dict(self._value)
         except (TypeError, ValueError):
-            raise TypeConversionError(
-                "failed to force_convert to dictionary: 
type={}".format(type(self._value))
-            )
+            pass
+
+        if isinstance(self._value, str):
+            try:
+                return json.loads(self._value)
+            except json.JSONDecodeError:
+                pass
+
+        raise TypeConversionError(
+            "failed to force_convert to dictionary: 
type={}".format(type(self._value))
+        )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/typepy/type/__init__.py 
new/typepy-1.1.0/typepy/type/__init__.py
--- old/typepy-1.0.0/typepy/type/__init__.py    2020-03-28 16:25:04.000000000 
+0100
+++ new/typepy-1.1.0/typepy/type/__init__.py    2020-04-15 12:18:16.000000000 
+0200
@@ -5,6 +5,7 @@
 from ._base import AbstractType
 from ._binary import Binary
 from ._bool import Bool
+from ._bytes import Bytes
 from ._datetime import DateTime
 from ._dictionary import Dictionary
 from ._infinity import Infinity
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/typepy/type/_base.py 
new/typepy-1.1.0/typepy/type/_base.py
--- old/typepy-1.0.0/typepy/type/_base.py       2020-03-29 14:44:55.000000000 
+0200
+++ new/typepy-1.1.0/typepy/type/_base.py       2020-04-15 13:49:42.000000000 
+0200
@@ -3,8 +3,9 @@
 """
 
 import abc
-from typing import Any
+from typing import Any, Optional
 
+from .._typecode import Typecode
 from ..checker._interface import TypeCheckerInterface
 from ..converter import ValueConverterInterface
 from ..error import TypeConversionError
@@ -21,7 +22,7 @@
     )
 
     @abc.abstractproperty
-    def typecode(self):  # pragma: no cover
+    def typecode(self) -> Typecode:  # pragma: no cover
         pass
 
     @abc.abstractmethod
@@ -44,7 +45,7 @@
         self.__checker = self._create_type_checker()
         self.__converter = self._create_type_converter()
 
-        self.__is_type_result = None
+        self.__is_type_result = None  # type: Optional[bool]
 
     def __repr__(self) -> str:
         return ", ".join(
@@ -70,7 +71,7 @@
 
         return self.__is_type_result
 
-    def __is_type(self):
+    def __is_type(self) -> bool:
         if self.__checker.is_type():
             return True
 
@@ -87,7 +88,7 @@
 
         return True
 
-    def validate(self, error_message=None):
+    def validate(self, error_message: Optional[str] = None) -> None:
         """
         :raises TypeError:
             If the value is not matched the type that the class represented.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/typepy/type/_binary.py 
new/typepy-1.1.0/typepy/type/_binary.py
--- old/typepy-1.0.0/typepy/type/_binary.py     2020-03-29 14:45:44.000000000 
+0200
+++ new/typepy-1.1.0/typepy/type/_binary.py     2020-04-15 11:40:59.000000000 
+0200
@@ -24,11 +24,11 @@
         super().__init__(value, strict_level, **kwargs)
 
     def _create_type_checker(self):
-        from ..checker import BinaryTypeChecker
+        from ..checker import BytesTypeChecker
 
-        return BinaryTypeChecker(self._data, self._strict_level)
+        return BytesTypeChecker(self._data, self._strict_level)
 
     def _create_type_converter(self):
-        from ..converter import BinaryConverter
+        from ..converter import BytesConverter
 
-        return BinaryConverter(self._data, self._params)
+        return BytesConverter(self._data, self._params)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/typepy/type/_bytes.py 
new/typepy-1.1.0/typepy/type/_bytes.py
--- old/typepy-1.0.0/typepy/type/_bytes.py      1970-01-01 01:00:00.000000000 
+0100
+++ new/typepy-1.1.0/typepy/type/_bytes.py      2020-04-15 15:45:44.000000000 
+0200
@@ -0,0 +1,34 @@
+"""
+.. codeauthor:: Tsuyoshi Hombashi <tsuyoshi.homba...@gmail.com>
+"""
+
+from typing import Any
+
+from .._typecode import Typecode
+from ._base import AbstractType
+
+
+class Bytes(AbstractType):
+    """
+    |result_matrix_desc|
+
+    :py:attr:`.strict_level`
+        |strict_level|
+    """
+
+    @property
+    def typecode(self) -> Typecode:
+        return Typecode.BYTES
+
+    def __init__(self, value: Any, strict_level: int = 1, **kwargs) -> None:
+        super().__init__(value, strict_level, **kwargs)
+
+    def _create_type_checker(self):
+        from ..checker import BytesTypeChecker
+
+        return BytesTypeChecker(self._data, self._strict_level)
+
+    def _create_type_converter(self):
+        from ..converter import BytesConverter
+
+        return BytesConverter(self._data, self._params)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/typepy.egg-info/PKG-INFO 
new/typepy-1.1.0/typepy.egg-info/PKG-INFO
--- old/typepy-1.0.0/typepy.egg-info/PKG-INFO   2020-03-29 16:00:24.000000000 
+0200
+++ new/typepy-1.1.0/typepy.egg-info/PKG-INFO   2020-04-15 18:06:04.000000000 
+0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: typepy
-Version: 1.0.0
+Version: 1.1.0
 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
@@ -207,7 +207,7 @@
         
 Keywords: library,type-checking,type-conversion,validator
 Platform: UNKNOWN
-Classifier: Development Status :: 4 - Beta
+Classifier: Development Status :: 5 - Production/Stable
 Classifier: Intended Audience :: Developers
 Classifier: Intended Audience :: Information Technology
 Classifier: License :: OSI Approved :: MIT License
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/typepy.egg-info/SOURCES.txt 
new/typepy-1.1.0/typepy.egg-info/SOURCES.txt
--- old/typepy-1.0.0/typepy.egg-info/SOURCES.txt        2020-03-29 
16:00:25.000000000 +0200
+++ new/typepy-1.1.0/typepy.egg-info/SOURCES.txt        2020-04-15 
18:06:04.000000000 +0200
@@ -12,8 +12,8 @@
 test/test_function.py
 test/test_str_function.py
 test/test_type.py
-test/checker/test_checker_binary.py
 test/checker/test_checker_bool.py
+test/checker/test_checker_bytes.py
 test/checker/test_checker_datetime.py
 test/checker/test_checker_dictionary.py
 test/checker/test_checker_infinite.py
@@ -44,8 +44,8 @@
 typepy.egg-info/requires.txt
 typepy.egg-info/top_level.txt
 typepy/checker/__init__.py
-typepy/checker/_binary.py
 typepy/checker/_bool.py
+typepy/checker/_bytes.py
 typepy/checker/_checker.py
 typepy/checker/_common.py
 typepy/checker/_datetime.py
@@ -60,8 +60,8 @@
 typepy/checker/_realnumber.py
 typepy/checker/_string.py
 typepy/converter/__init__.py
-typepy/converter/_binary.py
 typepy/converter/_bool.py
+typepy/converter/_bytes.py
 typepy/converter/_datetime.py
 typepy/converter/_dictionary.py
 typepy/converter/_integer.py
@@ -75,6 +75,7 @@
 typepy/type/_base.py
 typepy/type/_binary.py
 typepy/type/_bool.py
+typepy/type/_bytes.py
 typepy/type/_datetime.py
 typepy/type/_dictionary.py
 typepy/type/_infinity.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typepy-1.0.0/typepy.egg-info/requires.txt 
new/typepy-1.1.0/typepy.egg-info/requires.txt
--- old/typepy-1.0.0/typepy.egg-info/requires.txt       2020-03-29 
16:00:24.000000000 +0200
+++ new/typepy-1.1.0/typepy.egg-info/requires.txt       2020-04-15 
18:06:04.000000000 +0200
@@ -1,5 +1,5 @@
 setuptools>=38.3.0
-mbstrdecoder<2,>=0.8.3
+mbstrdecoder<2,>=1.0.0
 
 [datetime]
 python-dateutil<3.0.0,>=2.8.0


Reply via email to