Skip to content

Move devcontainer onto the shared python base - #535

Merged
ivanklee86 merged 2 commits into
mainfrom
devcontainer-standard
Oct 10, 2026
Merged

ivanklee86 merged 2 commits into
mainfrom
devcontainer-standard

Conversation

@ivanklee86

Copy link
Copy Markdown
Owner

Summary

  • Devcontainer: .devcontainer/devcontainer.json is now generated by gantry from the shared python base, the prek feature and rubrical.libsonnet. The local Dockerfile is removed because python:3.14 already provides uv, Python 3.14 and task. Regenerate with task devcontainer:gen.
  • pre-commit → prek:
    • pre-commit is removed from the dev group; uv.lock only drops packages.
    • post_install.sh no longer installs pre-commit hooks.
    • CI gets a pre-commit job that runs j178/prek-action (pinned SHA, prek 0.5.3).
  • Renovate: adds a renovate-config-validator hook, and replaces the dead poetry rule with a devcontainer group that automerges.

The uv cleanup (redundant setup-python pip caching, the poetry install in release-docs, isort/pip in dev deps) is deliberately left for a follow-up.

Depends on

ivanklee86/devcontainers#56. This PR's devcontainer.json was generated against that branch, so it only matches what main generates once #56 merges. It also points at python:3.14, an image tag that doesn't exist until #56 publishes it.

Testing

Tested in a locally built python:3.14 image:

  • post_install.sh and prek install && prek run both succeed.
  • prek run --all-files: all 7 hooks pass.
  • task: ruff and ty pass; 35 tests pass. The 4 GitHub reporter tests fail locally without RUBRICAL_TEST_GITHUB_ACCESS_TOKEN, the same as on main.
  • task docs:test passes.
  • renovate-config-validator passes.

Before / after merging

  • After Python requirements.txt support #56 merges and the image is published: run task devcontainer:gen and confirm there's no diff.
  • Rebuild the container in VS Code. This checks docker-in-docker :4, the mounts, and creates devcontainer-lock.json to commit.
  • Turn off the pre-commit.ci app for this repo.

🤖 Generated with Claude Code

https://claude.ai/code/session_01QZNfQpK1WefqNQLRrHHXfe

ivanklee86 and others added 2 commits September 26, 2026 06:58
- Generate .devcontainer/devcontainer.json with gantry from the shared
  python base + prek feature + rubrical.libsonnet; drop the local Dockerfile.
- Replace pre-commit with prek: remove it from the dev group, stop
  installing it in post_install.sh, and run hooks in CI via prek-action.
- Add renovate-config-validator hook, a devcontainer Renovate group
  (replacing the dead poetry rule), and `task devcontainer:gen`.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QZNfQpK1WefqNQLRrHHXfe
@coderabbitai

coderabbitai Bot commented Oct 10, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: a71e79f3-4b8e-46b3-975d-a038c2b9cb9e

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@ivanklee86
ivanklee86 merged commit 571dfc5 into main Oct 10, 2026
8 of 10 checks passed
@ivanklee86
ivanklee86 deleted the devcontainer-standard branch October 10, 2026 00:33
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.

1 participant