Rafficer / linux-cli-community

Linux command-line client for ProtonVPN. Written in Python.
https://protonvpn.com
GNU General Public License v3.0
1.29k stars 195 forks source link

[BUG] cannot parese url with python3-requests 2.25.1 #317

Closed blackPantherOS closed 3 years ago

blackPantherOS commented 3 years ago

Describe the bug A clear and concise description of what the bug is.

Broken CLI 2.2.6 with python3-requests >= 2.25.1

Is this information correct? [Y/n]:  
Writing configuration to disk...
Traceback (most recent call last):
  File "/usr/lib/python3.7/site-packages/requests/models.py", line 382, in prepare_url
    scheme, auth, host, port, path, query, fragment = parse_url(url)
  File "/usr/lib/python3.7/site-packages/urllib3/util/url.py", line 392, in parse_url
    return six.raise_from(LocationParseError(source_url), None)
  File "<string>", line 3, in raise_from
urllib3.exceptions.LocationParseError: Failed to parse: https://api.protonvpn.ch/vpn/logicals

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/protonvpn", line 11, in <module>
    load_entry_point('protonvpn-cli==2.2.6', 'console_scripts', 'protonvpn')()
  File "/usr/lib/python3.7/site-packages/protonvpn_cli/cli.py", line 73, in main
    cli()
  File "/usr/lib/python3.7/site-packages/protonvpn_cli/cli.py", line 96, in cli
    init_cli()
  File "/usr/lib/python3.7/site-packages/protonvpn_cli/cli.py", line 244, in init_cli
    pull_server_data()
  File "/usr/lib/python3.7/site-packages/protonvpn_cli/utils.py", line 83, in pull_server_data
    data = call_api("/vpn/logicals")
  File "/usr/lib/python3.7/site-packages/protonvpn_cli/utils.py", line 44, in call_api
    response = requests.get(url, headers=headers)
  File "/usr/lib/python3.7/site-packages/requests/api.py", line 76, in get
    return request('get', url, params=params, **kwargs)
  File "/usr/lib/python3.7/site-packages/requests/api.py", line 61, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/lib/python3.7/site-packages/requests/sessions.py", line 528, in request
    prep = self.prepare_request(req)
  File "/usr/lib/python3.7/site-packages/requests/sessions.py", line 466, in prepare_request
    hooks=merge_hooks(request.hooks, self.hooks),
  File "/usr/lib/python3.7/site-packages/requests/models.py", line 316, in prepare
    self.prepare_url(url, params)
  File "/usr/lib/python3.7/site-packages/requests/models.py", line 384, in prepare_url
    raise InvalidURL(*e.args)
requests.exceptions.InvalidURL: Failed to parse: https://api.protonvpn.ch/vpn/logicals
blackPantherOS commented 3 years ago

Bug found urllib3 / six modules. Fixed