Skip to content
This repository has been archived by the owner on Nov 14, 2024. It is now read-only.

Return event NID from StoreEvent, match PSQL vs SQLite behaviour, tweak backfill persistence #2071

Merged
merged 1 commit into from
Dec 9, 2021

Conversation

neilalexander
Copy link
Contributor

Now that we can use RETURNING in SQLite, we should match the behaviour across both storage backends. It also returns the event NID from the StoreEvent function, which will be useful in another PR I am working on.

@neilalexander neilalexander requested a review from a team as a code owner December 9, 2021 13:53
@neilalexander neilalexander merged commit c3dda07 into master Dec 9, 2021
@neilalexander neilalexander deleted the neilalexander/storeevent branch December 9, 2021 15:03
tommie pushed a commit to tommie/dendrite that referenced this pull request Dec 11, 2021
kegsay added a commit that referenced this pull request Feb 10, 2022
* Add GOPATH to PATH in find-lint.sh.

The user doesn't necessarily have it in PATH.

* Refactor LoginTypePassword and Type to support m.login.token and m.login.sso.

For login token:

* m.login.token will require deleting the token after completeAuth has
  generated an access token, so a cleanup function is returned by
  Type.Login.
* Allowing different login types will require parsing the /login body
  twice: first to extract the "type" and then the type-specific parsing.
  Thus, we will have to buffer the request JSON in /login, like
  UserInteractive already does.

For SSO:

* NewUserInteractive will have to also use GetAccountByLocalpart. It
  makes more sense to just pass a (narrowed-down) accountDB interface
  to it than adding more function pointers.

Code quality:

* Passing around (and down-casting) interface{} for login request types
  has drawbacks in terms of type-safety, and no inherent benefits. We
  always decode JSON anyway. Hence renaming to Type.LoginFromJSON. Code
  that directly uses LoginTypePassword with parsed data can still use
  Login.
* Removed a TODO for SSO. This is already tracked in #1297.
* httputil.UnmarshalJSON is useful because it returns a JSONResponse.

This change is intended to have no functional changes.

* Support login tokens in User API.

This adds full lifecycle functions for login tokens: create, query, delete.

* Support m.login.token in /login.

* Fixes for PR review.

* Set @matrix-org/dendrite-core as repository code owner

* Return event NID from `StoreEvent`, match PSQL vs SQLite behaviour, tweak backfill persistence (#2071)

Co-authored-by: kegsay <[email protected]>
Co-authored-by: Neil Alexander <[email protected]>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants