Skip to content

Commit

Permalink
Removed dependency on six and future
Browse files Browse the repository at this point in the history
Had to fix parse_cookie
  • Loading branch information
tpazderka committed Jan 31, 2019
1 parent 554f616 commit 6cd393a
Show file tree
Hide file tree
Showing 57 changed files with 190 additions and 278 deletions.
2 changes: 1 addition & 1 deletion .isort.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@
force_single_line = 1
known_first_party = oic
known_third_party = jwkest,pytest
known_future_library = future,past
known_future_library = past
default_section = THIRDPARTY
4 changes: 2 additions & 2 deletions oauth_example/rp/rp.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
from future.backports.urllib.parse import parse_qs
from future.backports.urllib.parse import unquote
from urllib.parse import parse_qs
from urllib.parse import unquote

import argparse
import importlib
Expand Down
3 changes: 1 addition & 2 deletions oidc_example/op2/server.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from future.backports.urllib.parse import parse_qs
from urllib.parse import parse_qs

import json
import os
Expand Down
2 changes: 1 addition & 1 deletion oidc_example/op3/server.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/usr/bin/env python
__author__ = 'Vahid Jalili'

from future.backports.urllib.parse import parse_qs
from urllib.parse import parse_qs

import json
import os
Expand Down
4 changes: 2 additions & 2 deletions oidc_example/rp2/rp2.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python
from future.backports.urllib.parse import parse_qs
from future.backports.urllib.parse import urlencode
from urllib.parse import parse_qs
from urllib.parse import urlencode

import base64
import hashlib
Expand Down
9 changes: 4 additions & 5 deletions oidc_example/rp3/rp3.py
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
#!/usr/bin/env python
from future.backports.urllib.parse import parse_qs
from future.backports.urllib.parse import urlencode
from future.backports.urllib.parse import urlparse
from urllib.parse import parse_qs
from urllib.parse import urlencode
from urllib.parse import urlparse

import argparse
import importlib
import json
import logging

import six
from jwkest.jws import alg2keytype
from mako.lookup import TemplateLookup
from requests import ConnectionError
Expand Down Expand Up @@ -494,7 +493,7 @@ def application(self, environ, start_response):
_conf.BASE = args.base_url

_base = "{base}:{port}/".format(base=_conf.BASE, port=args.port)
for _client, client_conf in six.iteritems(_conf.CLIENTS):
for _client, client_conf in _conf.CLIENTS.items():
if "client_registration" in client_conf:
client_reg = client_conf["client_registration"]
client_reg["redirect_uris"] = [
Expand Down
2 changes: 1 addition & 1 deletion oidc_example/simple_op/src/provider/server/server.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from jinja2.environment import Environment
from jinja2.loaders import FileSystemLoader
from provider.authn import make_cls_from_name
from six.moves.urllib import parse as urlparse
from urllib import parse as urlparse

from oic import rndstr
from oic.oic.provider import AuthorizationEndpoint
Expand Down
2 changes: 0 additions & 2 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -80,8 +80,6 @@ def run_tests(self):
"mako",
"beaker",
"cryptography",
"future",
"six",
"defusedxml",
],
tests_require=tests_requires,
Expand Down
2 changes: 1 addition & 1 deletion src/oic/extension/heart.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from future.backports.urllib.parse import urlparse
from urllib.parse import urlparse

from oic.oauth2.message import REQUIRED_LIST_OF_STRINGS
from oic.oauth2.message import SINGLE_REQUIRED_STRING
Expand Down
9 changes: 2 additions & 7 deletions src/oic/extension/message.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
from future.backports.urllib.parse import urlparse

import inspect
import sys
from urllib.parse import urlparse

import requests
import six

from oic.exception import InvalidRedirectUri
from oic.exception import MissingPage
Expand Down Expand Up @@ -234,10 +232,7 @@ def factory(msgtype):


def make_software_statement(keyjar, iss, **kwargs):
if six.PY2:
params = inspect.getargspec(JWT.__init__).args
else:
params = list(inspect.signature(JWT.__init__).parameters.keys())
params = list(inspect.signature(JWT.__init__).parameters.keys())

params.remove('self')

Expand Down
5 changes: 2 additions & 3 deletions src/oic/extension/pop.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
from future.backports.urllib.parse import urlparse
from future.moves.urllib.parse import parse_qs

import json
from urllib.parse import parse_qs
from urllib.parse import urlparse

from Cryptodome.PublicKey import RSA
from jwkest import b64e
Expand Down
5 changes: 2 additions & 3 deletions src/oic/extension/proof_of_possesion.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
# pylint: disable=missing-docstring
from future.backports.urllib.parse import parse_qsl
from future.moves.urllib.parse import parse_qs

import base64
import json
import time
from urllib.parse import parse_qs
from urllib.parse import parse_qsl

from jwkest import jws
from jwkest.jwk import keyrep
Expand Down
10 changes: 4 additions & 6 deletions src/oic/extension/provider.py
Original file line number Diff line number Diff line change
@@ -1,15 +1,13 @@
from future.backports.urllib.parse import splitquery
from future.moves.urllib.parse import parse_qs

import json
import logging
import os
import socket
import sys
import traceback
from functools import cmp_to_key
from urllib.parse import parse_qs
from urllib.parse import splitquery

import six
from jwkest import b64e
from jwkest import jws

Expand Down Expand Up @@ -318,7 +316,7 @@ def match_client_request(self, request):
raise CapabilitiesMisMatch(
'Not allowed {}'.format(_pref))
else:
if isinstance(request[_pref], six.string_types):
if isinstance(request[_pref], str):
if request[_pref] not in self.capabilities[_prov]:
raise CapabilitiesMisMatch(
'Not allowed {}'.format(_pref))
Expand Down Expand Up @@ -541,7 +539,7 @@ def verify_capabilities(self, capabilities):
"""
_pinfo = self.provider_features()
for key, val in capabilities.items():
if isinstance(val, six.string_types):
if isinstance(val, str):
try:
if val in _pinfo[key]:
continue
Expand Down
4 changes: 1 addition & 3 deletions src/oic/extension/sts.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,6 @@
"""
import json

import six

from oic.oauth2.message import OPTIONAL_LIST_OF_SP_SEP_STRINGS
from oic.oauth2.message import OPTIONAL_LIST_OF_STRINGS
from oic.oauth2.message import REQUIRED_LIST_OF_STRINGS
Expand Down Expand Up @@ -60,7 +58,7 @@ def sts_deser(val, sformat="json"):
if sformat == "urlencoded":
sformat = "json"
if sformat in ["dict", "json"]:
if not isinstance(val, six.string_types):
if not isinstance(val, str):
val = json.dumps(val)
sformat = "json"
return STS().deserialize(val, sformat)
Expand Down
3 changes: 1 addition & 2 deletions src/oic/oauth2/__init__.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
#!/usr/bin/env python
from future.backports.urllib.parse import urlparse
from urllib.parse import urlparse

import logging

Expand Down
6 changes: 3 additions & 3 deletions src/oic/oauth2/base.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import copy
import http.cookiejar as cookielib
import logging
from http.cookies import CookieError
from http.cookies import SimpleCookie

import requests
import six.moves.http_cookiejar as cookielib
from six.moves.http_cookies import CookieError
from six.moves.http_cookies import SimpleCookie

from oic.oauth2.exception import NonFatalException
from oic.oauth2.util import set_cookie
Expand Down
23 changes: 11 additions & 12 deletions src/oic/oauth2/message.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
from future.backports.urllib.parse import urlencode
from future.moves.urllib.parse import parse_qs
from past.builtins import basestring

import copy
import json
import logging
from collections import MutableMapping
from urllib.parse import parse_qs
from urllib.parse import urlencode

import six
from jwkest import as_unicode
from jwkest import b64d
from jwkest import jwe
Expand Down Expand Up @@ -186,7 +185,7 @@ def to_urlencoded(self, lev=0):

if val is None and null_allowed is False:
continue
elif isinstance(val, six.string_types):
elif isinstance(val, str):
# Should I allow parameters with "" as value ???
params.append((key, val.encode("utf-8")))
elif isinstance(val, list):
Expand Down Expand Up @@ -245,7 +244,7 @@ def from_urlencoded(self, urlencoded, **kwargs):
# always lists even if there is only one value in the list.
# keys only appears once.

if isinstance(urlencoded, six.string_types):
if isinstance(urlencoded, str):
pass
elif isinstance(urlencoded, list):
urlencoded = urlencoded[0]
Expand Down Expand Up @@ -394,7 +393,7 @@ def _add_value(self, skey, vtyp, key, val, _deser, null_allowed):
elif vtyp is bool:
raise ValueError('"{}", wrong type of value for "{}"'.format(val, skey))

if isinstance(val, six.string_types):
if isinstance(val, str):
self._dict[skey] = val
elif isinstance(val, list):
if len(val) == 1:
Expand Down Expand Up @@ -581,7 +580,7 @@ def get_verify_keys(self, keyjar, key, jso, header, jwt, **kwargs):
continue
if ent == "aud":
# list or basestring
if isinstance(jso["aud"], six.string_types):
if isinstance(jso["aud"], str):
_aud = [jso["aud"]]
else:
_aud = jso["aud"]
Expand Down Expand Up @@ -689,7 +688,7 @@ def __str__(self):
return '{}'.format(self.to_dict())

def _type_check(self, typ, _allowed, val, na=False):
if typ is six.string_types:
if typ is str:
if val not in _allowed:
raise NotAllowedValue(val)
elif typ is int:
Expand Down Expand Up @@ -907,7 +906,7 @@ def add_non_standard(msg1, msg2):
# =============================================================================

def list_serializer(vals, sformat="urlencoded", lev=0):
if isinstance(vals, six.string_types) or not isinstance(vals, list):
if isinstance(vals, str) or not isinstance(vals, list):
raise ValueError("Expected list: %s" % vals)
if sformat == "urlencoded":
return " ".join(vals)
Expand All @@ -917,7 +916,7 @@ def list_serializer(vals, sformat="urlencoded", lev=0):

def list_deserializer(val, sformat="urlencoded"):
if sformat == "urlencoded":
if isinstance(val, six.string_types):
if isinstance(val, str):
return val.split(" ")
elif isinstance(val, list) and len(val) == 1:
return val[0].split(" ")
Expand All @@ -926,14 +925,14 @@ def list_deserializer(val, sformat="urlencoded"):


def sp_sep_list_serializer(vals, sformat="urlencoded", lev=0):
if isinstance(vals, six.string_types):
if isinstance(vals, str):
return vals
else:
return " ".join(vals)


def sp_sep_list_deserializer(val, sformat="urlencoded"):
if isinstance(val, six.string_types):
if isinstance(val, str):
return val.split(" ")
elif isinstance(val, list) and len(val) == 1:
return val[0].split(" ")
Expand Down
17 changes: 5 additions & 12 deletions src/oic/oauth2/provider.py
Original file line number Diff line number Diff line change
@@ -1,19 +1,16 @@
#!/usr/bin/env python
from future.backports.urllib.parse import splitquery
from future.backports.urllib.parse import unquote
from future.backports.urllib.parse import urljoin
from future.backports.urllib.parse import urlparse
from future.moves.urllib.parse import parse_qs

import hashlib
import logging
import os
import sys
import traceback
import warnings
from http.cookies import SimpleCookie

from six import PY2
from urllib.parse import parse_qs
from urllib.parse import splitquery
from urllib.parse import unquote
from urllib.parse import urljoin
from urllib.parse import urlparse

from oic import rndstr
from oic.exception import AuthzError
Expand Down Expand Up @@ -743,15 +740,11 @@ def _complete_authz(self, user, areq, sid, **kwargs):
_c = SimpleCookie()
_c[name] = val
_x = _c.output()
if PY2:
_x = str(_x)
headers.append(tuple(_x.split(": ", 1)))
else:
_c = SimpleCookie()
_c.load(_kaka)
for x in _c.output().split('\r\n'):
if PY2:
x = str(x)
headers.append(tuple(x.split(": ", 1)))

if self.cookie_name not in _kaka: # Don't overwrite
Expand Down
15 changes: 6 additions & 9 deletions src/oic/oauth2/util.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,9 @@
from future.backports.http import cookiejar as http_cookiejar
from future.backports.http.cookiejar import http2time
from future.backports.urllib.parse import parse_qs
from future.backports.urllib.parse import urlsplit
from future.backports.urllib.parse import urlunsplit

import logging

from six import string_types
from http import cookiejar as http_cookiejar
from http.cookiejar import http2time
from urllib.parse import parse_qs
from urllib.parse import urlsplit
from urllib.parse import urlunsplit

from oic.exception import UnSupported
from oic.oauth2.exception import TimeFormatError
Expand Down Expand Up @@ -165,7 +162,7 @@ def set_cookie(cookiejar, kaka):


def match_to_(val, vlist):
if isinstance(vlist, string_types):
if isinstance(vlist, str):
if vlist.startswith(val):
return True
else:
Expand Down
Loading

0 comments on commit 6cd393a

Please sign in to comment.