[PR #130] [CLOSED] Add ASO enhancements: migrate, categories, versions CRUD #311

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

📋 Pull Request Information

Original PR: https://github.com/rudrankriyam/App-Store-Connect-CLI/pull/130
Author: @cameronehrlich
Created: 1/24/2026
Status: Closed

Base: mainHead: pr/aso-enhancements


📝 Commits (2)

  • 870667b Add ASO enhancements: migrate, categories, versions create/delete
  • c0a74df Add versions update command and migrate validate

📊 Changes

12 files changed (+2285 additions, -0 deletions)

View changed files

📝 README.md (+62 -0)
cmd/categories.go (+79 -0)
cmd/migrate.go (+761 -0)
cmd/migrate_output.go (+212 -0)
cmd/migrate_test.go (+406 -0)
📝 cmd/root.go (+2 -0)
📝 cmd/versions.go (+207 -0)
docs/SKILL.md (+336 -0)
internal/asc/categories.go (+65 -0)
internal/asc/categories_output.go (+35 -0)
📝 internal/asc/client_versions.go (+116 -0)
📝 internal/asc/output_core.go (+4 -0)

📄 Description

Summary

Add App Store Optimization (ASO) enhancement commands for managing app metadata:

New Commands

Fastlane Migration

  • asc migrate import - Import metadata from fastlane directory structure
  • asc migrate export - Export metadata to fastlane directory structure
  • asc migrate validate - Validate fastlane metadata without uploading (checks character limits)

Categories

  • asc categories list - List all App Store categories

Versions CRUD

  • asc versions create - Create a new App Store version
  • asc versions update - Update version attributes (copyright, release-type, earliest-release-date)
  • asc versions delete - Delete a version (PREPARE_FOR_SUBMISSION state only)

Character Limit Validation

The migrate validate command checks:

  • Description: 4000 characters
  • Keywords: 100 characters
  • What's New: 4000 characters
  • Promotional Text: 170 characters
  • Name: 30 characters
  • Subtitle: 30 characters

Fastlane Structure Support

fastlane/metadata/
├── en-US/
│   ├── name.txt
│   ├── subtitle.txt
│   ├── description.txt
│   ├── keywords.txt
│   ├── release_notes.txt
│   └── promotional_text.txt
└── de-DE/
    └── ...

Test plan

  • All existing tests pass
  • New validation tests added for character limit checking
  • Build succeeds
  • Manual testing of new commands

🤖 Generated with Claude Code


🔄 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/130 **Author:** [@cameronehrlich](https://github.com/cameronehrlich) **Created:** 1/24/2026 **Status:** ❌ Closed **Base:** `main` ← **Head:** `pr/aso-enhancements` --- ### 📝 Commits (2) - [`870667b`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/870667bc5e0d8f4346335ae370b1064d01cf9efc) Add ASO enhancements: migrate, categories, versions create/delete - [`c0a74df`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/c0a74df2495f835e4ed5f275dd8bb510d1b30919) Add versions update command and migrate validate ### 📊 Changes **12 files changed** (+2285 additions, -0 deletions) <details> <summary>View changed files</summary> 📝 `README.md` (+62 -0) ➕ `cmd/categories.go` (+79 -0) ➕ `cmd/migrate.go` (+761 -0) ➕ `cmd/migrate_output.go` (+212 -0) ➕ `cmd/migrate_test.go` (+406 -0) 📝 `cmd/root.go` (+2 -0) 📝 `cmd/versions.go` (+207 -0) ➕ `docs/SKILL.md` (+336 -0) ➕ `internal/asc/categories.go` (+65 -0) ➕ `internal/asc/categories_output.go` (+35 -0) 📝 `internal/asc/client_versions.go` (+116 -0) 📝 `internal/asc/output_core.go` (+4 -0) </details> ### 📄 Description ## Summary Add App Store Optimization (ASO) enhancement commands for managing app metadata: ### New Commands **Fastlane Migration** - `asc migrate import` - Import metadata from fastlane directory structure - `asc migrate export` - Export metadata to fastlane directory structure - `asc migrate validate` - Validate fastlane metadata without uploading (checks character limits) **Categories** - `asc categories list` - List all App Store categories **Versions CRUD** - `asc versions create` - Create a new App Store version - `asc versions update` - Update version attributes (copyright, release-type, earliest-release-date) - `asc versions delete` - Delete a version (PREPARE_FOR_SUBMISSION state only) ### Character Limit Validation The `migrate validate` command checks: - Description: 4000 characters - Keywords: 100 characters - What's New: 4000 characters - Promotional Text: 170 characters - Name: 30 characters - Subtitle: 30 characters ### Fastlane Structure Support ``` fastlane/metadata/ ├── en-US/ │ ├── name.txt │ ├── subtitle.txt │ ├── description.txt │ ├── keywords.txt │ ├── release_notes.txt │ └── promotional_text.txt └── de-DE/ └── ... ``` ## Test plan - [x] All existing tests pass - [x] New validation tests added for character limit checking - [x] Build succeeds - [ ] Manual testing of new commands 🤖 Generated with [Claude Code](https://claude.ai/code) --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-26 21:34:32 +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#311
No description provided.