From 0dd83134d7859f7894dff68d1161e8d6b889ef5e Mon Sep 17 00:00:00 2001 From: Giorgio Azzinnaro Date: Wed, 12 Aug 2026 10:46:12 +0200 Subject: [PATCH] fix(aso): pin App Store metadata sync to the pubspec version MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit deliver can only write version-level metadata (release notes, promotional text) to an editable "Prepare for Submission" version. Without app_version it polls for one to appear — and when ASC has none (e.g. the previous version just went into review) the retry loop burns the job's 15-minute timeout, as in run 31571366367. Pinning app_version from pubspec.yaml makes deliver create the version when it's missing and fail fast with a real ASC error otherwise. Co-Authored-By: Claude Fable 5 --- fastlane/Fastfile | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/fastlane/Fastfile b/fastlane/Fastfile index 40c528b..343cf3f 100644 --- a/fastlane/Fastfile +++ b/fastlane/Fastfile @@ -33,7 +33,15 @@ platform :ios do issuer_id: ENV.fetch("ASC_ISSUER_ID"), key_content: ENV.fetch("ASC_KEY_CONTENT"), ) + # Version-level metadata (release notes, promotional text) can only be + # written to an editable ("Prepare for Submission") version. Without + # app_version, deliver polls for one to appear and burns the job timeout + # whenever ASC has none (e.g. the previous version just went into review). + # Pinning the pubspec version makes deliver create the version if missing + # and fail fast with a real error otherwise. + pubspec_version = YAML.load_file("../pubspec.yaml")["version"].split("+").first upload_to_app_store( + app_version: pubspec_version, metadata_path: "./fastlane/metadata/ios", skip_binary_upload: true, skip_screenshots: true, # App Store screenshots are still managed in ASC directly