Subject: python-apache-libcloud fails its test suite

From: Maxim Cournoyer <[email-masked]>
Date: Wed, 11 Sep 2019 11:36:44 +0900

This is happening on master.

The tests results are reported as:

====== 14 failed, 9148 passed, 24 skipped, 532 warnings in 173.14 seconds ======

And here's a sample of a failure output:

--8<---------------cut here---------------start------------->8---
self = <PreparedRequest [POST]>, url = 'https://ecs.%s.amazonaws.com/'
params = OrderedDict()

    def prepare_url(self, url, params):
        """Prepares the given HTTP URL."""
        #: Accept objects that have string representations.
        #: We're unable to blindly call unicode/str functions
        #: as this will include the bytestring indicator (b'')
        #: on python 3.x.
        #: https://github.com/requests/requests/pull/2238
        if isinstance(url, bytes):
            url = url.decode('utf8')
        else:
            url = unicode(url) if is_py2 else str(url)
    
        # Remove leading whitespaces from url
        url = url.lstrip()
    
        # Don't do any URL preparation for non-HTTP schemes like `mailto`,
        # `data` etc to work around exceptions from `url_parse`, which
        # handles RFC 3986 only.
        if ':' in url and not url.lower().startswith('http'):
            self.url = url
            return
    
        # Support for unicode domain names and paths.
        try:
            scheme, auth, host, port, path, query, fragment = parse_url(url)
        except LocationParseError as e:
>           raise InvalidURL(*e.args)
E           requests.exceptions.InvalidURL: Failed to parse: https://ecs.%s.amazonaws.com/

/gnu/store/6bqv37089mz5a227c008smpl6vks3cf8-python-requests-2.22.0/lib/python3.7/site-packages/requests/models.py:381: InvalidURL
______________ ElasticContainerDriverTestCase.test_stop_container ______________

self = <PreparedRequest [POST]>, url = 'https://ecs.%s.amazonaws.com/'
params = OrderedDict()

    def prepare_url(self, url, params):
        """Prepares the given HTTP URL."""
        #: Accept objects that have string representations.
        #: We're unable to blindly call unicode/str functions
        #: as this will include the bytestring indicator (b'')
        #: on python 3.x.
        #: https://github.com/requests/requests/pull/2238
--8<---------------cut here---------------end--------------->8---

Perhaps an upgrade of python-requests could be at cause.  Needs
investigation.

Maxim