aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-06-04Update gomatrixserverlibNeil Alexander
2020-06-04s/Base64String/Base64Bytes/g (#1093)Kegsay
* s/Base64String/Base64Bytes/g Requires https://github.com/matrix-org/gomatrixserverlib/pull/203 to land first * update gmsl
2020-06-04Add ParseFileURI and use it when dealing with file URIs (#1088)Kegsay
* Add ParseFileURI and use it when dealing with file URIs Fixes #1059 * Missing file * Linting
2020-06-04Fix #632 and send spec-compliant transactions to the AS (#1091)Kegsay
2020-06-04Encode v3 event IDs correctly (#1090)Kegsay
2020-06-04Update are-we-synapse-yet (#1092)Neil Alexander
2020-06-04Don't reset counters before successful outgoing federation request (#1089)Neil Alexander
* Don't reset counters before successful outgoing federation request on incoming federation request * Comments
2020-06-04Enable room version 6 (#1087)Neil Alexander
* Return bad request on CS API /send if bad JSON * Return some more M_BAD_JSON in the right places * nolint because damnit gocyclo all I added was a type check for an error * Update gomatrixserverlib * Update gomatrixserverlib * Update sytest-whitelist * Update gomatrixserverlib * Update sytest-whitelist * NotJSON -> BadJSON
2020-06-03Update DendriteJS.DockerfileKegsay
2020-06-02Adds support for adding a proxy to the HTTP Client from the config (#1055)Aiden McClelland
* adds support for defining an proxy for the http client within the config * alphabetize imports * goimports * comments
2020-06-02Remove ENV to avoid confusionKegsay
2020-06-02Delegate responsibility for marking room versions as supported/stable to ↵Neil Alexander
gomatrixserverlib (#1082)
2020-06-02Sort public rooms again by member count (#1083)Kegsay
2020-06-02Only store our own aliases in publicroomsapi (#1081)Kegsay
Otherwise we just store the latest aliases submitted from a server, which is not what we want.
2020-06-02Reset backoff on incoming federation (#1080)Neil Alexander
* Reset backoffs in response to incoming federation requests * Federation wakeups no more than once per minute per origin
2020-06-02Use gomatrixserverlib device structs (#1079)Neil Alexander
2020-06-02Remove p2p log linesKegan Dougal
2020-06-02Return correct error to LookupRoomAliasNeil Alexander
2020-06-01Unbreak dendritejsKegan Dougal
2020-06-01Fix pg user already exists (#1076)S7evinK
* Return newly created error if user already exists (#1002) Signed-off-by: Till Faelligen <tfaelligen@gmail.com> * Rename variable * Remove check for account and use returned error * Return ErrUserExists Signed-off-by: Till Faelligen <tfaelligen@gmail.com> * State that CreateAccount will return err ErrUserExists if the user exists Signed-off-by: Till Faelligen <tfaelligen@gmail.com> * Also check sqlite for constraint error * Revert "Also check sqlite for constraint error" This reverts commit 7d310514 * Check for sqlite3 constraint error * Add documentation to CreateAccount * Move ErrUserExists to accounts package * Revert "Move ErrUserExists to accounts package" Import Cycle.. This reverts commit be3d4cda Co-authored-by: Kegsay <kegan@matrix.org>
2020-06-01Add a way to force federationsender to retry sending transactions (#1077)Kegsay
* Add a way to force federationsender to retry sending transactions And use it in P2P mode when we pick up new nodes. * Linting * Use atomic bool to stop us blocking on the channel
2020-06-01Send-to-device support (#1072)Neil Alexander
* Groundwork for send-to-device messaging * Update sample config * Add unstable routing for now * Send to device consumer in sync API * Start the send-to-device consumer * fix indentation in dendrite-config.yaml * Create send-to-device database tables, other tweaks * Add some logic for send-to-device messages, add them into sync stream * Handle incoming send-to-device messages, count them with EDU stream pos * Undo changes to test * pq.Array * Fix sync * Logging * Fix a couple of transaction things, fix client API * Add send-to-device test, hopefully fix bugs * Comments * Refactor a bit * Fix schema * Fix queries * Debug logging * Fix storing and retrieving of send-to-device messages * Try to avoid database locks * Update sync position * Use latest sync position * Jiggle about sync a bit * Fix tests * Break out the retrieval from the update/delete behaviour * Comments * nolint on getResponseWithPDUsForCompleteSync * Try to line up sync tokens again * Implement wildcard * Add all send-to-device tests to whitelist, what could possibly go wrong? * Only care about wildcard when targeted locally * Deduplicate transactions * Handle tokens properly, return immediately if waiting send-to-device messages * Fix sync * Update sytest-whitelist * Fix copyright notice (need to do more of this) * Comments, copyrights * Return errors from Do, fix dendritejs * Review comments * Comments * Constructor for TransactionWriter * defletions * Update gomatrixserverlib, sytest-blacklist
2020-05-29Add Dockerfile for building p2p riotKegan Dougal
$ docker build -t dendritejs -f DendriteJS.Dockerfile . $ docker run --rm -p 8090:80 dendritejs
2020-05-29p2p: de-dupe and shuffle public rooms; implement keydb (#1074)Kegsay
- We don't want a serverKeyAPI as fetching keys doesn't need a DB. - De-dupe rooms so we don't see them multiple times, but shuffle the alias we join via so we don't all flood a single server.
2020-05-29fedsender: de-duplicate without sorting server names (#1073)Kegsay
2020-05-28Update gomatrixserverlib (#1071)Neil Alexander
2020-05-28Hopefully fix get_missing_events (#1070)Neil Alexander
2020-05-28Parse URIs correctlyKegan Dougal
2020-05-28Merge Updater structs (#1069)Kegsay
* Move Updater structs to shared and use it for postgres * Add constructors for NewXXXUpdater and a useTxns flag In sqlite, we set useTxns=false and comment why. * Handle nil txn * Handle nil in transaction * Missed one * Close the txn at the right time * Don't close the transaction as we reuse it between calls
2020-05-28Per-user-per-device sync streams (#1068)Neil Alexander
* Per-user-per-device sync streams * Tweaks * Tweaks * Pass full device into CompleteSync * Set user IDs and device IDs properly in tests * Add new test, fix TestNewEventAndWasPreviouslyJoinedToRoom * nolint a function that is not used yet * Add test for waking up single device * Hopefully unstick test * Try to ensure that TestCorrectStreamWakeup doesn't block forever * Update tests
2020-05-27Read batches from incoming channels (#1067)Neil Alexander
2020-05-27Return 500 when processing a transaction fails fatally (#1066)Neil Alexander
2020-05-27Convert remaining roomserver tables (#1065)Kegsay
* Convert invites table * Convert membership table * Factor out remaining functions except for *Updater structs * Remove 'implements' comments from long-forgotten interfaces. Move those comments to storage.Database
2020-05-27Server key component (#1050)Neil Alexander
* Server key API (works for monolith but not for polylith yet) * Re-enable caching on server key API component * Groundwork for HTTP APIs for server key API * Hopefully implement HTTP for server key API * Simplify public key request marshalling from map keys * Update gomatrixserverlib * go mod tidy * Common -> internal * remove keyring.go * Update Docker Hub for server key API * YAML is funny about indentation * Wire in new server key API into hybrid monolith mode * Create maps * Route server key API endpoints on internal API mux * Fix server key API URLs * Add fetcher behaviour into server key API implementation * Return error if we failed to fetch some keys * Return results anyway * Move things about a bit * Remove unused code * Fix comments, don't use federation sender URL in polylith mode * Add server_key_api to sample config * Review comments * HTTP API to cache keys that have been requested * Overwrite server_key_api listen in monolith hybrid mode
2020-05-27Update p2p docsKegan Dougal
2020-05-27Convert room_aliases previous_events state_block and state_snapshot tables ↵Kegsay
(#1064) * Convert state_snapshot and state_block tables * Convert room_aliases and previous_events tables * Add missing table
2020-05-26Convert transactions/rooms table to share more code (#1063)Kegsay
* Convert rooms table * Convert transactions table * Convert rooms table and factor out lots of functions * I think you'll be needing this..
2020-05-26Convert events/event_json tables to share code (#1062)Kegsay
* Convert event_json table * Convert the events table
2020-05-26roomserver: start refactoring storage layer (#1061)Kegsay
* Begin refactoring out roomserver/storage/*/storage.go * Convert event_types table
2020-05-26Miscellaneous fixes (#1060)Neil Alexander
* Add missing routing for PerformDirectoryLookupRequest * Tweak output * Fix some bugs in devices * Don't default to federated room joins in response to invite * Update sytest-whitelist * Update comments * Return correct room ID from PerformJoin * Fix appservice and EDU server API setup, update sytest-whitelist * Update sytest-whitelist
2020-05-25Use Opaque in addition to Path to set naffka DB namesKegan Dougal
2020-05-22Define path prefixes in a package that doesn't create import cyclesNeil Alexander
2020-05-22Fix API pathsNeil Alexander
2020-05-22Fix monolith room server-federation sender connectionNeil Alexander
2020-05-22Fix internal HTTP API callsNeil Alexander
2020-05-22dendritejs tweaks for persisting sqlite DBs (#1058)Kegsay
* Use uri.path so we don't have file: in the filename * New go-sqlite-js version
2020-05-22Use HTTP APIs when -api specified (#1057)Neil Alexander
2020-05-22Separate muxes for public and internal APIs (#1056)Neil Alexander
* Separate muxes for public and internal APIs * Update client-api-proxy and federation-api-proxy so they don't add /api to the path * Tidy up * Consistent HTTP setup * Set up prefixes properly
2020-05-21Fix URL in compose fileNeil Alexander
2020-05-21Fix #897 and shuffle directory around (#1054)Kegsay
* Fix #897 and shuffle directory around * Update find-lint * goimports Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>