Skip to content

feat(env): use miniconda and uv to install environments#50

Merged
nrferguson merged 1 commit into
developfrom
nrferguson/issue47
Apr 29, 2026
Merged

feat(env): use miniconda and uv to install environments#50
nrferguson merged 1 commit into
developfrom
nrferguson/issue47

Conversation

@nrferguson

@nrferguson nrferguson commented Apr 29, 2026

Copy link
Copy Markdown
Collaborator

This standardizes the installation process, using miniconda and uv to create the following environments:

  • a base environment that includes Emme packages
  • a tbm-r environment for R scripts
  • a cmap-modedest environment for the cmap_modedest package

The base environment is a uv environment installed to /.venv, configured in /pyproject.toml, and extended with /Scripts/manage_envs/emme.pth. The tbm-r environment is a conda environment installed to LOCALAPPDATA/miniconda3/envs/tbm-r and configured in /Scripts/manage_envs/tbm-r/tbm-r.yml. The cmap-modedest environment is a hybrid environment created by installing uv into a conda environment, to support dependencies only available on conda-forge while getting some of the performance benefits from uv. It is installed to LOCALAPPDATA/miniconda3/envs/tbm-r
and configured in /Scripts/manage_envs/cmap-modedest/cmap-modedest.yml for conda-forge dependencies and /Scripts/manage_envs/cmap-modedest/requirements.txt for PyPI dependencies.

The lock file feature is currently only implemented for the base environment. This can be revisited once the larch dependency of the cmap_modedest package is updated to a version available on PyPI.

Previously, the CMAP-TRIP2 environment functioned as the base environment and the emme-plus environment was used when the EMME API is needed. Now, the base environment includes the EMME API. This also means that the base environment has been updated from python 3.9 to python 3.11 and from pandas 1.2 to pandas 2.0.

Refactor code structure for improved readability and maintainability
@nrferguson nrferguson linked an issue Apr 29, 2026 that may be closed by this pull request
@nrferguson nrferguson merged commit 3d6a351 into develop Apr 29, 2026
@nrferguson nrferguson deleted the nrferguson/issue47 branch April 29, 2026 18:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Replace conda with uv

1 participant