summary refs log tree commit diff
path: root/docker/complement (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Include user membership on events (#17282)Richard van der Hoff2024-06-131-2/+0
| | | | | MSC4115 has now completed FCP, so we can enable it by default and switch to the stable identifier.
* synapse complement image: hardcode enabling msc3266 (#17105)Benjamin Bouvier2024-05-021-0/+2
| | | | | | This is an alternative to https://github.com/matrix-org/matrix-rust-sdk/issues/3340 where we don't need to change our CI setup too much in the Rust SDK repository, and still can test MSC3266.
* Add support for MSC4115 (#17104)Richard van der Hoff2024-04-291-2/+2
| | | | Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
* bugfix: make msc3967 idempotent (#16943)Kegan Dougal2024-04-151-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MSC3967 was updated recently to make it more robust to network failures: > there is an existing cross-signing master key and it exactly matches the cross-signing master key provided in the request body. If there are any additional keys provided in the request (self signing key, user signing key) they MUST also match the existing keys stored on the server. In other words, the request contains no new keys. If there are new keys, UIA MUST be performed. https://github.com/matrix-org/matrix-spec-proposals/blob/hughns/device-signing-upload-uia/proposals/3967-device-signing-upload-uia.md#proposal This covers the case where the 200 OK is lost in transit so the client retries the upload, only to then get UIA'd. Complement tests: https://github.com/matrix-org/complement/pull/713 - passing example https://github.com/element-hq/synapse/actions/runs/7976948122/job/21778795094?pr=16943#step:7:8820 ### Pull Request Checklist <!-- Please read https://element-hq.github.io/synapse/latest/development/contributing_guide.html before submitting your pull request --> * [x] Pull request is based on the develop branch * [x] Pull request includes a [changelog file](https://element-hq.github.io/synapse/latest/development/contributing_guide.html#changelog). The entry should: - Be a short description of your change which makes sense to users. "Fixed a bug that prevented receiving messages from other servers." instead of "Moved X method from `EventStore` to `EventWorkerStore`.". - Use markdown where necessary, mostly for `code blocks`. - End with either a period (.) or an exclamation mark (!). - Start with a capital letter. - Feel free to credit yourself, by adding a sentence "Contributed by @github_username." or "Contributed by [Your Name]." to the end of the entry. * [x] [Code style](https://element-hq.github.io/synapse/latest/code_style.html) is correct (run the [linters](https://element-hq.github.io/synapse/latest/development/contributing_guide.html#run-the-linters)) --------- Co-authored-by: reivilibre <oliverw@matrix.org>
* Prevent `start_for_complement.sh` from setting `START_POSTGRES` to `false` ↵Andrew Morgan2024-03-212-3/+4
| | | | | | | | | | when it's already set (#16985) I have a use case where I'd like the Synapse image to start up a postgres instance that I can use, but don't want to force Synapse to use postgres as well. This commit prevents postgres from being started when it has already been explicitly enabled elsewhere.
* Better complement docs (#16946)kegsay2024-02-201-0/+11
|
* Fix typoErik Johnston2023-12-131-2/+2
|
* More renamingErik Johnston2023-12-131-47/+47
|
* complement: enable dirty runs (#16520)kegsay2023-10-271-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * complement: enable dirty runs * Add changelog * Set a low connpool limit when running in Complement Dirty runs can cause many containers to be running concurrently, which seems to easily exhaust resources on the host. The increased speedup from dirty runs also seems to use more db connections on workers, which are misconfigured currently to have `SUM(workers * cp_max) > max_connections`, causing ``` FATAL: sorry, too many clients already ``` which results in tests failing. * Try p=2 concurrency to restrict slowness of servers which causes partial state join tests to flake * Debug logging * Only run flakey tests * Only adjust connection pool limits in worker mode * Move cp vars to somewhere where they get executed in CI * Move cp values back to where they actually work * Debug logging * Try p=1 to see if this makes worker mode happier * Remove debug logging
* Use bookwork as docker base image (#16324)Erik Johnston2023-09-151-2/+2
|
* Remove experimental MSC2716 implementation to incrementally import history ↵Eric Eastwood2023-06-161-2/+0
| | | | | | | | | | | | into existing rooms (#15748) Context for why we're removing the implementation: - https://github.com/matrix-org/matrix-spec-proposals/pull/2716#issuecomment-1487441010 - https://github.com/matrix-org/matrix-spec-proposals/pull/2716#issuecomment-1504262734 Anyone wanting to continue MSC2716, should also address these leftover tasks: https://github.com/matrix-org/synapse/issues/10737 Closes https://github.com/matrix-org/synapse/issues/10737 in the fact that it is not longer necessary to track those things.
* Docker fully qualified image names (#15689)Jason Little2023-05-311-2/+3
| | | | | | | | | | | | | | | | | | | | * Fully qualified docker image names for the main Dockerfile and Complement related. * Fully qualified docker image names for Dockerfiles associated with building Debian release artifacts. This one is harder and is separate from the other commit in case it wasn't correct or was unwanted. I decided to do the expansion on the docker images in the Dockerfile itself, instead of the various source places that build which distribution that is selected, as it would have been more invasive with the scripts breaking up the string for tagging and such. This one is untested. * Changelog * Update docker/Dockerfile-workers * Update docker/complement/Dockerfile --------- Co-authored-by: reivilibre <olivier@librepush.net>
* Additional functionality for declaring worker types in Complement (#14921)Jason Little2023-03-141-3/+3
| | | | Co-authored-by: Olivier Wilkinson (reivilibre) <oliverw@matrix.org>
* Allow enabling the asyncio reactor in complement (#14858)realtyem2023-02-011-1/+12
| | | Signed-off-by: Jason Little realtyem@gmail.com
* Enable Faster Remote Room Joins against worker-mode Synapse. (#14752)reivilibre2023-01-221-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Enable Complement tests for Faster Remote Room Joins on worker-mode * (dangerous) Add an override to allow Complement to use FRRJ under workers * Newsfile Signed-off-by: Olivier Wilkinson (reivilibre) <oliverw@matrix.org> * Fix race where we didn't send out replication notification * MORE HACKS * Fix get_un_partial_stated_rooms_token to take instance_name * Fix bad merge * Remove warning * Correctly advance un_partial_stated_room_stream * Fix merge * Add another notify_replication * Fixups * Create a separate ReplicationNotifier * Fix test * Fix portdb * Create a separate ReplicationNotifier * Fix test * Fix portdb * Fix presence test * Newsfile * Apply suggestions from code review * Update changelog.d/14752.misc Co-authored-by: Erik Johnston <erik@matrix.org> * lint Signed-off-by: Olivier Wilkinson (reivilibre) <oliverw@matrix.org> Co-authored-by: Erik Johnston <erik@matrix.org>
* Implement MSC3930: polls push rules (#14787)Andrew Morgan2023-01-191-2/+4
|
* Stabilise serving partial join responses (#14839)David Robertson2023-01-171-2/+0
| | | | | Serving partial join responses is no longer experimental. They will only be served under the stable identifier if the the undocumented config flag experimental.msc3706_enabled is set to true. Synapse continues to request a partial join only if the undocumented config flag experimental.faster_joins is set to true; this setting remains present and unaffected.
* Implement MSC3890: Remotely silence local notifications (#14775)Andrew Morgan2023-01-131-0/+2
|
* Add experimental support for MSC3391: deleting account data (#14714)Andrew Morgan2023-01-011-0/+2
|
* Add `--editable` flag to `complement.sh` which uses an editable install of ↵reivilibre2022-12-071-1/+2
| | | | | Synapse for faster turn-around times whilst developing iteratively. (#14548) Co-authored-by: Mathieu Velten <mathieuv@matrix.org>
* Move MSC3030 `/timestamp_to_event` endpoint to stable v1 location (#14471)Eric Eastwood2022-11-281-2/+0
| | | | | | | | Fix https://github.com/matrix-org/synapse/issues/14390 - Client API: `/_matrix/client/unstable/org.matrix.msc3030/rooms/<roomID>/timestamp_to_event?ts=<timestamp>&dir=<direction>` -> `/_matrix/client/v1/rooms/<roomID>/timestamp_to_event?ts=<timestamp>&dir=<direction>` - Federation API: `/_matrix/federation/unstable/org.matrix.msc3030/timestamp_to_event/<roomID>?ts=<timestamp>&dir=<direction>` -> `/_matrix/federation/v1/timestamp_to_event/<roomID>?ts=<timestamp>&dir=<direction>` Complement test changes: https://github.com/matrix-org/complement/pull/559
* Allow override for requesting specific worker types for Complement on ↵realtyem2022-11-081-1/+8
| | | | | | | | | | | | | | | | | | | | | | | command line. (#14324) * Expose getting SYNAPSE_WORKER_TYPES from external, allowing override of workers requested. * Add WORKER_TYPES variable option to complement.sh script that passes requested workers into start_for_complement.sh entrypoint. * Update docs to reflect this new ability. * Changelog * Don't rely on soft wrapping to format long strings Good idea dklimpel. Thanks for catching that. Co-authored-by: Dirk Klimpel <5740567+dklimpel@users.noreply.github.com> * Small nits just noticed in docs. * Fixup new line in docs. Co-authored-by: Dirk Klimpel <5740567+dklimpel@users.noreply.github.com>
* Enable testing MSC3874 in complement. (#14339)Patrick Cloke2022-11-011-2/+2
|
* Enable URL previews in complement homeserver config. (#14198)Jonathan de Jong2022-10-181-0/+2
|
* Mark /relations endpoint as usable on workers. (#14028)Patrick Cloke2022-10-121-0/+1
| | | Co-authored-by: Eric Eastwood <erice@element.io>
* Dockerfile for tests: align comments with current behavior (#13867)Mathieu Velten2022-09-271-13/+9
| | | | Signed-off-by: Mathieu Velten <mathieuv@matrix.org> Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
* complement: init postgres DB directly inside the target image (#13819)Mathieu Velten2022-09-161-11/+9
| | | | | | | Doing so in the base postgres image doesn't work with buildah because changes in a declared VOLUME in the Dockerfile is supposed to be discarded, cf https://docs.docker.com/engine/reference/builder/#volume Signed-off-by: Mathieu Velten <mathieuv@matrix.org>
* Call out buildkit is required when building test docker images (#13338)Brendan Abolivier2022-07-211-0/+1
| | | Co-authored-by: David Robertson <davidr@element.io>
* Rate limit joins per-room (#13276)David Robertson2022-07-191-0/+4
|
* Docker: copy postgres from base image (#13279)Richard van der Hoff2022-07-152-34/+50
| | | | | | When building the docker images for complement testing, copy a preinstalled complement over from a base image, rather than apt installing it. This avoids network traffic and is much faster.
* [Complement] Allow device_name lookup over federation (#13167)Till2022-07-041-0/+2
|
* Improve startup times in Complement test runs against workers, particularly ↵reivilibre2022-06-301-0/+3
| | | | | in CPU-constrained environments. (#13127) Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
* Add a Subject Alternative Name to the certificate generated for Complement ↵reivilibre2022-06-161-3/+19
| | | | tests. (#13071)
* Complement: use SQLite by default (#13075)Richard van der Hoff2022-06-162-2/+2
| | | | | If no database is configured explicitly, use sqlite. This means that you don't have to pass any variables into the image.
* Change default `sync_response_cache_duration` (#13042)Erik Johnston2022-06-151-0/+6
|
* Collapse Docker build commands in Complement CI runs to make the logs easier ↵reivilibre2022-06-151-1/+1
| | | | to read. (#13058)
* Merge the Complement testing Docker images into a single, multi-purpose ↵reivilibre2022-06-0810-300/+179
| | | | | image. (#12881) Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
* Support registering Application Services when running with workers under ↵reivilibre2022-05-231-0/+5
| | | | | Complement. (#12826) Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
* Fix Complement `TestCanRegisterAdmin` with workers, by adding Complement's ↵reivilibre2022-05-231-0/+6
| | | | shared registration secret. (#12819)
* Remove Caddy from the Synapse workers image used in Complement. (#12818)reivilibre2022-05-234-93/+16
|
* Update configs used by Complement to allow more invites (#12731)Till2022-05-132-0/+24
|
* Use supervisord to supervise Postgres and Caddy in the Complement image. ↵reivilibre2022-04-274-7/+27
| | | | | (#12480) Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
* Await un-partial-stating after a partial-state join (#12399)Richard van der Hoff2022-04-211-1/+3
| | | | | | When we join a room via the faster-joins mechanism, we end up with "partial state" at some points on the event DAG. Many parts of the codebase need to wait for the full state to load. So, we implement a mechanism to keep track of which events have partial state, and wait for them to be fully-populated.
* complement-synapse-workers: factor out separate entry point script (#12467)Richard van der Hoff2022-04-142-33/+57
| | | ... with a bit more verbosity.
* Enable certificate checking during complement tests (#12435)Richard van der Hoff2022-04-112-12/+0
|
* Move complement setup stuff into the Synapse repo (#12404)Richard van der Hoff2022-04-118-0/+421
Fixes matrix-org/complement#330 (or it will, once we remove the old files). It's not quite a lift-and-shift: I've also taken the opportunity to get rid of the custom CA that we used to use to sign the TLS certs, which has been superceded by the CA exposed by Complement.