diff --git a/are-we-synapse-yet.list b/are-we-synapse-yet.list index 5d41c6ad5..5a900b3ef 100644 --- a/are-we-synapse-yet.list +++ b/are-we-synapse-yet.list @@ -405,6 +405,7 @@ syn Unnamed room comes with a name summary syn Named room comes with just joined member count summary syn Room summary only has 5 heroes syn Room summary counts change when membership changes +rmv User can create and send/receive messages in a room with version 1 rmv User can create and send/receive messages in a room with version 1 (2 subtests) rmv local user can join room with version 1 rmv User can invite local user to room with version 1 @@ -413,6 +414,7 @@ rmv User can invite remote user to room with version 1 rmv Remote user can backfill in a room with version 1 rmv Can reject invites over federation for rooms with version 1 rmv Can receive redactions from regular users over federation in room version 1 +rmv User can create and send/receive messages in a room with version 2 rmv User can create and send/receive messages in a room with version 2 (2 subtests) rmv local user can join room with version 2 rmv User can invite local user to room with version 2 @@ -422,6 +424,7 @@ rmv Remote user can backfill in a room with version 2 rmv Can reject invites over federation for rooms with version 2 rmv Can receive redactions from regular users over federation in room version 2 rmv User can create and send/receive messages in a room with version 3 +rmv User can create and send/receive messages in a room with version 3 (2 subtests) rmv local user can join room with version 3 rmv User can invite local user to room with version 3 rmv remote user can join room with version 3 @@ -430,6 +433,7 @@ rmv Remote user can backfill in a room with version 3 rmv Can reject invites over federation for rooms with version 3 rmv Can receive redactions from regular users over federation in room version 3 rmv User can create and send/receive messages in a room with version 4 +rmv User can create and send/receive messages in a room with version 4 (2 subtests) rmv local user can join room with version 4 rmv User can invite local user to room with version 4 rmv remote user can join room with version 4 @@ -438,6 +442,7 @@ rmv Remote user can backfill in a room with version 4 rmv Can reject invites over federation for rooms with version 4 rmv Can receive redactions from regular users over federation in room version 4 rmv User can create and send/receive messages in a room with version 5 +rmv User can create and send/receive messages in a room with version 5 (2 subtests) rmv local user can join room with version 5 rmv User can invite local user to room with version 5 rmv remote user can join room with version 5 diff --git a/common/basecomponent/base.go b/common/basecomponent/base.go index de3e04c21..5c6f64775 100644 --- a/common/basecomponent/base.go +++ b/common/basecomponent/base.go @@ -124,7 +124,7 @@ func (b *BaseDendrite) CreateHTTPRoomserverAPIs() ( if err != nil { logrus.WithError(err).Panic("NewRoomserverInputAPIHTTP failed", b.httpClient) } - query, err := roomserverAPI.NewRoomserverQueryAPIHTTP(b.Cfg.RoomServerURL(), nil) + query, err := roomserverAPI.NewRoomserverQueryAPIHTTP(b.Cfg.RoomServerURL(), b.httpClient) if err != nil { logrus.WithError(err).Panic("NewRoomserverQueryAPIHTTP failed", b.httpClient) } @@ -134,7 +134,7 @@ func (b *BaseDendrite) CreateHTTPRoomserverAPIs() ( // CreateHTTPEDUServerAPIs returns eduInputAPI for hitting the EDU // server over HTTP func (b *BaseDendrite) CreateHTTPEDUServerAPIs() eduServerAPI.EDUServerInputAPI { - e, err := eduServerAPI.NewEDUServerInputAPIHTTP(b.Cfg.EDUServerURL(), nil) + e, err := eduServerAPI.NewEDUServerInputAPIHTTP(b.Cfg.EDUServerURL(), b.httpClient) if err != nil { logrus.WithError(err).Panic("NewEDUServerInputAPIHTTP failed", b.httpClient) } @@ -144,7 +144,7 @@ func (b *BaseDendrite) CreateHTTPEDUServerAPIs() eduServerAPI.EDUServerInputAPI // CreateHTTPFederationSenderAPIs returns FederationSenderQueryAPI for hitting // the federation sender over HTTP func (b *BaseDendrite) CreateHTTPFederationSenderAPIs() federationSenderAPI.FederationSenderQueryAPI { - f, err := federationSenderAPI.NewFederationSenderQueryAPIHTTP(b.Cfg.FederationSenderURL(), nil) + f, err := federationSenderAPI.NewFederationSenderQueryAPIHTTP(b.Cfg.FederationSenderURL(), b.httpClient) if err != nil { logrus.WithError(err).Panic("NewFederationSenderQueryAPIHTTP failed", b.httpClient) } diff --git a/common/eventcontent.go b/common/eventcontent.go index c07c56276..f3817ba68 100644 --- a/common/eventcontent.go +++ b/common/eventcontent.go @@ -48,6 +48,7 @@ func InitialPowerLevelsContent(roomCreator string) (c gomatrixserverlib.PowerLev "m.room.history_visibility": 100, "m.room.canonical_alias": 50, "m.room.avatar": 50, + "m.room.aliases": 0, // anyone can publish aliases by default. Has to be 0 else state_default is used. } c.Users = map[string]int64{roomCreator: 100} return c diff --git a/publicroomsapi/directory/directory.go b/publicroomsapi/directory/directory.go index 1e305f3ca..837018e64 100644 --- a/publicroomsapi/directory/directory.go +++ b/publicroomsapi/directory/directory.go @@ -92,9 +92,9 @@ func SetVisibility( util.GetLogger(req.Context()).WithError(err).Error("could not query events from room") return jsonerror.InternalServerError() } - power, _ := gomatrixserverlib.NewPowerLevelContentFromEvent(queryEventsRes.StateEvents[0].Event) - // Check if the user's power is greater than power required to change m.room.aliases event + // NOTSPEC: Check if the user's power is greater than power required to change m.room.aliases event + power, _ := gomatrixserverlib.NewPowerLevelContentFromEvent(queryEventsRes.StateEvents[0].Event) if power.UserLevel(dev.UserID) < power.EventLevel(gomatrixserverlib.MRoomAliases, true) { return util.JSONResponse{ Code: http.StatusForbidden, diff --git a/sytest-whitelist b/sytest-whitelist index 3277cc59d..d47bf1f60 100644 --- a/sytest-whitelist +++ b/sytest-whitelist @@ -17,6 +17,11 @@ POST /register rejects registration of usernames with 'é' POST /register rejects registration of usernames with '\n' POST /register rejects registration of usernames with ''' GET /login yields a set of flows +POST /login can log in as a user +POST /login returns the same device_id as that in the request +POST /login can log in as a user with just the local part of the id +POST /login as non-existing user is rejected +POST /login wrong password is rejected GET /events initially GET /initialSync initially Version responds 200 OK with valid structure