renovatebot/renovatebot.github.io

Display open issue list on each module page

rarkins opened this issue ยท 9 comments

What would you like to be able to do?

I would like it that module pages like gradle manager or pep440 versioning include a table of open issues linked to their source. This way people browsing the documentation for a manager are more likely to see if there are open feature requests or bug reports for the manager which might affect them.

Did you already have any implementation ideas?

First of all, these lists would depend on us maintaining healthy labeling in renovatebot/renovate:

  • Needs to have the exact match label
  • Should not be in triage priority (triage issues are excluded/0

Three possible ways I can think of to fetch and build the list:

  • It could be done as part of our existing docs build in renovatebot/renovate. The problem with this is that the docs artifact we generate would be out of date within minutes or hours of it being published, so it doesn't seem like a good approach. The docs build therefore should include some form of "placeholder" for open issues
  • We could fetch the issue list with each build in this repo. It could still be out of date, but much less of a problem
  • We could use client-side JS to dynamically fetch/build the list using the user's browser. Problem here is (a) complexity of adding client JS, (b) rate limiting

Therefore the 2nd approach sounds best, potentially combined with cron schedules for extra builds.

Do you want to write this feature yourself?

Yes

Tasks

This could potentially be a table with columns for priority and status, or maybe just a HTML list and use github-like labels

sounds good, but that script should be added to main repo, where the other docs generation scripts are.

Added to the main repo, but only invoked by the docs repo deploy script?

๐Ÿค” depends on the solution we choose. ๐Ÿค”

As described, I think that capturing the list and embedding it statically into the release archive is non-ideal, unless all other approaches are even worse

Example table

It sounds like you want something like this:

Table of open issues for manager:gradle:

Issue Priority Status
#15044 priority-4-low status:ready

Pre-filled query strings

Creating and maintaining the code to fetch the list of open issues and to create the table in the docs sounds like a lot of work. ๐Ÿ˜„

How about we give the reader a link to a pre-filled query on GitHub, like this:

## List of open bugs for Maven package manager

Find [open and confirmed bugs for `manager:maven` on GitHub](https://github.com/renovatebot/renovate/issues?q=type%3Aissue+is%3Aopen+label%3Atype%3Abug+-label%3Apriority-5-triage+label%3Amanager%3Amaven).

To try this out yourself copy and paste type:issue is:open label:type:bug -label:priority-5-triage label:manager:maven into the GitHub issue screen on the renovatebot/renovate repository.

Here's how it works:

  1. Only display issues, don't show PRs with type:issue
  2. Only display open issues with is:open
  3. Only show issues labeled as bug with label:type:bug
  4. Exclude priority-5-triage label by putting a - sign before the label: query, like this: -label:priority-5-triage
  5. Only display issues with the label manager:maven with label:manager:maven

References

sounds a lot easier to me ๐Ÿ™ƒ

We have some code that seems related to this issue on the renovatebot/renovate repository, check out the generateManagers function in this file:

https://github.com/renovatebot/renovate/blob/91f3fe2d6ae74d1a6318996040a5ae9c7c951ed1/tools/docs/manager.ts#L113-L218

We already have this for managers and should extend it to platforms and datasources.
Versionings first need to split to single pages.