[PR #493] [MERGED] Migrate import full layout #567

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/493
Author: @rudrankriyam
Created: 2/11/2026
Status: Merged
Merged: 2/11/2026
Merged by: @rudrankriyam

Base: mainHead: cursor/migrate-import-full-layout-b7cc


📝 Commits (8)

📊 Changes

24 files changed (+2768 additions, -249 deletions)

View changed files

📝 ASC.md (+1 -0)
📝 README.md (+7 -4)
📝 internal/asc/screenshot_sizes.go (+8 -0)
📝 internal/asc/screenshot_sizes_test.go (+48 -3)
📝 internal/cli/assets/assets_helpers.go (+5 -0)
📝 internal/cli/assets/assets_screenshots.go (+6 -8)
📝 internal/cli/assets/assets_screenshots_test.go (+7 -7)
📝 internal/cli/cmdtest/assets_screenshots_sizes_test.go (+4 -4)
internal/cli/cmdtest/migrate_import_test.go (+359 -0)
📝 internal/cli/docs/templates/ASC.md (+1 -0)
internal/cli/migrate/app_info_metadata_test.go (+29 -0)
internal/cli/migrate/deliverfile_parser.go (+223 -0)
internal/cli/migrate/deliverfile_parser_test.go (+70 -0)
internal/cli/migrate/import_helpers.go (+392 -0)
internal/cli/migrate/locale.go (+38 -0)
📝 internal/cli/migrate/migrate.go (+268 -161)
📝 internal/cli/migrate/migrate_output.go (+220 -62)
📝 internal/cli/migrate/migrate_test.go (+29 -0)
internal/cli/migrate/path_resolution.go (+179 -0)
internal/cli/migrate/path_resolution_test.go (+142 -0)

...and 4 more files

📄 Description

Summary

  • Enhances asc migrate import to fully ingest Deliver-style project layouts, including metadata, app info, review information, and screenshots.
  • Implements automatic localization mapping and robust path resolution (explicit flags > Deliverfile > conventional directories).
  • Expands dry-run output to provide a comprehensive plan of detected locales, metadata changes, review info, and screenshot upload actions.
  • Ensures idempotency by skipping existing assets and reporting skipped items, with detailed validation for input files.

Validation

  • make format
  • make lint
  • make test
  • go test ./internal/cli/migrate -run 'Deliverfile|Import|DryRun'
  • go test ./internal/cli/cmdtest -run TestMigrateImport

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.


Open in Cursor Open in Web


🔄 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/493 **Author:** [@rudrankriyam](https://github.com/rudrankriyam) **Created:** 2/11/2026 **Status:** ✅ Merged **Merged:** 2/11/2026 **Merged by:** [@rudrankriyam](https://github.com/rudrankriyam) **Base:** `main` ← **Head:** `cursor/migrate-import-full-layout-b7cc` --- ### 📝 Commits (8) - [`34229f5`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/34229f5be492251c98d11945e8a6458905537b1c) feat: expand migrate import deliver layout - [`1b8571f`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/1b8571fd447d79543d39d2b29fe3a08b3e6c851a) fix: avoid screenshot plan shadowing - [`15c8232`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/15c8232f66a6fbb31f34017eab712dfc0aa2a04d) fix: treat review detail 404 as missing - [`5d0cb68`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/5d0cb68ad68f077e08d181df4e61de868cbe959f) chore: remove unused migrate helper - [`6a2a8f0`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/6a2a8f02002c42e663c9a9cc171cff3f174bb3bd) fix: align migrate import screenshot inference with current enums - [`d29da58`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/d29da58ff704e6d6fae0a6fe59af333511f83557) Migration screenshot logic (#496) - [`f8517ae`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/f8517ae0d7079259067cbd4d07fb222023a57f28) Merge branch 'main' of https://github.com/rudrankriyam/App-Store-Connect-CLI into cursor/migrate-import-full-layout-b7cc - [`451ddad`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/451ddaded1d0e530907224233f2a8cb265127ab2) Merge origin/main into migrate import branch ### 📊 Changes **24 files changed** (+2768 additions, -249 deletions) <details> <summary>View changed files</summary> 📝 `ASC.md` (+1 -0) 📝 `README.md` (+7 -4) 📝 `internal/asc/screenshot_sizes.go` (+8 -0) 📝 `internal/asc/screenshot_sizes_test.go` (+48 -3) 📝 `internal/cli/assets/assets_helpers.go` (+5 -0) 📝 `internal/cli/assets/assets_screenshots.go` (+6 -8) 📝 `internal/cli/assets/assets_screenshots_test.go` (+7 -7) 📝 `internal/cli/cmdtest/assets_screenshots_sizes_test.go` (+4 -4) ➕ `internal/cli/cmdtest/migrate_import_test.go` (+359 -0) 📝 `internal/cli/docs/templates/ASC.md` (+1 -0) ➕ `internal/cli/migrate/app_info_metadata_test.go` (+29 -0) ➕ `internal/cli/migrate/deliverfile_parser.go` (+223 -0) ➕ `internal/cli/migrate/deliverfile_parser_test.go` (+70 -0) ➕ `internal/cli/migrate/import_helpers.go` (+392 -0) ➕ `internal/cli/migrate/locale.go` (+38 -0) 📝 `internal/cli/migrate/migrate.go` (+268 -161) 📝 `internal/cli/migrate/migrate_output.go` (+220 -62) 📝 `internal/cli/migrate/migrate_test.go` (+29 -0) ➕ `internal/cli/migrate/path_resolution.go` (+179 -0) ➕ `internal/cli/migrate/path_resolution_test.go` (+142 -0) _...and 4 more files_ </details> ### 📄 Description ## Summary - Enhances `asc migrate import` to fully ingest Deliver-style project layouts, including metadata, app info, review information, and screenshots. - Implements automatic localization mapping and robust path resolution (explicit flags > Deliverfile > conventional directories). - Expands dry-run output to provide a comprehensive plan of detected locales, metadata changes, review info, and screenshot upload actions. - Ensures idempotency by skipping existing assets and reporting skipped items, with detailed validation for input files. ## Validation - [x] `make format` - [x] `make lint` - [x] `make test` - [x] `go test ./internal/cli/migrate -run 'Deliverfile|Import|DryRun'` - [x] `go test ./internal/cli/cmdtest -run TestMigrateImport` ## 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`. --- <p><a href="https://cursor.com/background-agent?bcId=bc-e37ade75-cbcc-4a8c-82fa-f81d15306d00"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/open-in-cursor-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/open-in-cursor-light.png"><img alt="Open in Cursor" width="131" height="28" src="https://cursor.com/assets/images/open-in-cursor-dark.png"></picture></a>&nbsp;<a href="https://cursor.com/agents?id=bc-e37ade75-cbcc-4a8c-82fa-f81d15306d00"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/open-in-web-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/open-in-web-light.png"><img alt="Open in Web" width="114" height="28" src="https://cursor.com/assets/images/open-in-web-dark.png"></picture></a></p> --- <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#567
No description provided.