sthewissen / MVP

Unofficial app to help MVPs manage their community activities
GNU General Public License v3.0
112 stars 31 forks source link

[Feature] Data caching #19

Closed sthewissen closed 4 years ago

sthewissen commented 4 years ago

There are a few things that can be cached in this app and we need to come up with a plan around this.

A list of all visibility types This is used in the create/edit activity wizard. It's a list that will hardly ever change and contains 3 types at the moment of this writing; Everyone, Microsoft, . It comes from the GetSharingPreferences API endpoint.


A list of all activity types This is used in the create/edit activity wizard. It's a list that will hardly ever change and contains 24 types at the moment of this writing. It comes from the GetContributionTypes API endpoint.


A list of all contribution technologies / areas This is used in the create/edit activity wizard. Probably the data that will change most often as new areas/technologies are added/removed as time progresses. However, it will never be a huge change here. It comes from the GetContributionAreas API endpoint.


A special type of caching needs to be done for activities/contributions themselves. After the 1st of April the ones for that award period can not be edited anymore, so storing the ones from that award period in cache means we will never have to retrieve those from the API endpoint anymore. However, there is currently no API endpoint that will allow us to provide a start and end DateTime to get a specific subset.


Cache these:

sthewissen commented 4 years ago

Caching for the following is in:

What's lacking is contribution caching. With them being somewhat fluent it's a hard nut to crack.

sthewissen commented 4 years ago

Contribution caching will NOT be in, because the API is simply not suited for it.