Uploaded image for project: 'Hue (READ ONLY)'
  1. Hue (READ ONLY)
  2. HUE-2851

[core] Add support for picking up the system site-packages

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 3.9.0
    • Fix Version/s: 3.9.0
    • Component/s: core.api
    • Labels:
      None

      Description

      Due to licensing issues, Hue is unable to bundle in certain dependencies, like psycopg2. In order for Hue to be used with postgres, it is required for end users to cd into the Hue install directory and manually run ./build/env/bin/pip install psycopg2. This has some downsides. First, every Hue upgrade requires running this command. Second, for clusters not connected to the internet it requires admins to download the pypi package, which might need to go through a lengthy approval process.

      Virtualenv does support a --system-site-packages option that allows system packages to be included last in the python path of a project. This means that the bundled Hue dependencies will take precedence over the system packages, but still allow other packages to be exposed to the end user. This does expose Hue to some risk:

      1. Hue developers could accidentally introduce a dependency on a package local to their system. The unit tests should detect and protect against it.

      2. Since we have no control over what packages the end user installs for themselves, they could install a version that is incompatible with Hue. Errors like this should be caught by doing matrix testing with all the Hue supported platforms.

        Attachments

          Activity

            People

            • Assignee:
              erickt Erick Tryzelaar
              Reporter:
              erickt Erick Tryzelaar
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: