build: base on Synapse v1.164.1 and build the pinned version on merge #1
No reviewers
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
waiting-on-julian
wontfix
priority/P1
priority/P2
priority/P3
roadmap
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
oddie-apps/synapse-s3!1
Loading…
Reference in a new issue
No description provided.
Delete branch "chore/synapse-v1.164.1"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Bumps the base image to Synapse v1.164.1 (latest stable, 2026-10-28; v1.164.0 + msgpack GHSA-j586-36cw-2gc2 fix) and makes a merge build the version the Dockerfile pins.
Changes
ARG SYNAPSE_VERSIONand theworkflow_dispatchdefault:v1.157.0→v1.164.1.build.yaml: a push to main now builds theARG SYNAPSE_VERSIONfrom the Dockerfile. Before this, a push built whateverapi.github.com/.../releases/latestreturned at that moment, so the ARG had no effect. Dispatch (explicit input) and the weekly schedule (releases/latest) are unchanged.vX.Y.Z. That covers an rc tag andnullfrom an unauthenticated, rate-limited GitHub API answer.synapse/handlers/profile.py:952), so the sed workaround and its grep guard stay.Verified locally
docker build --platform linux/amd64of this branch succeeded: the patch applied, the guard passed,synapse.__version__ == 1.164.1, Python 3.13.18, ands3_storage_providerimports. Upstream base:ghcr.io/element-hq/synapse:v1.164.1= indexsha256:fa4aa980f279bcf26d4e7ecc2a2c9a701c73f2ebe8841da9bdcf3b2fdf693d75.Release step (merging this PR is the release)
There is no tag-based release. The workflow triggers on push to
maintouchingDockerfileor the workflow, on dispatch, and on a weekly schedule. Pushing this PR branch triggered nothing.forge.oddie.app/oddie-apps/synapse-s3:v1.164.1,:v1.164.1-<merge sha7>and:latest.curl -sI -u jlxq0:$TOKEN -H 'Accept: application/vnd.docker.distribution.manifest.v2+json' https://forge.oddie.app/v2/oddie-apps/synapse-s3/manifests/v1.164.1 | grep -i docker-content-digestv1.164.1@sha256:<digest>into the platform PR (oddie-apps/platform, see its body) and take it out of WIP.Timing: if nothing is merged first, the scheduled run on Mon 2026-11-02 06:00 UTC builds
v1.164.1anyway, because that is GitHub'sreleases/latest. Each later Monday re-pushes the samev1.164.1and-<sha7>tags until 1.165 ships, and a rebuild can move the tag to a new digest. That is why the platform side pins by digest.Rollback
Revert this PR. Images that have already been pushed stay in the registry, and the platform manifest decides what actually runs.
🤖 Generated with Claude Code
https://claude.ai/code/session_01E2xQRd617pi9DE4U2rbsKS
Bump ARG SYNAPSE_VERSION and the workflow_dispatch default from v1.157.0 to v1.164.1, the newest stable upstream release (2026-10-28). A push to main previously built whatever GitHub's releases/latest named at that moment, so the ARG was decorative and a merge could not say which version it shipped. Push builds now read the ARG from the Dockerfile; the weekly schedule keeps polling releases/latest. Every path refuses a version that is not vX.Y.Z, which also stops a rate-limited API answer ("null") from reaching buildctl. The element-hq/synapse#19702 assert is still present in v1.164.1, so the sed workaround and its grep guard stay. Verified with a local linux/amd64 build: patch applied, synapse 1.164.1, Python 3.13.18, s3_storage_provider importable. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01E2xQRd617pi9DE4U2rbsKS