Piotr Kozimor
c9e94b4751
Fix push server internal http wiring
2021-12-06 15:08:52 +01:00
Piotr Kozimor
b89da40cbd
Ignore body.Close() error check
2021-12-06 15:08:52 +01:00
Piotr Kozimor
5ccfe77cea
Fix linter errors
2021-12-06 15:08:36 +01:00
Piotr Kozimor
1dbcd842b0
Rename to UpsertPusher for clarity and handle pusher update
2021-12-06 13:17:48 +01:00
Tommie Gannert
bbf4b7066d
Add clientapi route for /unstable/notifications.
2021-12-03 19:43:30 +01:00
Tommie Gannert
74b74bf6d6
Implement read receipt consumers in Pushserver.
...
Supports m.read and m.fully_read receipts.
2021-12-03 19:43:23 +01:00
Tommie Gannert
ce1255e7db
Use PushGatewayClient and the pushrules module in Pushserver's room consumer.
...
* Use one goroutine per user to avoid locking up the entire server for
one bad push gateway.
* Split pushing by format.
* Send one device per push. Sytest does not support coalescing
multiple devices into one push. Matches Synapse. Either we change
Sytest, or remove the group-by-url-and-format logic.
* Write OutputNotificationData from push server. Sync API is already
the consumer.
2021-12-03 19:43:02 +01:00
Tommie Gannert
926252671b
Implement pushserver/storage for notifications.
2021-12-03 19:43:02 +01:00
Tommie Gannert
54ece78a12
Output rooms.join.unread_notifications in /sync.
...
This is the read-side. Pushserver will be the write-side.
2021-12-03 19:43:02 +01:00
Tommie Gannert
0548a884ec
Add clientapi routes for push rules to Pushserver.
...
A cleanup would be to move more of the name-splitting logic into
pushrules.go, to depollute routing.go.
2021-12-03 19:43:02 +01:00
Tommie Gannert
f5d8f0e72f
Add push rules query/put API in Pushserver.
...
This manipulates account data over User API, and fires sync messages
for changes. Those sync messages should, according to an existing TODO
in clientapi, be moved to userapi.
Forks clientapi/producers/syncapi.go to pushserver/ for later extension.
2021-12-03 19:43:02 +01:00
Tommie Gannert
d8c8bfc551
Change user API account creation to use the new pushrules module's defaults.
...
Introduces "scope" as required by client API, and some small field
tweaks to make some 61push Sytests pass.
2021-12-03 19:43:02 +01:00
Tommie Gannert
c6b304841a
Add a pushrules module.
2021-12-03 19:43:02 +01:00
Tommie Gannert
cb10d9cc13
Add PushGatewayClient.
...
The full event format is required for Sytest.
2021-12-03 19:42:47 +01:00
Tommie Gannert
bd9a4f5032
Merge remote-tracking branch 'origin/master' into pushers-api
2021-12-03 19:17:14 +01:00
Neil Alexander
61406a6747
Cherry-pick removal of unused HTTP client from #2061
...
Co-authored-by: Tommie Gannert <tommie@gannert.se>
2021-12-03 17:30:14 +00:00
Neil Alexander
b7f09f78b0
Cherry-pick typing fix from #2061
...
Co-authored-by: Tommie Gannert <tommie@gannert.se>
2021-12-03 17:26:30 +00:00
S7evinK
08a0278760
Add missing HTTP mode for userapi ( #1982 )
...
* Add missing internal api endpoint
Signed-off-by: Till Faelligen <tfaelligen@gmail.com>
* Add missing performKeyBackup endpoint
* Add missing http mode for userapi
* Fix failing tests
* Add error checks
* Fix sytest
* Update startup logic for HTTP mode
* Use userImpl for AS (annoying)
* Don't send device list updates for appservice devices
* Fix build
Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2021-12-03 17:18:35 +00:00
S7evinK
f9bac2f78a
Add missing internal routes ( #2064 )
...
Signed-off-by: Till Faelligen <tfaelligen@gmail.com>
2021-12-03 09:49:14 +00:00
nymori
388d7a1974
Squash username to lowercase at login ( #2065 )
...
Signed-off-by: Bernard Zhao <bernard.zhao.us@gmail.com>
2021-12-03 09:48:49 +00:00
Ben Yanke
83b9cb4d79
Updating example to Postgres v14 ( #2062 )
...
See issue #2052
2021-11-29 10:17:16 +00:00
Neil Alexander
11f588b0d6
Fixes for multiple Pinecone peers
2021-11-25 11:18:01 +00:00
Neil Alexander
310edd737c
Fix P2P demo builds
2021-11-25 10:48:44 +00:00
Neil Alexander
8f2a838452
Update to matrix-org/pinecone@0cc483b
2021-11-25 09:49:00 +00:00
Neil Alexander
9bc1c36ff6
Support connecting to multiple Pinecone static peers in the P2P demos (supply a comma-separated list)
2021-11-25 09:46:26 +00:00
S7evinK
25dcf80180
Ratelimit requests to /media/r0/download|upload ( #2020 )
...
* Add /media/r0/config handler
Signed-off-by: Till Faelligen <tfaelligen@gmail.com>
* Add rate limiting to media api
* Rename variable
* Add passing tests
* Don't send multiple headers
Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2021-11-24 12:55:44 +00:00
The Stranjer
17227f8e98
Don't let things added to the media_store/ directory find their way into the repo ( #2057 )
2021-11-24 12:55:13 +00:00
Neil Alexander
c9419e51af
Don't populate config defaults where it doesn't make sense ( #2058 )
...
* Don't populate config defaults where it doesn't make sense
* Fix dendritejs builds
2021-11-24 11:57:39 +00:00
Neil Alexander
ec716793eb
Merge federationapi, federationsender, signingkeyserver components ( #2055 )
...
* Initial federation sender -> federation API refactoring
* Move base into own package, avoids import cycle
* Fix build errors
* Fix tests
* Add signing key server tables
* Try to fold signing key server into federation API
* Fix dendritejs builds
* Update embedded interfaces
* Fix panic, fix lint error
* Update configs, docker
* Rename some things
* Reuse same keyring on the implementing side
* Fix federation tests, `NewBaseDendrite` can accept freeform options
* Fix build
* Update create_db, configs
* Name tables back
* Don't rename federationsender consumer for now
2021-11-24 10:45:23 +00:00
Neil Alexander
6e93531e94
Don't persist transaction IDs in the roomserver ( #2048 )
2021-11-22 09:13:12 +00:00
Piotr Kozimor
2db65e1b43
Wire Pushserver component
...
Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2021-11-19 12:59:51 +01:00
Piotr Kozimor
151d52ce23
Add Pushserver component with Pushers API
...
Co-authored-by: Tommie Gannert <tommie@gannert.se>
Co-authored-by: Dan Peleg <dan@globekeeper.com>
2021-11-19 12:58:38 +01:00
Neil Alexander
403498a85b
Only return non-stub rooms from GetKnownRooms ( #2049 )
...
* Only return non-stub rooms from `GetKnownRooms`
This should stop a bunch of errors at startup with invalid server ACLs.
* Fix query
2021-11-18 11:34:19 +00:00
Neil Alexander
e81ef1649b
Version 0.5.1 ( #2047 )
...
* Version bump, changelog
* Update to matrix-org/pinecone@8c7a1ad
* Update to matrix-org/pinecone@febf350
2021-11-16 11:37:03 +00:00
Neil Alexander
a9e715b5c5
Guard in all key consumers
2021-11-16 09:27:49 +00:00
Neil Alexander
ddbef7c3ff
Fix panic in federationsender consumer
2021-11-16 09:25:36 +00:00
Neil Alexander
58b831ad36
Mark room versions 8 and 9 as unstable (update to matrix-org/gomatrixserverlib@15a64d2 )
2021-11-15 19:29:03 +00:00
Neil Alexander
5565e40395
Fix default power levels (update to matrix-org/gomatrixserverlib@af2616b )
2021-11-12 15:16:22 +00:00
Neil Alexander
59cf8e936e
Fix sytest
2021-11-08 10:32:21 +00:00
Neil Alexander
9cd4a1f97b
Update to matrix-org/gomatrixserverlib@ed70208 (hopefully will fix sytest)
2021-11-08 09:45:39 +00:00
Neil Alexander
ee35c15467
Update sytest-whitelist
2021-11-08 09:25:01 +00:00
Neil Alexander
323a6fb54f
Resume federation sends ( #2039 )
...
* Resume federation sends
* Review comments
* Fix build error
2021-11-08 09:24:16 +00:00
Neil Alexander
b9a575919a
Try to reduce re-allocations a bit in resolveConflictsV2
2021-11-04 10:55:07 +00:00
Neil Alexander
77096898f0
Further state resolution v2 optimisations
2021-11-04 10:35:23 +00:00
Neil Alexander
3c049c068f
State resolution v2 performance improvements (reduce allocs in Kahn's algorithm, update to matrix-org/gomatrixserverlib@91dadfb )
2021-11-04 09:09:26 +00:00
Neil Alexander
837f50ac89
Reduce CPU usage of SelectStateInRange ( #2038 )
2021-11-03 09:53:37 +00:00
Neil Alexander
b4a007ecce
Support joining version 8 and 9 rooms (update to matrix-org/gomatrixserverlib@13366e7 )
2021-11-02 17:15:06 +00:00
S7evinK
0c2872828b
Fix building on Windows ( #2008 )
...
Signed-off-by: Till Faelligen <tfaelligen@gmail.com>
2021-11-02 16:50:59 +00:00
PiotrKozimor
dec05c3347
Run gofmt on dendrite - apply go 1.17 preferred build tags ( #2021 )
2021-11-02 16:48:48 +00:00
Neil Alexander
b99f594a93
Fix #2028 ( #2036 )
2021-11-02 16:47:39 +00:00