Commit graph

594 commits

Author SHA1 Message Date
Cnly 8610c97dec Merge branch 'master' into event-redaction 2019-08-12 11:36:44 +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
Alex Chen 94ea325c93
Fix permission and 404 response for alias deletion - #654 (#706) 2019-08-07 11:00:58 +08:00
Andrew Morgan 8c721b555e
Scope the buildkite build badge only to tests running on master (#779) 2019-08-06 20:26:15 +01:00
Alex Chen 324ca22b35
Implement profile retrieval over federation (#726) 2019-08-07 00:02:12 +08:00
Alex Chen 66bf615360
Fix transaction IDs in transaction cache have global scope (#772) 2019-08-06 23:33:53 +08:00
Andrew Morgan 83f8e05032
Add /event/ on non world readable room does not work (#777) 2019-08-06 15:52:04 +01:00
Alex Chen f8d2860765 Replace membership and visibility values with constants (#774)
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-08-06 15:07:36 +01:00
Cnly 8dd2bb48f9 Remove obsolete TODOs
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-08-05 17:18:32 +08:00
Cnly c712a7e854 Add newly passing test
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-08-03 22:36:05 +08:00
Alex Chen 7beaf617f6
Merge branch 'master' into event-redaction 2019-08-03 22:16:09 +08:00
Sumukha Pk d283676b9a Implements room tagging. (#694) 2019-08-02 19:17:51 +08:00
Cnly f3bc28fa66 Merge branch 'master' into event-redaction
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-08-01 12:41:58 +08:00
Alex Chen 3578d77d25
Implement "full_state" query parameter for /sync (#751)
Closes #637.
2019-08-01 12:36:13 +08:00
Cnly 99859a8afc Add docs for validateRedactions
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-08-01 12:33:05 +08:00
Cnly e9f824b958 Remove unnecessary sanity checks
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-08-01 12:25:48 +08:00
Cnly 2fb994ad1d Ignore error from rows.Close()
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-08-01 12:23:58 +08:00
Cnly 66ada680fe Add missing license header
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-08-01 11:23:39 +08:00
Cnly 1772d830da Variable and type clarifications
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-08-01 11:03:24 +08:00
Alex Chen 0dcf0a7d64 Fix /sync may contain duplicate EDUs and EDUs for left rooms (#752)
In 29841be (#718), EDUs are added to /sync responses for rooms listed
in joinedRoomIDs returned by addPDUDeltaToResponse. However this list
may contain rooms other than those currently joined.

Some variable renamings are done to make golangci-lint pass.

Signed-off-by: Alex Chen minecnly@gmail.com
2019-07-31 14:36:41 +01:00
Alex Chen 92db6cd0ea Fix index in invites_table.go (#770)
This PR fixes a possible typo in an index created in invites_table.go.

Signed-off-by: Alex Chen minecnly@gmail.com
2019-07-31 14:36:21 +01:00
Alex Chen 3e1abe9ad3 Fix /sync may contain duplicate EDUs and EDUs for left rooms (#752)
In 29841be (#718), EDUs are added to /sync responses for rooms listed
in joinedRoomIDs returned by addPDUDeltaToResponse. However this list
may contain rooms other than those currently joined.

Some variable renamings are done to make golangci-lint pass.

Signed-off-by: Alex Chen minecnly@gmail.com
2019-07-31 14:20:11 +01:00
Alex Chen 40e44c5f3b Add newly passing tests from matrix-org/sytest (#771)
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-07-31 13:45:45 +01:00
Cnly ac775bb79d Add more sanity checks
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-07-31 17:13:10 +08:00
Cnly 632b88252f Implement POST version of /redact
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-07-31 11:22:22 +08:00
Cnly bc4a3be298 Merge branch 'master' into event-redaction 2019-07-29 15:28:40 +08:00
Alex Chen 3e6d0a6246
Add newly passing tests from matrix-org/sytest 56de891 (#769) 2019-07-29 15:18:21 +08:00
Cnly 6dc2f070a2 Update gomatrixserverlib to v0.0.0-20190727114627-340519e0d9e3
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-07-27 19:57:42 +08:00
Cnly c104599804 Merge branch 'master' into event-redaction 2019-07-27 19:18:00 +08:00
Cnly 3742874433 Fix arguments in selectEventsSQL
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-07-27 19:16:11 +08:00
Cnly 40fd47957a Implement event redaction
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-07-27 17:56:26 +08:00
Alex Chen e66933b108
Fix data races reported by go test -race ./... (#748) 2019-07-26 00:00:22 +08:00
Andrew Morgan 45d24d3fb5
Remove the buildkite pipeline (#763)
New repo: https://github.com/matrix-org/pipelines/
2019-07-24 18:41:39 +01:00
Alex Chen 604685c503 Implement room creation content (#754)
Fixes #660.

Signed-off-by: Alex Chen minecnly@gmail.com
2019-07-24 17:15:36 +01:00
Thibaut CHARLES b729a10366 Store & retrieve filters as structs rather than []byte (#436)
Manipulate filters as gomatrix.Filter structures, instead of their []byte JSON representation.
This lays ground work for using filters in dendrite for /sync requests.
2019-07-25 00:08:51 +08:00
Alex Chen 6773572907 Update gomatrixserverlib to v0.0.0-20190724145009-a6df10ef35d6 (#762)
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-07-24 16:27:40 +01:00
Andrew Morgan 4410acc673 Add filepath and function name to log output (#755)
Adds detailed logging, describing which file/line a log message came from, as well as the name of the function that it was contained within.
2019-07-24 12:44:05 +08:00
Andrew Morgan 78032b3f4c
Correctly create new device when device_id is passed to /login (#753)
Fixes https://github.com/matrix-org/dendrite/issues/401

Currently when passing a `device_id` parameter to `/login`, which is [supposed](https://matrix.org/docs/spec/client_server/unstable#post-matrix-client-r0-login) to return a device with that ID set, it instead just generates a random `device_id` and hands that back to you.

The code was already there to do this correctly, it looks like it had just been broken during some change. Hopefully sytest will prevent this from becoming broken again.
2019-07-22 15:05:38 +01:00
Andrew Morgan bdd1a87d4d Add appservice API to config unit test (#744)
Fixes #558
2019-07-19 14:04:06 +08:00
Andrew Morgan 6ff7b6a72a Clarify that POST publicRooms is implemented (#743)
As a response to #638, it seems that POST /publicRooms is already implemented. It is, however, unclear from the code that it is.

Add some comments and change a method name to make this more clear.
2019-07-19 00:21:06 +08:00
Andrew Morgan e56d6e41fd Remove the trailing slash from /send/{txnID} and /backfill/{roomID} (#746)
In conjunction with matrix-org/sytest#651, /send/{txnID} and /backfill/{roomID} should not have trailing slashes according to the spec.
2019-07-18 15:41:29 +08:00
Andrew Morgan 504d23f468 Remove unnecessary http method checks (#747)
Closes #523

There were a lot of unnecessary checks for HTTP methods of requests. gorilla/mux makes sure that these methods will only be called if certain HTTP methods are used, thus there's no reason to have these extra checks.
2019-07-18 15:40:10 +08:00
Andrew Morgan bff60953f3 Prevent duplicate entries in the completed registration flows (#741) 2019-07-17 11:55:25 +08:00
Andrew Morgan c494d81235
Small clarification for method (#742) 2019-07-16 18:01:16 +01:00
Alex Chen 9bef5d52f4 Fix broken Kafka download URL in INSTALL.md (#740)
Signed-off-by: Alex Chen <minecnly@gmail.com>
2019-07-16 16:16:43 +01:00
Sumukha Pk fd4ea78dbf Moved to gomatrix latest in gomod (#738)
Moved to gomatrix latest in gomod
2019-07-13 08:32:47 +01:00