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

Add type hints to handlers.message and events.builder #8067

Merged
merged 4 commits into from
Aug 12, 2020

Conversation

erikjohnston
Copy link
Member

No description provided.

room_id: str,
event_type: str,
state_key: str,
is_guest: bool,
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is called from one place, and it uses everything. The event_type isn't actually optional was what caused me to change these.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK FINE A COUPLE OF TESTS WERE USING IT BUT SHHHHHHH

@@ -1000,7 +1004,7 @@ async def _remote_join(

check_complexity = self.hs.config.limit_remote_rooms.enabled
if check_complexity and self.hs.config.limit_remote_rooms.admins_can_join:
check_complexity = not await self.hs.auth.is_server_admin(user)
check_complexity = not await self.hs.get_auth().is_server_admin(user)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this can just be self.auth? Not really sure why this change was made though.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh yes. I cheekily add the hs: "HomeServer" and "fixed" this without really thinking.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess I'm not sure how this is "fixing" something?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

mypy doesn't know that hs.auth is a thing, as that gets magically set the first time someone calls hs.get_auth(), so now that it knows that self.hs is a HomeServer object it complains that it doesn't have a auth attribute

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah! We seem to store this as self.auth in the __init__, should we just use that instead and avoid the property access?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Already done 😇

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This would explain why this became outdated and I didn't realize it. 🤦

@erikjohnston erikjohnston merged commit 5dd73d0 into develop Aug 12, 2020
@erikjohnston erikjohnston deleted the erikj/message_typing branch August 12, 2020 14:05
reivilibre added a commit that referenced this pull request Aug 13, 2020
Synapse 1.19.0rc1 (2020-08-13)
==============================

Removal warning
---------------

As outlined in the [previous release](https://github.com/matrix-org/synapse/releases/tag/v1.18.0), we are no longer publishing Docker images with the `-py3` tag suffix. On top of that, we have also removed the `latest-py3` tag. Please see [the announcement in the upgrade notes for 1.18.0](https://github.com/matrix-org/synapse/blob/develop/UPGRADE.rst#upgrading-to-v1180).

Features
--------

- Add option to allow server admins to join rooms which fail complexity checks. Contributed by @lugino-emeritus. ([\#7902](#7902))
- Add an option to purge room or not with delete room admin endpoint (`POST /_synapse/admin/v1/rooms/<room_id>/delete`). Contributed by @dklimpel. ([\#7964](#7964))
- Add rate limiting to users joining rooms. ([\#8008](#8008))
- Add a `/health` endpoint to every configured HTTP listener that can be used as a health check endpoint by load balancers. ([\#8048](#8048))
- Allow login to be blocked based on the values of SAML attributes. ([\#8052](#8052))
- Allow guest access to the `GET /_matrix/client/r0/rooms/{room_id}/members` endpoint, according to MSC2689. Contributed by Awesome Technologies Innovationslabor GmbH. ([\#7314](#7314))

Bugfixes
--------

- Fix a bug introduced in Synapse v1.7.2 which caused inaccurate membership counts in the room directory. ([\#7977](#7977))
- Fix a long standing bug: 'Duplicate key value violates unique constraint "event_relations_id"' when message retention is configured. ([\#7978](#7978))
- Fix "no create event in auth events" when trying to reject invitation after inviter leaves. Bug introduced in Synapse v1.10.0. ([\#7980](#7980))
- Fix various comments and minor discrepencies in server notices code. ([\#7996](#7996))
- Fix a long standing bug where HTTP HEAD requests resulted in a 400 error. ([\#7999](#7999))
- Fix a long-standing bug which caused two copies of some log lines to be written when synctl was used along with a MemoryHandler logger. ([\#8011](#8011), [\#8012](#8012))

Updates to the Docker image
---------------------------

- We no longer publish Docker images with the `-py3` tag suffix, as [announced in the upgrade notes](https://github.com/matrix-org/synapse/blob/develop/UPGRADE.rst#upgrading-to-v1180). ([\#8056](#8056))

Improved Documentation
----------------------

- Document how to set up a client .well-known file and fix several pieces of outdated documentation. ([\#7899](#7899))
- Improve workers docs. ([\#7990](#7990), [\#8000](#8000))
- Fix typo in `docs/workers.md`. ([\#7992](#7992))
- Add documentation for how to undo a room shutdown. ([\#7998](#7998), [\#8010](#8010))

Internal Changes
----------------

- Reduce the amount of whitespace in JSON stored and sent in responses. Contributed by David Vo. ([\#7372](#7372))
- Switch to the JSON implementation from the standard library and bump the minimum version of the canonicaljson library to 1.2.0. ([\#7936](#7936), [\#7979](#7979))
- Convert various parts of the codebase to async/await. ([\#7947](#7947), [\#7948](#7948), [\#7949](#7949), [\#7951](#7951), [\#7963](#7963), [\#7973](#7973), [\#7975](#7975), [\#7976](#7976), [\#7981](#7981), [\#7987](#7987), [\#7989](#7989), [\#8003](#8003), [\#8014](#8014), [\#8016](#8016), [\#8027](#8027), [\#8031](#8031), [\#8032](#8032), [\#8035](#8035), [\#8042](#8042), [\#8044](#8044), [\#8045](#8045), [\#8061](#8061), [\#8062](#8062), [\#8063](#8063), [\#8066](#8066), [\#8069](#8069), [\#8070](#8070))
- Move some database-related log lines from the default logger to the database/transaction loggers. ([\#7952](#7952))
- Add a script to detect source code files using non-unix line terminators. ([\#7965](#7965), [\#7970](#7970))
- Log the SAML session ID during creation. ([\#7971](#7971))
- Implement new experimental push rules for some users. ([\#7997](#7997))
- Remove redundant and unreliable signature check for v1 Identity Service lookup responses. ([\#8001](#8001))
- Improve the performance of the register endpoint. ([\#8009](#8009))
- Reduce less useful output in the newsfragment CI step. Add a link to the changelog section of the contributing guide on error. ([\#8024](#8024))
- Rename storage layer objects to be more sensible. ([\#8033](#8033))
- Change the default log config to reduce disk I/O and storage for new servers. ([\#8040](#8040))
- Add an assertion on `prev_events` in `create_new_client_event`. ([\#8041](#8041))
- Add a comment to `ServerContextFactory` about the use of `SSLv23_METHOD`. ([\#8043](#8043))
- Log `OPTIONS` requests at `DEBUG` rather than `INFO` level to reduce amount logged at `INFO`. ([\#8049](#8049))
- Reduce amount of outbound request logging at `INFO` level. ([\#8050](#8050))
- It is no longer necessary to explicitly define `filters` in the logging configuration. (Continuing to do so is redundant but harmless.) ([\#8051](#8051))
- Add and improve type hints. ([\#8058](#8058), [\#8064](#8064), [\#8060](#8060), [\#8067](#8067))
anoadragon453 added a commit that referenced this pull request Aug 14, 2020
…ault_templates

* 'develop' of github.com:matrix-org/synapse: (57 commits)
  Remove a space at the start of a changelog entry.
  More changelog tweaks
  More changelog tweaks
  Remove unwanted changelog line
  1.19.0rc1
  Run `remove_push_actions_from_staging` in foreground (#8081)
  Drop federation transmission queues during a significant remote outage. (#7864)
  Fix unawaited coroutine error in tests. (#8072)
  Convert the roommember database to async/await. (#8070)
  Convert devices database to async/await. (#8069)
  Add type hints to handlers.message and events.builder (#8067)
  Convert account data, device inbox, and censor events databases to async/await (#8063)
  Convert appservice, group server, profile and more databases to async (#8066)
  Fix typing for notifier (#8064)
  Convert tags and metrics databases to async/await (#8062)
  Converts event_federation and registration databases to async/await (#8061)
  Add comment explaining cast
  Update changelog.d/8051.misc
  Add typing info to Notifier (#8058)
  Handle optional dependencies for Oidc and Saml
  ...
anoadragon453 added a commit that referenced this pull request Aug 26, 2020
…anoa/amorgan.xyz

* 'release-v1.19.1' of github.com:matrix-org/synapse: (197 commits)
  Changelog fixes
  1.19.1rc1
  Fix join ratelimiter breaking profile updates and idempotency (#8153)
  Do not apply ratelimiting on joins to appservices (#8139)
  Changelog changes
  1.19.0
  More changelog tweaks
  More changelog tweaks
  Remove unwanted changelog line
  1.19.0rc1
  Convert the roommember database to async/await. (#8070)
  Convert devices database to async/await. (#8069)
  Add type hints to handlers.message and events.builder (#8067)
  Convert account data, device inbox, and censor events databases to async/await (#8063)
  Convert appservice, group server, profile and more databases to async (#8066)
  Fix typing for notifier (#8064)
  Convert tags and metrics databases to async/await (#8062)
  Converts event_federation and registration databases to async/await (#8061)
  Add comment explaining cast
  Update changelog.d/8051.misc
  ...
babolivier pushed a commit that referenced this pull request Sep 1, 2021
* commit '5dd73d029':
  Add type hints to handlers.message and events.builder (#8067)
Fizzadar pushed a commit to Fizzadar/synapse that referenced this pull request Oct 26, 2021
Merge branch 'master' of gitlab.com:nova/synapse into seandon/synapse-users-query

* 'master' of gitlab.com:nova/synapse: (97 commits)
  Changelog changes
  1.19.0
  More changelog tweaks
  More changelog tweaks
  Remove unwanted changelog line
  1.19.0rc1
  Convert the roommember database to async/await. (matrix-org#8070)
  Convert devices database to async/await. (matrix-org#8069)
  Add type hints to handlers.message and events.builder (matrix-org#8067)
  Convert account data, device inbox, and censor events databases to async/await (matrix-org#8063)
  Convert appservice, group server, profile and more databases to async (matrix-org#8066)
  Fix typing for notifier (matrix-org#8064)
  Convert tags and metrics databases to async/await (matrix-org#8062)
  Converts event_federation and registration databases to async/await (matrix-org#8061)
  Add comment explaining cast
  Update changelog.d/8051.misc
  Add typing info to Notifier (matrix-org#8058)
  Handle optional dependencies for Oidc and Saml
  Newsfile
  Move setting of Filter into code.
  ...
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants