Shay
301b4156d5
Add column `full_user_id` to tables `profiles` and `user_filters`. ( #15458 )
2023-04-26 16:03:26 -07:00
Quentin Gliech
5b70f240cf
Make cleaning up pushers depend on the device_id instead of the token_id ( #15280 )
...
This makes it so that we rely on the `device_id` to delete pushers on logout,
instead of relying on the `access_token_id`. This ensures we're not removing
pushers on token refresh, and prepares for a world without access token IDs
(also known as the OIDC).
This actually runs the `set_device_id_for_pushers` background update, which
was forgotten in #13831 .
Note that for backwards compatibility it still deletes pushers based on the
`access_token` until the background update finishes.
2023-03-24 11:09:39 -04:00
Patrick Cloke
4fc8875876
Refactor media modules. ( #15146 )
...
* Removes the `v1` directory from `test.rest.media.v1`.
* Moves the non-REST code from `synapse.rest.media.v1` to `synapse.media`.
* Flatten the `v1` directory from `synapse.rest.media`, but leave compatiblity
with 3rd party media repositories and spam checkers.
2023-02-27 08:26:05 -05:00
Patrick Cloke
42aea0d8af
Add final type hint to tests.unittest. ( #15072 )
...
Adds a return type to HomeServerTestCase.make_homeserver and deal
with any variables which are no longer Any.
2023-02-14 14:03:35 -05:00
Shay
03bccd542b
Add a class UnpersistedEventContext to allow for the batching up of storing state groups ( #14675 )
...
* add class UnpersistedEventContext
* modify create new client event to create unpersistedeventcontexts
* persist event contexts after creation
* fix tests to persist unpersisted event contexts
* cleanup
* misc lints + cleanup
* changelog + fix comments
* lints
* fix batch insertion?
* reduce redundant calculation
* add unpersisted event classes
* rework compute_event_context, split into function that returns unpersisted event context and then persists it
* use calculate_context_info to create unpersisted event contexts
* update typing
* $%#^&*
* black
* fix comments and consolidate classes, use attr.s for class
* requested changes
* lint
* requested changes
* requested changes
* refactor to be stupidly explicit
* clearer renaming and flow
* make partial state non-optional
* update docstrings
---------
Co-authored-by: Erik Johnston <erik@matrix.org>
2023-02-09 13:05:02 -08:00
Patrick Cloke
9d8a3234ba
Respond with proper error responses on unknown paths. ( #14621 )
...
Returns a proper 404 with an errcode of M_RECOGNIZED for
unknown endpoints per MSC3743.
2022-12-08 11:37:05 -05:00
Ashish Kumar
a3623af74e
Add an Admin API endpoint for looking up users based on 3PID ( #14405 )
2022-11-11 15:38:17 +00:00
Tadeusz Sośnierz
1433b5d5b6
Show erasure status when listing users in the Admin API ( #14205 )
...
* Show erasure status when listing users in the Admin API
* Use USING when joining erased_users
* Add changelog entry
* Revert "Use USING when joining erased_users"
This reverts commit 30bd2bf106415caadcfdbdd1b234ef2b106cc394.
* Make the erased check work on postgres
* Add a testcase for showing erased user status
* Appease the style linter
* Explicitly convert `erased` to bool to make SQLite consistent with Postgres
This also adds us an easy way in to fix the other accidentally integered columns.
* Move erasure status test to UsersListTestCase
* Include user erased status when fetching user info via the admin API
* Document the erase status in user_admin_api
* Appease the linter and mypy
* Signpost comments in tests
Co-authored-by: Tadeusz Sośnierz <tadeusz@sosnierz.com>
Co-authored-by: David Robertson <david.m.robertson1@gmail.com>
2022-10-21 13:52:44 +01:00
Brendan Abolivier
be76cd8200
Allow admins to require a manual approval process before new accounts can be used (using MSC3866) ( #13556 )
2022-09-29 15:23:24 +02:00
Brendan Abolivier
8ae42ab8fa
Support enabling/disabling pushers (from MSC3881) ( #13799 )
...
Partial implementation of MSC3881
2022-09-21 14:39:01 +00:00
Quentin Gliech
74f60cec92
Add an admin API endpoint to find a user based on its external ID in an auth provider. ( #13810 )
2022-09-16 12:29:03 +00:00
Dirk Klimpel
f799eac7ea
Add timestamp to user's consent ( #13741 )
...
Co-authored-by: reivilibre <olivier@librepush.net>
2022-09-08 15:41:48 +00:00
Andrew Morgan
f9f03426de
Implement MSC3852: Expose `last_seen_user_agent` to users for their own devices; also expose to Admin API ( #13549 )
2022-08-19 16:17:10 +00:00
Dirk Klimpel
2281427175
Use literals in place of `HTTPStatus` constants in tests ( #13488 )
...
* Use literals in place of `HTTPStatus` constants in tests
* newsfile
* code style
* code style
2022-08-10 11:01:12 -07:00
Dirk Klimpel
1595052b26
Use literals in place of `HTTPStatus` constants in tests ( #13479 )
...
Replace
- `HTTPStatus.NOT_FOUND`
- `HTTPStatus.FORBIDDEN`
- `HTTPStatus.UNAUTHORIZED`
- `HTTPStatus.CONFLICT`
- `HTTPStatus.CREATED`
Signed-off-by: Dirk Klimpel <dirk@klimpel.org>
2022-08-09 14:56:43 +01:00
Dirk Klimpel
c97042f7ee
Use literals in place of `HTTPStatus` constants in tests ( #13469 )
2022-08-08 13:21:27 -07:00
Dirk Klimpel
96cf81e312
Use HTTPStatus constants in place of literals in tests. ( #13297 )
2022-07-15 19:31:27 +00:00
Thomas Weston
0312ff44c6
Fix "add user" admin api error when request contains a "msisdn" threepid ( #13263 )
...
Co-authored-by: Thomas Weston <thomas.weston@clearspancloud.com>
Co-authored-by: David Robertson <david.m.robertson1@gmail.com>
2022-07-13 11:33:21 +01:00
David Robertson
d102ad67fd
annotate tests.server.FakeChannel ( #13136 )
2022-07-04 18:08:56 +01:00
Erik Johnston
1e453053cb
Rename storage classes ( #12913 )
2022-05-31 12:17:50 +00:00
Richard van der Hoff
f0b03186d9
Add type hints for `tests/unittest.py`. ( #12347 )
...
In particular, add type hints for get_success and friends, which are then helpful in a bunch of places.
2022-04-01 16:04:16 +00:00
David Robertson
fffb3c4c8f
Always allow the empty string as an avatar_url. ( #12261 )
...
Hopefully this fixes #12257 .
Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
2022-03-25 13:28:42 +00:00
Richard van der Hoff
e24ff8ebe3
Remove `HomeServer.get_datastore()` ( #12031 )
...
The presence of this method was confusing, and mostly present for backwards
compatibility. Let's get rid of it.
Part of #11733
2022-02-23 11:04:02 +00:00
Dirk Klimpel
901b264c0c
Add type hints to `tests/rest/admin` ( #11851 )
2022-01-31 14:20:05 -05:00
Andrew Morgan
18862f20b5
Remove the 'password_hash' from the Users Admin API endpoint response dictionary ( #11576 )
2022-01-14 14:53:33 +00:00
Dirk Klimpel
7a1cefc6e3
Add admin API to get users' account data ( #11664 )
...
Co-authored-by: reivilibre <olivier@librepush.net>
2022-01-05 11:49:06 +00:00
Patrick Cloke
9562f0c2f1
Ensure emails are canonicalized before fetching associated user. ( #11547 )
...
This should fix pushers with an email in non-canonical form is used as
the pushkey.
2021-12-10 07:17:28 -05:00
Dirk Klimpel
b3bcacf3c1
Add missing `errcode` to `parse_string` and `parse_boolean` ( #11542 )
2021-12-09 11:23:34 +00:00
Dirk Klimpel
e5f426cd54
Add type hints to `synapse/tests/rest/admin` ( #11501 )
2021-12-03 13:57:13 +00:00
Dirk Klimpel
35b1900f00
Convert status codes to `HTTPStatus` in `tests.rest.admin` ( #11455 )
2021-11-30 09:53:54 +00:00
reivilibre
0d86f6334a
Rename `get_access_token_for_user_id` method to `create_access_token_for_user_id` ( #11369 )
2021-11-17 14:10:57 +00:00
Patrick Cloke
24b61f379a
Add ability to un-shadow-ban via the admin API. ( #11347 )
2021-11-16 12:43:53 +00:00
Jason Robinson
63cbdd8af0
Enable changing user type via users admin API ( #11174 )
...
Users admin API can now also modify user
type in addition to allowing it to be
set on user creation.
Signed-off-by: Jason Robinson <jasonr@matrix.org>
Co-authored-by: Brendan Abolivier <babolivier@matrix.org>
2021-10-26 09:01:06 +00:00
Dirk Klimpel
ef7fe09778
Fix setting a user's external_id via the admin API returns 500 and deletes users existing external mappings if that external ID is already mapped ( #11051 )
...
Fixes #10846
2021-10-21 09:52:32 +01:00
Dirk Klimpel
988de0afb0
Simplify the user admin API tests ( #11048 )
2021-10-12 20:38:48 +01:00
Patrick Cloke
a0f48ee89d
Use direct references for configuration variables (part 7). ( #10959 )
2021-10-04 07:18:54 -04:00
Patrick Cloke
94b620a5ed
Use direct references for configuration variables (part 6). ( #10916 )
2021-09-29 06:44:15 -04:00
Patrick Cloke
bb7fdd821b
Use direct references for configuration variables (part 5). ( #10897 )
2021-09-24 07:25:21 -04:00
Erik Johnston
50022cff96
Add reactor to `SynapseRequest` and fix up types. ( #10868 )
2021-09-24 11:01:25 +01:00
Patrick Cloke
bfb4b858a9
Create a constant for a small png image in tests. ( #10834 )
...
To avoid duplicating it between a few tests.
2021-09-16 12:01:14 -04:00
Dirk Klimpel
220f901229
Remove not needed database updates in modify user admin API ( #10627 )
2021-08-19 10:25:05 +01:00
reivilibre
642a42edde
Flatten the synapse.rest.client package ( #10600 )
2021-08-17 11:57:58 +00:00
Dirk Klimpel
3bcd525b46
Allow to edit `external_ids` by Edit User admin API ( #10598 )
...
Signed-off-by: Dirk Klimpel dirk@klimpel.org
2021-08-17 11:56:11 +01:00
Dirk Klimpel
915b37e5ef
Admin API to delete media for a specific user ( #10558 )
2021-08-11 19:29:59 +00:00
Dirk Klimpel
89c4ca81bb
Add `creation_ts` to list users admin API ( #10448 )
...
Signed-off-by: Dirk Klimpel dirk@klimpel.org
2021-07-22 16:05:16 +02:00
Dirk Klimpel
bcb0962a72
Fix deactivate a user if he does not have a profile ( #10252 )
2021-07-06 13:08:53 +01:00
Dirk Klimpel
6c02cca95f
Add SSO `external_ids` to Query User Account admin API ( #10261 )
...
Related to #10251
2021-07-01 11:26:24 +02:00
Andrew Morgan
fe604a022a
Remove various bits of compatibility code for Python <3.6 ( #9879 )
...
I went through and removed a bunch of cruft that was lying around for compatibility with old Python versions. This PR also will now prevent Synapse from starting unless you're running Python 3.6+.
2021-04-27 13:13:07 +01:00
Jonathan de Jong
495b214f4f
Fix (final) Bugbear violations ( #9838 )
2021-04-20 11:50:49 +01:00
Jonathan de Jong
4b965c862d
Remove redundant "coding: utf-8" lines ( #9786 )
...
Part of #9744
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