Uploaded image for project: 'Nuxeo Drive '
  1. Nuxeo Drive
  2. NXDRIVE-2435

Fix handling of direct PAC file input in proxy settings

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: 4.0.0
    • Fix Version/s: 4.5.0
    • Component/s: Proxy
    • Release Notes Summary:
      PAC files support
    • Release Notes Description:
      Hide

      Dealing with PAC files set at the OS level (the registry on Windows and the system preferences on macOS) was done correctly since the beginning. But one could not enter a PAC file directly into proxy settings. This is now possible.

      Show
      Dealing with PAC files set at the OS level (the registry on Windows and the system preferences on macOS) was done correctly since the beginning. But one could not enter a PAC file directly into proxy settings. This is now possible.
    • Sprint:
      nxDrive 11.2.9
    • Story Points:
      2

      Description

      We are dealing correctly when a PAC is set on the OS (into the registry on Windows, and into the system preferences on macOS), but we are not testing a user entering directly a local PAC file into proxy settings.

      And in real case scenario, this leads to such errors:

      Traceback (most recent call last):
        File "gui/api.py", line 853, in set_proxy_settings
          proxy = get_proxy(category=config, url=url, pac_url=pac_url)
        File "client/proxy.py", line 134, in get_proxy
          return _get_cls(kwargs.pop("category"))(**kwargs)
        File "client/proxy.py", line 118, in __init__
          self._pac_file = get_pac(
        File "/.../pypac/api.py", line 39, in get_pac
          downloaded_pac = download_pac([url], timeout=timeout,
        File "/.../pypac/api.py", line 137, in download_pac
          resp = sess.get(pac_url, timeout=timeout)
        File "/.../requests/sessions.py", line 555, in get
          return self.request('GET', url, **kwargs)
        File "/.../requests/sessions.py", line 542, in request
          resp = self.send(prep, **send_kwargs)
        File "/.../requests/sessions.py", line 649, in send
          adapter = self.get_adapter(url=request.url)
        File "/.../requests/sessions.py", line 742, in get_adapter
          raise InvalidSchema("No connection adapters were found for {!r}".format(url))
      requests.exceptions.InvalidSchema: No connection adapters were found for 'file://Users/USER/super-proxy.pac'
      

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 4 hours
                  4h

                    PagerDuty

                    Error rendering 'com.pagerduty.jira-server-plugin:PagerDuty'. Please contact your Jira administrators.