Skip to content

Remove devcontainer support - #535

Merged
hbrodin merged 4 commits into
mainfrom
remove/devcontainer-support
Oct 4, 2026
Merged

hbrodin merged 4 commits into
mainfrom
remove/devcontainer-support

Conversation

@hbrodin

@hbrodin hbrodin commented Oct 2, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

  • Remove devcontainer discovery and translation, the coop devcontainer command and related flags, remote repository lookup, and OCI Feature installation.
  • Remove the JSONC parser and fuzz target; update CLI, lifecycle, integration tests, documentation, and release tooling.
  • Remove obsolete feature-specific metadata through the existing private-storage migration.
  • Preserve compatibility with generic state from existing environments and document the supported upgrade and recreation path.

Closes #525.

Verification

  • cargo build --workspace
  • cargo fmt -- --check
  • cargo clippy --workspace --all-targets --all-features -- -D warnings
  • cargo test --workspace (1,165 coop tests passed; 30 coop-proxy unit tests and 8 integration tests passed; one doc test ignored)
  • cargo deny --workspace check, taplo format --check, and prek run
  • cargo check -p coop --all-targets --target aarch64-apple-darwin
  • Lifecycle mutation sweep: 99 mutants, 87 caught, 12 unviable, zero missed.
  • Private-storage mutation sweep: 34 mutants, 30 caught, 4 unviable, zero missed or timed out.
  • Fresh full macOS/Lima integration run after review fixes: 479 passed, 0 failed, 13 platform/environment/destructive-gate skips.
  • Fresh full Linux/Firecracker integration run after review fixes: 488 passed, 0 failed, 9 platform/environment/destructive-gate skips.
  • CLI rejects the removed command and flags; the integration suite confirms that a discovered project file is copied as ordinary workspace data without applying its environment or hook.
  • Legacy metadata cleanup and compatibility behavior have focused regression coverage.
  • Fresh review across correctness, design, conventions, security, tests, documentation, and comments completed with no remaining actionable findings.

@hbrodin
hbrodin marked this pull request as ready for review October 2, 2026 15:57
@hbrodin
hbrodin requested a review from DarkaMaul October 3, 2026 06:32

@DarkaMaul DarkaMaul left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I had a similar branch so I mostly asked Codex to do a diff between this branch and mine.


The core removal looks sound, and the private-storage migration is a useful improvement: obsolete metadata is removed through checked directory descriptors without following symlinks. The integration coverage also verifies the important user-visible outcome—devcontainer.json remains ordinary workspace data while its environment and hook are ignored.
I found two compatibility/documentation gaps and one test-quality issue: preserve the --post-start reprovision caveat, pin deserialization of legacy template state containing oci_features, and make the removed-CLI test exhaustive and error-specific.
I reviewed correctness, design, conventions, security, tests, documentation, and changed comments. Focused CLI and migration tests passed. The full local suite encountered the same six environment-dependent failures in both compared implementations; I did not independently rerun the reported Lima and Firecracker integration suites.

Comment thread docs/testing.md
Comment thread src/lib.rs
Comment thread src/setup.rs
Comment thread docs/commands.md
@hbrodin
hbrodin merged commit daac1e2 into main Oct 4, 2026
19 checks passed
@hbrodin
hbrodin deleted the remove/devcontainer-support branch October 4, 2026 16:04
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.

Drop support for devcontainers

2 participants