Charlotte's custom fork of the Dendrite matrix homeserver
 
 
 
 
Go to file
Kegsay 35b7cbd5d8
sql/backwards_extremities: Shift to table format and share code (#985)
* sql/backwards_extremities: Shift to table format and share code

This is an initial cut to reduce boilerplate at the storage layer.
It removes the need for 2x `_table.go` files, one for each DB engine,
replacing it with a single struct which has an interface which
implements the raw SQL statements.

The actual impl sits alongside the interface declaration which is
generally regarded as best practice (though no canonical sources).
Especially in this case where the impl is tiny (functions returning
strings) and relies heavily on the function signatures of the
table struct (for parameters), having the context in the same file
is useful.

* Remove _table redundancy
2020-04-28 15:50:24 +01:00
.github Add SyTest support to CI (#704) 2019-05-24 15:00:03 +01:00
appservice Fix sarama import URLs (#856) 2020-04-22 15:26:56 +01:00
clientapi Loopback event from invite response (#982) 2020-04-28 10:53:07 +01:00
cmd Implement backfill in the roomserver (#983) 2020-04-28 11:46:47 +01:00
common Fix URLDecodeMapValues (#984) 2020-04-28 12:50:49 +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 Implement backfill in the roomserver (#983) 2020-04-28 11:46:47 +01:00
federationsender Loopback event from invite response (#982) 2020-04-28 10:53:07 +01:00
hooks run commit hook on what we're committing (#356) 2017-11-27 12:19:04 +00:00
internal/sqlutil Add SQL tracing via DENDRITE_TRACE_SQL (#968) 2020-04-16 10:06:55 +01:00
mediaapi Add SQL tracing via DENDRITE_TRACE_SQL (#968) 2020-04-16 10:06:55 +01:00
publicroomsapi Fix sarama import URLs (#856) 2020-04-22 15:26:56 +01:00
roomserver Implement backfill in the roomserver (#983) 2020-04-28 11:46:47 +01:00
scripts Move files back if linting fails (#810) 2019-12-25 18:14:58 +00:00
syncapi sql/backwards_extremities: Shift to table format and share code (#985) 2020-04-28 15:50:24 +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
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
DESIGN.md Clean up README a bit (#289) 2017-10-10 09:33:41 +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
README.md Kick CI 2020-02-28 14:46:03 +00:00
WIRING.md Rename the typing server to EDU server (#948) 2020-03-30 15:02:20 +01: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 Add peer-to-peer support into Dendrite via libp2p and fetch (#880) 2020-03-06 10:23:55 +00:00
dendrite-config.yaml Perspective key fetching, some federation room join fixes (#975) 2020-04-20 17:42:34 +01:00
go.mod Fix URLDecodeMapValues (#984) 2020-04-28 12:50:49 +01:00
go.sum Fix URLDecodeMapValues (#984) 2020-04-28 12:50:49 +01:00
p2p.md p2p: Use JSServer for comms rather than GoJsConn (#888) 2020-03-11 12:18:37 +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 Loopback event from invite response (#982) 2020-04-28 10:53:07 +01:00

README.md

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.