diff --git a/raven/conf/remote.py b/raven/conf/remote.py index 7ba4cdfc..e462b0fc 100644 --- a/raven/conf/remote.py +++ b/raven/conf/remote.py @@ -84,7 +84,7 @@ class RemoteConfig(object): if not all([netloc, project, url.username, url.password]): raise InvalidDsn('Invalid Sentry DSN: %r' % url.geturl()) - base_url = '%s://%s%s' % (url.scheme, netloc, path) + base_url = '%s://%s%s' % (url.scheme.rsplit('+', 1)[-1], netloc, path) return cls( base_url=base_url, diff --git a/raven/transport/base.py b/raven/transport/base.py index ed4e15d1..f3adb287 100644 --- a/raven/transport/base.py +++ b/raven/transport/base.py @@ -7,8 +7,6 @@ raven.transport.base """ from __future__ import absolute_import -from raven.transport.exceptions import InvalidScheme - class Transport(object): """ @@ -24,10 +22,6 @@ class Transport(object): async = False scheme = [] - def check_scheme(self, url): - if url.scheme not in self.scheme: - raise InvalidScheme() - def send(self, data, headers): """ You need to override this to do something with the actual diff --git a/raven/transport/http.py b/raven/transport/http.py index 10bb0af1..a2b968ba 100644 --- a/raven/transport/http.py +++ b/raven/transport/http.py @@ -20,8 +20,6 @@ class HTTPTransport(Transport): def __init__(self, parsed_url, timeout=defaults.TIMEOUT, verify_ssl=True, ca_certs=defaults.CA_BUNDLE): - self.check_scheme(parsed_url) - self._parsed_url = parsed_url self._url = parsed_url.geturl().rsplit('+', 1)[-1] diff --git a/tests/transport/tests.py b/tests/transport/tests.py index 2eba3b85..b0f03e58 100644 --- a/tests/transport/tests.py +++ b/tests/transport/tests.py @@ -23,7 +23,6 @@ class DummyScheme(Transport): scheme = ['mock'] def __init__(self, parsed_url, timeout=5): - self.check_scheme(parsed_url) self._parsed_url = parsed_url self.timeout = timeout