Add a downloads count column to the list of available custom modules#57
Conversation
…x for caching value reducing settings_name that has a key limit of 35 chars
|
Thanks for this additional contribution. This looks very promising! I guess you also changed a file in my common library, which is placed in the /vendor folder. Those files are not included in the pull request, because they have the character of a library. Can you send me the following modified file (e.g. as an attachement): Or you could create a pull request for the file in the repository of my common library: GithubService |
|
Only thing I am wondering is at what time to update the download count, because calling the GitHub API for 80 modules is a little bit time consuming:
|
|
Thank you for your review and feedback, very much appreciated! I updated the pull request with the following changes:
Additionally I made a separate pull request Jefferson49/webtrees-common#3 for the webtrees-common with the GitHub API integration, that was missing as you correcly pointed out. This works only for modules using GitHub for releases and adding separate assets for the releases (for instance it does not work with Vesta modules or the faces module). Here a screenshot of how the custom module manager page looks like with this proposal: |
|
I merged the PR and consolidated some of the code. I decided to set the cache TTL to 30 days for the download counts. I also integrated the behavior of the buttons "check now" and "Fetch all" in the "check now" button, because the GitHub API calls will retrieve both (version and download counts) at the same time anyway. In my test installations, it works pretty well now. Currently, I am working on some other topics. I guess I will publish a new version in about one week. |
|
Thank you for the update and for incorporating this enhancement. I appreciate the valuable discussion we had, particularly your suggestion to rely on the downloads count as a proxy for popularity instead of monitoring active modules. |

This is proposal to address #55:
Screenshot:
