Skip to content

Releases ​

A Version is a version identity on a channel. A Version Line is that version’s artifact line for one (os,arch) (and hw).

When to use ​

Every build you want clients to install needs a Version plus ready Version Lines on matrix platforms. Store feeds and native check share those published, ready lines.

Configuration entry ​

  • Console: Versions, Manage artifacts, Batch Release. Click-path: Versions.
  • YAML: no dedicated release file. Compare engine is chosen at project create; see Create a project.

Rules and error codes ​

Lifecycle: Draft → Mark ready → Publish. Also Deprecate / Revoke; lines Yank / Disable. Less-stable channels can Promote channel.

Publish refusals:

  • ARTIFACT_REQUIREDPublish rejected: no ready version line
  • AUTO_PUBLISH_PENDINGauto_publish_when is not fully ready yet
  • UPLOAD_INCOMPLETEUpload incomplete for this operation

Compare engine is immutable after first publish (COMPARE_ENGINE_IMMUTABLEcompare_engine locked after first publish). Critical versions cannot use gray (GRAY_NOT_ALLOWED_ON_CRITICALGray on critical version). Published artifacts cannot be overwritten (ARTIFACT_IMMUTABLEPublished artifact immutable (yank the line first)).

CI uses ci/releases (CI releases); the browser uses artifacts / TUS. direct_s3 is always false. Artifacts can be reused.

Client duties ​

Clients only see Published versions whose line is ready (packs_ready_at stamped). Drafts and un-preheated lines are invisible (VERSION_NOT_VISIBLEVersion not visible to the client (draft, packs not ready, or gray miss)).

Related: Gray rollout, Incremental updates, Channels.