[PR #430] [MERGED] Rename release assets to follow GitHub CLI naming convention #521

Closed
opened 2026-02-26 22:31:21 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/rudrankriyam/App-Store-Connect-CLI/pull/430
Author: @rudrankriyam
Created: 2/6/2026
Status: Merged
Merged: 2/6/2026
Merged by: @rudrankriyam

Base: mainHead: rename-release-assets


📝 Commits (2)

  • 340a7dc Rename release assets to follow GitHub CLI naming convention
  • 8fa1f7a Add unit tests for asset naming, OS mapping, and checksum parsing

📊 Changes

8 files changed (+278 additions, -34 deletions)

View changed files

📝 .github/workflows/main-branch.yml (+7 -7)
📝 .github/workflows/pr-checks.yml (+5 -5)
📝 .github/workflows/release.yml (+14 -10)
📝 internal/update/download.go (+18 -6)
internal/update/download_test.go (+227 -0)
📝 internal/update/integration_test.go (+1 -1)
📝 internal/update/update.go (+1 -1)
📝 internal/update/update_test.go (+5 -4)

📄 Description

Summary

  • Rename release binaries from asc-darwin-arm64 style to asc_VERSION_macOS_arm64 style, following the GitHub CLI naming convention
  • Map darwinmacOS so downloads are immediately recognizable by platform (biggest readability win)
  • Embed the version in every filename and the checksums file for clarity
  • Update the self-updater (internal/update), Homebrew tap formula, and all CI workflows to match

Before (0.24.2)

Asset Name
Mac (Intel) asc-darwin-amd64
Mac (Apple Silicon) asc-darwin-arm64
Linux (x86_64) asc-linux-amd64
Linux (ARM) asc-linux-arm64
Windows asc-windows-amd64.exe
Checksums checksums.txt

After (next release)

Asset Name
Mac (Intel) asc_0.25.0_macOS_amd64
Mac (Apple Silicon) asc_0.25.0_macOS_arm64
Linux (x86_64) asc_0.25.0_linux_amd64
Linux (ARM) asc_0.25.0_linux_arm64
Windows asc_0.25.0_windows_amd64.exe
Checksums asc_0.25.0_checksums.txt

Files changed

File What changed
internal/update/download.go assetName() now takes a version param, maps darwinmacOS, uses underscores. New displayOS() helper. Checksums filename is versioned.
internal/update/update.go Passes resolved latestVersion to downloadAndReplace()
internal/update/update_test.go Mock server paths updated to new naming
internal/update/integration_test.go assetName() call updated with version param
.github/workflows/release.yml Build outputs, code signing glob, checksums, and Homebrew formula use new naming
.github/workflows/pr-checks.yml CI build outputs use new naming (with dev version)
.github/workflows/main-branch.yml CI build outputs use new naming (with dev version)

Test plan

  • All existing unit tests pass (go test -short ./...)
  • Full project builds cleanly (go build ./...)
  • Verify the next tagged release produces correctly named assets
  • Verify self-update downloads the new asset names from a real release

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/rudrankriyam/App-Store-Connect-CLI/pull/430 **Author:** [@rudrankriyam](https://github.com/rudrankriyam) **Created:** 2/6/2026 **Status:** ✅ Merged **Merged:** 2/6/2026 **Merged by:** [@rudrankriyam](https://github.com/rudrankriyam) **Base:** `main` ← **Head:** `rename-release-assets` --- ### 📝 Commits (2) - [`340a7dc`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/340a7dca404089a323cd64ef190b5738d48f11d4) Rename release assets to follow GitHub CLI naming convention - [`8fa1f7a`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/8fa1f7a7d99f4a1aadb743888b616071f26dce95) Add unit tests for asset naming, OS mapping, and checksum parsing ### 📊 Changes **8 files changed** (+278 additions, -34 deletions) <details> <summary>View changed files</summary> 📝 `.github/workflows/main-branch.yml` (+7 -7) 📝 `.github/workflows/pr-checks.yml` (+5 -5) 📝 `.github/workflows/release.yml` (+14 -10) 📝 `internal/update/download.go` (+18 -6) ➕ `internal/update/download_test.go` (+227 -0) 📝 `internal/update/integration_test.go` (+1 -1) 📝 `internal/update/update.go` (+1 -1) 📝 `internal/update/update_test.go` (+5 -4) </details> ### 📄 Description ## Summary - Rename release binaries from `asc-darwin-arm64` style to `asc_VERSION_macOS_arm64` style, following the [GitHub CLI naming convention](https://github.com/cli/cli/releases) - Map `darwin` → `macOS` so downloads are immediately recognizable by platform (biggest readability win) - Embed the version in every filename and the checksums file for clarity - Update the self-updater (`internal/update`), Homebrew tap formula, and all CI workflows to match ### Before (0.24.2) | Asset | Name | |-------|------| | Mac (Intel) | `asc-darwin-amd64` | | Mac (Apple Silicon) | `asc-darwin-arm64` | | Linux (x86_64) | `asc-linux-amd64` | | Linux (ARM) | `asc-linux-arm64` | | Windows | `asc-windows-amd64.exe` | | Checksums | `checksums.txt` | ### After (next release) | Asset | Name | |-------|------| | Mac (Intel) | `asc_0.25.0_macOS_amd64` | | Mac (Apple Silicon) | `asc_0.25.0_macOS_arm64` | | Linux (x86_64) | `asc_0.25.0_linux_amd64` | | Linux (ARM) | `asc_0.25.0_linux_arm64` | | Windows | `asc_0.25.0_windows_amd64.exe` | | Checksums | `asc_0.25.0_checksums.txt` | ## Files changed | File | What changed | |------|-------------| | `internal/update/download.go` | `assetName()` now takes a version param, maps `darwin` → `macOS`, uses underscores. New `displayOS()` helper. Checksums filename is versioned. | | `internal/update/update.go` | Passes resolved `latestVersion` to `downloadAndReplace()` | | `internal/update/update_test.go` | Mock server paths updated to new naming | | `internal/update/integration_test.go` | `assetName()` call updated with version param | | `.github/workflows/release.yml` | Build outputs, code signing glob, checksums, and Homebrew formula use new naming | | `.github/workflows/pr-checks.yml` | CI build outputs use new naming (with `dev` version) | | `.github/workflows/main-branch.yml` | CI build outputs use new naming (with `dev` version) | ## Test plan - [x] All existing unit tests pass (`go test -short ./...`) - [x] Full project builds cleanly (`go build ./...`) - [ ] Verify the next tagged release produces correctly named assets - [ ] Verify self-update downloads the new asset names from a real release --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-26 22:31:21 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/App-Store-Connect-CLI#521
No description provided.