Help topics for Derek
alexellis opened this issue · 14 comments
Expected Behaviour
There are often behaviors demonstrated by new contributors or specific questions to which we need to answer in almost the same, verbatim way:
- Join Slack here to chat more https://...
- Sign off your single commit using this command
- Sign off those 5 commits using this command
- Oh you're doing performance testing? You can't do that in a VM on your Mac, try this docs page: https://
- CI is broken, please check the logs
- This needs a rebase before it can be merged
Current Behaviour
Mixed results, repetition for maintainers and contributors.
Possible Solution
A command like: Derek topic: sign-off
/ Derek help topic: slack
Automating the sign-off message could be spammy, especially if someone has a number of commits and the message is sent each time. So rather than automatic, hands-off - a "semi-automatic" way of expanding snippets would be ideal.
We could keep these in .DEREK.yml such as:
topics:
name: slack-join
alias:
- slack
message: |
Thank for your interest in OpenFaaS. If you'd like to continue the discussion
or join our regular Zoom meetings, then please sign-up at https:// ....
Derek topic: slack
So the command name and resulting message would then be kept in the .derek.yml
file. Sounds like a good way to keep this configurable!
I think I would prefer the command to be derek help
as it's more of a "help this person" kind of command, rather than a topic. Plus topic
could be confused with the Github version of that name descibed here
Should there be any limit to the name or alias?
How would this handle the markdown syntax? Would we just post the message as-is to the comment? Could that lead to any kind of problems? I suppose that's more of an issue for the owner of the derek file than of derek itself...
@rgee0 any thoughts? I was thinking of getting started on this soon
Another way to talk about the feature could be as "snippets" or "expanding" a message?
My first thought was Derek explain:
has a natural flow to the command. Derek explain: signoff
, Derek explain: slack
, Derek explain: rebase
and so on.
...and then lazy curator joins to the conversation...
There are often behaviors demonstrated by new contributors or specific questions to which we need to answer in almost the same, verbatim way:
IMO, humans should not spent time for tasks which computers are able to do. Lot of good examples of tasks which computers would be able to do are on moby/moby#35490
- Join Slack here to chat more https://...
https://github.com/apps/welcome
- Sign off your single commit using this command
- Sign off those 5 commits using this command
Poule is already looking giving instructions about non-signed commit on https://github.com/icecrime/poule/blob/ef5ff790149fde384d0748786c6d785ab9779ae0/src/poule/operations/catalog/dco-check.go#L175-L198
Second one can be fixed by updating it.
- Oh you're doing performance testing? You can't do that in a VM on your Mac, try this docs page: https://
- CI is broken, please check the logs
- This needs a rebase before it can be merged
I guess that some bot would be able to handle these too?
/add label: help wanted
I would like to see someone start on this for the following two use-cases:
Join Slack snippet
Closing issue, but keep commenting snippet
Fill in the whole issue template snippet
Alex
Derek add label: good first issue
I am interested in doing this. Is anyone working at it ATM?
No, you can take it.
Derek assign: me
Hey, so I was thinking about whether this should be accessible to Issues and PRs or only to Issues? I assumed this is only for Issues as reading the Issue description, but then I saw sign-off and rebase topics which made me think if it should cover the Pull Request as well?
Nevermind, forgot that the comment hook is applicable to both Issues and Pull Requests, so it works for both now.
Hi Martin,
Thank you for your question.
I think this would apply equally to both.
Alex
Thanks for pointing this out Alex.
The syntax is funky I added documentation in the PR to explain how the |
thing works for multiple lines, not sure if it is very UX friendly, but still. I think this is a weak spot, thats why I extended the part which handles error, to actually report the error in case there is parsing error due to misaligned message pairs
@martindekov suggested "Derek message". I'm happy to use and think I prefer Derek message
and Derek msg
in place of my original suggestion of topic
.
In the YAML file let's define messages in the following format:
messages:
- name: slack
value: Please join us on Slack
There does not need to a be a new "feature" for this, but it should be documented under a heading of "messages" in the USER_GUIDE.md - this is available for use by default if commenting is enabled.