Dendrite is a second-generation Matrix homeserver written in Go!
Go to file
Neil Alexander 2cb7c91c5d
Store our own keys in the keydb (#853)
* Store our own keys in the keydb

The DirectKeyFetcher makes the assumption that you can always reach the key/v2/server endpoint of any server, including our own. We previously haven't bothered to store our own keys in the keydb so this would mean we end up making key requests to ourselves.

In the libp2p world as an example, self-dialling is not possible, therefore this would render it impossible to get our own keys.

This commit adds our own keys into the keydb so that we don't create unnecessarily (and maybe impossible) requests.

* Use golang.org/x/crypto/ed25519 instead of crypto/ed25519 for pre-Go 1.13
2020-01-25 14:12:52 +00:00
.github Add SyTest support to CI (#704) 2019-05-24 15:00:03 +01:00
appservice AS should use the v1 endpoint, rather than r0 (#827) 2019-12-20 14:44:34 +00:00
clientapi Identifier key login 2020-01-20 11:37:23 +00:00
cmd Wire up publicroomsapi for roomserver events (#851) 2020-01-24 17:11:20 +00:00
common Store our own keys in the keydb (#853) 2020-01-25 14:12:52 +00:00
docker docker: Passthrough parameters to dendrite-monolith-server 2019-12-20 14:46:59 +00:00
docs Add a Sytest blacklist file (#849) 2020-01-22 13:31:22 +00:00
federationapi Use gomatrixserverlib.Transaction instead of local type (#590) (#811) 2019-12-20 15:02:09 +00:00
federationsender Fix #842 - again... 2020-01-09 17:18:19 +00:00
hooks run commit hook on what we're committing (#356) 2017-11-27 12:19:04 +00:00
mediaapi Fix #842 - again... 2020-01-09 17:18:19 +00:00
publicroomsapi Wire up publicroomsapi for roomserver events (#851) 2020-01-24 17:11:20 +00:00
roomserver CS API: Support for /messages, fixes for /sync (#847) 2020-01-23 17:51:10 +00:00
scripts Move files back if linting fails (#810) 2019-12-25 18:14:58 +00:00
syncapi Wire up publicroomsapi for roomserver events (#851) 2020-01-24 17:11:20 +00:00
typingserver Lots of small typo fixes (#737) 2019-07-12 16:43:01 +01:00
.editorconfig Add .editorconfig (#179) 2017-08-05 02:25:40 +01:00
.gitignore use go module for dependencies (#594) 2019-05-21 21:56:55 +01:00
.golangci.yml Fix pipeline, emoji and syntax (#713) 2019-06-19 14:05:03 +01:00
build.sh make cmd directory path absolute in build.sh (#830) 2020-01-09 13:36:39 +00:00
CODE_STYLE.md replaced gometalinter description with golangci-lint (#837) 2019-12-25 18:28:10 +00:00
CONTRIBUTING.md Clean up CircleCI leftovers (#801) 2019-10-02 11:01:52 +08:00
dendrite-config.yaml Remove riot.im from the list of trusted ID servers in the default config (#688) 2019-01-31 10:06:11 +00:00
DESIGN.md Clean up README a bit (#289) 2017-10-10 09:33:41 +01:00
go.mod Store our own keys in the keydb (#853) 2020-01-25 14:12:52 +00:00
go.sum Store our own keys in the keydb (#853) 2020-01-25 14:12:52 +00:00
INSTALL.md Fix broken Kafka download URL in INSTALL.md (#740) 2019-07-16 16:16:43 +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 Clean up CircleCI leftovers (#801) 2019-10-02 11:01:52 +08:00
show-expected-fail-tests.sh Add a Sytest blacklist file (#849) 2020-01-22 13:31:22 +00:00
sytest-blacklist CS API: Support for /messages, fixes for /sync (#847) 2020-01-23 17:51:10 +00:00
sytest-whitelist CS API: Support for /messages, fixes for /sync (#847) 2020-01-23 17:51:10 +00:00
WIRING.md Document internal APIs and Application Services component (#499) 2018-07-06 02:33:53 -07:00

Dendrite Build Status Dendrite Dev on Matrix Dendrite on Matrix

Dendrite will be a matrix homeserver written in go.

It's still very much a work in progress, but installation instructions can be found in INSTALL.md

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!

We aim to try and make it as easy as possible to jump in.

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.