develop
Remove redundant "coding: utf-8" lines (#9786)
Convert simple_select_one_txn and simple_select_one to return tuples. (#16612)
Replace make_awaitable with AsyncMock (#16179)
Bump black from 22.12.0 to 23.1.0 (#15103)
Expose OIDC discovery information under the CSAPI (#16726)
Implement stable support for MSC3882 to allow an existing device/session to generate a login token for use on a new device/session (#15388)
Support MSC3814: Dehydrated Devices Part 2 (#16010)
Use full GitHub links instead of bare issue numbers. (#16637)
Bump mypy-zope & mypy. (#16188)
Drop support for calling `/_matrix/client/v3/rooms/{roomId}/invite` without an `id_access_token` (#13241)
Keep track of `user_ips` and `monthly_active_users` when delegating auth (#16672)
Update ruff config (#16283)
Add support for pydantic v2 via pydantic.v1 compat module (#16332)
Update Mutual Rooms (MSC2666) implementation (#15621)
Replace simple_async_mock with AsyncMock (#16180)
Remove unnecessary `json.dumps` from tests (#13303)
Add type hints to `tests/rest/client` (#12072)
Add a new module API to update user presence state. (#16544)
Implement MSC4069: Inhibit profile propagation (#16636)
push rules: fix internal conversion from _type to value (#15781)
Clear event caches when we purge history (#15609)
Additional validation of receipts (#16327)
Run pyupgrade for python 3.7 & 3.8. (#16110)
Prepare unit tests for Python 3.12 (#16099)
Make `POST /_matrix/client/v3/rooms/{roomId}/report/{eventId}` endpoint return 404 if event exists, but the user lacks access (#15300)
Add new module API for adding custom fields to events `unsigned` section (#16549)
Additional constants for EDU types. (#12884)
Do not allow a None-limit on PaginationConfig. (#14146)
Fix upgrading a room without `events` field in power levels (#16725)
Register media servlets via regex. (#16419)