Dagster 1.13.23 - Multi Platform Images and Capacity Alerts


Dagster 1.13.23, paired with library release 0.29.23, was published on 16 September 2026 at 21:25 UTC. Official images for dagster-k8s, dagster-celery-k8s, and user-code-example now include both amd64 and arm64. The release also lets Dagster+ alert on queued and in progress runs, and it builds a Docker image for some Serverless fast deploys when a Python executable cannot run.

The full release notes and downloads are on the GitHub release page.

Three images changed how they are published. dagster-k8s, dagster-celery-k8s, and user-code-example now list both amd64 and arm64. An arm64 node can pull the tag an amd64 node already uses.

Registry, tag scheme, and base image sit outside this release text. The container runtime still chooses the platform that matches the node. A mirror that stores only the architecture of the first pull will hand amd64 bytes to an arm64 node, and the pod fails image pull. Confirm both platforms in the mirror before pods based on dagster-celery-k8s or user-code-example land on arm64 nodes. No configuration key in this release picks a platform. The notes cover the published platforms only.

Alert policies in Dagster+ can target deployment capacity metrics. The metrics named in the notes are queued runs and in progress runs. Each policy evaluates the series over a rolling window, and the aggregations include max.

Queued runs are the backlog waiting on a slot. In progress runs are the slots already occupied. Max keeps the highest sample in the window, so a short spike still matches after the queue drains. That records a peak, and it is noisy when normal load already touches the ceiling. Other aggregation names, window sizes, and policy field names are absent from the release text. Read the metric labels in the Dagster+ alert policy editor before copying a threshold from an older run failure policy.

The control is Dagster+ only. Open source run alerting is unchanged in these notes.

Fast deploys in Dagster+ Serverless now build a Docker image instead of a Python executable when the target environment cannot run one. Two targets are named: Serverless on Kubernetes, and a Harbor image registry.

Opt out with DAGSTER_CLOUD_DISABLE_PEX_DOCKER_REDIRECT. Set that variable when a deployment must keep the Python executable. Leave it unset and those two targets get an image build. An image build pushes to a registry. The executable path does not. A deploy identity that cannot push to Harbor fails at publish time. The image repository, Dockerfile, and base layers are not documented, and the notes list no CLI flag for the redirect.

The variable name describes a PEX to Docker redirect. The release sentence itself only says Python executable. No PEX layout and no custom base image are specified.

Component definition files accept a .yml extension in addition to .yaml. The same pair is valid for dagster.yaml and workspace.yaml. When both files are present, .yaml is the one Dagster loads. The files are not merged. A key that exists only in the .yml copy is ignored. Move those keys into the .yaml file, or delete the extra file, before you depend on them.

dagster project from-example now produces a components-layout project that installs with uv sync outside the Dagster repo. The generated project does not need a checkout of the Dagster source tree. The notes omit the file list, and they do not say the previous example tree was removed. Compare a script that walks the old layout with a fresh run of the command before upgrading the CLI.

Library release 0.29.23 carries the client fixes if you pin dagster-dbt or dagster-prefect.

The dbt Cloud client in dagster-dbt accepts a trailing slash on access_url. Deleting a job that is already deleted counts as success, so a retry does not fail after the remote job is gone. On request failure the client logs the error response body from dbt Cloud.

dagster-prefect names the Prefect run state the same way in failure messages on every Python version it supports. A log matcher on that state string sees one spelling on every interpreter.

UI fixes stay in the web app. The Prefect kind tag icon follows dark mode. Pages that refresh automatically keep polling after a failed request. The Catalog assets folder tree no longer jumps back to the top during scroll. The notes do not tie these fixes to run launch or asset storage.