Skip to content

Install setuptools in dev and CI container images for editable builds - #103

Merged
CoryMartin-NOAA merged 3 commits into
developfrom
copilot/fix-setuptools-in-container
Sep 22, 2026
Merged

CoryMartin-NOAA merged 3 commits into
developfrom
copilot/fix-setuptools-in-container

Conversation

Copilot AI commented Sep 22, 2026

Copy link
Copy Markdown
Contributor

Editable installs in the container images were failing in fresh Python 3.12 environments because setuptools.build_meta was not available when pip install --no-build-isolation -e . ran. This updates both container definitions so local dev and CI images bootstrap the same packaging backend required by the repository.

  • Problem

    • Fresh container environments could not perform editable installs without build isolation:
      • BackendUnavailable: Cannot import 'setuptools.build_meta'
    • The failure affected both the interactive dev container and the CI image path.
  • Container bootstrap

    • Added an explicit setuptools>=61,!=79.0.1 install to:
      • .devcontainer/Dockerfile
      • .devcontainer/Dockerfile_CI
    • Kept the dev and CI Dockerfiles aligned per the issue requirement.
  • Packaging alignment

    • Matches the existing project build backend declared in pyproject.toml.
    • Mirrors the repository’s local development bootstrap behavior, which already installs a compatible setuptools before editable install.
  • Example

    RUN python -m pip install --no-cache-dir --upgrade pip && \
        python -m pip install --no-cache-dir "setuptools>=61,!=79.0.1" "/tmp/geode[dev]" pybind11==3.0.1 awscli==1.46.1 gsutil==5.37 && \
        rm -rf /tmp/geode

Copilot AI linked an issue Sep 22, 2026 that may be closed by this pull request
Co-authored-by: CoryMartin-NOAA <6354668+CoryMartin-NOAA@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix setuptools installation in container Install setuptools in dev and CI container images for editable builds Sep 22, 2026
@codecov-commenter

codecov-commenter commented Sep 22, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 69.83%. Comparing base (7942c3b) to head (6d8369c).

Additional details and impacted files
@@           Coverage Diff            @@
##           develop     #103   +/-   ##
========================================
  Coverage    69.83%   69.83%           
========================================
  Files           22       22           
  Lines          799      799           
  Branches        98       98           
========================================
  Hits           558      558           
  Misses         197      197           
  Partials        44       44           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@CoryMartin-NOAA
CoryMartin-NOAA marked this pull request as ready for review September 22, 2026 20:29
@CoryMartin-NOAA
CoryMartin-NOAA merged commit 11418aa into develop Sep 22, 2026
8 checks passed
@CoryMartin-NOAA
CoryMartin-NOAA deleted the copilot/fix-setuptools-in-container branch September 22, 2026 20:32
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.

Fix setuptools in container

3 participants