Dendrite is a second-generation Matrix homeserver written in Go!
Find a file
Neil Alexander 5c894efd0e
Roomserver perform join (#1001)
* Add PerformJoin template

* Try roomserver perform join

* Send correct server name to FS API

* Pass through content, try to handle multiple server names

* Fix local server checks

* Don't refer to non-existent error

* Add directory lookups of aliases

* Remove unneeded parameters

* Don't repeat join events into the roomserver

* Unmarshal the content, that would help

* Check if the user is already in the room in the fedeationapi too

* Return incompatible room version error

* Use Membership, don't try more servers than needed

* Review comments, make FS API take list of servernames, dedupe them, break out of loop properly on success

* Tweaks
2020-05-04 13:53:47 +01:00
.github Add SyTest support to CI (#704) 2019-05-24 15:00:03 +01:00
appservice Limit database connections (#980, #564) (#998) 2020-05-01 13:34:53 +01:00
clientapi Roomserver perform join (#1001) 2020-05-04 13:53:47 +01:00
cmd Limit database connections (#980, #564) (#998) 2020-05-01 13:34:53 +01:00
common Limit database connections (#980, #564) (#998) 2020-05-01 13:34:53 +01:00
docker Rename the typing server to EDU server (#948) 2020-03-30 15:02:20 +01:00
docs Update guides for running sytest (#958) 2020-04-12 13:48:24 +01:00
eduserver Fix sarama import URLs (#856) 2020-04-22 15:26:56 +01:00
federationapi Roomserver perform join (#1001) 2020-05-04 13:53:47 +01:00
federationsender Roomserver perform join (#1001) 2020-05-04 13:53:47 +01:00
hooks run commit hook on what we're committing (#356) 2017-11-27 12:19:04 +00:00
internal/sqlutil Limit database connections (#980, #564) (#998) 2020-05-01 13:34:53 +01:00
mediaapi Limit database connections (#980, #564) (#998) 2020-05-01 13:34:53 +01:00
publicroomsapi Limit database connections (#980, #564) (#998) 2020-05-01 13:34:53 +01:00
roomserver Roomserver perform join (#1001) 2020-05-04 13:53:47 +01:00
scripts Move files back if linting fails (#810) 2019-12-25 18:14:58 +00:00
syncapi Fix ordering when backfilling (#1000) 2020-05-01 16:41:13 +01:00
.editorconfig Add .editorconfig (#179) 2017-08-05 02:25:40 +01:00
.gitignore Update .gitignore 2020-03-10 11:42:40 +00:00
.golangci.yml Get room versions from database (#918) 2020-03-17 18:00:10 +00:00
are-we-synapse-yet.list Add new sytests to list 2020-04-24 10:39:11 +01:00
are-we-synapse-yet.py Are we synapse yet? (#960) 2020-04-14 16:05:15 +01:00
build.sh Unbreak the wasm build (#986) 2020-04-28 16:22:00 +01:00
CODE_STYLE.md replaced gometalinter description with golangci-lint (#837) 2019-12-25 18:28:10 +00:00
CONTRIBUTING.md Update documentation for Go 1.13 (#867) 2020-02-06 11:54:26 +00:00
dendrite-config.yaml Limit database connections (#980, #564) (#998) 2020-05-01 13:34:53 +01:00
DESIGN.md Clean up README a bit (#289) 2017-10-10 09:33:41 +01:00
go.mod Update gmsl for key validity fix 2020-04-30 13:50:11 +01:00
go.sum Update gmsl for key validity fix 2020-04-30 13:50:11 +01:00
INSTALL.md Update documentation for Go 1.13 (#867) 2020-02-06 11:54:26 +00:00
LICENSE Add Apache Version 2.0 license and headers to all golang files 2017-04-21 00:40:52 +02:00
p2p.md p2p: Use JSServer for comms rather than GoJsConn (#888) 2020-03-11 12:18:37 +00:00
README.md Kick CI 2020-02-28 14:46:03 +00:00
show-expected-fail-tests.sh Fix: show-expected-fail-tests.sh ignores # in whitelist and strips quotes in test names in output (#943) 2020-03-31 15:53:09 +01:00
sytest-blacklist Move /room/{roomID}/state endpoints into client API (#606) (#962) 2020-04-14 18:36:08 +01:00
sytest-whitelist Enable v5 rooms (#992) 2020-04-29 19:37:00 +01:00
WIRING.md Rename the typing server to EDU server (#948) 2020-03-30 15:02:20 +01:00

Dendrite Build Status Dendrite Dev on Matrix Dendrite on Matrix

Dendrite will be a second-generation Matrix homeserver written in Go.

It's still very much a work in progress, but installation instructions can be found in INSTALL.md. It is not recommended to use Dendrite as a production homeserver at this time.

An overview of the design can be found in DESIGN.md.

Contributing

Everyone is welcome to help out and contribute! See CONTRIBUTING.md to get started!

Please note that, as of February 2020, Dendrite now only targets Go 1.13 or later. Please ensure that you are using at least Go 1.13 when developing for Dendrite.

Discussion

For questions about Dendrite we have a dedicated room on Matrix #dendrite:matrix.org. Development discussion should happen in #dendrite-dev:matrix.org.

Progress

There's plenty still to do to make Dendrite usable! We're tracking progress in a project board.