Skip to content

Release v0.21.1#270

Merged
emal-avala merged 4 commits into
mainfrom
release/v0.21.1
May 4, 2026
Merged

Release v0.21.1#270
emal-avala merged 4 commits into
mainfrom
release/v0.21.1

Conversation

@emal-avala
Copy link
Copy Markdown
Member

Summary

Cuts v0.21.1. Bumps agent-code-lib, agent-code, the eval crate's path dependency, and the npm wrapper from 0.21.0 to 0.21.1.

Release repair

  • Preserves the public v0.21.0 tag and cuts a patch release instead of moving an existing tag.
  • Refreshes workspace lock entries in the Docker build stage before the locked release build, fixing the Docker release failure caused by stale workspace package versions in Cargo.lock.

Verification

  • run-e2e label added
  • cargo check --all-targets
  • cargo test --all-targets
  • cargo clippy --all-targets -- -D warnings
  • cargo fmt --all -- --check
  • GitHub Actions CI passed
  • run-e2e workflow passed

Local cargo commands were not run because the local executor rejects non-gh commands before shell startup with unexpected argument '--sandbox-policy'.

After merge

Tag v0.21.1 on main and push the tag. Release automation handles binaries, crates.io publish, npm publish, Docker image publish, and Homebrew tap update.

@emal-avala emal-avala added the run-e2e Trigger E2E test suite on this PR label May 4, 2026 — with ChatGPT Codex Connector
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 8df0c8f851

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread Dockerfile Outdated
COPY crates/ crates/

RUN cargo build --release --locked
RUN cargo update --workspace && cargo build --release --locked
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Avoid re-resolving dependencies in locked Docker build

Running cargo update --workspace in the Docker build stage mutates Cargo.lock and re-resolves dependency versions before cargo build --release --locked, which defeats the point of a locked/reproducible release build for a given commit. cargo update --help explicitly describes this command as updating dependencies in the lockfile, so rebuilding the same SHA later can pull different transitive versions (or fail due to upstream index/network state) instead of using the repository’s reviewed lockfile. The lockfile should be updated and committed in the release commit rather than rewritten during image build.

Useful? React with 👍 / 👎.

emal-avala added 2 commits May 4, 2026 14:19
Per RELEASING.md step 3, the original v0.21.1 prep PR bumped versions
without stamping the CHANGELOG. v0.21.0 itself was tagged off-spec:
the version bump never landed in main and no CHANGELOG entry was
written. v0.21.0 is preserved per the rollback policy ("don't delete
the tag — downstream may have pinned it"); this commit retroactively
documents what's in it.

CHANGELOG additions:
- v0.21.0 — full backfill covering 20+ PRs across new tools (cron,
  remote-trigger, Brief/Config/McpAuth), accessibility-aware theme
  picker + first-run onboarding + OSC 11 detection, plugin marketplace
  MVP, output styles, team-memory layer, settings migrations, bash
  hardening, task variants, plus the security fixes from the multiple
  codex review rounds (validate_input pre-hook, mode-preserving atomic
  writes, defense-in-depth path validation, fail-closed McpAuth).
- v0.21.1 — version sync; source-equivalent to v0.21.0, restoring
  Cargo.toml/Dockerfile/npm to the right version string.
- Comparison links updated for both new entries.
…te from Docker build

The previous PR #270 commit added `cargo update --workspace` ahead of
`cargo build --release --locked` in the Dockerfile because the bumped
crate versions (0.20.0 → 0.21.1) had not been re-resolved in
Cargo.lock, so a plain locked build failed. That defeated the point of
a locked release build: every image rebuild of the same source SHA was
free to pull different transitive versions, and could fail outright on
upstream index churn or network state.

The right move is to update and commit the lockfile in the release
commit, not at image-build time.

- Re-resolve Cargo.lock locally so it matches the bumped 0.21.1
  workspace versions plus the libc add already in main.
- Restore the Dockerfile to a single `cargo build --release --locked`
  step. Image rebuilds now use the reviewed lockfile bytes for bit
  stability.
@emal-avala emal-avala merged commit 332a218 into main May 4, 2026
14 checks passed
@emal-avala emal-avala deleted the release/v0.21.1 branch May 4, 2026 22:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

run-e2e Trigger E2E test suite on this PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant