1
0
Fork 0
mirror of https://github.com/element-hq/synapse.git synced 2025-03-21 15:22:26 +00:00
Commit graph

60 commits

Author SHA1 Message Date
Erik Johnston
23740eaa3d
Correctly mention previous copyright ()
During the migration the automated script to update the copyright
headers accidentally got rid of some of the existing copyright lines.
Reinstate them.
2024-01-23 11:26:48 +00:00
Patrick Cloke
8e1e62c9e0 Update license headers 2023-11-21 15:29:58 -05:00
Patrick Cloke
9407d5ba78
Convert simple_select_list and simple_select_list_txn to return lists of tuples ()
This should use fewer allocations and improves type hints.
2023-10-26 13:01:36 -04:00
Patrick Cloke
6ad1f9eac2
Convert DeviceLastConnectionInfo to attrs. ()
To improve type safety & memory usage.
2023-10-17 12:47:42 +00:00
V02460
84f441f88f
Prepare unit tests for Python 3.12 () 2023-08-25 15:05:10 -04:00
Patrick Cloke
daf11e26ef
Replace make_awaitable with AsyncMock ()
Python 3.8 provides a native AsyncMock, we can replace the
homegrown version we have.
2023-08-24 19:38:46 -04:00
Neil Johnson
ec662bbe41
Filter out unwanted user_agents from udv. () 2023-08-23 14:00:34 +01:00
Erik Johnston
6204c3663e
Revert pruning of old devices ()
* Revert "Fix registering a device on an account with lots of devices ()"

This reverts commit f0d8f66eaa.

* Revert "Delete stale non-e2e devices for users, take 3 ()"

This reverts commit 78cdb72cd6.
2023-03-31 13:51:51 +01:00
Erik Johnston
78cdb72cd6
Delete stale non-e2e devices for users, take 3 ()
This should help reduce the number of devices e.g. simple bots the repeatedly login rack up.

We only delete non-e2e devices as they should be safe to delete, whereas if we delete e2e devices for a user we may accidentally break their ability to receive e2e keys for a message.
2023-03-29 12:07:14 +01:00
dependabot[bot]
9bb2eac719
Bump black from 22.12.0 to 23.1.0 () 2023-02-22 15:29:09 -05:00
reivilibre
74b89c2761
Revert the deletion of stale devices due to performance issues. () 2022-12-12 13:55:23 +00:00
Patrick Cloke
3ac412b4e2
Require types in tests.storage. ()
Adds missing type hints to `tests.storage` package
and does not allow untyped definitions.
2022-12-09 12:36:32 -05:00
Erik Johnston
c2de2ca630
Delete stale non-e2e devices for users, take 2 ()
This should help reduce the number of devices e.g. simple bots the repeatedly login rack up.

We only delete non-e2e devices as they should be safe to delete, whereas if we delete e2e devices for a user we may accidentally break their ability to receive e2e keys for a message.
2022-12-09 09:37:07 +00:00
David Robertson
c29e2c6306
Revert "POC delete stale non-e2e devices for users ()" () 2022-11-29 17:48:48 +00:00
Erik Johnston
c7e29ca277
POC delete stale non-e2e devices for users ()
This should help reduce the number of devices e.g. simple bots the repeatedly login rack up.

We only delete non-e2e devices as they should be safe to delete, whereas if we delete e2e devices for a user we may accidentally break their ability to receive e2e keys for a message.

Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
Co-authored-by: Sean Quah <8349537+squahtx@users.noreply.github.com>
2022-11-29 10:36:41 +00:00
Richard van der Hoff
e24ff8ebe3
Remove HomeServer.get_datastore() ()
The presence of this method was confusing, and mostly present for backwards
compatibility. Let's get rid of it.

Part of 
2022-02-23 11:04:02 +00:00
Sean Quah
2451003f6f
Test that ClientIpStore combines database and in-memory data correctly () 2021-11-01 11:20:54 +00:00
Sean Quah
b8b905c4ea
Fix inconsistent behavior of get_last_client_by_ip ()
Make `get_last_client_by_ip` return the same dictionary structure
regardless of whether the data has been persisted to the database.

This change will allow slightly cleaner type hints to be applied later
on.
2021-10-12 11:24:05 +01:00
David Robertson
370bca32e6
Don't drop user dir deltas when server leaves room ()
Fix a long-standing bug where a batch of user directory changes would be
silently dropped if the server left a room early in the batch.

* Pull out `wait_for_background_update` in tests

Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2021-10-06 12:56:45 +00:00
Sean Quah
d1cbad388f
Fix error in get_user_ip_and_agents when fetching from the database () 2021-10-01 17:22:13 +01:00
reivilibre
642a42edde
Flatten the synapse.rest.client package () 2021-08-17 11:57:58 +00:00
Jonathan de Jong
4b965c862d
Remove redundant "coding: utf-8" lines ()
Part of 

Removes all redundant `# -*- coding: utf-8 -*-` lines from files, as python 3 automatically reads source code as utf-8 now.

`Signed-off-by: Jonathan de Jong <jonathan@automatia.nl>`
2021-04-14 15:34:27 +01:00
Patrick Cloke
0b3112123d
Use mock from the stdlib. () 2021-04-09 13:44:38 -04:00
Dirk Klimpel
48a1f4db31
Remove old admin API GET /_synapse/admin/v1/users/<user_id> ()
Related: 
Deprecated in:  - Synapse 1.28.0 (2021-02-25)

`GET /_synapse/admin/v1/users/<user_id>` has no
- unit tests
- documentation

API in v2 is available ( - 12/2019, v1.7.0).
API is misleading. It expects `user_id` and returns a list of all users.

Signed-off-by: Dirk Klimpel dirk@klimpel.org
2021-04-09 09:44:40 +01:00
Eric Eastwood
0a00b7ff14
Update black, and run auto formatting over the codebase ()
- Update black version to the latest
 - Run black auto formatting over the codebase
    - Run autoformatting according to [`docs/code_style.md
`](80d6dc9783/docs/code_style.md)
 - Update `code_style.md` docs around installing black to use the correct version
2021-02-16 22:32:34 +00:00
Dirk Klimpel
3f0ff53158
Remove deprecated /_matrix/client/*/admin endpoints ()
These are now only available via `/_synapse/admin/v1`.
2020-11-25 16:26:11 -05:00
Richard van der Hoff
be8fa65d0b Remove redundant calls to render() 2020-11-16 18:24:08 +00:00
Richard van der Hoff
c3e3552ec4 fixup test 2020-11-16 15:51:47 +00:00
Richard van der Hoff
ebc405446e
Add a custom_headers param to make_request ()
Some tests want to set some custom HTTP request headers, so provide a way to do
that before calling requestReceived().
2020-11-16 14:45:22 +00:00
Dan Callahan
aff1eb7c67
Tell Black to format code for Python 3.5 ()
This allows trailing commas in multi-line arg lists.

Minor, but we might as well keep our formatting current with regard to
our minimum supported Python version.

Signed-off-by: Dan Callahan <danc@element.io>
2020-10-27 23:26:36 +00:00
Patrick Cloke
cef00211c8
Allow for make_awaitable's return value to be re-used. () 2020-09-08 07:26:55 -04:00
Patrick Cloke
b49a5b9307
Convert stats and related calls to async/await () 2020-08-27 17:24:37 -04:00
Erik Johnston
a7bdf98d01
Rename database classes to make some sense () 2020-08-05 21:38:57 +01:00
Richard van der Hoff
f4269694ce
Optimise some references to hs.config ()
These are surprisingly expensive, and we only really need to do them at startup.
2020-05-22 21:47:07 +01:00
Richard van der Hoff
40eda84933
Fix race which caused deleted devices to reappear ()
Stop the `update_client_ips` background job from recreating deleted devices.
2019-12-10 16:22:29 +00:00
Erik Johnston
4a33a6dd19 Move background update handling out of store 2019-12-05 11:11:26 +00:00
Erik Johnston
756d4942f5 Move DB pool and helper functions into dedicated Database class 2019-12-05 10:46:37 +00:00
Erik Johnston
ee86abb2d6 Remove underscore from SQLBaseStore functions 2019-12-04 16:23:43 +00:00
Erik Johnston
faac453f08 Test that pruning of old user IPs works 2019-09-24 15:53:17 +01:00
Erik Johnston
acb62a7cc6 Test background update 2019-09-23 16:59:45 +01:00
Erik Johnston
51d28272e2 Query devices table for last seen info.
This is a) simpler than querying user_ips directly and b) means we can
purge older entries from user_ips without losing the required info.

The storage functions now no longer return the access_token, since it
was unused.
2019-09-23 16:59:45 +01:00
Richard van der Hoff
953dbb7980
Remove access-token support from RegistrationStore.register ()
The 'token' param is no longer used anywhere except the tests, so let's kill
that off too.
2019-07-10 16:26:49 +01:00
Amber Brown
32e7c9e7f2
Run Black. () 2019-06-20 19:32:02 +10:00
Richard van der Hoff
12f9d51e82
Add admin api for sending server_notices () 2019-05-02 11:59:16 +01:00
Richard van der Hoff
40e576e29c Move admin api impl to its own package
It doesn't really belong under rest/client/v1 any more.
2019-05-01 15:44:30 +01:00
Amber Brown
7960c26fda
Fix adding new rows instead of updating them if one of the key values is a NULL in upserts. () 2019-01-09 22:26:25 +11:00
Amber Brown
6e05fd032c
Fix userconsent on Python 3 () 2018-10-02 00:11:58 +10:00
Amber Brown
1f3f5fcf52
Fix client IPs being broken on Python 3 () 2018-09-20 20:14:34 +10:00
Neil Johnson
84a750e0c3 ensure guests never enter mau list 2018-09-06 17:22:53 +01:00
Neil Johnson
414d54b61a
Merge pull request from matrix-org/neilj/mau_sync_block
Block ability to read via sync if mau limit exceeded
2018-08-14 15:21:31 +00:00