Ecosystem fit#
Conda Code connects Visual Studio Code to conda itself and to a small set of related tools that affect environment discovery, package records, or task execution.
conda-workspaces#
conda-workspaces defines project manifests, declared environments, features, tasks, and workspace commands. Conda Code provides VS Code integration for installed workspace environments and declared tasks.
It uses conda workspace for environment discovery and changes, and
conda task for tasks. Regular conda support does not require a workspace
manifest.
Conda Code publishes tasks from the workspace manifest selected for a
registered Python project. It uses conda task list for discovery and
conda task run for execution. conda-workspaces remains responsible for the
task graph, platform behavior, variables, and caching. Conda Code passes the
selected Conda Code workspace environment when it belongs to the same
manifest. It does not parse or edit task definitions.
conda-pypi#
conda-pypi gives installed PyPI packages conda records. Conda Code lists those records like other conda packages while omitting raw pip-only distributions.
For workspace [pypi-dependencies], conda-workspaces and conda-pypi solve and
record those dependencies. Package changes started in Conda Code apply to the
workspace’s conda dependencies.
conda-lockfiles#
conda-lockfiles registers
additional exact environment formats with conda. When it is installed, Conda
Code can pass project-root conda-lock.yml and conda-lock.yaml files to
conda create.
Conda-lockfiles also supports pixi.lock. Conda Code does not offer that file
as a standalone environment input. Pixi projects stay with Pixi Code when it is
installed, or with conda-workspaces otherwise.
Conda Code does not parse or synchronize those files. It delegates the format to conda and manages the result as a regular named environment.
conda-global#
conda-global creates isolated tool environments and exposes their commands through PATH trampolines. Those prefixes are implementation details of globally installed tools, not project environment choices.
Conda Code skips the active tool root:
$CONDA_GLOBAL_HOME/envswhen configured~/.conda/global/envsfor the current layout~/.cg/envsfor an existing legacy installation
Pixi Code#
Pixi Code is the Python Environments provider for Pixi projects. It is closer to Conda Code than a Python-only environment manager because Pixi also manages conda packages and project environments.
The extensions can be installed together. When Pixi Code is present, Conda
Code leaves pixi.toml, [tool.pixi], and .pixi/envs to Pixi Code while
continuing to handle regular conda environments and conda.toml projects.
That rule also applies to task discovery. When Pixi Code is installed, Conda
Code does not publish tasks from pixi.toml or a pyproject.toml project with
a [tool.pixi] table.
Python Environments#
Python Environments supplies the common VS Code view and extension API. Conda Code supplies conda-specific behavior through that API. The built-in conda manager remains separate because the current API supports registration, not replacement.