Flightlinev0.7.0

Changelog

What changed.

One entry per release, pulled straight from GitHub Releases. Pink marks a breaking change. Pre-1.0 the cadence is simple: when it is ready.

v0.7.0Breaking

Highlights

  • Hardened state reconciliation and preflight behavior against live App Store Connect responses.
  • Fixed review-submission item resolution for IAPs and the resulting attached-IAP false positives.
  • Corrected stale build reporting in rejection workflows.
  • Improved sales, finance, analytics, performance, export compliance, TestFlight, builds, diagnostics, and beta review command behavior.
  • Stabilized JSON output so empty collections consistently return arrays.
  • Added live API regression coverage and refreshed public CLI documentation.

Breaking changes

  • finance --year has been removed. --month follows Apple fiscal month semantics.
  • Finance reports now default to Apple region ZZ unless a region is provided.

Verification

CI, CodeQL, vulnerability checks, integration-tag tests, and live read-only App Store Connect dogfooding passed for this release.

v0.6.0

Changelog

  • c5d7382444b9205a05331cba4e2a03940149ee97: Add three preflight rules mined from the rejection corpus (@ul0gic)
  • 55a8a8e5c4ab88a320032d49a2b6b58b587d62e5: Fix pricing get availability fetch rejected by Apple's include cap (@ul0gic)
  • ef2d60725b34181bccdbbde2837b673fad3ecae9: Make unknown subcommands fail instead of exiting 0 (@ul0gic)
  • 364b4c9c42364a8f6dddccd421eac1e094018b48: Populate review submission item references via include (@ul0gic)
  • 8323850b41ab720f4b38bc88ebbf89918588f703: Report true price counts instead of the 50-row sideload sample (@ul0gic)
  • 8867baf86d0cbbc8e0fa0ee90e40f6a313d32685: Share the review-detail attributes type from the asc package (@ul0gic)
v0.5.0

First public release.

Flightline turns App Store Connect into a structured, declarative surface — fetch live state, edit YAML, lint, plan, apply — so submissions stop being a clerical landmine. All three layers ship complete and verified against live ASC:

  • L1, API CLI: the full authoring and observation surface. 35+ subcommands, every one with --output table|json.
  • L2, state as code: flightline fetch, plan, and apply against a single state.yaml describing the whole release. Writes diff first and patch only the delta.
  • L3, preflight: 11 rules covering the common rejection causes, run offline with lint or live against ASC with preflight, before anything is submitted.

Install:

go install github.com/ul0gic/flightline@latest

Requires Go 1.26+. Docs at flightline.dev/docs.

Versioning policy (pre-1.0): breaking changes to flags, JSON output, or exit codes can happen between minor versions, are always flagged in a ### Breaking section of the release notes, and never happen in patches. 1.0 locks the contract.

Found a bug? Open an issue.

v0.5.0-betaPre-release

All three layers are complete and working against live App Store Connect.

  • L1, API CLI: the full authoring and observation surface. 35+ subcommands, every one with --output table|json.
  • L2, state as code: flightline fetch, plan, and apply against a single state.yaml describing the whole release. Writes diff first and patch only the delta.
  • L3, preflight: 11 rules covering the common rejection causes, run offline with lint or live against ASC with preflight, before anything is submitted.

Also in this build:

  • Tri-state exit codes on lint and preflight: 0 clean, 1 errors, 2 warnings only, so CI chooses its own strictness.
  • --version reports version, commit, and build date.
  • Release pipeline hardened and ready: GoReleaser cross-platform builds, signed artifacts, SBOM.

Install with go install github.com/ul0gic/flightline@latest.