diff --git a/pyswagger/__init__.py b/pyswagger/__init__.py index e8594a9..515da8c 100644 --- a/pyswagger/__init__.py +++ b/pyswagger/__init__.py @@ -1,4 +1,4 @@ -__version__ = '0.8.39' +__version__ = '0.8.39.0001' from .getter import Getter from .core import App, Security diff --git a/pyswagger/getter.py b/pyswagger/getter.py index abdc8fb..9f5e329 100644 --- a/pyswagger/getter.py +++ b/pyswagger/getter.py @@ -45,7 +45,7 @@ def __next__(self): if obj.startswith('{'): obj = json.loads(obj) else: - obj = yaml.load(obj) + obj = yaml.safe_load(obj) except ValueError: raise Exception('Unknown format startswith {0} ...'.format(obj[:10])) diff --git a/pyswagger/io.py b/pyswagger/io.py index 75569c2..3ffae14 100644 --- a/pyswagger/io.py +++ b/pyswagger/io.py @@ -8,6 +8,14 @@ import collections import logging +# Mapping and Mutable Mapping moved to collections.abc in Python 3.10 +try: + from collections import abc + collections.MutableMapping = abc.MutableMapping + collections.Mapping = abc.Mapping +except: + pass + logger = logging.getLogger(__name__) diff --git a/pyswagger/tests/contrib/client/test_flask.py b/pyswagger/tests/contrib/client/test_flask.py index c96f233..313f624 100644 --- a/pyswagger/tests/contrib/client/test_flask.py +++ b/pyswagger/tests/contrib/client/test_flask.py @@ -196,16 +196,18 @@ def test_custom_headers_multiple_values_to_one_key(self): headers = [('X-TEST-HEADER', 'aaa'), ('X-TEST-HEADER', 'bbb')] resp = self.client.request( sapp.op['updatePet'](body=dict(id=1, name='Tom1')), - headers=headers + headers=headers, + opt={'join_headers': False} ) - self.assertEqual(received_headers.get_all('X-TEST-HEADER'), ['bbb']) + self.assertEqual(received_headers.get_all('X-TEST-HEADER'), ['aaa, bbb']) + # with 'join_headers' resp = self.client.request( sapp.op['updatePet'](body=dict(id=1, name='Tom1')), headers=headers, opt={'join_headers': True} ) - self.assertEqual(received_headers.get_all('X-TEST-HEADER'), ['aaa,bbb']) + self.assertEqual(received_headers.get_all('X-TEST-HEADER'), ['aaa,bbb']) diff --git a/pyswagger/utils.py b/pyswagger/utils.py index 485b245..6bfb1dd 100644 --- a/pyswagger/utils.py +++ b/pyswagger/utils.py @@ -9,8 +9,18 @@ import os import operator import functools + import collections +# Mapping and Mutable Mapping moved to collections.abc in Python 3.10 +try: + from collections import abc + collections.MutableMapping = abc.MutableMapping + collections.Mapping = abc.Mapping +except: + pass + + #TODO: accept varg def scope_compose(scope, name, sep=private.SCOPE_SEPARATOR): """ compose a new scope diff --git a/requirements.txt b/requirements.txt index 8af0466..c03a1d8 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,9 @@ -six>=1.6.0 -pyaml>=15.03.1 +certifi>=2024.6.2 +charset-normalizer>=3.3.2 +idna>=3.7 +pyaml>=24.4.0 +PyYAML>=6.0.1 +requests>=2.32.3 +six>=1.16.0 +urllib3>=2.2.2 validate_email>=1.3