* Add table for storing invites in the syncapi
* Use the invite table to list the active invites for a user
* Update the invites table from the roomserver stream
* Include the invites table when determining the maxInviteID
* Storage functions for invite events
* Add table for tracking membership state
* More stuff
* More stuff
* Use utility methods from gomatrixserverlib, rather than reimplementing them
* More stuff
* Return string rather than pointer to string
* Update gomatrixserverlib
* Use HTTP API for roomserver input.
* Use synchronous HTTP API for writing events to the roomserver
* Remove unused config for kafka topic
* Add new output types to roomserver for invites
* Write membership updates
* Separate filtering from pairing up changes in membershipChanges
* Fix SQL
* Fix SQL
* Namespace the tables
* Fix SQL
* Use clearer names for some of the variables
* Rename senderID for consistency
* Restructure update membership
* Comments
* More comment
* Fix SQL
* More comments
* Assign state keys inside the transaction
* Comment on the purpose of the latestEventsUpdater
* Comment on the purpose of updateMembership
* Remove duplicate fields from stateChange
* Attempt to rewrite comment in 'english'
* More comments
* Fix comment
* Comment
* more comments
* Make the roomserver output format more flexible
* Fix the sync server integration testdata
* Fix roomserver testdata
* Actually fix the sync server tests
* Fix typo
* Set depth of events and whether they need to be federated.
Set the depth of each new event to one greater than the maximum depth
of it's direct ancestors.
Add a flag to each event passing through the roomserver that tells us
whether the event needs to be sent over federation.
We do this by passing the name of the server to send the event as.
We will need this capability if we want to support vhosting as it is
not possible to tell from the event alone which server to send it as.
(The reason for this is that sometimes a event needs to be sent on
behalf of a different remote matrix server)
* Update roomserver integration tests
* More comments
* Constants and comments
* Fix comments
* Document the int64 returned by LatestEventIDs
* Include the state before the event in roomserver output
* Fix roomserver integration test
* Remove VisibilityEventIDs from the JSON
* More comments
* Remove spurious TODO