Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
91 commits
Select commit Hold shift + click to select a range
c3351ee
When building releases, don't cancel Debian package builds when one o…
reivilibre Jun 10, 2026
d11b012
Force keyword-args for clear `default_config(server_name="test")` usa…
MadLittleMods Jun 12, 2026
d7e9a3f
Fix inflated notification counts after `/purge_history` (#19834)
erikjohnston Jun 12, 2026
f2f159d
Fix release script considering any workflow completion as successful.…
reivilibre Jun 15, 2026
0130929
fix: provide remote servers a way to find out about an event created …
FrenchGithubUser Jun 15, 2026
7882779
Upload Complement CI logs as artifacts instead of flooding stdout (#1…
erikjohnston Jun 15, 2026
51805a0
Bump python-multipart from 0.0.26 to 0.0.27 (#19761)
dependabot[bot] Jun 15, 2026
64e09f1
Fix lint failures in Complement tests (#19855)
AndrewFerr Jun 15, 2026
1b7807a
Fix `/sync` caching transient errors for the `sync_response_cache_dur…
reivilibre Jun 16, 2026
36822e3
Stabilize support for sending ephemeral events to application service…
jason-famedly Jun 16, 2026
4100dac
Ignore ruff cache (#19854)
AndrewFerr Jun 16, 2026
3fad636
1.155.0
reivilibre Jun 16, 2026
f52b144
Explain natural behavior of events lost in the `/make_join`/`/send_jo…
MadLittleMods Jun 16, 2026
e3397a9
Merge branch 'master' into develop
reivilibre Jun 16, 2026
d6d9006
resolves #19374 Refactor `get_user_which_could_invite` logic to reuse…
RamReso Jun 16, 2026
2d06667
Fix local events being deleted despite `delete_local_events=False` in…
reivilibre Jun 17, 2026
8cd695a
Add stable room summary endpoint in worker docs. (#19788)
olmari Jun 17, 2026
0640a3e
Fix TCP listener startup log for ephemeral ports (#19810)
Skn0tt Jun 18, 2026
75ee23a
feat: Include `allowed_room_ids` in the `/summary` client-server API …
FrenchGithubUser Jun 18, 2026
2487b31
MSC4140: allow auth on management endpoints for delayed events (#19794)
AndrewFerr Jun 18, 2026
8cdac52
Bump the minor-and-patches group across 1 directory with 6 updates (#…
dependabot[bot] Jun 18, 2026
b38106d
Update poetry in CI from `2.2.1` to `2.4.1` (#19866)
anoadragon453 Jun 18, 2026
d3fc819
MSC1763: Implement /_matrix/client/unstable/org.matrix.msc1763/retent…
Half-Shot Jun 18, 2026
86c6a6c
Log table name in "No row found" error (#19869)
wbob Jun 19, 2026
42138ad
Split out `deferred` and `tokio_runtime` to their own Rust modules (#…
MadLittleMods Jun 20, 2026
1f0c2bc
docs/config: make it explicit that auto_join_rooms can be used for in…
Ma27 Jun 22, 2026
6d289f7
Fix permanent badge inflation from read receipts before first rotatio…
stefanceriu Jun 23, 2026
047d9c4
Bump the patches group across 1 directory with 3 updates (#19835)
dependabot[bot] Jun 23, 2026
16fe5fb
Expose MSC4354 Sticky Events over MSC4186 (Simplified) Sliding Sync. …
reivilibre Jun 23, 2026
1c79397
Tweak wording of Rust crate dependency update policy. (#19829)
reivilibre Jun 23, 2026
5248ea0
Bump the minor-and-patches group across 1 directory with 6 updates (#…
dependabot[bot] Jun 24, 2026
287195d
Bump `poetry` in the Dockerfile and when building the debian venv (#1…
anoadragon453 Jun 24, 2026
98d28b8
Bump python-multipart from 0.0.27 to 0.0.31 (#19859)
dependabot[bot] Jun 24, 2026
732de34
Bump tornado from 6.5.5 to 6.5.7 (#19860)
dependabot[bot] Jun 24, 2026
d304743
Bump pyjwt from 2.12.0 to 2.13.0 (#19861)
dependabot[bot] Jun 24, 2026
c386ab8
Bump bleach from 6.3.0 to 6.4.0 (#19864)
dependabot[bot] Jun 24, 2026
4e9f775
Bump msgpack from 1.1.2 to 1.2.1 (#19873)
dependabot[bot] Jun 24, 2026
2bb3aac
Add metric to count number of non-deactivated users. (#19848)
Half-Shot Jun 25, 2026
7bc2b93
Implement unstable support for MSC4491 (#19874)
timedoutuk Jun 26, 2026
5edcb0f
MSC4143: Advertise `org.matrix.msc4143` in `/versions` `unstable_feat…
toonbr1me Jun 29, 2026
1639c30
Fix the `cargo-test` and `cargo-bench` CI jobs not running (#19883)
anoadragon453 Jun 30, 2026
aa6e616
Don't delete the dehydrated device when MAS syncs the device list (#1…
andybalaam Jun 30, 2026
a247001
1.156.0rc1
reivilibre Jun 30, 2026
fd8f0e5
Tweak changelog
reivilibre Jun 30, 2026
aa97687
Change MSC3814 dehydrated device `/events` endpoint from POST to GET …
andybalaam Jun 30, 2026
0ab9291
Add `golangci-lint` to CI. (#19888)
reivilibre Jul 1, 2026
110f548
Lock Sliding Sync connections when inserting lazy members, to prevent…
reivilibre Jul 1, 2026
acb0ae1
Remove wall-clock dependency of test_redact_messages_all_rooms test. …
reivilibre Jul 1, 2026
2517db4
add before and after filter to redact user method (/_synapse/admin/v1…
naushniki Jul 1, 2026
ab277b3
Bump the patches group with 2 updates (#19893)
dependabot[bot] Jul 1, 2026
cb60c15
Fix two bugs in the `flag_existing_quarantined_media` background upda…
erikjohnston Jul 2, 2026
5df6d1b
Remove legacy MSC3861 auth delegation support (#19895)
reivilibre Jul 2, 2026
7da21a7
Update `HomeserverTestCase.get_success(...)` and friends to drive asy…
MadLittleMods Jul 2, 2026
4104058
Make MSC4388 (sign-in with QR code) PUT requests idempotent (#19808)
hughns Jul 3, 2026
807795e
Change the MSC3814 dehydrated device `/events` endpoint paging to mat…
andybalaam Jul 3, 2026
ff19c03
Bump golang.org/x/net from 0.52.0 to 0.55.0 in /complement (#19910)
dependabot[bot] Jul 6, 2026
c7a47bc
Fix flaky 3PID inhibit error unit tests (#19913)
anoadragon453 Jul 6, 2026
5f89ff2
Add an index on `sliding_sync_connections.last_used_ts` (#19912)
erikjohnston Jul 6, 2026
963e486
Recreate user profile on account reactivation (#19902)
m4us1ne Jul 6, 2026
026937b
Update `FakeChannel.await_result(...)` to drive async Rust (Tokio run…
MadLittleMods Jul 7, 2026
27c3b53
Port the synchronous event serialization core to Rust (#19837)
erikjohnston Jul 7, 2026
f8fefb0
Re-expose the standalone format_event_* transforms for backwards comp…
erikjohnston Jul 7, 2026
be8d900
1.156.0
reivilibre Jul 7, 2026
ec6c53e
Merge branch 'master' into develop
reivilibre Jul 7, 2026
c63d77a
Rust database access via Python database connection pool v2 (#19878)
MadLittleMods Jul 7, 2026
b4deb24
Use a CPU-time budget for `test_lock_contention` to fix postgres flak…
erikjohnston Jul 9, 2026
9c6cca1
Add clean deploy `FIXME` note for `TestOIDCProviderUnavailable` (#19938)
MadLittleMods Jul 9, 2026
365df86
Fix Complement test flake when restarting Synapse workers (cross-test…
MadLittleMods Jul 9, 2026
3f3edaf
Make the presence state-machine timers configurable (#19942)
erikjohnston Jul 9, 2026
9bbd974
Add index to `sliding_sync_connection_lazy_members` on `connection_po…
erikjohnston Jul 10, 2026
87439e5
Fix storage type mismatches where values didn't match their column ty…
erikjohnston Jul 10, 2026
4d8905a
Throttle sync-driven presence updates relayed to the presence writer …
erikjohnston Jul 10, 2026
c0c2b37
MSC4140: update error responses (#19539)
AndrewFerr Jul 11, 2026
0bd2838
Improve caching for presence (#19939)
erikjohnston Jul 13, 2026
be511b2
Send offline presence for stale states when presence is disabled (#19…
erikjohnston Jul 13, 2026
733620a
Fix SYNAPSE_ASYNC_IO_REACTOR=1 on Python 3.14 (#19949)
SuperSandro2000 Jul 13, 2026
292bbb8
Fix a bug causing device list pruning to skip some rows when the tran…
reivilibre Jul 13, 2026
c93d523
Honor `de.sorunome.msc2409.push_ephemeral` flag in appservice handler…
weebl2000 Jul 13, 2026
bf0f4f6
Support MSC4446: allow moving fully read markers backwards (#19663)
SpiritCroc Jul 13, 2026
8f61cd9
Merge branch 'develop' into jason/update-psycopg3-v2
jason-famedly Jul 13, 2026
aed5c67
include what was now a missing import (PostgresEngine)
jason-famedly Jul 14, 2026
36e56fe
Remove unnecessary conditional in user_directory.py
jason-famedly Jul 14, 2026
8aadcaf
add FIXME to user_directory.py
jason-famedly Jul 14, 2026
23c4b52
format comments and adjust docstrings
jason-famedly Jul 14, 2026
b40d2c3
adjust inner values length assertion for execute_values(), and add as…
jason-famedly Jul 14, 2026
66682ec
isolate that any new engine has to find their own way to use simple_i…
jason-famedly Jul 14, 2026
9989bbd
see if the database port script breaks with psycopg
jason-famedly Jul 15, 2026
efda1ca
adjust the port database test and error comment
jason-famedly Jul 15, 2026
f419a22
lol should have seen this one coming :D
jason-famedly Jul 15, 2026
6b77375
Adjust postgres sequence altering to use the built-in function
jason-famedly Jul 15, 2026
80d791a
s/database:/dbname:/
jason-famedly Jul 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .ci/postgres-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ database:
user: postgres
host: localhost
password: postgres
database: synapse
dbname: synapse

# Suppress the key server warning.
trusted_key_servers: []
7 changes: 6 additions & 1 deletion .ci/scripts/test_synapse_port_db.sh
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,11 @@ poetry run update_synapse_database --database-config .ci/sqlite-config.yaml --ru
# Create the PostgreSQL database.
psql -c "CREATE DATABASE synapse"

echo "--- Inject specific postgres driver into config"
# The driver variable should be set by CI, but just in case have a default so nothing breaks. The actual value does not
# require quotes in the configuration file.
sed -i -e "s/name: \"psycopg2\"/name: \"${SYNAPSE_POSTGRES_DRIVER:-psycopg2}\"/" .ci/postgres-config.yaml

echo "+++ Run synapse_port_db against test database"
# TODO: this invocation of synapse_port_db (and others below) used to be prepended with `coverage run`,
# but coverage seems unable to find the entrypoints installed by `pip install -e .`.
Expand Down Expand Up @@ -54,7 +59,7 @@ poetry run synapse_port_db --sqlite-database .ci/test_db.db --postgres-config .c

echo "--- Create a brand new postgres database from schema"
cp .ci/postgres-config.yaml .ci/postgres-config-unported.yaml
sed -i -e 's/database: synapse/database: synapse_unported/' .ci/postgres-config-unported.yaml
sed -i -e 's/dbname: synapse/dbname: synapse_unported/' .ci/postgres-config-unported.yaml
psql -c "CREATE DATABASE synapse_unported"
poetry run update_synapse_database --database-config .ci/postgres-config-unported.yaml --run-background-updates

Expand Down
68 changes: 50 additions & 18 deletions .github/workflows/complement_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ jobs:

steps:
- name: Checkout synapse codebase
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
path: synapse

Expand All @@ -64,7 +64,7 @@ jobs:
# We use `poetry` in `complement.sh`
- uses: matrix-org/setup-python-poetry@5bbf6603c5c930615ec8a29f1b5d7d258d905aa4 # v2.0.0
with:
poetry-version: "2.2.1"
poetry-version: "2.4.1"
# Matches the `path` where we checkout Synapse above
working-directory: "synapse"

Expand All @@ -82,7 +82,7 @@ jobs:
run: |
set -x
DEBIAN_FRONTEND=noninteractive sudo apt-get install -yqq python3 pipx
pipx install poetry==2.2.1
pipx install poetry==2.4.1

poetry remove -n twisted
poetry add -n --extras tls git+https://github.com/twisted/twisted.git#trunk
Expand All @@ -98,13 +98,24 @@ jobs:
# are underpowered and don't like running tons of Synapse instances at once.
# -json: Output JSON format so that gotestfmt can parse it.
#
# tee /tmp/gotest-complement.log: We tee the output to a file so that we can re-process it
# later on for better formatting with gotestfmt. But we still want the command
# to output to the terminal as it runs so we can see what's happening in
# real-time.
# tee /tmp/gotest-sanity-check-complement.log: We tee the raw JSON to a
# file so we can re-process it later for better formatting with gotestfmt
# (and upload it as an artifact).
#
# We deliberately do not dump the raw JSON to the terminal as it is huge
# and unreadable. Instead we pipe it through `jq` to print a compact,
# real-time progress view: for each `go test -json` event we print only
# completed tests (`pass`/`skip`/`fail`, including subtests), dropping the
# noisy `run`/`output` events and package-level lines. The full detail
# lives in the raw log we tee to the file above. Non-JSON lines (e.g. the
# image build output and `set -x` traces that `go test -json` does not
# wrap) are passed through unchanged rather than parsed, so we still see
# them and the filter never aborts the pipeline.
run: |
set -o pipefail
COMPLEMENT_DIR=`pwd`/complement synapse/scripts-dev/complement.sh --in-repo -p 1 -json -run 'TestSynapseVersion/Synapse_version_matches_current_git_checkout' 2>&1 | tee /tmp/gotest-sanity-check-complement.log
COMPLEMENT_DIR=`pwd`/complement synapse/scripts-dev/complement.sh --in-repo -p 1 -json -run 'TestSynapseVersion/Synapse_version_matches_current_git_checkout' 2>&1 \
| tee /tmp/gotest-sanity-check-complement.log \
| jq -rR --unbuffered '. as $raw | (try fromjson catch $raw) | if type == "object" then (select(.Action=="pass" or .Action=="fail" or .Action=="skip") | select(.Test) | "\(.Action|ascii_upcase) \(.Test) \(.Elapsed)s") else $raw end'
shell: bash
env:
POSTGRES: ${{ (matrix.database == 'Postgres' || matrix.database == 'Psycopg') && matrix.database || '' }}
Expand All @@ -127,13 +138,16 @@ jobs:
# are underpowered and don't like running tons of Synapse instances at once.
# -json: Output JSON format so that gotestfmt can parse it.
#
# tee /tmp/gotest-complement.log: We tee the output to a file so that we can re-process it
# later on for better formatting with gotestfmt. But we still want the command
# to output to the terminal as it runs so we can see what's happening in
# real-time.
# tee /tmp/gotest-complement.log: We tee the raw JSON to a file so we can
# re-process it later for better formatting with gotestfmt (and upload it
# as an artifact), and pipe it through `jq` for a compact, real-time
# progress view. See the sanity check step above for details on the jq
# filter.
run: |
set -o pipefail
COMPLEMENT_DIR=`pwd`/complement synapse/scripts-dev/complement.sh -p 1 -json 2>&1 | tee /tmp/gotest-complement.log
COMPLEMENT_DIR=`pwd`/complement synapse/scripts-dev/complement.sh -p 1 -json 2>&1 \
| tee /tmp/gotest-complement.log \
| jq -rR --unbuffered '. as $raw | (try fromjson catch $raw) | if type == "object" then (select(.Action=="pass" or .Action=="fail" or .Action=="skip") | select(.Test) | "\(.Action|ascii_upcase) \(.Test) \(.Elapsed)s") else $raw end'
shell: bash
env:
POSTGRES: ${{ (matrix.database == 'Postgres' || matrix.database == 'Psycopg') && matrix.database || '' }}
Expand All @@ -157,13 +171,16 @@ jobs:
# are underpowered and don't like running tons of Synapse instances at once.
# -json: Output JSON format so that gotestfmt can parse it.
#
# tee /tmp/gotest-in-repo-complement.log: We tee the output to a file so that we can re-process it
# later on for better formatting with gotestfmt. But we still want the command
# to output to the terminal as it runs so we can see what's happening in
# real-time.
# tee /tmp/gotest-in-repo-complement.log: We tee the raw JSON to a file so
# we can re-process it later for better formatting with gotestfmt (and
# upload it as an artifact), and pipe it through `jq` for a compact,
# real-time progress view. See the sanity check step above for details on
# the jq filter.
run: |
set -o pipefail
COMPLEMENT_DIR=`pwd`/complement synapse/scripts-dev/complement.sh --in-repo -p 1 -json 2>&1 | tee /tmp/gotest-in-repo-complement.log
COMPLEMENT_DIR=`pwd`/complement synapse/scripts-dev/complement.sh --in-repo -p 1 -json 2>&1 \
| tee /tmp/gotest-in-repo-complement.log \
| jq -rR --unbuffered '. as $raw | (try fromjson catch $raw) | if type == "object" then (select(.Action=="pass" or .Action=="fail" or .Action=="skip") | select(.Test) | "\(.Action|ascii_upcase) \(.Test) \(.Elapsed)s") else $raw end'
shell: bash
env:
POSTGRES: ${{ (matrix.database == 'Postgres' || matrix.database == 'Psycopg') && matrix.database || '' }}
Expand All @@ -180,3 +197,18 @@ jobs:
# it derives several values under `$settings` and passes them to our
# custom `.ci/complement_package.gotpl` template to render the output.
run: cat /tmp/gotest-in-repo-complement.log | gotestfmt -hide "successful-downloads,successful-tests,empty-packages"

- name: Upload Complement logs
# Always upload the logs (as artifacts) if we attempted to run the
# Complement tests, so we can debug failures without scrolling through
# the (very large) raw output in the build log.
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
if: ${{ always() }}
with:
# The matrix values keep the name unique across the three matrix
# combinations (upload-artifact rejects duplicate names within a run).
name: Complement Logs - ${{ job.status }} - (${{ matrix.arrangement }}, ${{ matrix.database }})
path: |
/tmp/gotest-sanity-check-complement.log
/tmp/gotest-complement.log
/tmp/gotest-in-repo-complement.log
22 changes: 11 additions & 11 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,10 @@ jobs:
steps:
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
uses: docker/setup-buildx-action@d7f5e7f509e45cec5c76c4d5afdd7de93d0b3df5 # v4.1.0

- name: Checkout repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3

- name: Extract version from pyproject.toml
# Note: explicitly requesting bash will mean bash is invoked with `-eo pipefail`, see
Expand All @@ -41,13 +41,13 @@ jobs:
echo "SYNAPSE_VERSION=$(grep "^version" pyproject.toml | sed -E 's/version\s*=\s*["]([^"]*)["]/\1/')" >> $GITHUB_ENV

- name: Log in to DockerHub
uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4.1.0
uses: docker/login-action@650006c6eb7dba73a995cc03b0b2d7f5ca915bee # v4.2.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Log in to GHCR
uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4.1.0
uses: docker/login-action@650006c6eb7dba73a995cc03b0b2d7f5ca915bee # v4.2.0
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
Expand Down Expand Up @@ -79,15 +79,15 @@ jobs:
services/backend-repositories/secret/data/oci.element.io password | OCI_PASSWORD ;

- name: Login to Element OCI Registry
uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4.1.0
uses: docker/login-action@650006c6eb7dba73a995cc03b0b2d7f5ca915bee # v4.2.0
with:
registry: oci-push.vpn.infra.element.io
username: ${{ steps.import-secrets.outputs.OCI_USERNAME }}
password: ${{ steps.import-secrets.outputs.OCI_PASSWORD }}

- name: Build and push by digest
id: build
uses: docker/build-push-action@bcafcacb16a39f128d818304e6c9c0c18556b85f # v7.1.0
uses: docker/build-push-action@f9f3042f7e2789586610d6e8b85c8f03e5195baf # v7.2.0
with:
push: true
labels: |
Expand Down Expand Up @@ -136,14 +136,14 @@ jobs:
merge-multiple: true

- name: Log in to DockerHub
uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4.1.0
uses: docker/login-action@650006c6eb7dba73a995cc03b0b2d7f5ca915bee # v4.2.0
if: ${{ startsWith(matrix.repository, 'docker.io') }}
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Log in to GHCR
uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4.1.0
uses: docker/login-action@650006c6eb7dba73a995cc03b0b2d7f5ca915bee # v4.2.0
if: ${{ startsWith(matrix.repository, 'ghcr.io') }}
with:
registry: ghcr.io
Expand Down Expand Up @@ -176,20 +176,20 @@ jobs:
services/backend-repositories/secret/data/oci.element.io password | OCI_PASSWORD ;

- name: Login to Element OCI Registry
uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4.1.0
uses: docker/login-action@650006c6eb7dba73a995cc03b0b2d7f5ca915bee # v4.2.0
with:
registry: oci-push.vpn.infra.element.io
username: ${{ steps.import-secrets.outputs.OCI_USERNAME }}
password: ${{ steps.import-secrets.outputs.OCI_PASSWORD }}

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
uses: docker/setup-buildx-action@d7f5e7f509e45cec5c76c4d5afdd7de93d0b3df5 # v4.1.0

- name: Install Cosign
uses: sigstore/cosign-installer@6f9f17788090df1f26f669e9d70d6ae9567deba6 # v4.1.2

- name: Calculate docker image tag
uses: docker/metadata-action@030e881283bb7a6894de51c315a6bfe6a94e05cf # v6.0.0
uses: docker/metadata-action@80c7e94dd9b9319bd5eb7a0e0fe9291e23a2a2e9 # v6.1.0
with:
images: ${{ matrix.repository }}
flavor: |
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/docs-pr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
name: GitHub Pages
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
# Fetch all history so that the schema_versions script works.
fetch-depth: 0
Expand Down Expand Up @@ -50,7 +50,7 @@ jobs:
name: Check links in documentation
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3

- name: Setup mdbook
uses: peaceiris/actions-mdbook@ee69d230fe19748b7abf22df32acaa93833fad08 # v2.0.0
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/docs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ jobs:
needs:
- pre
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
# Fetch all history so that the schema_versions script works.
fetch-depth: 0
Expand Down Expand Up @@ -92,7 +92,7 @@ jobs:

# Deploy to the target directory.
- name: Deploy to gh pages
uses: peaceiris/actions-gh-pages@4f9cc6602d3f66b9c108549d475ec49e8ef4d45e # v4.0.0
uses: peaceiris/actions-gh-pages@84c30a85c19949d7eee79c4ff27748b70285e453 # v4.1.0
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./book
Expand Down
8 changes: 5 additions & 3 deletions .github/workflows/fix_lint.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,9 @@ on:
env:
# We use nightly so that `fmt` correctly groups together imports, and
# clippy correctly fixes up the benchmarks.
RUST_VERSION: nightly-2025-06-24
#
# Note: This should match the nightly rust version in `tests.yml`.
RUST_VERSION: nightly-2025-03-27

jobs:
fixup:
Expand All @@ -18,7 +20,7 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3

- name: Install Rust
uses: dtolnay/rust-toolchain@e97e2d8cc328f1b50210efc529dca0028893a2d9 # master
Expand All @@ -31,7 +33,7 @@ jobs:
uses: matrix-org/setup-python-poetry@5bbf6603c5c930615ec8a29f1b5d7d258d905aa4 # v2.0.0
with:
install-project: "false"
poetry-version: "2.2.1"
poetry-version: "2.4.1"

- name: Run ruff check
continue-on-error: true
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/latest_deps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ jobs:
if: needs.check_repo.outputs.should_run_workflow == 'true'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
- name: Install Rust
uses: dtolnay/rust-toolchain@e97e2d8cc328f1b50210efc529dca0028893a2d9 # master
with:
Expand All @@ -54,7 +54,7 @@ jobs:
- uses: matrix-org/setup-python-poetry@5bbf6603c5c930615ec8a29f1b5d7d258d905aa4 # v2.0.0
with:
python-version: "3.x"
poetry-version: "2.2.1"
poetry-version: "2.4.1"
extras: "all"
# Dump installed versions for debugging.
- run: poetry run pip list > before.txt
Expand All @@ -77,7 +77,7 @@ jobs:
postgres-version: "14"

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3

- name: Install Rust
uses: dtolnay/rust-toolchain@e97e2d8cc328f1b50210efc529dca0028893a2d9 # master
Expand Down Expand Up @@ -151,7 +151,7 @@ jobs:
BLACKLIST: ${{ matrix.workers && 'synapse-blacklist-with-workers' }}

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3

- name: Install Rust
uses: dtolnay/rust-toolchain@e97e2d8cc328f1b50210efc529dca0028893a2d9 # master
Expand Down Expand Up @@ -201,7 +201,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
- uses: JasonEtco/create-an-issue@1b14a70e4d8dc185e5cc76d3bec9eab20257b2c5 # v2.9.2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/poetry_lockfile.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
name: "Check locked dependencies have sdists"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: '3.x'
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/push_complement_image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,33 +33,33 @@ jobs:
packages: write
steps:
- name: Checkout specific branch (debug build)
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
if: github.event_name == 'workflow_dispatch'
with:
ref: ${{ inputs.branch }}
- name: Checkout clean copy of develop (scheduled build)
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
if: github.event_name == 'schedule'
with:
ref: develop
- name: Checkout clean copy of master (on-push)
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
if: github.event_name == 'push'
with:
ref: master
# We use `poetry` in `complement.sh`
- uses: matrix-org/setup-python-poetry@5bbf6603c5c930615ec8a29f1b5d7d258d905aa4 # v2.0.0
with:
poetry-version: "2.2.1"
poetry-version: "2.4.1"
- name: Login to registry
uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4.1.0
uses: docker/login-action@650006c6eb7dba73a995cc03b0b2d7f5ca915bee # v4.2.0
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Work out labels for complement image
id: meta
uses: docker/metadata-action@030e881283bb7a6894de51c315a6bfe6a94e05cf # v6.0.0
uses: docker/metadata-action@80c7e94dd9b9319bd5eb7a0e0fe9291e23a2a2e9 # v6.1.0
with:
images: ghcr.io/${{ github.repository }}/complement-synapse
tags: |
Expand Down
Loading
Loading