# v2026.10.35

Code 2.0.0 beside an unchanged 1.0.0

Code 2.0.0 is here: `{{ }}` is never pasted into code, so data can’t change a program. New steps still default to 1.0.0 in this release. Existing steps stay on 1.0.0 until someone upgrades them.

## What changed

- Convert a step with `POST /api/code-steps/upgrade`, an AI app’s `gorunner_upgrade_code_step`, or **Upgrade to 2.0.0** in the step. See [Convert a Code step to 2.0.0](https://docs.gorunner.io/api/workflows/upgrade-code-step).

## When you update

GoRunner’s image is private for now. With Docker, [sign in to the registry](https://docs.gorunner.io/self-host/install-docker#sign-in-to-the-registry) first. On Kubernetes, [sign Helm in and give the cluster its pull Secret](https://docs.gorunner.io/self-host/install-kubernetes#make-a-namespace). See [Update](https://docs.gorunner.io/self-host/update) for the whole procedure, or [Install with Docker](https://docs.gorunner.io/self-host/install-docker) and [Install on Kubernetes](https://docs.gorunner.io/self-host/install-kubernetes) to install this version anew.

**Docker**

```bash
# Check the image first: its Digest must be sha256:7e97a1f77e8add3123af4d074b9984c22fb07585fa2a4340031446ccaad79bfa
docker buildx imagetools inspect ghcr.io/ralve-org/gorunner-selfhost:v2026.10.35

# Update
./deploy.sh v2026.10.35
```

**Kubernetes**

```bash
helm upgrade gorunner oci://ghcr.io/ralve-org/charts/gorunner --version 2026.10.35 -f values.yaml
```

## Going back

- To go back, run `./deploy.sh v2026.10.34`. There is no migration, so no flag is needed.
- Going back below v2026.10.35 stops every Code step on 2.0.0: the older version refuses it, and never runs it as 1.0.0.

Source: https://docs.gorunner.io/changelog/v2026.10.35
