aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-11-04Update `latestPosition` when getting reversed room delta (#2860)Till
Regression test added in https://github.com/matrix-org/complement/pull/551 Should fix https://github.com/matrix-org/dendrite/issues/2514?
2022-11-04Send presence to joined hosts only (#2858)Till
Send presence events only to rooms the user is participating, not all servers we know about. Should fix #2752
2022-11-04Cache go mod directoryTill Faelligen
2022-11-03Move `prev_batch` calculation (#2856)Neil Alexander
This might help #2847.
2022-11-03Put P2P Demos back into their own DockerfilesNeil Alexander
2022-11-03Update to matrix-org/pinecone@37f2e9bNeil Alexander
2022-11-03Update README.md (#2855)gitlab-nickfreeman
There only are 2, not 3 sample `docker-compose` files. This is only a change to the README.md, no need for Go unit tests ### Pull Request Checklist <!-- Please read https://matrix-org.github.io/dendrite/development/contributing before submitting your pull request --> * [x] I have added Go unit tests or [Complement integration tests](https://github.com/matrix-org/complement) for this PR _or_ I have justified why this PR doesn't need tests * [x] Pull request includes a [sign off below using a legally identifiable name](https://matrix-org.github.io/dendrite/development/contributing#sign-off) _or_ I have already signed off privately Signed-off-by: `Nick Freeman <nick@nickfreeman.de>`
2022-11-03Tweak `removeDuplicates` calls to use `events` instead of `recentEvents` (#2853)Neil Alexander
... since `events` is *after* history visibility filtering, not before it.
2022-11-03Fix workdir in Dockerfile (and make it a volume) (#2852)0x1a8510f2
2022-11-03Add GHA permission to upload security eventsTill Faelligen
2022-11-03Hopefully fix GHA sarif uploadTill Faelligen
2022-11-02Add readme for dendrite-demo-pinecone (#2851)devonh
2022-11-02Tweak `FLAGS` in GHA Docker buildsNeil Alexander
2022-11-02Maybe fix GHANeil Alexander
2022-11-02Multi-stage Docker builds (#2850)Neil Alexander
This builds on @S7evinK's work to make multi-stage Docker builds. Now that we can build SQLite without Cgo this should be much simpler and should make Docker builds in CI significantly faster. Co-authored-by: Till Faelligen <tfaelligen@gmail.com> Co-authored-by: Till Faelligen <davidf@element.io> Co-authored-by: Till Faelligen <2353100+S7evinK@users.noreply.github.com>
2022-11-02Fix `moderncsqlite` errors and rebase onto `main` (#2832)0x1a8510f2
This is #2819 but rebased on latest `main`. This PR is against main too as opposed to the `moderncsqlite` branch. The main change here is simply: ```go // add query parameters to the dsn if strings.Contains(dsn, "?") { dsn += "&" } else { dsn += "?" } // wait some time before erroring if the db is locked // https://gitlab.com/cznic/sqlite/-/issues/106#note_1058094993 dsn += "_pragma=busy_timeout%3d10000" ``` ### Pull Request Checklist <!-- Please read https://matrix-org.github.io/dendrite/development/contributing before submitting your pull request --> * [x] I have added tests for PR _or_ I have justified why this PR doesn't need tests. * [x] Pull request includes a [sign off below using a legally identifiable name](https://matrix-org.github.io/dendrite/development/contributing#sign-off) _or_ I have already signed off privately Signed off privately. Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2022-11-02Improve logging for `processEventWithMissingState`Neil Alexander
2022-11-02Add message stats to reporting (#2748)Till
Since we're now listening on the `OutputRoomEvent` stream, we are able to store messages stats.
2022-11-02Implement `/thirdparty` endpoints (#2831)Till
Implements the following endpoints ``` GET /_matrix/client/v3/thirdparty/protocols GET /_matrix/client/v3/thirdparty/protocols/{protocol} GET /_matrix/client/v3/thirdparty/location GET /_matrix/client/v3/thirdparty/location/{protocol} GET /_matrix/client/v3/thirdparty/user GET /_matrix/client/v3/thirdparty/user/{protocol} ```
2022-11-02Fix issue where a member is forced to leave a room when the invite is marked ↵Tak Wai Wong
deleted (#2839) Proposed fix for issue: https://github.com/matrix-org/dendrite/issues/2838 Suppose bob received invites to spaceA and spaceB. When Bob joins spaceA, we add an OutputEvent event to retire the invite. This sets the invite to "deleted" in the database. This makes sense. The bug is in stream_invites.go. Triggered when bob received a new invite for spaceB, and does a client sync. In the block (line 76) `for roomID := range retiredInvites if _, ok := req.Response.Rooms.Invite[roomID]; ok { continue } if _, ok := req.Response.Rooms.Join[roomID]; ok { continue } ... ` Bob is not in either maps even though he had just accepted the invite for spaceA. Consequently, the spaceA invite is treated as a retired invite, and a membership Leave event is generated. What bob sees is that after accepting the invite to spaceB, he lose access to spaceA. ### Pull Request Checklist <!-- Please read https://matrix-org.github.io/dendrite/development/contributing before submitting your pull request --> * [ ] I have added tests for PR _or_ I have justified why this PR doesn't need tests. * [x ] Pull request includes a [sign off below using a legally identifiable name](https://matrix-org.github.io/dendrite/development/contributing#sign-off) _or_ I have already signed off privately Signed-off-by: `Tak Wai Wong <tak@hntlabs.com>` Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2022-11-02Don't limit `"state"` (#2849)Neil Alexander
This is apparently some incorrect behaviour that we built as a result of a spec bug (matrix-org/matrix-spec#1314) where we were applying a filter to the `"state"` section of the `/sync` response incorrectly. The client then has no way to know that the state was limited. This PR removes the state limiting, which probably also helps #2842.
2022-11-02Update pull request templateNeil Alexander
2022-11-01Version 0.10.6v0.10.6Neil Alexander
2022-11-01Fix a panic in `ToClientEvents` etc.Neil Alexander
2022-11-01return required room_id field in /members (#2846)ash lea
### Pull Request Checklist <!-- Please read https://matrix-org.github.io/dendrite/development/contributing before submitting your pull request --> * [ ] I have added tests for PR _or_ I have justified why this PR doesn't need tests. * [x] Pull request includes a [sign off below using a legally identifiable name](https://matrix-org.github.io/dendrite/development/contributing#sign-off) _or_ I have already signed off privately Signed-off-by: `ash lea <example@thisismyactual.email>`
2022-11-01Update dependenciesNeil Alexander
2022-11-01Fix SQLite `roomserver_published` migrationNeil Alexander
2022-11-01Optimize history visibility checks (#2848)Till
This optimizes history visibility checks by (mostly) avoiding database hits. Possibly solves https://github.com/matrix-org/dendrite/issues/2777 Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2022-11-01Try to fix a panic in the sync API PDU streamNeil Alexander
2022-11-01Move code for calculating auth difference into GMSLNeil Alexander
2022-11-01Fix flakey stats testsTill Faelligen
2022-10-31Version 0.10.5 (#2845)v0.10.5Neil Alexander
Changelog and version bump.
2022-10-31Fix `go.mod`Neil Alexander
2022-10-31Tweak `"state"` and `"timeline"` filtering (#2844)Neil Alexander
This should stop state events disappearing down a gap where we'd try to separate out the sections *before* applying history visibility instead of after. This may be a better approach than #2843 but I hope @tak-hntlabs will shout if it isn't.
2022-10-31Update to matrix-org/gomatrixserverlib@0885c35Neil Alexander
2022-10-31Add `/_dendrite/admin/downloadState/{serverName}/{roomID}` admin endpointNeil Alexander
2022-10-28Limit recent events when going backwards (#2840)Till
If we're going backwards, we were selecting potentially thousands of events, which in turn were fed to history visibility checks, resulting in bad sync performance.
2022-10-28Add hcaptcha support besides Google ReCaptcha (#2834)X. Ding
### Pull Request Checklist This PR add support for hcaptcha.com as an alternative to Google ReCaptcha. It also makes possible for user to customize ReCaptcha URL when needed. (Such as use recaptcha.net instead of www.google.com) This feature needs manual test cuz it involves 3rd party _captcha_. Signed-off-by: `Simon Ding <dxl@plotbridge.com>` Co-authored-by: dxl <dxl@plotbridge.com>
2022-10-28Simplify error checking and check the correct errorTill Faelligen
2022-10-27Refactor `claimRemoteKeys`Neil Alexander
2022-10-27Fix upgrade appservicesTill Faelligen
2022-10-27Add AS specific public room list endpoints (#2836)Till
Adds `PUT /_matrix/client/v3/directory/list/appservice/{networkId}/{roomId}` and `DELTE /_matrix/client/v3/directory/list/appservice/{networkId}/{roomId}` support, as well as the ability to filter `/publicRooms` on networkID and including all networks.
2022-10-27Fix /members (#2837)Till
Fixes a bug introduced in #2827, where the SyncAPI might not have all requested eventIDs, resulting in too few members returned.
2022-10-27Add scheduled tasks to run tests with race detection (#2814)Till
Needs https://github.com/matrix-org/sytest/pull/1308 to be actually useful. Not sure if we need to run Sytest in all combinations with enabled race detection. Closes https://github.com/matrix-org/dendrite/issues/491
2022-10-26Update Yggdrasil demoNeil Alexander
2022-10-26Associate events in db before queueing them to send (#2833)devonh
Fixes a race condition between sending federation events and having them fully associated in the database.
2022-10-26Add network interface callback to pinecone build (#2825)devonh
Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2022-10-26Update federation API consumersNeil Alexander
2022-10-26Initial support for multiple server names (#2829)Neil Alexander
This PR is the first step towards virtual hosting by laying the groundwork for multiple server names being configured.
2022-10-26Add support for config "auto_join_rooms" (#2823)Neboer
Add support for config "auto_join_rooms". Now new accounts can join the rooms in config file automatically. ### Pull Request Checklist <!-- Please read https://matrix-org.github.io/dendrite/development/contributing before submitting your pull request --> * [x] I have justified why this PR doesn't need tests. * [x] Pull request includes a [sign off below using a legally identifiable name](https://matrix-org.github.io/dendrite/development/contributing#sign-off) Signed-off-by: `Rubin Poster <rubinposter@gmail.com>`