Skip to content

Commit ffbf188

Browse files
committed
Merge branch 'develop' into madlittlemods/fix-run_coroutine_in_background-logcontext
2 parents 8e5935c + 7708801 commit ffbf188

File tree

13 files changed

+103
-50
lines changed

13 files changed

+103
-50
lines changed
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
#!/usr/bin/env bash
2+
set -euo pipefail
3+
4+
# 1) Resolve project ID.
5+
PROJECT_ID=$(gh project view "$PROJECT_NUMBER" --owner "$PROJECT_OWNER" --format json | jq -r '.id')
6+
7+
# 2) Find existing item (project card) for this issue.
8+
ITEM_ID=$(
9+
gh project item-list "$PROJECT_NUMBER" --owner "$PROJECT_OWNER" --format json \
10+
| jq -r --arg url "$ISSUE_URL" '.items[] | select(.content.url==$url) | .id' | head -n1
11+
)
12+
13+
# 3) If one doesn't exist, add this issue to the project.
14+
if [ -z "${ITEM_ID:-}" ]; then
15+
ITEM_ID=$(gh project item-add "$PROJECT_NUMBER" --owner "$PROJECT_OWNER" --url "$ISSUE_URL" --format json | jq -r '.id')
16+
fi
17+
18+
# 4) Get Status field id + the option id for TARGET_STATUS.
19+
FIELDS_JSON=$(gh project field-list "$PROJECT_NUMBER" --owner "$PROJECT_OWNER" --format json)
20+
STATUS_FIELD=$(echo "$FIELDS_JSON" | jq -r '.fields[] | select(.name=="Status")')
21+
STATUS_FIELD_ID=$(echo "$STATUS_FIELD" | jq -r '.id')
22+
OPTION_ID=$(echo "$STATUS_FIELD" | jq -r --arg name "$TARGET_STATUS" '.options[] | select(.name==$name) | .id')
23+
24+
if [ -z "${OPTION_ID:-}" ]; then
25+
echo "No Status option named \"$TARGET_STATUS\" found"; exit 1
26+
fi
27+
28+
# 5) Set Status (moves item to the matching column in the board view).
29+
gh project item-edit --id "$ITEM_ID" --project-id "$PROJECT_ID" --field-id "$STATUS_FIELD_ID" --single-select-option-id "$OPTION_ID"

.github/workflows/triage_labelled.yml

Lines changed: 18 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -6,43 +6,26 @@ on:
66

77
jobs:
88
move_needs_info:
9-
name: Move X-Needs-Info on the triage board
109
runs-on: ubuntu-latest
1110
if: >
1211
contains(github.event.issue.labels.*.name, 'X-Needs-Info')
12+
permissions:
13+
contents: read
14+
env:
15+
# This token must have the following scopes: ["repo:public_repo", "admin:org->read:org", "user->read:user", "project"]
16+
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
17+
PROJECT_OWNER: matrix-org
18+
# Backend issue triage board.
19+
# https://github.com/orgs/matrix-org/projects/67/views/1
20+
PROJECT_NUMBER: 67
21+
ISSUE_URL: ${{ github.event.issue.html_url }}
22+
# This field is case-sensitive.
23+
TARGET_STATUS: Needs info
1324
steps:
14-
- uses: actions/add-to-project@4515659e2b458b27365e167605ac44f219494b66 # v1.0.2
15-
id: add_project
25+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
1626
with:
17-
project-url: "https://github.com/orgs/matrix-org/projects/67"
18-
github-token: ${{ secrets.ELEMENT_BOT_TOKEN }}
19-
# This action will error if the issue already exists on the project. Which is
20-
# common as `X-Needs-Info` will often be added to issues that are already in
21-
# the triage queue. Prevent the whole job from failing in this case.
22-
continue-on-error: true
23-
- name: Set status
24-
env:
25-
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
26-
run: |
27-
gh api graphql -f query='
28-
mutation(
29-
$project: ID!
30-
$item: ID!
31-
$fieldid: ID!
32-
$columnid: String!
33-
) {
34-
updateProjectV2ItemFieldValue(
35-
input: {
36-
projectId: $project
37-
itemId: $item
38-
fieldId: $fieldid
39-
value: {
40-
singleSelectOptionId: $columnid
41-
}
42-
}
43-
) {
44-
projectV2Item {
45-
id
46-
}
47-
}
48-
}' -f project="PVT_kwDOAIB0Bs4AFDdZ" -f item=${{ steps.add_project.outputs.itemId }} -f fieldid="PVTSSF_lADOAIB0Bs4AFDdZzgC6ZA4" -f columnid=ba22e43c --silent
27+
# Only clone the script file we care about, instead of the whole repo.
28+
sparse-checkout: .ci/scripts/triage_labelled_issue.sh
29+
30+
- name: Ensure issue exists on the board, then set Status
31+
run: .ci/scripts/triage_labelled_issue.sh

CHANGES.md

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@
22

33
## Internal Changes
44

5-
- Drop support for Ubuntu 24.10 Oracular Oriole, and add support for Ubuntu 25.04 Plucky Puffin. ([\#18962](https://github.com/element-hq/synapse/issues/18962))
6-
5+
- Drop support for Ubuntu 24.10 Oracular Oriole, and add support for Ubuntu 25.04 Plucky Puffin. This change was applied on top of 1.139.0rc1. ([\#18962](https://github.com/element-hq/synapse/issues/18962))
76

87

98

@@ -74,6 +73,23 @@
7473
* Bump types-requests from 2.32.4.20250611 to 2.32.4.20250809. ([\#18895](https://github.com/element-hq/synapse/issues/18895))
7574
* Bump types-setuptools from 80.9.0.20250809 to 80.9.0.20250822. ([\#18924](https://github.com/element-hq/synapse/issues/18924))
7675

76+
# Synapse 1.138.2 (2025-09-24)
77+
78+
## Internal Changes
79+
80+
- Drop support for Ubuntu 24.10 Oracular Oriole, and add support for Ubuntu 25.04 Plucky Puffin. This change was applied on top of 1.138.1. ([\#18962](https://github.com/element-hq/synapse/issues/18962))
81+
82+
83+
84+
# Synapse 1.138.1 (2025-09-24)
85+
86+
## Bugfixes
87+
88+
- Fix a performance regression related to the experimental Delayed Events ([MSC4140](https://github.com/matrix-org/matrix-spec-proposals/pull/4140)) feature. ([\#18926](https://github.com/element-hq/synapse/issues/18926))
89+
90+
91+
92+
7793
# Synapse 1.138.0 (2025-09-09)
7894

7995
No significant changes since 1.138.0rc1.

changelog.d/18913.misc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Fix the GitHub Actions workflow that moves issues labeled "X-Needs-Info" to the "Needs info" column on the team's internal triage board.

changelog.d/18947.misc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Update error code used when an appservice tries to masquerade as an unknown device using [MSC4326](https://github.com/matrix-org/matrix-spec-proposals/pull/4326). Contributed by @tulir @ Beeper.

changelog.d/18948.bugfix

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Compute a user's last seen timestamp from their devices' last seen timestamps instead of IPs, because the latter are automatically cleared according to `user_ips_max_age`.

debian/changelog

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,18 @@ matrix-synapse-py3 (1.139.0~rc1) stable; urgency=medium
1010

1111
-- Synapse Packaging team <[email protected]> Tue, 23 Sep 2025 13:24:50 +0100
1212

13+
matrix-synapse-py3 (1.138.2) stable; urgency=medium
14+
15+
* New Synapse release 1.138.2.
16+
17+
-- Synapse Packaging team <[email protected]> Wed, 24 Sep 2025 12:26:16 +0100
18+
19+
matrix-synapse-py3 (1.138.1) stable; urgency=medium
20+
21+
* New Synapse release 1.138.1.
22+
23+
-- Synapse Packaging team <[email protected]> Wed, 24 Sep 2025 11:32:38 +0100
24+
1325
matrix-synapse-py3 (1.138.0) stable; urgency=medium
1426

1527
* New Synapse release 1.138.0.

docs/upgrade.md

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -119,12 +119,6 @@ stacking them up. You can monitor the currently running background updates with
119119
120120
# Upgrading to v1.139.0
121121
122-
## Drop support for Ubuntu 24.10 Oracular Oriole, and add support for Ubuntu 25.04 Plucky Puffin
123-
124-
Ubuntu 24.10 Oracular Oriole [has been end-of-life since 10 Jul
125-
2025](https://endoflife.date/ubuntu). This release drops support for Ubuntu
126-
24.10, and in its place adds support for Ubuntu 25.04 Plucky Puffin.
127-
128122
## `/register` requests from old application service implementations may break when using MAS
129123
130124
Application Services that do not set `inhibit_login=true` when calling `POST
@@ -140,6 +134,16 @@ ensure it is up to date. If it is, then kindly let the author know that they
140134
need to update their implementation to call `/register` with
141135
`inhibit_login=true`.
142136
137+
# Upgrading to v1.138.2
138+
139+
## Drop support for Ubuntu 24.10 Oracular Oriole, and add support for Ubuntu 25.04 Plucky Puffin
140+
141+
Ubuntu 24.10 Oracular Oriole [has been end-of-life since 10 Jul
142+
2025](https://endoflife.date/ubuntu). This release drops support for Ubuntu
143+
24.10, and in its place adds support for Ubuntu 25.04 Plucky Puffin.
144+
145+
This notice also applies to the v1.139.0 release.
146+
143147
# Upgrading to v1.136.0
144148
145149
## Deprecate `run_as_background_process` exported as part of the module API interface in favor of `ModuleApi.run_as_background_process`

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ module-name = "synapse.synapse_rust"
101101

102102
[tool.poetry]
103103
name = "matrix-synapse"
104-
version = "1.139.0rc2"
104+
version = "1.138.2"
105105
description = "Homeserver for the Matrix decentralised comms protocol"
106106
authors = ["Matrix.org Team and Contributors <[email protected]>"]
107107
license = "AGPL-3.0-or-later"

synapse/api/auth/base.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -354,12 +354,10 @@ async def get_appservice_user(
354354
effective_user_id, effective_device_id
355355
)
356356
if device_opt is None:
357-
# For now, use 400 M_EXCLUSIVE if the device doesn't exist.
358-
# This is an open thread of discussion on MSC3202 as of 2021-12-09.
359357
raise AuthError(
360358
400,
361359
f"Application service trying to use a device that doesn't exist ('{effective_device_id}' for {effective_user_id})",
362-
Codes.EXCLUSIVE,
360+
Codes.UNKNOWN_DEVICE,
363361
)
364362

365363
return create_requester(

0 commit comments

Comments
 (0)