Commit graph

972 commits

Author SHA1 Message Date
Andrew Morgan 43ecf8d1f9
Add more passing tests to the testfile, add test blacklist file (#848) 2020-01-22 16:11:40 +00:00
Andrew Morgan 0f8d6cc1c1
Add a Sytest blacklist file (#849) 2020-01-22 13:31:22 +00:00
Neil Alexander ac96fd565b Identifier key login
Merge commit '56318dcca400b5ada4dfa4f8fac922522fc88128'
2020-01-20 11:37:23 +00:00
Neil Alexander 3bd023e74d
Federation fixes (#845)
* Update gomatrixserverlib to p2p commit 92c0338, other tweaks

* Update gomatrixserverlib to p2p commit e5dcc65

* Rewrite getAuthChain

* Update gomatrixserverlib in go.mod/go.sum

* Correct a couple of package refs for updated gmsl/gomatrix

* Update gomatrixserverlib ref in go.mod/go.sum

* Update getAuthChain comments following @babolivier review
2020-01-10 12:11:44 +00:00
Neil Alexander 9e489845eb Fix #842 - again... 2020-01-09 17:18:19 +00:00
Neil Alexander ee8e167844 Fix #842 2020-01-09 17:09:17 +00:00
Neil Alexander 714959126b
Fall back to postgres when database connection string parsing fails (#842)
* Fall back to postgres when parsing the database connection string for a URI schema fails

* Fix behaviour so that it really tries postgres when URL parsing fails and it complains about unknown schema if it succeeds
2020-01-09 17:03:36 +00:00
Andrew Morgan f7faf74528
Resync testfile with current sytest pass/fail (#832)
* Resync testfile with current sytest pass/fail

* Add displayname test
2020-01-09 16:40:30 +00:00
Andrew Morgan 6b2f461d52
make cmd directory path absolute in build.sh (#830) 2020-01-09 13:36:39 +00:00
Neil Alexander c28577ea25
Implement storage interfaces (#841)
* Implement interfaces for federationsender storage

* Implement interfaces for mediaapi storage

* Implement interfaces for publicroomsapi storage

* Implement interfaces for roomserver storage

* Implement interfaces for syncapi storage

* Implement interfaces for keydb storage

* common.PartitionStorer in publicroomsapi interface

* Update copyright notices
2020-01-03 14:07:05 +00:00
Neil Alexander 6cab622468
Amend syncapi SQL queries to return missing columns (#840)
* This commit updates a couple of the syncapi SQL queries to return additional columns that are required/expected by rowsToStreamEvents in output_room_events_table.go.

It's not exactly clear to me yet what transaction_id and session_id do, but these being added n #367 results in state events breaking the /sync endpoint.

This is a temporary fix. We need to come up with a better solution.

* gomatrix to gomatrixserverlib on some weird line change

* Tweaks from @babolivier review comments
2020-01-02 14:51:21 +00:00
Arshpreet 5741235833 replaced gometalinter description with golangci-lint (#837) 2019-12-25 18:28:10 +00:00
Andrew Morgan dc25fb6837
Move files back if linting fails (#810) 2019-12-25 18:14:58 +00:00
S7evinK b34fce0d85 Use gomatrixserverlib.Transaction instead of local type (#590) (#811) 2019-12-20 15:02:09 +00:00
S7evinK 4f75e4febe Fix copy & paste error (#812) 2019-12-20 15:00:25 +00:00
Neil Alexander 52dfa40471 docker: Passthrough parameters to dendrite-monolith-server 2019-12-20 14:46:59 +00:00
Will Hunt f1e229e9d4 AS should use the v1 endpoint, rather than r0 (#827) 2019-12-20 14:44:34 +00:00
Abhishek Kumar e2d73855eb Refuse /send_join without m.room.create (#824)
Signed-off-by: Abhishek Kumar <abhishekkumar2718@gmail.com>
2019-12-20 14:42:57 +00:00
Brendan Abolivier af9568ba44 Fix /send_join and /send_leave (#821)
Fix the /send_join and /send_leave endpoints, so that they use the v2 endpoints as mandated by MSC1802. Also comment out the SyTest tests that are failing because of lack of support for the v1 endpoints.
2019-12-20 14:41:32 +00:00
Neil Alexander b4d638cd04
Return server names (#833)
* Remove unnecessary map->array processing

* Return server names in room federation directory query

* Knock off a TODO
2019-12-20 13:24:57 +00:00
Andrew Morgan 24ac66cffd Merge branch 'anoa/fix_lint_ci' 2019-12-18 15:39:33 +00:00
Andrew Morgan f392ce8ed7 URL decode args 2019-12-18 15:29:27 +00:00
Andrew Morgan 9b5d6c9745 Refactor InstrumentHandlerCounter definition 2019-12-18 15:10:53 +00:00
Andrew Morgan 2baf5baa75 re-add temporarily missing deps? 2019-12-17 17:05:39 +00:00
Andrew Morgan de5d463dd2 goimports 2019-12-17 16:54:21 +00:00
Andrew Morgan 8fb2c9c33c Replace deprecated prometheus.InstrumentHandler and unsafe time.Ticker 2019-12-17 16:47:45 +00:00
Serra Allgood 56318dcca4 Fix login using identifier key
Not a full fix, it only really supports logging in with
the localpart of an mxid.

Signed-off-by: Serra Allgood <serra@allgood.dev>
2019-11-27 14:09:06 -08:00
Andrew Morgan 145921f207
Pin golangci-lint version to non-broken one (#809) 2019-10-08 12:20:37 +01:00
Alex Chen e959927d0a selectAccountDataByType shouldn't error when no rows (#804)
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-10-07 13:15:58 +01:00
Andrew Morgan 9a56cf8439
Add AppService to test config and bind addrs (#800)
Because our unit tests are often forgotten about :/
2019-10-04 17:08:00 +01:00
aditsachde 7d77538ca4 patch dendrite microservices with bind config (#795)
This PR adds a block in the dendrite config for the services to bind to. The microservices should bind to the addresses in the bind block, and will be contacted at the address in the listen block.

This fixes an issue with the microservices and kubernetes services.
2019-10-02 10:29:27 +01:00
Alex Chen 3e2bb8bf2f
Clean up CircleCI leftovers (#801) 2019-10-02 11:01:52 +08:00
Alex Chen e239fb10f3
Add missing servers field in /directory/room/:alias response (#732) 2019-10-02 00:09:47 +08:00
Behouba Manassé 49fd47c863 selectAccountDataByType return ClientEvent pointer instead of slice of ClientEvent (#798)
This pull request is an attempt to fix #773.

Signed-off-by: Kouame Behouba Manassé behouba@gmail.com
2019-09-30 17:25:04 +01:00
Andrew Morgan 7b454bdd27
Remove CircleCI (#793)
Sytest has been switched to Buildkite. As such the `.circleci` folder has been removed.
2019-09-26 14:27:14 +01:00
Andrew Morgan e91942c9e4
Add 'Can paginate public room list' to testfile (#797) 2019-09-26 14:20:34 +01:00
Alex Chen 5e25f6ba22
Set up queryAPI in federationsender (#791) 2019-08-24 01:25:10 +08:00
Alex Chen 43308d2f3f
Associate transactions with session IDs instead of device IDs (#789) 2019-08-24 00:55:40 +08:00
Alex Chen 5eb63f1d1e
Add joined hosts query APIs (#781)
This adds two joined hosts query APIs to the federation sender for use of other components.
2019-08-22 19:47:52 +08:00
Alex Chen a81917c3e7
Make trailing slash on server key request optional (#788)
Cherry-picked from 7e861b60fbd721b374ec929926b14e57dc60ec41
2019-08-20 01:01:53 +08:00
Alex Chen 0ed2dd0b15
Fix data race in clientapi/routing/register.go (#787) 2019-08-16 12:05:00 +08:00
Parminder Singh bf5efbc31f Error when recaptcha enabled with empty configs (#786) 2019-08-16 01:59:17 +08:00
Alex Chen d63d2a50cd
Replace event content types with ones in gomatrixserverlib (#785)
The types that are not in gomatrixserverlib are not replaced.

This also updates the gomatrixserverlib dependency.
2019-08-16 01:45:11 +08:00
Parminder Singh d21a2fb152 Add auth fallback endpoint (#405)
Also adds support for the recaptcha auth type.
2019-08-15 01:34:49 +08:00
Alex Chen 28f60bec4e
Update name of a passing test in testfile (#784) 2019-08-14 21:44:34 +08:00
Victor Cuadrado Juan 386cc975f0 Add typingserver service to docker-compose (#692)
Signed-off-by: Víctor Cuadrado Juan <me@viccuad.me>
2019-08-09 11:30:38 +01:00
Alex Chen aa0d22bf50
Implement client single event retrieval (#693) 2019-08-09 17:45:54 +08:00
Thibaut CHARLES 5716cd60b5 Add filtering database API to syncapi account data table (#513) 2019-08-08 13:10:42 +08:00
Andrew Morgan 76040bfa87
Add CI information to CONTRIBUTING.md (#778)
Add information about how the continuous integration is set up in Dendrite and how to run the tests locally so that people don't need to wait around for things to churn.
2019-08-07 11:46:36 +01:00
Thibaut CHARLES 76e4ebaf78 State events filtering database api (#438)
This PR adds a gomatrixserverlib.Filter parameter to functions handling the syncapi_current_room_state table. It does not implement any filtering logic inside the syncapi IncrementalSync/CompleteSync functions, just the APIs for future use.

Default filters are provided as placeholders in IncrementalSync/CompleteSync, so behaviour should be unchanged (except the default 20 event limit)

SQL table will be changed. You can upgrade an existing database using:

```
ALTER TABLE syncapi_current_room_state  ADD COLUMN IF NOT EXISTS sender text;
UPDATE syncapi_current_room_state SET sender=(event_json::json->>'sender');
ALTER TABLE syncapi_current_room_state ALTER COLUMN sender SET NOT NULL;
ALTER TABLE syncapi_current_room_state  ADD COLUMN IF NOT EXISTS contains_url bool;
UPDATE syncapi_current_room_state SET contains_url=(event_json::json->>'content')::json->>'url' IS NOT NULL;
ALTER TABLE syncapi_current_room_state ALTER COLUMN contains_url SET NOT NULL;
```

Note: This depends on #436 (and includes all its commits). I'm not sure if Github will remove the duplicated commits once #436 is merged.
2019-08-07 11:12:09 +01:00