Repository navigation
fix(cli): bundle @e2b/dockerfile-utils from source to avoid release build race - #2002
Conversation
…uild race Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
I'll fix CI failures and address comments from users with write access. I'll skip comments containing "(aside)".
|
🦋 Changeset detectedLatest commit: 3cedd11 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
TASTE.md review: compliant. 0 violations. This PR only changes CLI build resolution (the tsconfig.json path and tsdown alias for @e2b/dockerfile-utils) plus a changeset. It doesn't touch the public SDK surface, so none of T-1 to T-74 apply; T-54 (single entry point) and T-56 (version read from package.json) stay intact.
Package ArtifactsBuilt from 5acdbc7. Download artifacts from this workflow run. JS SDK ( npm install ./e2b-dockerfile-utils-0.1.2-devin-1792506743-cli-bundle-dockerfile-utils-src.0.tgz ./e2b-2.57.1-devin-1792506743-cli-bundle-dockerfile-utils-src.0.tgzCLI ( npm install ./e2b-cli-2.22.2-devin-1792506743-cli-bundle-dockerfile-utils-src.0.tgzCode Interpreter JS SDK ( npm install ./e2b-code-interpreter-2.9.1-devin-1792506743-cli-bundle-dockerfile-utils-src.0.tgzDesktop JS SDK ( npm install ./e2b-desktop-2.5.1-devin-1792506743-cli-bundle-dockerfile-utils-src.0.tgzPython SDK ( pip install ./e2b_dockerfile_utils-0.1.1+devin.1792506743.cli.bundle.dockerfile.utils.src-py3-none-any.whl ./e2b-2.57.0+devin.1792506743.cli.bundle.dockerfile.utils.src-py3-none-any.whlCode Interpreter Python SDK ( pip install ./e2b_code_interpreter-2.11.1+devin.1792506743.cli.bundle.dockerfile.utils.src-py3-none-any.whlDesktop Python SDK ( pip install ./e2b_desktop-2.7.0+devin.1792506743.cli.bundle.dockerfile.utils.src-py3-none-any.whl |
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Summary
The Release run 39438173686 published
e2b@2.57.0but failed to publish@e2b/cli@2.22.1:Root cause: a race.
changeset publishruns each package'sprepublishOnlyconcurrently.e2b'sprepublishOnly→prebuildrebuilds@e2b/dockerfile-utils(tsdownclean: truewipes itsdist/), while@e2b/cli's build bundlese2bfrom source (paths: { e2b: ../js-sdk/src }) and so reads@e2b/dockerfile-utilsfrom thatdist/at the same time. The same window opens whenever@e2b/dockerfile-utilsitself is published alongside the CLI. This started with #1936, which added the dependency.Fix: the CLI resolves
@e2b/dockerfile-utilsfrom source too, the same way it already resolvese2b, so its build no longer reads another package'sdist/:packages/cli/tsconfig.json:paths["@e2b/dockerfile-utils"] = ["../dockerfile-utils-js/src"](fortsc --noEmit)packages/cli/tsdown.config.ts:alias["@e2b/dockerfile-utils"] = ../dockerfile-utils-js/src/index.ts(for bundling)Verified locally: with
packages/dockerfile-utils-js/distdeleted,pnpm --dir packages/cli buildfailed onmain(TS2307: Cannot find module '@e2b/dockerfile-utils'). On this branch it succeeds, andnode dist/index.js --versionprints2.22.1. Lint, prettier, typecheck and CLI unit tests pass.A
@e2b/clipatch changeset is included.2.22.1was never published to npm, and the release workflow refuses to run unless there is a version bump, so merging this PR lets the next Release publish the CLI.Link to Devin session: https://app.devin.ai/sessions/0574c52ea5ce4a78bcd1b2b0dd801241
Open in Devin Desktop: https://app.devin.ai/desktop/session/0574c52ea5ce4a78bcd1b2b0dd801241?variant=devin