resolve

Resolve is a Python-based least-cost capacity expansion model that identifies optimal electricity supply portfolios through capacity expansion and production simulation modeling.
https://github.com/e3-/resolve

Category: Energy Systems
Sub Category: Energy System Modeling Frameworks

Keywords from Contributors

geocode virtualization

Last synced: about 5 hours ago
JSON representation

Repository metadata

Resolve: Proactive capacity expansion model

README-setup-resolve-env-win11.md

Conda Environment Setup for Windows Path Length Issues

This directory contains scripts to work around Windows path length limitations when creating conda environments.
The scripts are provided as a fallback tool in case of difficulty creating conda environments.

Normally RESOLVE Analysts should not need to use this script - reach out to the E3 Tech Team for assistance.

Problem

Windows has a maximum path length of 260 characters by default (LongPathsEnabled=0). Building the RESOLVE conda environment with conda env create -f environment.yml fails because:

  • Long user profile paths (e.g., C:\Users\myname\Documents\GitHub\resolve-e3)
  • Deep conda package paths during installation
  • Python pip editable install creating deep wheel build directories

Alternative Solutions

  1. Software designers remove any optional packages from RESOLVE that are impacting the build depth
  2. Modify the compute environment from LongPathsEnabled=0 to LongPathsEnabled=1 (Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem:LongPathsEnabled)
  3. Use these provided scripts that employ drive letter mapping (subst) to create shorter paths that may (or may not) bypass Windows path length limitations.

Prerequisites (for subst strategy)

  • Conda/Miniconda already installed and in PATH
  • Administrator privileges may be needed (recommended for drive mapping)

Usage

Creating the Environment

  1. Double-click setup-resolve-env-win11.bat
    Or Right-click setup-resolve-env-win11.bat and select "Run as administrator"
    Or from cmd or PowerShell:

    setup-resolve-env-win11.bat
    
  2. The script will:

    • Create C:\tmp for short temporary paths
    • Map M: to your conda installation directory
    • Map R: to this project directory
    • Create the conda environment with short paths
    • Prompt you whether to keep the drive mappings
  3. Follow the prompts to confirm environment creation

Activating the Environment

After creation, activate normally:

conda activate resolve

Removing the Environment

Remove normally:

conda env remove -n resolve

Removing Drive Mappings

If you kept the drive mappings and want to remove them later:

subst M: /d
subst R: /d

To view current mappings:

subst

What the Script Does

setup-resolve-env-win11.bat

  • Detects conda installation path
  • Creates short temp directory (C:\tmp)
  • Maps drives to short paths:
    • M: → Conda installation directory
    • R: → Project directory
  • Sets environment variables for short temp paths
  • Runs conda env create -f environment.yml
  • Provides option to clean up drive mappings

Drive Mappings Persistence

Drive mappings created with subst persist until:

  • System restart
  • Manual removal with subst X: /d

You can keep them for convenience when working with this project.

Troubleshooting

"Not running as administrator" warning

  • Right-click the script and select "Run as administrator"
  • Or open cmd as administrator and run the script

Drive letter already in use

  • The script will detect this and ask if you want to remap
  • Choose 'n' to keep existing mapping if it's correct
  • Choose 'y' to remap to the new path

Environment creation still fails

If you still encounter path issues:

  1. Move your conda installation to C:\conda (shorter path)
  2. Shorten the environment name in environment.yml
  3. Consider using Docker instead (see docker/ directory)

"conda: command not found"

  • Ensure conda is installed and in your PATH
  • Restart your terminal after conda installation
  • Try: C:\Users\<username>\miniconda3\Scripts\activate.bat

Notes

  • Drive mappings are session-persistent but survive across terminal windows
  • The C:\tmp directory will remain after script execution (safe to delete)
  • You can customize drive letters by editing the scripts if M: or R: conflict with existing drives

Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 3 days ago

Total Commits: 101
Total Committers: 7
Avg Commits per committer: 14.429
Development Distribution Score (DDS): 0.267

Commits in past year: 16
Committers in past year: 3
Avg Commits per committer in past year: 5.333
Development Distribution Score (DDS) in past year: 0.5

Name Email Commits
Roderick Go g****o@g****m 74
matt-wyatt-e3 m****t@e****m 9
Brendan Mahoney 1****5 8
github-actions[bot] g****] 6
Sam Kramer s****r@e****m 2
anginehz 8****z 1
Ritvik 8****8 1

Committer domains:


Issue and Pull Request metadata

Last synced: 5 days ago

Total issues: 9
Total pull requests: 51
Average time to close issues: about 2 months
Average time to close pull requests: about 2 months
Total issue authors: 2
Total pull request authors: 7
Average comments per issue: 0.11
Average comments per pull request: 0.41
Merged pull request: 21
Bot issues: 0
Bot pull requests: 13

Past year issues: 0
Past year pull requests: 36
Past year average time to close issues: N/A
Past year average time to close pull requests: 8 days
Past year issue authors: 0
Past year pull request authors: 4
Past year average comments per issue: 0
Past year average comments per pull request: 0.42
Past year merged pull request: 18
Past year bot issues: 0
Past year bot pull requests: 4

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/e3-/resolve

Top Issue Authors

  • goroderickgo (8)
  • don-jacob (1)

Top Pull Request Authors

  • matt-wyatt-e3 (17)
  • bmahoney5 (14)
  • dependabot[bot] (11)
  • goroderickgo (4)
  • Ritvikj8 (2)
  • renovate[bot] (2)
  • anginehz (1)

Top Issue Labels

  • documentation (6)
  • bug (1)

Top Pull Request Labels

  • dependencies (11)
  • python (4)

Package metadata

proxy.golang.org: github.com/e3-/resolve

  • Homepage:
  • Documentation: https://pkg.go.dev/github.com/e3-/resolve#section-documentation
  • Licenses: other
  • Latest release: v4.4.3+incompatible (published about 2 months ago)
  • Last Synced: 2026-07-26T14:00:44.302Z (3 days ago)
  • Versions: 7
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent packages count: 5.328%
    • Average: 5.507%
    • Dependent repos count: 5.686%

Dependencies

.github/workflows/bump-version.yml actions
  • actions/checkout v3 composite
  • commitizen-tools/commitizen-action master composite
  • softprops/action-gh-release v1 composite
.github/workflows/pre-commit.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • pre-commit/action v3.0.0 composite
.github/workflows/semantic-pull-request.yml actions
  • amannn/action-semantic-pull-request v5 composite
.github/workflows/testing.yml actions
  • actions/checkout v3 composite
pyproject.toml pypi
  • highspy ==1.5.3
  • ipywidgets ==8.0.4
  • joblib ==1.2.0
  • jupyterlab ==3.5.3
  • jupytext ==1.15.1
  • kmedoids ==0.4.3
  • line-profiler ==4.0.3
  • loguru ==0.6.0
  • matplotlib ==3.6.3
  • nrel-pysam ==4.0.0
  • numpy ==1.24.1
  • pandas ==1.5.3
  • pint ==0.20.1
  • plotly ==5.13.0
  • pydantic ==1.10.8
  • pyomo ==6.4.4
  • rich ==13.3.1
  • s3fs ==2023.9.0
  • scikit-learn ==1.2.1
  • scipy ==1.10.0
  • seaborn ==0.12.2
  • tqdm ==4.64.1
  • typer ==0.7.0
  • ujson ==5.8.0
  • universal-pathlib ==0.1.3
environment.yml pypi

Score: -Infinity