{ "id": "python", "version": "1.8.0", "name": "Python", "documentationURL": "https://github.com/devcontainers/features/tree/main/src/python", "description": "Installs the provided version of Python, as well as PIPX, and other common Python utilities. JupyterLab is conditionally installed with the python feature. Note: May require source code compilation.", "options": { "version": { "type": "string", "proposals": [ "latest", "os-provided", "none", "3.12", "3.11", "3.10", "3.9", "3.8", "3.7", "3.6" ], "default": "os-provided", "description": "Select a Python version to install." }, "installTools": { "type": "boolean", "default": true, "description": "Flag indicating whether or not to install the tools specified via the 'toolsToInstall' option. Default is 'true'." }, "toolsToInstall": { "type": "string", "default": "flake8,autopep8,black,yapf,mypy,pydocstyle,pycodestyle,bandit,pipenv,virtualenv,pytest,pylint", "description": "Comma-separated list of tools to install when 'installTools' is true. Defaults to a set of common Python tools like pylint." }, "optimize": { "type": "boolean", "default": false, "description": "Optimize Python for performance when compiled (slow)" }, "enableShared": { "type": "boolean", "default": false, "description": "Enable building a shared Python library" }, "installPath": { "type": "string", "default": "/usr/local/python", "description": "The path where python will be installed." }, "installJupyterlab": { "type": "boolean", "default": false, "description": "Install JupyterLab, a web-based interactive development environment for notebooks" }, "configureJupyterlabAllowOrigin": { "type": "string", "default": "", "description": "Configure JupyterLab to accept HTTP requests from the specified origin" }, "httpProxy": { "type": "string", "default": "", "description": "Connect to GPG keyservers using a proxy for fetching source code signatures by configuring this option" } }, "containerEnv": { "PYTHON_PATH": "/usr/local/python/current", "PIPX_HOME": "/usr/local/py-utils", "PIPX_BIN_DIR": "/usr/local/py-utils/bin", "PATH": "/usr/local/python/current/bin:/usr/local/py-utils/bin:/usr/local/jupyter:${PATH}" }, "customizations": { "vscode": { "extensions": [ "ms-python.python", "ms-python.vscode-pylance", "ms-python.autopep8" ], "settings": { "github.copilot.chat.codeGeneration.instructions": [ { "text": "This dev container includes `python3` and `pip3` pre-installed and available on the `PATH`, along with the Python language extensions for Python development." } ], "python.defaultInterpreterPath": "/usr/local/python/current/bin/python", "[python]": { "editor.defaultFormatter": "ms-python.autopep8" } } } }, "installsAfter": [ "ghcr.io/devcontainers/features/common-utils", "ghcr.io/devcontainers/features/oryx" ] }