Skip to content

Python2 support drop 2 #344

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 24, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 3 additions & 5 deletions openapi_core/casting/schemas/casters.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
from __future__ import division

from openapi_core.casting.schemas.exceptions import CastError


class PrimitiveCaster(object):
class PrimitiveCaster:

def __init__(self, schema, caster_callable):
self.schema = schema
Expand All @@ -18,13 +16,13 @@ def __call__(self, value):
raise CastError(value, self.schema['type'])


class DummyCaster(object):
class DummyCaster:

def __call__(self, value):
return value


class ArrayCaster(object):
class ArrayCaster:

def __init__(self, schema, casters_factory):
self.schema = schema
Expand Down
2 changes: 1 addition & 1 deletion openapi_core/casting/schemas/factories.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
from openapi_core.casting.schemas.util import forcebool


class SchemaCastersFactory(object):
class SchemaCastersFactory:

DUMMY_CASTERS = [
'string', 'object', 'any',
Expand Down
4 changes: 2 additions & 2 deletions openapi_core/contrib/django/backports.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@ class HttpHeaders(dict):

def __init__(self, environ):
headers = {}
for header, value in environ.items():
for header, value in list(environ.items()):
name = self.parse_header_name(header)
if name:
headers[name] = value
super(HttpHeaders, self).__init__(headers)
super().__init__(headers)

@classmethod
def parse_header_name(cls, header):
Expand Down
2 changes: 1 addition & 1 deletion openapi_core/contrib/django/compat.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ def get_request_headers(req):
def get_response_headers(resp):
# in Django 2 headers is not defined
return resp.headers if hasattr(resp, 'headers') else \
dict(resp._headers.values())
dict(list(resp._headers.values()))


def get_current_scheme_host(req):
Expand Down
4 changes: 2 additions & 2 deletions openapi_core/contrib/django/requests.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
PATH_PARAMETER_PATTERN = r'(?:[^\/]*?)<(?:(?:.*?:))*?(\w+)>(?:[^\/]*)'


class DjangoOpenAPIRequestFactory(object):
class DjangoOpenAPIRequestFactory:

path_regex = re.compile(PATH_PARAMETER_PATTERN)

Expand All @@ -48,7 +48,7 @@ def create(cls, request):
parameters = RequestParameters(
path=path,
query=request.GET,
header=headers.items(),
header=list(headers.items()),
cookie=request.COOKIES,
)
current_scheme_host = get_current_scheme_host(request)
Expand Down
4 changes: 2 additions & 2 deletions openapi_core/contrib/django/responses.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
from openapi_core.validation.response.datatypes import OpenAPIResponse


class DjangoOpenAPIResponseFactory(object):
class DjangoOpenAPIResponseFactory:

@classmethod
def create(cls, response):
Expand All @@ -12,6 +12,6 @@ def create(cls, response):
return OpenAPIResponse(
data=response.content,
status_code=response.status_code,
headers=headers.items(),
headers=list(headers.items()),
mimetype=mimetype,
)
2 changes: 1 addition & 1 deletion openapi_core/contrib/falcon/handlers.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
)


class FalconOpenAPIErrorsHandler(object):
class FalconOpenAPIErrorsHandler:

OPENAPI_ERROR_STATUS = {
ServerNotFound: 400,
Expand Down
9 changes: 3 additions & 6 deletions openapi_core/contrib/falcon/middlewares.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,25 +18,22 @@ def __init__(
response_factory,
openapi_errors_handler,
):
super(FalconOpenAPIMiddleware, self).__init__(
request_validator, response_validator)
super().__init__(request_validator, response_validator)
self.request_factory = request_factory
self.response_factory = response_factory
self.openapi_errors_handler = openapi_errors_handler

def process_request(self, req, resp):
openapi_req = self._get_openapi_request(req)
req_result = super(FalconOpenAPIMiddleware, self).process_request(
openapi_req)
req_result = super().process_request(openapi_req)
if req_result.errors:
return self._handle_request_errors(req, resp, req_result)
req.openapi = req_result

def process_response(self, req, resp, resource, req_succeeded):
openapi_req = self._get_openapi_request(req)
openapi_resp = self._get_openapi_response(resp)
resp_result = super(FalconOpenAPIMiddleware, self).process_response(
openapi_req, openapi_resp)
resp_result = super().process_response(openapi_req, openapi_resp)
if resp_result.errors:
return self._handle_response_errors(req, resp, resp_result)

Expand Down
2 changes: 1 addition & 1 deletion openapi_core/contrib/falcon/requests.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ def create(cls, request, default_when_empty={}):
if request.content_type:
mimetype = request.content_type.partition(";")[0]

query = ImmutableMultiDict(request.params.items())
query = ImmutableMultiDict(list(request.params.items()))
parameters = RequestParameters(
query=query,
header=request.headers,
Expand Down
2 changes: 1 addition & 1 deletion openapi_core/contrib/falcon/responses.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
from openapi_core.validation.response.datatypes import OpenAPIResponse


class FalconOpenAPIResponseFactory(object):
class FalconOpenAPIResponseFactory:
@classmethod
def create(cls, response):
status_code = int(response.status[:3])
Expand Down
4 changes: 2 additions & 2 deletions openapi_core/contrib/flask/decorators.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ def __init__(
request_provider=FlaskRequestProvider,
openapi_errors_handler=FlaskOpenAPIErrorsHandler,
):
super(FlaskOpenAPIViewDecorator, self).__init__(
super().__init__(
request_validator, response_validator,
request_factory, response_factory,
request_provider, openapi_errors_handler,
Expand All @@ -28,7 +28,7 @@ def __init__(
def _handle_request_view(self, request_result, view, *args, **kwargs):
request = self._get_request(*args, **kwargs)
request.openapi = request_result
return super(FlaskOpenAPIViewDecorator, self)._handle_request_view(
return super()._handle_request_view(
request_result, view, *args, **kwargs)

@classmethod
Expand Down
2 changes: 1 addition & 1 deletion openapi_core/contrib/flask/handlers.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
)


class FlaskOpenAPIErrorsHandler(object):
class FlaskOpenAPIErrorsHandler:

OPENAPI_ERROR_STATUS = {
ServerNotFound: 400,
Expand Down
2 changes: 1 addition & 1 deletion openapi_core/contrib/flask/providers.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
from flask.globals import request


class FlaskRequestProvider(object):
class FlaskRequestProvider:

@classmethod
def provide(self, *args, **kwargs):
Expand Down
2 changes: 1 addition & 1 deletion openapi_core/contrib/flask/requests.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
PATH_PARAMETER_PATTERN = r'<(?:(?:string|int|float|path|uuid):)?(\w+)>'


class FlaskOpenAPIRequestFactory(object):
class FlaskOpenAPIRequestFactory:

path_regex = re.compile(PATH_PARAMETER_PATTERN)

Expand Down
2 changes: 1 addition & 1 deletion openapi_core/contrib/flask/responses.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
from openapi_core.validation.response.datatypes import OpenAPIResponse


class FlaskOpenAPIResponseFactory(object):
class FlaskOpenAPIResponseFactory:

@classmethod
def create(cls, response):
Expand Down
5 changes: 2 additions & 3 deletions openapi_core/contrib/flask/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ class FlaskOpenAPIView(MethodView):
openapi_errors_handler = FlaskOpenAPIErrorsHandler

def __init__(self, spec):
super(FlaskOpenAPIView, self).__init__()
super().__init__()
self.request_validator = RequestValidator(spec)
self.response_validator = ResponseValidator(spec)

Expand All @@ -23,5 +23,4 @@ def dispatch_request(self, *args, **kwargs):
response_validator=self.response_validator,
openapi_errors_handler=self.openapi_errors_handler,
)
return decorator(super(FlaskOpenAPIView, self).dispatch_request)(
*args, **kwargs)
return decorator(super().dispatch_request)(*args, **kwargs)
4 changes: 2 additions & 2 deletions openapi_core/contrib/requests/requests.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
"""OpenAPI core contrib requests requests module"""
from __future__ import absolute_import

from urllib.parse import urlparse, parse_qs

from werkzeug.datastructures import ImmutableMultiDict
Expand All @@ -10,7 +10,7 @@
)


class RequestsOpenAPIRequestFactory(object):
class RequestsOpenAPIRequestFactory:

@classmethod
def create(cls, request):
Expand Down
2 changes: 1 addition & 1 deletion openapi_core/contrib/requests/responses.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
from openapi_core.validation.response.datatypes import OpenAPIResponse


class RequestsOpenAPIResponseFactory(object):
class RequestsOpenAPIResponseFactory:

@classmethod
def create(cls, response):
Expand Down
2 changes: 1 addition & 1 deletion openapi_core/deserializing/media_types/deserializers.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
from openapi_core.deserializing.exceptions import DeserializeError


class PrimitiveDeserializer(object):
class PrimitiveDeserializer:

def __init__(self, mimetype, deserializer_callable):
self.mimetype = mimetype
Expand Down
2 changes: 1 addition & 1 deletion openapi_core/deserializing/media_types/factories.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
)


class MediaTypeDeserializersFactory(object):
class MediaTypeDeserializersFactory:

MEDIA_TYPE_DESERIALIZERS = {
'application/json': loads,
Expand Down
2 changes: 1 addition & 1 deletion openapi_core/deserializing/parameters/deserializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
from openapi_core.schema.parameters import get_aslist, get_explode, get_style


class PrimitiveDeserializer(object):
class PrimitiveDeserializer:

def __init__(self, param_or_header, deserializer_callable):
self.param_or_header = param_or_header
Expand Down
2 changes: 1 addition & 1 deletion openapi_core/deserializing/parameters/factories.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
from openapi_core.schema.parameters import get_style


class ParameterDeserializersFactory(object):
class ParameterDeserializersFactory:

PARAMETER_STYLE_DESERIALIZERS = {
'form': lambda x: x.split(','),
Expand Down
4 changes: 2 additions & 2 deletions openapi_core/extensions/models/factories.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@
from openapi_core.extensions.models.models import Model


class ModelClassFactory(object):
class ModelClassFactory:

base_class = Model

def create(self, name):
return type(name, (self.base_class, ), {})


class ModelFactory(object):
class ModelFactory:

def __init__(self, model_class_factory=None):
self.model_class_factory = model_class_factory or ModelClassFactory()
Expand Down
2 changes: 1 addition & 1 deletion openapi_core/extensions/models/models.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
"""OpenAPI X-Model extension models module"""


class BaseModel(object):
class BaseModel:
"""Base class for OpenAPI X-Model."""

@property
Expand Down
1 change: 0 additions & 1 deletion openapi_core/schema/parameters.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
from __future__ import division
from itertools import chain


Expand Down
5 changes: 1 addition & 4 deletions openapi_core/schema/schemas.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
from __future__ import division


def get_all_properties(schema):
properties = schema.get('properties', {})
properties_dict = dict(properties.items())
properties_dict = dict(list(properties.items()))

if 'allOf'not in schema:
return properties_dict
Expand Down
5 changes: 1 addition & 4 deletions openapi_core/schema/servers.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
from __future__ import division


def is_absolute(url):
return url.startswith('//') or '://' in url

Expand All @@ -11,7 +8,7 @@ def get_server_default_variables(server):

defaults = {}
variables = server / 'variables'
for name, variable in variables.items():
for name, variable in list(variables.items()):
defaults[name] = variable['default']
return defaults

Expand Down
2 changes: 0 additions & 2 deletions openapi_core/schema/specs.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
from __future__ import division

from openapi_core.schema.servers import get_server_url


Expand Down
2 changes: 1 addition & 1 deletion openapi_core/security/factories.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
)


class SecurityProviderFactory(object):
class SecurityProviderFactory:

PROVIDERS = {
'apiKey': ApiKeyProvider,
Expand Down
2 changes: 1 addition & 1 deletion openapi_core/security/providers.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
from openapi_core.security.exceptions import SecurityError


class BaseProvider(object):
class BaseProvider:

def __init__(self, scheme):
self.scheme = scheme
Expand Down
2 changes: 1 addition & 1 deletion openapi_core/spec/accessors.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
class SpecAccessor(DictOrListAccessor):

def __init__(self, dict_or_list, dereferencer):
super(SpecAccessor, self).__init__(dict_or_list)
super().__init__(dict_or_list)
self.dereferencer = dereferencer

@contextmanager
Expand Down
2 changes: 1 addition & 1 deletion openapi_core/templating/datatypes.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@


@attr.s
class TemplateResult(object):
class TemplateResult:
pattern = attr.ib(default=None)
variables = attr.ib(default=None)

Expand Down
3 changes: 1 addition & 2 deletions openapi_core/templating/media_types/finders.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
"""OpenAPI core templating media types finders module"""
from __future__ import division
import fnmatch

from openapi_core.templating.media_types.exceptions import MediaTypeNotFound


class MediaTypeFinder(object):
class MediaTypeFinder:

def __init__(self, content):
self.content = content
Expand Down
Loading