Browse Source

Replaced urlparse imports with six.moves.urllib.parse (#3847)

version-14
Aditya Hase 8 years ago
committed by Rushabh Mehta
parent
commit
375dfd601d
8 changed files with 14 additions and 22 deletions
  1. +1
    -1
      frappe/api.py
  2. +1
    -1
      frappe/integrations/doctype/dropbox_settings/dropbox_settings.py
  3. +1
    -5
      frappe/integrations/doctype/social_login_keys/social_login_keys.py
  4. +1
    -2
      frappe/integrations/oauth2.py
  5. +3
    -2
      frappe/integrations/utils.py
  6. +5
    -4
      frappe/limits.py
  7. +1
    -2
      frappe/oauth.py
  8. +1
    -5
      frappe/tests/ui/test_oauth20.py

+ 1
- 1
frappe/api.py View File

@@ -8,7 +8,7 @@ import frappe.handler
import frappe.client import frappe.client
from frappe.utils.response import build_response from frappe.utils.response import build_response
from frappe import _ from frappe import _
from urlparse import urlparse
from six.moves.urllib.parse import urlparse
from urllib import urlencode from urllib import urlencode


def handle(): def handle():


+ 1
- 1
frappe/integrations/doctype/dropbox_settings/dropbox_settings.py View File

@@ -10,7 +10,7 @@ from frappe.model.document import Document
import dropbox, json import dropbox, json
from frappe.utils.backups import new_backup from frappe.utils.backups import new_backup
from frappe.utils.background_jobs import enqueue from frappe.utils.background_jobs import enqueue
from urlparse import urlparse, parse_qs
from six.moves.urllib.parse import urlparse, parse_qs
from frappe.integrations.utils import make_post_request from frappe.integrations.utils import make_post_request
from frappe.utils import (cint, split_emails, get_request_site_address, cstr, from frappe.utils import (cint, split_emails, get_request_site_address, cstr,
get_files_path, get_backups_path, encode, get_url) get_files_path, get_backups_path, encode, get_url)


+ 1
- 5
frappe/integrations/doctype/social_login_keys/social_login_keys.py View File

@@ -10,11 +10,7 @@ import socket


from frappe.model.document import Document from frappe.model.document import Document
from frappe import _ from frappe import _

try:
from urllib.parse import urlparse
except ImportError:
from urlparse import urlparse
from six.moves.urllib.parse import urlparse


class SocialLoginKeys(Document): class SocialLoginKeys(Document):
def validate(self): def validate(self):


+ 1
- 2
frappe/integrations/oauth2.py View File

@@ -5,7 +5,7 @@ from oauthlib.oauth2 import FatalClientError, OAuth2Error
from urllib import urlencode from urllib import urlencode
from six.moves.urllib.parse import quote from six.moves.urllib.parse import quote
from werkzeug import url_fix from werkzeug import url_fix
from urlparse import urlparse
from six.moves.urllib.parse import urlparse
from frappe.integrations.doctype.oauth_provider_settings.oauth_provider_settings import get_oauth_settings from frappe.integrations.doctype.oauth_provider_settings.oauth_provider_settings import get_oauth_settings
from frappe import _ from frappe import _


@@ -179,7 +179,6 @@ def openid_profile(*args, **kwargs):
frappe.local.response = user_profile frappe.local.response = user_profile


def validate_url(url_string): def validate_url(url_string):
from urlparse import urlparse
try: try:
result = urlparse(url_string) result = urlparse(url_string)
if result.scheme and result.scheme in ["http", "https", "ftp", "ftps"]: if result.scheme and result.scheme in ["http", "https", "ftp", "ftps"]:


+ 3
- 2
frappe/integrations/utils.py View File

@@ -4,7 +4,8 @@


from __future__ import unicode_literals from __future__ import unicode_literals
import frappe import frappe
import json, urlparse
import json
from six.moves.urllib.parse import parse_qs
from frappe.utils import get_request_session from frappe.utils import get_request_session
from frappe import _ from frappe import _


@@ -40,7 +41,7 @@ def make_post_request(url, auth=None, headers=None, data=None):
frappe.flags.integration_request.raise_for_status() frappe.flags.integration_request.raise_for_status()


if frappe.flags.integration_request.headers.get("content-type") == "text/plain; charset=utf-8": if frappe.flags.integration_request.headers.get("content-type") == "text/plain; charset=utf-8":
return urlparse.parse_qs(frappe.flags.integration_request.text)
return parse_qs(frappe.flags.integration_request.text)


return frappe.flags.integration_request.json() return frappe.flags.integration_request.json()
except Exception as exc: except Exception as exc:


+ 5
- 4
frappe/limits.py View File

@@ -5,7 +5,8 @@ from frappe.utils import now_datetime, getdate, flt, cint, get_fullname
from frappe.installer import update_site_config from frappe.installer import update_site_config
from frappe.utils.data import formatdate from frappe.utils.data import formatdate
from frappe.utils.user import get_enabled_system_users, disable_users from frappe.utils.user import get_enabled_system_users, disable_users
import os, subprocess, urlparse, urllib
import os, subprocess, urllib
from six.moves.urllib.parse import parse_qsl, urlsplit, urlunsplit


class SiteExpiredError(frappe.ValidationError): class SiteExpiredError(frappe.ValidationError):
http_status_code = 417 http_status_code = 417
@@ -121,8 +122,8 @@ def get_usage_info():
return usage_info return usage_info


def get_upgrade_url(upgrade_url): def get_upgrade_url(upgrade_url):
parts = urlparse.urlsplit(upgrade_url)
params = dict(urlparse.parse_qsl(parts.query))
parts = urlsplit(upgrade_url)
params = dict(parse_qsl(parts.query))
params.update({ params.update({
'site': frappe.local.site, 'site': frappe.local.site,
'email': frappe.session.user, 'email': frappe.session.user,
@@ -131,7 +132,7 @@ def get_upgrade_url(upgrade_url):
}) })


query = urllib.urlencode(params, doseq=True) query = urllib.urlencode(params, doseq=True)
url = urlparse.urlunsplit((parts.scheme, parts.netloc, parts.path, query, parts.fragment))
url = urlunsplit((parts.scheme, parts.netloc, parts.path, query, parts.fragment))
return url return url


def get_upgrade_link(upgrade_url, label=None): def get_upgrade_link(upgrade_url, label=None):


+ 1
- 2
frappe/oauth.py View File

@@ -3,7 +3,6 @@ import frappe
import pytz import pytz


from frappe import _ from frappe import _
from urlparse import parse_qs, urlparse
from oauthlib.oauth2.rfc6749.tokens import BearerToken from oauthlib.oauth2.rfc6749.tokens import BearerToken
from oauthlib.oauth2.rfc6749.grant_types import AuthorizationCodeGrant, ImplicitGrant, ResourceOwnerPasswordCredentialsGrant, ClientCredentialsGrant, RefreshTokenGrant, OpenIDConnectAuthCode from oauthlib.oauth2.rfc6749.grant_types import AuthorizationCodeGrant, ImplicitGrant, ResourceOwnerPasswordCredentialsGrant, ClientCredentialsGrant, RefreshTokenGrant, OpenIDConnectAuthCode
from oauthlib.oauth2 import RequestValidator from oauthlib.oauth2 import RequestValidator
@@ -12,7 +11,7 @@ from oauthlib.oauth2.rfc6749.endpoints.token import TokenEndpoint
from oauthlib.oauth2.rfc6749.endpoints.resource import ResourceEndpoint from oauthlib.oauth2.rfc6749.endpoints.resource import ResourceEndpoint
from oauthlib.oauth2.rfc6749.endpoints.revocation import RevocationEndpoint from oauthlib.oauth2.rfc6749.endpoints.revocation import RevocationEndpoint
from oauthlib.common import Request from oauthlib.common import Request
from six.moves.urllib.parse import unquote
from six.moves.urllib.parse import parse_qs, urlparse, unquote


def get_url_delimiter(separator_character=" "): def get_url_delimiter(separator_character=" "):
return separator_character return separator_character


+ 1
- 5
frappe/tests/ui/test_oauth20.py View File

@@ -5,11 +5,7 @@ from __future__ import unicode_literals
import unittest, frappe, requests, time import unittest, frappe, requests, time
from frappe.test_runner import make_test_records from frappe.test_runner import make_test_records
from frappe.utils.selenium_testdriver import TestDriver from frappe.utils.selenium_testdriver import TestDriver

try:
from urllib.parse import urlparse
except ImportError:
from urlparse import urlparse
from six.moves.urllib.parse import urlparse


class TestOAuth20(unittest.TestCase): class TestOAuth20(unittest.TestCase):
def setUp(self): def setUp(self):


Loading…
Cancel
Save