mirror of
https://github.com/element-hq/synapse.git
synced 2024-12-15 17:51:10 +00:00
Don't say MSC4140 is supported when it's disabled (#17780)
Some checks failed
Tests / lint-crlf (push) Has been cancelled
Tests / check-lockfile (push) Has been cancelled
Deploy the documentation / Calculate variables for GitHub Pages deployment (push) Has been cancelled
Build docker images / build (push) Has been cancelled
Build release artifacts / Calculate list of debian distros (push) Has been cancelled
Build release artifacts / Build wheels on ubuntu-20.04 for aarch64 (push) Has been cancelled
Build release artifacts / Build wheels on macos-12 for x86_64 (push) Has been cancelled
Build release artifacts / Build wheels on ubuntu-20.04 for x86_64 (push) Has been cancelled
Build release artifacts / Build sdist (push) Has been cancelled
Tests / changes (push) Has been cancelled
Tests / lint-newsfile (push) Has been cancelled
Tests / lint (push) Has been cancelled
Deploy the documentation / GitHub Pages (push) Has been cancelled
Build release artifacts / Build .deb packages (push) Has been cancelled
Build release artifacts / Attach assets to release (push) Has been cancelled
Tests / Typechecking (push) Has been cancelled
Tests / check-sampleconfig (push) Has been cancelled
Tests / check-schema-delta (push) Has been cancelled
Tests / lint-pydantic (push) Has been cancelled
Tests / lint-clippy (push) Has been cancelled
Tests / lint-clippy-nightly (push) Has been cancelled
Tests / lint-rustfmt (push) Has been cancelled
Tests / lint-readme (push) Has been cancelled
Tests / linting-done (push) Has been cancelled
Tests / calculate-test-jobs (push) Has been cancelled
Tests / trial (push) Has been cancelled
Tests / trial-olddeps (push) Has been cancelled
Tests / trial-pypy (all, pypy-3.8) (push) Has been cancelled
Tests / sytest (push) Has been cancelled
Tests / export-data (push) Has been cancelled
Tests / portdb (11, 3.8) (push) Has been cancelled
Tests / portdb (15, 3.11) (push) Has been cancelled
Tests / complement (monolith, Postgres) (push) Has been cancelled
Tests / complement (monolith, SQLite) (push) Has been cancelled
Tests / complement (workers, Postgres) (push) Has been cancelled
Tests / cargo-test (push) Has been cancelled
Tests / cargo-bench (push) Has been cancelled
Tests / tests-done (push) Has been cancelled
Some checks failed
Tests / lint-crlf (push) Has been cancelled
Tests / check-lockfile (push) Has been cancelled
Deploy the documentation / Calculate variables for GitHub Pages deployment (push) Has been cancelled
Build docker images / build (push) Has been cancelled
Build release artifacts / Calculate list of debian distros (push) Has been cancelled
Build release artifacts / Build wheels on ubuntu-20.04 for aarch64 (push) Has been cancelled
Build release artifacts / Build wheels on macos-12 for x86_64 (push) Has been cancelled
Build release artifacts / Build wheels on ubuntu-20.04 for x86_64 (push) Has been cancelled
Build release artifacts / Build sdist (push) Has been cancelled
Tests / changes (push) Has been cancelled
Tests / lint-newsfile (push) Has been cancelled
Tests / lint (push) Has been cancelled
Deploy the documentation / GitHub Pages (push) Has been cancelled
Build release artifacts / Build .deb packages (push) Has been cancelled
Build release artifacts / Attach assets to release (push) Has been cancelled
Tests / Typechecking (push) Has been cancelled
Tests / check-sampleconfig (push) Has been cancelled
Tests / check-schema-delta (push) Has been cancelled
Tests / lint-pydantic (push) Has been cancelled
Tests / lint-clippy (push) Has been cancelled
Tests / lint-clippy-nightly (push) Has been cancelled
Tests / lint-rustfmt (push) Has been cancelled
Tests / lint-readme (push) Has been cancelled
Tests / linting-done (push) Has been cancelled
Tests / calculate-test-jobs (push) Has been cancelled
Tests / trial (push) Has been cancelled
Tests / trial-olddeps (push) Has been cancelled
Tests / trial-pypy (all, pypy-3.8) (push) Has been cancelled
Tests / sytest (push) Has been cancelled
Tests / export-data (push) Has been cancelled
Tests / portdb (11, 3.8) (push) Has been cancelled
Tests / portdb (15, 3.11) (push) Has been cancelled
Tests / complement (monolith, Postgres) (push) Has been cancelled
Tests / complement (monolith, SQLite) (push) Has been cancelled
Tests / complement (workers, Postgres) (push) Has been cancelled
Tests / cargo-test (push) Has been cancelled
Tests / cargo-bench (push) Has been cancelled
Tests / tests-done (push) Has been cancelled
This commit is contained in:
parent
316d635906
commit
9920417723
3 changed files with 19 additions and 2 deletions
1
changelog.d/17780.bugfix
Normal file
1
changelog.d/17780.bugfix
Normal file
|
@ -0,0 +1 @@
|
||||||
|
In the response to `GET /_matrix/client/versions`, set the `unstable_features` flag for MSC4140 to `false` when server configuration disables support for delayed events.
|
|
@ -172,7 +172,7 @@ class VersionsRestServlet(RestServlet):
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
# MSC4140: Delayed events
|
# MSC4140: Delayed events
|
||||||
"org.matrix.msc4140": True,
|
"org.matrix.msc4140": bool(self.config.server.max_event_delay_ms),
|
||||||
# MSC4151: Report room API (Client-Server API)
|
# MSC4151: Report room API (Client-Server API)
|
||||||
"org.matrix.msc4151": self.config.experimental.msc4151_enabled,
|
"org.matrix.msc4151": self.config.experimental.msc4151_enabled,
|
||||||
# Simplified sliding sync
|
# Simplified sliding sync
|
||||||
|
|
|
@ -8,11 +8,12 @@ from parameterized import parameterized
|
||||||
from twisted.test.proto_helpers import MemoryReactor
|
from twisted.test.proto_helpers import MemoryReactor
|
||||||
|
|
||||||
from synapse.api.errors import Codes
|
from synapse.api.errors import Codes
|
||||||
from synapse.rest.client import delayed_events, room
|
from synapse.rest.client import delayed_events, room, versions
|
||||||
from synapse.server import HomeServer
|
from synapse.server import HomeServer
|
||||||
from synapse.types import JsonDict
|
from synapse.types import JsonDict
|
||||||
from synapse.util import Clock
|
from synapse.util import Clock
|
||||||
|
|
||||||
|
from tests import unittest
|
||||||
from tests.unittest import HomeserverTestCase
|
from tests.unittest import HomeserverTestCase
|
||||||
|
|
||||||
PATH_PREFIX = "/_matrix/client/unstable/org.matrix.msc4140/delayed_events"
|
PATH_PREFIX = "/_matrix/client/unstable/org.matrix.msc4140/delayed_events"
|
||||||
|
@ -21,6 +22,21 @@ _HS_NAME = "red"
|
||||||
_EVENT_TYPE = "com.example.test"
|
_EVENT_TYPE = "com.example.test"
|
||||||
|
|
||||||
|
|
||||||
|
class DelayedEventsUnstableSupportTestCase(HomeserverTestCase):
|
||||||
|
servlets = [versions.register_servlets]
|
||||||
|
|
||||||
|
def test_false_by_default(self) -> None:
|
||||||
|
channel = self.make_request("GET", "/_matrix/client/versions")
|
||||||
|
self.assertEqual(channel.code, 200, channel.result)
|
||||||
|
self.assertFalse(channel.json_body["unstable_features"]["org.matrix.msc4140"])
|
||||||
|
|
||||||
|
@unittest.override_config({"max_event_delay_duration": "24h"})
|
||||||
|
def test_true_if_enabled(self) -> None:
|
||||||
|
channel = self.make_request("GET", "/_matrix/client/versions")
|
||||||
|
self.assertEqual(channel.code, 200, channel.result)
|
||||||
|
self.assertTrue(channel.json_body["unstable_features"]["org.matrix.msc4140"])
|
||||||
|
|
||||||
|
|
||||||
class DelayedEventsTestCase(HomeserverTestCase):
|
class DelayedEventsTestCase(HomeserverTestCase):
|
||||||
"""Tests getting and managing delayed events."""
|
"""Tests getting and managing delayed events."""
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue