-
Notifications
You must be signed in to change notification settings - Fork 108
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] Extend PR statuses to indicate inactivity #47
Conversation
Discussing was actually only set in bors if someone had actually commented on the PR. Although that's kind of useless because it could be the PR author or someone else just saying |
Ah. I figured if most of the rows were going to have some sort of status and colour, then "discussing" would serve as a good neutral status (in order to create a spectrum of sorts while scrolling the page). |
I'm slightly against this change. The In bors, there were whole a lot more statuses: Also, I think it is good to use the similar terms with other CI solutions. For example, But these are just my preferences, so I want to hear more opinions from others on this issue. I do agree colorizing the queue may increase the readability. So let's see. |
That's definitely reasonable; I was unaware of the original design decision behind the status field. Perhaps Homu could be based around four base colours (green, yellow, orange, and red) to represent the four statuses defined in the GitHub API, and then further subcategorize these "base colours" with different shades, ie. I'm going to work on this a bit to see if I can get an inactivity indicator working as outlined in #45. |
@barosl This might be an extremely naïve question, but is there some way I can test Homu locally? |
@iKevinY not naive. It's not obvious what's required. iirc you just need to set up the cfg.toml with an API token from github (doesn't need basically any priviledges since it's read-only on a public repo) and you can get an instance going. This is mine:
Then you just follow the instructions in the README. Since it's a stateful app, it won't have all the metadata that the "offical" rust homu has, but it'll get you something. |
@gankro Thanks! I set up my |
@iKevinY In addition to the @gankro's comment, I'm also using a local Buildbot instance to debug state changes. It won't be needed just for the presentation layer fixes, so you don't have to set up your own. But if it is required, please tell me. I'll give you permission for my test repository. Or you can just install Buildbot by yourself, which is also not that hard. |
@barosl Yup, it doesn't look like I'll need to debug any state changes (for this PR at least). Looking to get this done by tomorrow. |
Currently thinking about something like this (colours chosen completely arbitrarily for now), where "open" signifies non-approved PRs that have been updated in the past week, and "inactive" for those that haven't. This way, they all feel like subsets of one singular GitHub status while providing a little more context. Thoughts? |
Alright, I think I've resolved all of the merge conflicts. This seems to work on my local machine, but I'm not sure if the inactive statuses will update after the initial pull request retrieval. |
00c90f6
to
9e03fa6
Compare
@barosl Do you have any suggestions on how to have Homu update the inactivity statuses of PRs based on GitHub's webhooks? Would it just be matter of modifying |
@iKevinY I think that would work, although there might be some need to limit the Also, sorry for being late, but I've had some mixed feelings about this PR. Here are my concerns:
|
@barosl The "first-come, first-served" philosophy definitely makes sense. I didn't mean to disrupt the original order scheme; the fact that that these changes would prevent inactive PRs from rising to the top completely slipped my mind. With regards to the colours, what do you propose? For this proof-of-concept, I stuck to using shades of green to try to match the GitHub API status idea that you mentioned in an earlier comment. That being said, if you feel that this PR is straying too far away from your idea of how Homu should look, I would be happy to change the scope of the changes (ie. by adding an additional "last modified" column instead of representing this information in the status column, for instance). |
Going to close this pull request since the scope doesn't really fit Homu for the time being. |
This PR causes Homu to imitate Bors' behaviour so that "empty statuses" are replaced with "discussing" or "stale", depending on whether the PR can be merged. I guess this is sort of related to #45, though this implementation is of course not based on activity.
Also, the "Number" table header is wider than the 5-digit pull request numbers and that felt like a waste of precious horizontal pixels, so I changed it to "PR #". I can definitely rebase if this change is undesired.