crates/turborepo-updater/README.md
Notifies users when a new version of turbo is available. Checks the Turborepo API for updates and displays a styled terminal message with upgrade instructions.
display_update_check()
│
▼
┌───────────────────┐
│ should_skip_ │──▶ Skip if: config disabled, NO_UPDATE_NOTIFIER,
│ notification() │ CI env var, or non-TTY
└───────────────────┘
│
▼
┌───────────────────┐
│ check_for_updates │──▶ Uses update-informer with custom NPMRegistry
└───────────────────┘ Fetches from turborepo.dev/api/binaries/version
│
▼
┌───────────────────┐
│ ui::message() │──▶ Renders responsive box based on terminal width
└───────────────────┘
Key components:
NPMRegistry - Custom update-informer registry implementation that queries Turborepo's version APIVersionTag - Differentiates between latest and canary release channelsui module - Handles responsive terminal rendering with box drawingCI env var is setNO_UPDATE_NOTIFIER env varupdate-informer caches results for 24 hours (configurable via interval)