Dendrite is a second-generation Matrix homeserver written in Go!
Go to file
Kegsay 8e9580852d
bugfix: continue sending PDUs if ones are added whilst sending another PDU (#1187)
* Add a bit more logging to the fedsender

* bugfix: continue sending PDUs if ones are added whilst sending another PDU

Without this, the queue goes back to sleep on `<-oq.notifyPDUs` which won't
fire because `pendingPDUs` is already > 0. This should fix a flakey sytest.

* Break if no txn is sent

* Tweak federation sender wake-ups

* Update comments

* Remove break or that'll kill the parent loop

Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2020-07-07 16:36:10 +01:00
.github Add SyTest support to CI (#704) 2019-05-24 15:00:03 +01:00
appservice Move account/device DBs to userapi (#1141) 2020-06-17 12:05:56 +01:00
build Tweaks to Dendrite Yggdrasil demo setup 2020-07-07 14:18:58 +01:00
clientapi Implement local redaction (#1182) 2020-07-03 17:24:51 +01:00
cmd Fix static peer on Ygg demo build 2020-07-07 14:38:59 +01:00
currentstateserver Emit redacted_event from the roomserver when redactions are validated (#1186) 2020-07-07 12:51:55 +01:00
docs Remove publicroomsapi (#1176) 2020-07-02 17:11:33 +01:00
eduserver BREAKING: Make eduserver/appservice use userapi (#1138) 2020-06-16 17:39:56 +01:00
federationapi Implement local redaction (#1182) 2020-07-03 17:24:51 +01:00
federationsender bugfix: continue sending PDUs if ones are added whilst sending another PDU (#1187) 2020-07-07 16:36:10 +01:00
internal Emit redacted_event from the roomserver when redactions are validated (#1186) 2020-07-07 12:51:55 +01:00
keyserver Hacks for supporting Riot iOS (#1148) 2020-06-17 17:41:45 +01:00
mediaapi Fallback parsing for Content-Disposition minefield (#1144) 2020-06-17 14:26:45 +01:00
roomserver Emit redacted_event from the roomserver when redactions are validated (#1186) 2020-07-07 12:51:55 +01:00
serverkeyapi More server key updates, tests (#1129) 2020-06-16 13:11:20 +01:00
syncapi Implement /sync limited and read timeline limit from stored filters (#1168) 2020-06-26 15:34:41 +01:00
userapi Fix Yggdrasil gobind build, set display name at registration 2020-07-01 13:35:58 +01:00
.dockerignore Docker Hub (#1053) 2020-05-21 13:02:28 +01:00
.gitignore Support embedding Riot Web (#1113) 2020-06-11 10:16:46 +01:00
.golangci.yml Get room versions from database (#918) 2020-03-17 18:00:10 +00:00
are-we-synapse-yet.list Update awsy list 2020-06-30 10:26:26 +01:00
are-we-synapse-yet.py Fix div 0 error and add new tests to list 2020-06-26 11:34:25 +01:00
build-dendritejs.sh Bake in git commit into dendritejs binary (#1048) 2020-05-19 16:42:30 +01:00
build.sh Unbreak the wasm build (#986) 2020-04-28 16:22:00 +01:00
dendrite-config.yaml Remove publicroomsapi (#1176) 2020-07-02 17:11:33 +01:00
go.mod Tweaks to Dendrite Yggdrasil demo setup 2020-07-07 14:18:58 +01:00
go.sum Tweaks to Dendrite Yggdrasil demo setup 2020-07-07 14:18:58 +01:00
LICENSE Add Apache Version 2.0 license and headers to all golang files 2017-04-21 00:40:52 +02:00
README.md Update INSTALL.md, move docs (#1034) 2020-05-14 16:49:18 +01:00
show-expected-fail-tests.sh Fix newlines between white/blacklist test names in buildkite annotations (#1003) 2020-05-04 14:48:49 +01:00
sytest-blacklist Blacklist a test 2020-07-03 14:18:58 +01:00
sytest-whitelist Implement local redaction (#1182) 2020-07-03 17:24:51 +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.