Dashboard › cli › Distillation
36b1a0c0-510e-401a-aead-f6d6b49ad166["lore_tm_v1_Tum9tO4qW7egeovsgZutKw3s0PzdwgXv6S0MZ1w73F0","lore_tm_v1_Y_LBlOq_nidERN0OT6alxg6mF8TXjol2Bdnv7xmo4Z4","lore_tm_v1_I1zfitOlMVn-HkAuzWyMGsesCsEN3hLNFASRSYqKqRw","lore_tm_v1_SKJdbnBTgu0WU4JN0fUb7jvG5pxlqAZOUCQh9jtKDXo"]
packages/cli/src/lib/upgrade.ts imports and uses GITHUB_RELEASES_URL, getBinaryDownloadUrl, downloadNightlyBlob, fetchManifest, fetchNightlyManifest, and getAnonymousToken; relevant call sites include GitHub release lookup at lines 379 and 538, GHCR token/manifest retrieval at lines 452–501 and 688–694, and full binary URL construction at line 721.packages/cli/src/lib/release-notes.ts uses GITHUB_RELEASES_URL at line 564 with ?per_page=${CHANGELOG_MAX_RELEASES}.packages/cli/src/lib/delta-upgrade.ts imports GITHUB_RELEASES_URL and GHCR_REPO; it uses GitHub releases with ?per_page=12, sets the GHCR repository from the shared GHCR_REPO constant, lists tags using PATCH_TAG_PREFIX, and fetches chain manifests in parallel with Promise.all.packages/cli/src/lib/ghcr.ts defines GHCR_REPO = "getsentry/cli". getAnonymousToken(signal?) requests ${GHCR_REGISTRY}/token?scope=repository:${GHCR_REPO}:pull, while fetchManifest() requests ${GHCR_REGISTRY}/v2/${GHCR_REPO}/manifests/${tag}.packages/cli/test/lib/ghcr.test.ts covers getAnonymousToken, fetchNightlyManifest, downloadNightlyBlob, generic fetchManifest, listTags, and downloadLayerBlob, including successful requests and UpgradeError failure cases.packages/cli/package.json identifies the repository URL as git+https://github.com/getsentry/cli.git.packages/cli/src/lib/scan/binary.ts separately defines scan-oriented binary detection APIs: BINARY_EXTENSIONS, isLikelyBinary(), classifyByExtension(), and readHeadAndSniff(); these are distinct from installation utilities in packages/cli/src/lib/binary.ts.