Mattermost-server: [MM-15297] Migrate "Preference.Get" to Sync by default

Created on 25 Apr 2019  路  4Comments  路  Source: mattermost/mattermost-server

If you're interested please comment here and come join our "Contributors" community channel on our daily build server, where you can discuss questions with community members and the Mattermost core team. For technical advice or questions, please join our "Developers" community channel.

New contributors please see our Developer's Guide.


Notes: Jira ticket

Mattermost is migrating its Store layer to be sync by default, and only use Async when needed and we're looking for contributors to help with that effort. This Help Wanted issue is to migrate the Get in the Preference store.

The expected way to implement it is, go to the Preference store implementation in the store/sqlstore/ directory, modify the method Get to return directly an object from the model module, and a *model.AppError (removing the store.Do wrapper). After that, you must modify the interface defined in store/store.go to match with the changes. Then, you should execute make store-mocks to rebuild the mocks with the new interface. And finally, modify the rest of the code (tests included) to use the new interface of the function properly.

Example: mattermost/mattermost-server#10613

AreTechnical Debt Easy Good First Issue Help Wanted TecGo

All 4 comments

I'd like to try taking this if that's okay

Surely, @ivanaairenee. :+1: Thanks for taking of this. Let me know, if you have any questions.

Hi @hanzei, this is my first time making a PR and I have a test failure on Jenkins

+ docker-compose --no-ansi run --rm start_dependencies
        Can't find a suitable configuration file in this directory or any
        parent. Are you in the right directory?
        Supported filenames: docker-compose.yml, docker-compose.yaml
Terminated
script returned exit code 1

Any pointers to any documentation or community discussion I can look at?

Hey @ivanaairenee, this seams to be a failure with our build system. I restarted the build and it should run smoothly now.

Was this page helpful?
0 / 5 - 0 ratings