Eric Eastwood
04084ae224
Re-organize metrics resource
2025-06-23 11:54:51 -05:00
Eric Eastwood
d0604463f6
Remove tests which don't assert anything beyond what the util already does
2025-06-23 11:53:35 -05:00
Eric Eastwood
07c680633f
Update minimum version of prometheus-client so prometheus_client.metrics is available
...
See https://github.com/element-hq/synapse/pull/18584#discussion_r2159707081
2025-06-20 17:00:41 -05:00
Eric Eastwood
16e87ed5c9
Restore _set_prometheus_client_use_created_metrics tests
2025-06-20 16:51:54 -05:00
Eric Eastwood
cfdacb8664
Fix lints
2025-06-20 16:41:28 -05:00
Eric Eastwood
adaf5b0fa3
Update with new state of reality
2025-06-20 16:18:19 -05:00
Eric Eastwood
bb3904cac9
Restore _set_prometheus_client_use_created_metrics
...
See https://github.com/element-hq/synapse/pull/18584#discussion_r2159670686
2025-06-20 16:15:02 -05:00
Eric Eastwood
8ccd52c93c
Fix lints
2025-06-20 15:38:59 -05:00
Eric Eastwood
54b836cce6
Remove tests for _set_prometheus_client_use_created_metrics (which was removed)
2025-06-20 15:38:26 -05:00
Eric Eastwood
3b05b5efe9
Add changelog
2025-06-20 15:37:49 -05:00
Eric Eastwood
3e16b887ed
Remove stray file
2025-06-20 15:14:31 -05:00
Eric Eastwood
6e47458b91
Fix lints
2025-06-20 15:13:20 -05:00
Eric Eastwood
1fe3fa40a8
Disable _created metrics via dedicated built-in function
...
Added in https://github.com/prometheus/client_python/pull/973
2025-06-20 15:09:36 -05:00
Eric Eastwood
bb31f6097c
Remove metrics listener type in favor of http listener with metrics resource
2025-06-20 11:51:54 -05:00
Travis Ralston
74ca7ae720
Add report user API from MSC4260 ( #18120 )
...
Co-authored-by: turt2live <1190097+turt2live@users.noreply.github.com >
Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com >
2025-06-20 13:02:14 +01:00
Erik Johnston
5102565369
Fixup generated config documentation ( #18568 )
...
Somehow its got out of sync, picked up by CI on develop.
2025-06-18 16:40:52 +01:00
Erik Johnston
33e0c25279
Clean up old device_federation_inbox rows ( #18546 )
...
Fixes https://github.com/element-hq/synapse/issues/17370
2025-06-18 11:58:31 +00:00
Erik Johnston
73a38384f5
Merge branch 'master' into develop
2025-06-17 15:33:18 +01:00
dependabot[bot]
4a803e8257
Bump dawidd6/action-download-artifact from 9 to 11 ( #18556 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-17 13:47:42 +01:00
dependabot[bot]
51dbbbb40f
Bump types-requests from 2.32.0.20250328 to 2.32.4.20250611 ( #18558 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-17 13:43:01 +01:00
dependabot[bot]
6363d63822
Bump actions/setup-python from 5.5.0 to 5.6.0 ( #18555 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-17 13:42:28 +01:00
Erik Johnston
d1139ebfc1
1.132.0
v1.132.0
2025-06-17 13:16:57 +01:00
Erik Johnston
3e571561c9
Fix Cargo.lock after bad merge ( #18561 )
...
Broke in #18357
2025-06-17 11:01:32 +01:00
Erik Johnston
a3b80071cd
Always run schema workflow on develop ( #18551 )
...
... and release branches, so that we catch any problems that slip trough
PR review.
2025-06-17 10:57:34 +01:00
Erik Johnston
f500c7d982
Speed up MAS token introspection ( #18357 )
...
We do this by shoving it into Rust. We believe our python http client is
a bit slow.
Also bumps minimum rust version to 1.81.0, released last September (over
six months ago)
To allow for async Rust, includes some adapters between Tokio in Rust
and the Twisted reactor in Python.
2025-06-16 16:41:35 +01:00
dependabot[bot]
df04931f0b
Bump base64 from 0.21.7 to 0.22.1 ( #18559 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-16 16:33:51 +01:00
Kegan Dougal
f56670515b
bugfix: assert we always pass the create event to get_user_power_level ( #18545 )
...
The create event is required if there is no PL event, in which case the
creator gets PL100.
### 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: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com >
2025-06-13 16:32:24 +00:00
Kegan Dougal
db8a8d33fe
bugfix: calculate the PL for non-creators correctly in v11 rooms ( #18547 )
...
Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com >
2025-06-13 12:56:39 +01:00
Andrew Morgan
3b94e40cc8
Fix typo of Math.pow, ^ -> ** ( #18543 )
2025-06-13 11:36:21 +00:00
dependabot[bot]
6b1e3c9c66
Bump requests from 2.32.2 to 2.32.4 ( #18533 )
2025-06-13 12:34:38 +01:00
Erik Johnston
1709957395
Fix bug where sliding sync ignored room_id_to_include option ( #18535 )
...
This was correctly handled for the "fallback" case where the background
updates hadn't finished
---------
Co-authored-by: Eric Eastwood <erice@element.io >
2025-06-13 11:29:23 +01:00
Quentin Gliech
0de7aa9953
Enable flake8-logging and flake8-logging-format rules in Ruff and fix related issues throughout the codebase ( #18542 )
...
This can be reviewed commit by commit.
This enables the `flake8-logging` and `flake8-logging-format` rules in
Ruff, as well as logging exception stack traces in a few places where it
makes sense
- https://docs.astral.sh/ruff/rules/#flake8-logging-log
- https://docs.astral.sh/ruff/rules/#flake8-logging-format-g
### Linting to avoid pre-formatting log messages
See [`adamchainz/flake8-logging` -> *LOG011 avoid pre-formatting log
messages*](https://github.com/adamchainz/flake8-logging/blob/152db2f167355fb23e401bf68046c57cb128a2ae/README.rst#log011-avoid-pre-formatting-log-messages )
Practically, this means prefer placeholders (`%s`) over f-strings for
logging.
This is because placeholders are passed as args to loggers, so they can
do special handling of them.
For example, Sentry will record the args separately in their logging
integration:
https://github.com/getsentry/sentry-python/blob/c15b390dfe1ca5c01b30dd56b35d693bb50b413c/sentry_sdk/integrations/logging.py#L280-L284
One theoretical small perf benefit is that log levels that aren't
enabled won't get formatted, so it doesn't unnecessarily create
formatted strings
2025-06-13 09:44:18 +02:00
Will Hunt
e4ca593eb6
Log user deactivations ( #18541 )
...
One liner to give us more clarity when auditing deactivations of user
accounts.
### Pull Request Checklist
<!-- Please read
https://element-hq.github.io/synapse/latest/development/contributing_guide.html
before submitting your pull request -->
* [ ] Pull request is based on the develop branch
* [ ] 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.
* [ ] [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 ))
2025-06-12 10:21:39 +00:00
Kegan Dougal
978032141b
bugfix: ensure _get_power_level_for_sender works when there is no PL event ( #18534 )
2025-06-10 15:11:49 +01:00
dependabot[bot]
142ba5df89
Bump headers from 0.4.0 to 0.4.1 ( #18529 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-10 14:38:54 +01:00
Andrew Morgan
eb5dfc19e5
Merge branch 'release-v1.132' into develop
2025-06-10 12:55:36 +01:00
reivilibre
cc6b4980ef
Add config doc generation command to lint.sh and add missing config schema. ( #18522 )
...
Follows: #17892 , #18456
<ol>
<li>
Add config doc generation command to lint.sh
</li>
<li>
Add missing `user_types` config schema
</li>
</ol>
---------
Signed-off-by: Olivier 'reivilibre <oliverw@matrix.org >
2025-06-10 12:45:31 +01:00
reivilibre
d5da07703d
Config schema documentation CI: fix not failing when it should ( #18528 )
...
Follows: #17892 <!-- -->
<ol>
<li>
Config documentation CI: fix not failing if changes are outstanding
</li>
</ol>
Shown to work at :
https://github.com/element-hq/synapse/actions/runs/15532406886/job/43724019104?pr=18528
---------
Signed-off-by: Olivier 'reivilibre <oliverw@matrix.org >
2025-06-10 12:44:04 +01:00
reivilibre
96c556081a
Add config doc generation command to lint.sh and add missing config schema. ( #18522 )
...
Follows: #17892 , #18456
<ol>
<li>
Add config doc generation command to lint.sh
</li>
<li>
Add missing `user_types` config schema
</li>
</ol>
---------
Signed-off-by: Olivier 'reivilibre <oliverw@matrix.org >
2025-06-10 12:43:58 +01:00
Andrew Morgan
5581fbb906
1.132.0rc1
v1.132.0rc1
2025-06-10 11:18:17 +01:00
Andrew Morgan
1ab35a0a78
Mark new module APIs as experimental ( #18536 )
2025-06-10 11:13:47 +01:00
nexy7574
341d956ee6
Default to public join rule in remote summary ( #18493 )
...
See: https://github.com/element-hq/synapse/issues/18358#issuecomment-2866119550
2025-06-09 10:59:49 +00:00
Emmanuel Ferdman
6521406a37
Migrate to assertEqual ( #18488 )
...
This small PR migrates from `unittest.assertEquals` to
`unittest.assertEqual` which is deprecated from Python2.7:
```python
DeprecationWarning: Please use assertEqual instead.
```
Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com >
2025-06-06 16:14:09 +01:00
Will Hunt
6e600c986e
Don't allow users to ignore themselves. ( #18508 )
...
Fixes the self-ignore issues we've being seeing of reports of by
ignoring bad requests from clients.
Fixes https://github.com/element-hq/synapse/issues/11963
Fix https://github.com/element-hq/element-web/issues/29969 although this
should also be fixed on the client to avoid confusing errors popping up
while rejecting invites.
Related to https://github.com/matrix-org/matrix-rust-sdk/issues/5073
2025-06-06 15:37:15 +01:00
Will Hunt
d285d76185
Recover an appservice if a successful ping occurs. ( #18521 )
...
Fixes https://github.com/element-hq/synapse/issues/14240
This scratches an itch that i've had for years. We regularly run into
the issue where (especially in development) appservices can go down for
a period and them come back up. The ping endpoint was introduced some
time ago which means Synapse can determine if an AS is up more or less
immediately, so we might as well use that to schedule transaction
redelivery.
I believe transaction scheduling logic is largely implementation
specific, so we should be in the clear to do this without any spec
changes.
2025-06-06 11:59:38 +00:00
Devon Hudson
919c362466
Remove destinations from sending if not whitelisted ( #18484 )
...
Co-authored-by: Andrew Morgan <andrew@amorgan.xyz >
2025-06-06 11:19:58 +00:00
Hugh Nimmo-Smith
82189cbde4
Export RatelimitOverride from ModuleApi ( #18513 )
2025-06-06 10:48:49 +00:00
Eric Eastwood
e80bc4b062
Distinguish all vs local events being persisted in the "Event Send Time Quantiles" graph ( #18510 )
...
(Applies to the Grafana graphs)
As discovered by @devonh, we use `synapse_storage_events_persisted_events_total` (which tracks *all* persisted events) for the "Events" rate in the "Event Send Time Quantiles" graph. This is pretty misleading as I would expect it to be the rate of events being sent given the graph title, "Event Send Time Quantiles".
Since the event persistence queues are shared for local and remote events from federation and will block local events being sent, I think it does still make sense to have the event persist rate. I've updated the graph to include the rate of "Local events being persisted" and the rate of "All events being persisted". I think this properly disambiguates and clarifies what the graph is trying to show.
2025-06-05 15:30:28 -05:00
Dirk Klimpel
865d43b4b3
docs: render missing docs for scheduled tasks admin api ( #18516 )
...
Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com >
2025-06-05 15:02:40 +01:00
reivilibre
0b9f1757a7
Reduce disk wastage by cleaning up received_transactions older than 1 day, rather than 30 days. ( #18310 )
...
Clean up `received_transactions` older than 1 day, rather than 30 days \
Reduces disk waste by homeservers
Closes #6437
---------
Signed-off-by: Olivier 'reivilibre <oliverw@matrix.org >
2025-06-05 11:14:02 +00:00