Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

Commit

Permalink
Merge branch 'develop' into finish-unix-replication-series
Browse files Browse the repository at this point in the history
  • Loading branch information
MadLittleMods committed Jul 10, 2023
2 parents cd047fe + 5e82b07 commit 517654f
Show file tree
Hide file tree
Showing 56 changed files with 390 additions and 1,218 deletions.
5 changes: 0 additions & 5 deletions .ci/scripts/calculate_jobs.py
Expand Up @@ -134,11 +134,6 @@ def set_output(key: str, value: str):
"sytest-tag": "testing",
"postgres": "postgres",
},
{
"sytest-tag": "buster",
"postgres": "multi-postgres",
"workers": "workers",
},
]
)

Expand Down
6 changes: 5 additions & 1 deletion .github/workflows/twisted_trunk.yml
Expand Up @@ -96,7 +96,11 @@ jobs:
if: needs.check_repo.outputs.should_run_workflow == 'true'
runs-on: ubuntu-latest
container:
image: matrixdotorg/sytest-synapse:buster
# We're using ubuntu:focal because it uses Python 3.8 which is our minimum supported Python version.
# This job is a canary to warn us about unreleased twisted changes that would cause problems for us if
# they were to be released immediately. For simplicity's sake (and to save CI runners) we use the oldest
# version, assuming that any incompatibilities on newer versions would also be present on the oldest.
image: matrixdotorg/sytest-synapse:focal
volumes:
- ${{ github.workspace }}:/src

Expand Down
46 changes: 29 additions & 17 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions Cargo.toml
Expand Up @@ -3,3 +3,4 @@

[workspace]
members = ["rust"]
resolver = "2"
1 change: 0 additions & 1 deletion changelog.d/15773.feature

This file was deleted.

1 change: 1 addition & 0 deletions changelog.d/15787.misc
@@ -0,0 +1 @@
Stop writing to column `user_id` of tables `profiles` and `user_filters`.
1 change: 1 addition & 0 deletions changelog.d/15892.misc
@@ -0,0 +1 @@
Stop running sytest on buster/python3.7.
1 change: 1 addition & 0 deletions changelog.d/15893.misc
@@ -0,0 +1 @@
Drop Debian Buster since we no longer support Python 3.7.
1 change: 1 addition & 0 deletions changelog.d/15906.misc
@@ -0,0 +1 @@
Fix building rust with nightly rust compiler.
1 change: 1 addition & 0 deletions changelog.d/15907.misc
@@ -0,0 +1 @@
Add foreign key constraint to `event_forward_extremities`.
2 changes: 1 addition & 1 deletion docs/deprecation_policy.md
Expand Up @@ -23,7 +23,7 @@ people building from source should ensure they can fetch recent versions of Rust
(e.g. by using [rustup](https://rustup.rs/)).

The oldest supported version of SQLite is the version
[provided](https://packages.debian.org/buster/libsqlite3-0) by
[provided](https://packages.debian.org/bullseye/libsqlite3-0) by
[Debian oldstable](https://wiki.debian.org/DebianOldStable).

Context
Expand Down
2 changes: 1 addition & 1 deletion docs/development/contributing_guide.md
Expand Up @@ -322,7 +322,7 @@ The following command will let you run the integration test with the most common
configuration:
```sh
$ docker run --rm -it -v /path/where/you/have/cloned/the/repository\:/src:ro -v /path/to/where/you/want/logs\:/logs matrixdotorg/sytest-synapse:buster
$ docker run --rm -it -v /path/where/you/have/cloned/the/repository\:/src:ro -v /path/to/where/you/want/logs\:/logs matrixdotorg/sytest-synapse:focal
```
(Note that the paths must be full paths! You could also write `$(realpath relative/path)` if needed.)
Expand Down
31 changes: 7 additions & 24 deletions docs/usage/configuration/config_documentation.md
Expand Up @@ -3960,14 +3960,13 @@ federation_sender_instances:
---
### `instance_map`

When using workers this should be a map from [`worker_name`](#worker_name) to the HTTP
replication listener of the worker, if configured, and to the main process. Each worker
declared under [`stream_writers`](../../workers.md#stream-writers) and
[`outbound_federation_restricted_to`](#outbound_federation_restricted_to) needs a HTTP replication listener, and that
listener should be included in the `instance_map`. The main process also needs an entry
on the `instance_map`, and it should be listed under `main` **if even one other worker
exists**. Ensure the port matches with what is declared inside the `listener` block for
a `replication` listener.
When using workers this should be a map from [`worker_name`](#worker_name) to the
HTTP replication listener of the worker, if configured, and to the main process.
Each worker declared under [`stream_writers`](../../workers.md#stream-writers) needs
a HTTP replication listener, and that listener should be included in the `instance_map`.
The main process also needs an entry on the `instance_map`, and it should be listed under
`main` **if even one other worker exists**. Ensure the port matches with what is declared
inside the `listener` block for a `replication` listener.


Example configuration:
Expand Down Expand Up @@ -4005,22 +4004,6 @@ stream_writers:
typing: worker1
```
---
### `outbound_federation_restricted_to`

When using workers, you can restrict outbound federation traffic to only go through a
specific subset of workers. Any worker specified here must also be in the
[`instance_map`](#instance_map).

```yaml
outbound_federation_restricted_to:
- federation_sender1
- federation_sender2
```

Also see the [worker
documentation](../../workers.md#restrict-outbound-federation-traffic-to-a-specific-set-of-workers)
for more info.
---
### `run_background_tasks_on`

The [worker](../../workers.md#background-tasks) that is used to run
Expand Down
20 changes: 0 additions & 20 deletions docs/workers.md
Expand Up @@ -531,26 +531,6 @@ the stream writer for the `presence` stream:

^/_matrix/client/(api/v1|r0|v3|unstable)/presence/

#### Restrict outbound federation traffic to a specific set of workers

The `outbound_federation_restricted_to` configuration is useful to make sure outbound
federation traffic only goes through a specified subset of workers. This allows you to
set more strict access controls (like a firewall) for all workers and only allow the
`federation_sender`'s to contact the outside world.

```yaml
instance_map:
main:
host: localhost
port: 8030
federation_sender1:
host: localhost
port: 8034

outbound_federation_restricted_to:
- federation_sender1
```

#### Background tasks

There is also support for moving background tasks to a separate
Expand Down

0 comments on commit 517654f

Please sign in to comment.