feat: support all installation methods in upgrade command#97
Merged
Conversation
Deploying archgate-cli with
|
| Latest commit: |
b48d53b
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://c2164d21.archgate-cli.pages.dev |
| Branch Preview URL: | https://claude-funny-mendeleev.archgate-cli.pages.dev |
4299f0e to
4943bd5
Compare
… upgrade support - Switch upgrade command and background update-check from npm registry to GitHub Releases API so all install methods get accurate version info - Add proto toolchain detection: when archgate is installed via proto, `archgate upgrade` runs `proto install archgate latest --pin` - Add local dev dependency detection: when running from node_modules, detect the project's package manager via lockfile and run the appropriate update command (e.g. `bun add -d archgate@latest`) - DRY up the upgrade flows by extracting shared version check into the command action and reusing runExternalUpgrade for all external paths - Reuse fetchLatestGitHubVersion from binary-upgrade helper in update-check to eliminate duplicated fetch logic
4943bd5 to
ad9c70f
Compare
Add CI smoke tests (Windows + Linux) for binary, proto, and node_modules install paths. Add unit tests for install method detection helpers.
Merged
rhuanbarreto
added a commit
that referenced
this pull request
Mar 20, 2026
* feat: use GitHub Releases for all version checks, add proto and local upgrade support - Switch upgrade command and background update-check from npm registry to GitHub Releases API so all install methods get accurate version info - Add proto toolchain detection: when archgate is installed via proto, `archgate upgrade` runs `proto install archgate latest --pin` - Add local dev dependency detection: when running from node_modules, detect the project's package manager via lockfile and run the appropriate update command (e.g. `bun add -d archgate@latest`) - DRY up the upgrade flows by extracting shared version check into the command action and reusing runExternalUpgrade for all external paths - Reuse fetchLatestGitHubVersion from binary-upgrade helper in update-check to eliminate duplicated fetch logic * test: add smoke tests for all upgrade install method detection paths Add CI smoke tests (Windows + Linux) for binary, proto, and node_modules install paths. Add unit tests for install method detection helpers.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
~/.archgate/bin/orARCHGATE_INSTALL_DIR) and upgrades them by downloading the correct platform binary from GitHub Releasesupgradecommand and background update-check) from npm registry to GitHub Releases API, so every installation method gets accurate version inforesolveCommandtest that timed out when WSL was slowsrc/helpers/upgrade.tsto DRY upupdate-check.tsandupgrade.tsTest plan
archgate upgradeworks for standalone binary installs on macOS/Linux/Windowsarchgate upgradestill works for npm/bun/pnpm/yarn global installsresolveCommandtest no longer times out on Windows