Skip to content

Improve display names of interpreters in the list and status bar #1351

Description

The prefix 'packaged by conda-forge` should not be added to some of the interpreters.
As this belongs to the root interpreters

Brett Cannon (@brettcannon) Dan Taylor (@qubitron)
We'll need to go come up with a set of rules for the display names of:

  • Conda, virtual, venv, and other environments.

screen shot 2018-04-09 at 11 31 56 am

win

Activity

  1. DonJayamanne commented on Apr 28, 2018

    @DonJayamanne
    Author

    The following is a WIP:

    Requirements:

    • Able to identify the type of environment (whether its conda, pipenv, etc)
    • Able to identify version of Python
    • Able to identify name of the environment (if its a virtual environment or similar)
    • Able to identify the name of the company/distro
    • Consistent across all platforms
    • Consider requirements of PEP 514

    TBD:

    • Do we care for the display of bitness information (should be easy to determine, using sys.maxsize)
    • Do we need to display the type of release (e.g. if its a RC, beta etc, something other than the final release).

    Propose Format

    CompanyName DisplayName (EnvironmentName EnvironmentType)

    Propose Sort order

    • Environment + display name
      E.g.:
    1. Anaconda Python 2.7.14 32Bit (base)
    2. Anaconda Python 2.7.14 32Bit (env-01)
    3. Anaconda Python 3.5.1 64Bit (env-02)
    4. Python 2.7.14 32Bit (v01 pipenv)
    5. Python 3.5.1 32Bit (v02 pipenv)
    6. Python 3.5.1 32Bit (v03 pipenv)
    7. Python 3.5.1 32Bit (v03 pyenv)
    8. Python 3.6.1 32Bit (v03 venv)
    9. Python 3.5.1 32Bit (myenv2 virtualenv)

    Where:

    • CompanyName is
      • The name of the company (on Windows this is retrieved from the registry PEP 514)
    • DisplayName is
      • On Windows, this should be retrieved from the registry PEP 514
      • Python Major.Minor.Micro 32/64bit (for all but conda environments and non Windows OS)
        E.g. Python 2.7.14 32bit Python 3.5.1 64bit
    • EnvironmentType: is one of the following
      • pipenv
      • pyenv
      • venv
      • virtualenv
        Note: conda is not included in the above list, as the company name (prefix) would be an implicit indicator of the fact that its a conda environment.
  2. changed the title [-]Improve display names of interpreters[/-] [+]Improve display names of interpreters in the list and status bar[/+] on Apr 28, 2018
  3. DonJayamanne commented on May 2, 2018

    @DonJayamanne
    Author

    Added needs decision, as Dan Taylor (@qubitron) is working on the display format.
    I'm currently working on laying the foundation work to make the above possible (i.e. ensure we have all necessary bits of information to build the display value).

  4. DonJayamanne commented on May 4, 2018

    @DonJayamanne
    Author

    Agreed display is as follows:
    Sort order = Version number

    Anaconda Python 2.7.14 32-bit (base)
    Anaconda Python 2.7.14 32-bit (env-01)
    Anaconda Python 3.5.1 64-bit (env-02)
    Python 2.7.14 32-bit (v01 pipenv)
    Python 3.5.1 32-bit (v02 pipenv)
    Python 3.5.1 32-bit (v03 pipenv)
    Python 3.5.1 32-bit (v03 pyenv)
    Python 3.6.1 32-bit (v03 venv)
    Python 3.5.1 32-bit (myenv2 virtualenv)
    
  5. brettcannon commented on May 7, 2018

    @brettcannon
    Member

    What are the parts of (v03 venv)? Is that directory name and type? Should we separate those out more clearly as that will get confusing when the directory has a space, e.g. (some bunk venv)?

    And do we want x86/x64 instead of 32-bit/64-bit for any reason other than it's shorter? 😉

  6. DonJayamanne commented on May 7, 2018

    @DonJayamanne
    Author

    (v03 venv)

    v03 - environment name
    venv - tool used to create environment (or environment type).

    confusing when the directory has a space, e.g. (some bunk venv)?

    Agreed. How about using double quotes when necessary?

    And do we want x86/x64

    Good idea. I went with the later as that's what is returned by python (when using --version).

  7. brettcannon commented on May 7, 2018

    @brettcannon
    Member

    Maybe ("some bunk" / venv)? ("some bunk": venv)?

  8. 24 remaining items

  9. ericsnowcurrently commented on Sep 19, 2018

    @ericsnowcurrently

    Things look good now. "System" interpreters are shown correctly and pyenv showed up right.

  10. d3r3kk commented on Sep 19, 2018

    @d3r3kk

    (Tested as well, looks great)

  11. qubitron commented on Sep 19, 2018

    @qubitron

    Looks good with the following changes:

    • virtualEnv -> virtualenv
    • venv space -> 'venv space'
  12. locked as resolved and limited conversation to collaborators on Oct 23, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

debtCode quality issuesfeature-requestRequest for new features or functionalityimportantIssue identified as high-priority

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions