diff --git a/.github/workflows/checks.yaml b/.github/workflows/checks.yaml new file mode 100644 index 00000000..083d6831 --- /dev/null +++ b/.github/workflows/checks.yaml @@ -0,0 +1,18 @@ +# workflow steps that ought to pass on a PR, but shouldn't block a preview. + +name: "Checks" +on: + pull_request: + +jobs: + check-newsfragments: + name: "🔎 Check that new newsfragments are valid" + if: github.event_name == 'pull_request' + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + with: + fetch-depth: 0 + - run: scripts/check-newsfragments + env: + PULL_REQUEST_NUMBER: ${{ github.event.number }} \ No newline at end of file diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index f0a840bd..8e83a3e7 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -44,18 +44,6 @@ jobs: - name: "🔎 Run validator" run: | /env/bin/python scripts/check-event-schema-examples.py - - check-newsfragments: - name: "🔎 Check that new newsfragments are valid" - if: github.event_name == 'pull_request' - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - run: scripts/check-newsfragments - env: - PULL_REQUEST_NUMBER: ${{ github.event.number }} calculate-baseurl: name: "⚙️ Calculate baseURL for later jobs" diff --git a/assets/scss/custom.scss b/assets/scss/custom.scss index d3b014f1..e8eab983 100644 --- a/assets/scss/custom.scss +++ b/assets/scss/custom.scss @@ -307,23 +307,24 @@ footer { margin: 1.5rem 0 .75rem 0; } - h2 + table, h3 + table, h3 + div.highlight { - margin-top: 0; - } - hr { border-bottom: 2px solid $dark; margin-bottom: 1.5rem; } p code, table code { - background-color: $white; + background-color: inherit; } table { table-layout: fixed; width: 100%; + // add some space between two tables when they are right next to each other + & + table { + margin-top: 4rem; + } + caption { caption-side: top; color: $dark; diff --git a/changelogs/client_server/newsfragments/1179.clarification b/changelogs/client_server/newsfragments/1179.clarification new file mode 100644 index 00000000..8bb04d09 --- /dev/null +++ b/changelogs/client_server/newsfragments/1179.clarification @@ -0,0 +1 @@ +Tweak the styling of `` snippets in tables rendered from OpenAPI definitions. diff --git a/changelogs/client_server/newsfragments/1190.feature b/changelogs/client_server/newsfragments/1190.feature new file mode 100644 index 00000000..ca206eb2 --- /dev/null +++ b/changelogs/client_server/newsfragments/1190.feature @@ -0,0 +1 @@ +Add a `.m.rule.room.server_acl` push rule to match `m.room.server_acl` events, as per [MSC3786](https://github.com/matrix-org/matrix-spec-proposals/pull/3786). diff --git a/changelogs/internal/newsfragments/.gitignore b/changelogs/internal/newsfragments/.gitignore new file mode 100644 index 00000000..e69de29b diff --git a/changelogs/internal/newsfragments/1194.feature b/changelogs/internal/newsfragments/1194.feature new file mode 100644 index 00000000..23f23618 --- /dev/null +++ b/changelogs/internal/newsfragments/1194.feature @@ -0,0 +1 @@ +Add internal changes changelog section. \ No newline at end of file diff --git a/changelogs/room_versions/newsfragments/1175.clarification b/changelogs/room_versions/newsfragments/1175.clarification new file mode 100644 index 00000000..b7cda453 --- /dev/null +++ b/changelogs/room_versions/newsfragments/1175.clarification @@ -0,0 +1 @@ +For room versions 7 through 10: Clarify that `invite->knock` is actually a legal transition. \ No newline at end of file diff --git a/changelogs/server_server/newsfragments/1179.clarification b/changelogs/server_server/newsfragments/1179.clarification new file mode 100644 index 00000000..8bb04d09 --- /dev/null +++ b/changelogs/server_server/newsfragments/1179.clarification @@ -0,0 +1 @@ +Tweak the styling of `` snippets in tables rendered from OpenAPI definitions. diff --git a/content/client-server-api/modules/push.md b/content/client-server-api/modules/push.md index bd7be800..99150d26 100644 --- a/content/client-server-api/modules/push.md +++ b/content/client-server-api/modules/push.md @@ -520,6 +520,33 @@ Definition: } ``` +**`.m.rule.room.server_acl`** + +Suppresses notifications for [`m.room.server_acl`](#mroomserver_acl) events. + +Definition: + +```json +{ + "rule_id": ".m.rule.room.server_acl", + "default": true, + "enabled": true, + "conditions": [ + { + "kind": "event_match", + "key": "type", + "pattern": "m.room.server_acl" + }, + { + "kind": "event_match", + "key": "state_key", + "pattern": "" + } + ], + "actions": [] +} +``` + **`.m.rule.roomnotif`** Matches any message whose content is unencrypted and contains the text diff --git a/content/rooms/fragments/v8-auth-rules.md b/content/rooms/fragments/v8-auth-rules.md index ac067884..f1e0532e 100644 --- a/content/rooms/fragments/v8-auth-rules.md +++ b/content/rooms/fragments/v8-auth-rules.md @@ -118,8 +118,7 @@ The rules are as follows: 7. If `membership` is `knock`: 1. If the `join_rule` is anything other than `knock`, reject. 2. If `sender` does not match `state_key`, reject. - 3. If the `sender`'s current membership is not `ban`, `invite`, - or `join`, allow. + 3. If the `sender`'s current membership is not `ban` or `join`, allow. 4. Otherwise, reject. 8. Otherwise, the membership is unknown. Reject. 5. If the `sender`'s current membership state is not `join`, reject. diff --git a/content/rooms/v10.md b/content/rooms/v10.md index b4c20653..d5d294e9 100644 --- a/content/rooms/v10.md +++ b/content/rooms/v10.md @@ -193,8 +193,7 @@ The rules are as follows: If the `join_rule` is anything other than `knock` or `knock_restricted`, reject. 2. If `sender` does not match `state_key`, reject. - 3. If the `sender`'s current membership is not `ban`, `invite`, - or `join`, allow. + 3. If the `sender`'s current membership is not `ban` or `join`, allow. 4. Otherwise, reject. 8. Otherwise, the membership is unknown. Reject. 5. If the `sender`'s current membership state is not `join`, reject. diff --git a/content/rooms/v7.md b/content/rooms/v7.md index 5960c198..8bb4dad2 100644 --- a/content/rooms/v7.md +++ b/content/rooms/v7.md @@ -135,8 +135,7 @@ The rules are as follows: 6. If `membership` is `knock`: 1. If the `join_rule` is anything other than `knock`, reject. 2. If `sender` does not match `state_key`, reject. - 3. If the `sender`'s current membership is not `ban`, `invite`, - or `join`, allow. + 3. If the `sender`'s current membership is not `ban` or `join`, allow. 4. Otherwise, reject. 7. Otherwise, the membership is unknown. Reject. 5. If the `sender`'s current membership state is not `join`, reject. diff --git a/layouts/shortcodes/changelog/changelog-changes.html b/layouts/shortcodes/changelog/changelog-changes.html index d1d13ba1..99efce08 100644 --- a/layouts/shortcodes/changelog/changelog-changes.html +++ b/layouts/shortcodes/changelog/changelog-changes.html @@ -38,6 +38,7 @@ {{ partial "render-api-changes" (dict "title" "Push Gateway API" "id" "push-gateway-api" "path" (path.Join $path "push_gateway")) }} {{ partial "render-api-changes" (dict "title" "Room Versions" "id" "room-versions" "path" (path.Join $path "room_versions")) }} {{ partial "render-api-changes" (dict "title" "Appendices" "id" "appendices" "path" (path.Join $path "appendices")) }} +{{ partial "render-api-changes" (dict "title" "Internal Changes/Tooling" "id" "internal" "path" (path.Join $path "internal")) }} {{ define "partials/render-api-changes" }}

{{ .title }}

diff --git a/scripts/generate-changelog.sh b/scripts/generate-changelog.sh index 1d82e5db..f66e5358 100644 --- a/scripts/generate-changelog.sh +++ b/scripts/generate-changelog.sh @@ -12,6 +12,7 @@ cd changelogs rm -f rendered.* # Reversed order so that room versions ends up on the bottom +towncrier --name "Internal Changes/Tooling" --dir "./internal" --config "./pyproject.toml" --yes towncrier --name "Appendices" --dir "./appendices" --config "./pyproject.toml" --yes towncrier --name "Room Versions" --dir "./room_versions" --config "./pyproject.toml" --yes towncrier --name "Push Gateway API" --dir "./push_gateway" --config "./pyproject.toml" --yes