This repository was archived by the owner on Apr 26, 2024. It is now read-only.
Refactor the code that sends state events into new rooms#13291
Closed
anoadragon453 wants to merge 5 commits intodevelopfrom
Closed
Refactor the code that sends state events into new rooms#13291anoadragon453 wants to merge 5 commits intodevelopfrom
anoadragon453 wants to merge 5 commits intodevelopfrom
Conversation
d54dc47 to
f17677e
Compare
anoadragon453
commented
Jul 15, 2022
| # Send each event in order of its insertion into the dictionary | ||
| for (event_type, state_key), content in state_to_send.items(): | ||
| await send(etype=event_type, state_key=state_key, content=content) |
Member
Author
There was a problem hiding this comment.
We're relying on dict being ordered (as defined in the language spec since Python 3.7). I assume this is fine to do?
d3cfd64 to
cb93959
Compare
cb93959 to
a3d07fd
Compare
Instead of sending state events as we go, we instead calculate all state events to send and store them in a dict (ordered since Python 3.7) and then send them all at once in the end. This has no performance benefit whatsoever, but I find this clearer to reason about. My personal use case is eventually placing another layer of "custom room preset" state on top, which would be easier to do with a state map, instead of the previous code which sent state into the room as it went along. If we do eventually send all new room state simultaneously to speed up local room creation, I believe this would be an easier starting point.
a3d07fd to
eab9d34
Compare
Member
Author
|
Superseded by changes in #13487. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A myriad of changes to the
_send_events_for_new_roommethod, which calculates and sends the state events for a new room, given the room's preset and some other argument values.This is split out from ongoing configurable room default/custom room presets work.
Recommended to review commit-by-commit, explanations for changes in commit descriptions.
This is still a draft for now while I build on top of it locally.