fix(cli): replace update-notifier with simple-update-notifier#1210
fix(cli): replace update-notifier with simple-update-notifier#1210mishushakov merged 5 commits intomainfrom
Conversation
… bundling update-notifier v6 is ESM-only and spawns a child process (check.js) using import.meta.url paths. When tsup bundles the CLI into a single CJS file, these file paths become invalid and the update check silently fails. simple-update-notifier is CJS-compatible, checks inline without spawning, and has identical API surface. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
|
Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits. |
🦋 Changeset detectedLatest commit: f717a9e The changes in this PR will be included in the next version bump. 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 💥 An error occurred when fetching the changed packages and changesets in this PR |
Package ArtifactsBuilt from 72c3b8f. Download artifacts from this workflow run. JS SDK ( npm install ./e2b-2.14.2-mishushakov-cli-update-banner.0.tgzCLI ( npm install ./e2b-cli-2.8.2-mishushakov-cli-update-banner.0.tgzPython SDK ( pip install ./e2b-2.15.3+mishushakov.cli.update.banner-py3-none-any.whl |
simpleUpdateNotifier is async — without awaiting it, the process can exit before the network check and notification complete. Use parseAsync and await the update check promise after command execution. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
This is how it looks: |
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add .catch() to the updateCheck promise to prevent unhandled rejections from crashing the process, and add .catch() to main() to ensure clean exit on failure. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

Summary
Replaced
update-notifierv6 withsimple-update-notifierv2 to fix the bundled CLI.update-notifierv6 is ESM-only and spawns a child process (check.js) usingimport.meta.url. When tsup bundles the CLI into a single CJS file, these file paths become invalid and the update check silently fails.simple-update-notifieris CJS-compatible, checks inline without spawning, and has an identical API surface.Test plan
🤖 Generated with Claude Code
Note
Low Risk
Low risk dependency swap and small CLI entrypoint flow change; main potential impact is CLI startup behavior if the new notifier or async sequencing behaves differently across environments.
Overview
Fixes the CLI update banner by replacing
update-notifierwithsimple-update-notifierand removing the old notifier/type dependencies.Updates the CLI entrypoint to run the update check as an awaited async task (with failures swallowed to avoid unhandled rejections) and switches command parsing to
parseAsync()before awaiting the notifier.Written by Cursor Bugbot for commit f717a9e. This will update automatically on new commits. Configure here.