[PR #494] [MERGED] Validation and shared utilities #568

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

📋 Pull Request Information

Original PR: https://github.com/rudrankriyam/App-Store-Connect-CLI/pull/494
Author: @cursor[bot]
Created: 2/11/2026
Status: Merged
Merged: 2/11/2026
Merged by: @rudrankriyam

Base: cursor/asc-pre-submission-validation-d668Head: cursor/validation-and-shared-utilities-8557


📝 Commits (1)

  • 51ec3f8 Fix metadata rune counts and share app info helpers

📊 Changes

6 files changed (+110 additions, -138 deletions)

View changed files

📝 internal/cli/migrate/migrate.go (+2 -65)
📝 internal/cli/migrate/migrate_test.go (+6 -5)
internal/cli/shared/app_info_helpers.go (+71 -0)
📝 internal/cli/validate/validate.go (+1 -61)
📝 internal/validation/metadata.go (+10 -7)
📝 internal/validation/metadata_test.go (+20 -0)

📄 Description

Summary

  • Fixed metadata length validation to use utf8.RuneCountInString() instead of len() to correctly count Unicode characters, preventing false positives for non-ASCII locales.
  • Refactored duplicated selectBestAppInfoID, isNonLiveAppInfoState, and appInfoAttrString functions into a new internal/cli/shared package to eliminate code duplication and improve maintainability.

Validation

  • make format
  • make lint
  • make test

Wall of Apps (only if this PR adds/updates a Wall app)

  • I edited docs/wall-of-apps.json (not the generated Wall block in README.md directly)
  • I ran make update-wall-of-apps
  • I committed all generated files:
    • docs/wall-of-apps.json
    • README.md

Entry template:

{
  "app": "Your App Name",
  "link": "https://apps.apple.com/app/id1234567890",
  "creator": "your-github-handle",
  "platform": ["iOS"]
}

Common Apple labels: iOS, macOS, watchOS, tvOS, visionOS.



🔄 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/494 **Author:** [@cursor[bot]](https://github.com/apps/cursor) **Created:** 2/11/2026 **Status:** ✅ Merged **Merged:** 2/11/2026 **Merged by:** [@rudrankriyam](https://github.com/rudrankriyam) **Base:** `cursor/asc-pre-submission-validation-d668` ← **Head:** `cursor/validation-and-shared-utilities-8557` --- ### 📝 Commits (1) - [`51ec3f8`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/51ec3f8064ee502be1667be025dc9c051d505813) Fix metadata rune counts and share app info helpers ### 📊 Changes **6 files changed** (+110 additions, -138 deletions) <details> <summary>View changed files</summary> 📝 `internal/cli/migrate/migrate.go` (+2 -65) 📝 `internal/cli/migrate/migrate_test.go` (+6 -5) ➕ `internal/cli/shared/app_info_helpers.go` (+71 -0) 📝 `internal/cli/validate/validate.go` (+1 -61) 📝 `internal/validation/metadata.go` (+10 -7) 📝 `internal/validation/metadata_test.go` (+20 -0) </details> ### 📄 Description ## Summary - Fixed metadata length validation to use `utf8.RuneCountInString()` instead of `len()` to correctly count Unicode characters, preventing false positives for non-ASCII locales. - Refactored duplicated `selectBestAppInfoID`, `isNonLiveAppInfoState`, and `appInfoAttrString` functions into a new `internal/cli/shared` package to eliminate code duplication and improve maintainability. ## Validation - [x] `make format` - [x] `make lint` - [x] `make test` ## Wall of Apps (only if this PR adds/updates a Wall app) - [ ] I edited `docs/wall-of-apps.json` (not the generated Wall block in `README.md` directly) - [ ] I ran `make update-wall-of-apps` - [ ] I committed all generated files: - `docs/wall-of-apps.json` - `README.md` Entry template: ```json { "app": "Your App Name", "link": "https://apps.apple.com/app/id1234567890", "creator": "your-github-handle", "platform": ["iOS"] } ``` Common Apple labels: `iOS`, `macOS`, `watchOS`, `tvOS`, `visionOS`. --- --- <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:33 +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#568
No description provided.