Dendrite is a second-generation Matrix homeserver written in Go!
Go to file
Ben B 955244c092
use custom http client instead of the http DefaultClient (#823)
This commit replaces the default client from the http lib with a custom one.
The previously used default client doesn't come with a timeout. This could cause
unwanted locks.
That solution chosen here creates a http client in the base component dendrite
with a constant timeout of 30 seconds. If it should be necessary to overwrite
this, we could include the timeout in the dendrite configuration.
Here it would be a good idea to extend the type "Address" by a timeout and
create an http client for each service.

Closes #820

Signed-off-by: Benedikt Bongartz <benne@klimlive.de>

Co-authored-by: Kegsay <kegan@matrix.org>
2020-04-03 11:40:50 +01:00
.github Add SyTest support to CI (#704) 2019-05-24 15:00:03 +01:00
appservice use custom http client instead of the http DefaultClient (#823) 2020-04-03 11:40:50 +01:00
clientapi Implement typing over federation (#949) 2020-03-30 16:40:28 +01:00
cmd use custom http client instead of the http DefaultClient (#823) 2020-04-03 11:40:50 +01:00
common use custom http client instead of the http DefaultClient (#823) 2020-04-03 11:40:50 +01:00
docker Rename the typing server to EDU server (#948) 2020-03-30 15:02:20 +01:00
docs Adding sslmode: disable to sytest server config (#813) 2020-02-11 13:53:00 +00:00
eduserver use custom http client instead of the http DefaultClient (#823) 2020-04-03 11:40:50 +01:00
federationapi Implement typing over federation (#949) 2020-03-30 16:40:28 +01:00
federationsender use custom http client instead of the http DefaultClient (#823) 2020-04-03 11:40:50 +01:00
hooks run commit hook on what we're committing (#356) 2017-11-27 12:19:04 +00:00
mediaapi maintenance: Fix matrix-org#896 use %w format verb to wrap errors (#916) 2020-03-18 12:48:51 +00:00
publicroomsapi p2p: Implement published rooms (#923) 2020-03-19 11:04:08 +00:00
roomserver use custom http client instead of the http DefaultClient (#823) 2020-04-03 11:40:50 +01:00
scripts Move files back if linting fails (#810) 2019-12-25 18:14:58 +00:00
syncapi Rename the typing server to EDU server (#948) 2020-03-30 15:02:20 +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
build.sh Add peer-to-peer support into Dendrite via libp2p and fetch (#880) 2020-03-06 10:23:55 +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
dendrite-config.yaml Rename the typing server to EDU server (#948) 2020-03-30 15:02:20 +01:00
DESIGN.md Clean up README a bit (#289) 2017-10-10 09:33:41 +01:00
go.mod Update to latest go-sqite-js 2020-03-30 12:47:19 +01:00
go.sum Update to latest go-sqite-js 2020-03-30 12:47:19 +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 Further room version wiring (#936) 2020-03-27 16:28:22 +00:00
sytest-whitelist Further room version wiring (#936) 2020-03-27 16:28:22 +00: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.