AppStoreUploadEvent class

One line of cux_ship appstore upload --json.

See PlayUploadEvent for the stream's shape, the absent-rather-than-null rule and why no line carries display; all three hold here. What is different is what this stream can say, and there is one difference:

There are no UploadEvent.progress lines, and no bytesSent field to carry one. App Store Connect has no endpoint that accepts a binary, so the transfer is xcrun altool --upload-package — a subprocess speaking a transport Apple documents nowhere, whose output this package captures whole. There is no per-chunk signal to report. The alternative would be a tick on a timer, and a timer turns at the same rate whether the socket is moving or dead: it would report a wedged upload as a healthy one, which is the failure this stream exists to make visible. A field that is null on every line ever emitted is a format lying about itself, so there is none.

What this stream has instead is UploadState.processing, which is where an Apple upload spends most of its wall clock: Apple takes 5–15 minutes to process a build, and naming that is worth more than a bar would have been — a percentage stuck at 100 for six minutes says nothing about whose wait it is.

{"schema":1,"kind":"appstore.upload","event":"state","state":"transferring","bytesTotal":29360128}
{"schema":1,"kind":"appstore.upload","event":"state","state":"processing"}
{"schema":1,"kind":"appstore.upload","event":"result","result":{"bundleId":"design.codeux.example","platform":"IOS","versionName":"1.4.0","buildNumber":"169","waitedForProcessing":true}}
Annotations
  • @JsonSerializable.new(explicitToJson: true, includeIfNull: false)

Constructors

AppStoreUploadEvent({required int schema, required DocumentKind kind, required UploadEvent event, UploadState? state, int? bytesTotal, AppStoreUploadResult? result})
const
AppStoreUploadEvent.fromJson(Map<String, dynamic> json)
factory

Properties

bytesTotal → int?
The artifact's size, on the UploadState.transferring line.
final
event → UploadEvent
Which shape this line is. Dispatch on this.
final
hashCode → int
The hash code for this object.
no setterinherited
kind → DocumentKind
final
result → AppStoreUploadResult?
What the run did. Present on UploadEvent.result, which is the last line of a run that finished.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
schema → int
This kind's schema number. Refuse one you do not recognize.
final
state → UploadState?
The state the upload just moved into. Present on UploadEvent.state.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() → Map<String, dynamic>
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited