-
-
Notifications
You must be signed in to change notification settings - Fork 8.1k
adding saved replies to development guide, under triage #23109
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
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for opening your first PR into Matplotlib!
If you have not heard from us in a while, please feel free to ping @matplotlib/developers or anyone who has commented on the PR. Most of our reviewers are volunteers and sometimes things fall through the cracks.
You can also join us on gitter for real-time discussion.
For details on testing, writing docs, and our review process, please see the developer guide
We strive to be a welcoming and open project. Please follow our Code of Conduct.
@timhoffm
timhoffm
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @noatamir this is a great start!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just thinking: Could we have a bot write that message or is that too impersonal? We already have an automated welcome message (as you can see in this PR 😄).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think I would rather do them myself while I can manage the load. I would need to set up getting notifications for new PRs being merged. But I will consider it if it becomes unmanageable
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have a slight preference for a human doing this. We do not have such a huge influx of new contributors and I think it does help build the inter-personal relationship.
Is the ideas to use these with "Saved Replies" or some such? https://docs.github.com/en/get-started/writing-on-github/working-with-saved-replies/about-saved-replies. Can we add these as a project?
tacaswell
commented
May 23, 2022
Can we add these as a project?
My understand of the GH ui is no (if you look in the notes there is a link to a feature request to 👍🏻 ).
@jklymak
jklymak
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the explanation at the start could have been a single four sentence paragraph. I took a first pass at trimming, but could probably do more.
Similarly, the actual canned responses are quite long, and suffer the potential fate of drifting out of date with the actual docs. Suggest we link the actual docs.
doc/devel/saved_replies.rst
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
doc/devel/saved_replies.rst
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
oscargus
commented
May 25, 2022
Is the idea that these should be copied and pasted from the page? It will be a bit of a hassle with formatting parts of it. I think that it would be beneficial to provide these in "raw" Github Markdown so that it is easy to add them to "Default replies" (which seems to be connected to a user). In that way one can easily add them and have them ready.
( https://docs.github.com/en/get-started/writing-on-github/working-with-saved-replies )
noatamir
commented
May 27, 2022
My idea was to provide the markdown actually, but then I'm not sure what's the best way to include it.
Do you have suggestions?
So far my ideas to include it were:
- In the docs, which seemed repetitive at first, but maybe I can use some copying functionality of sphinx which I haven't explored yet fully. I can look into it.
- In GitHub Wiki, and link to that in the Docs. That way you don't need to go to the Docs to "go get them"
Would be happy to get guidance here, as to what would be most convenient.
jklymak
commented
May 27, 2022
I don't know about copying, but you can put the markdown in literals.
Yeah sphinx will let you embed raw files (it's what we use on the citation page)
https://www.sphinx-doc.org/en/master/usage/restructuredtext/directives.html#directive-literalinclude
https://github.com/matplotlib/matplotlib/blob/main/doc/users/project/citing.rst
noatamir
commented
May 27, 2022
Thanks everyone for all the feedback so far!
I'll make some revisions and we'll see if we're closer to something we can add soon ^_^
timhoffm
commented
Jun 15, 2022
@noatamir I've marked this as draft. Please mark as ready-for-review when you are done with the revision.
@noatamir we generally prefer to rebase PRs on master rather than merging master in PRs. This tends to result in simpler PRs. Not a difference here because there were no conflicts, but I suggest to grow the habit.
A rebased PR is essentially the same as if you had made the PR st a later point in time. That drops any complexity you'd explicitly keep in a merge.
noatamir
commented
Jun 30, 2022
@jklymak
jklymak
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added some safety catches to the git workflows section. Folks should always create a backup branch unless they know what they are doing, because most people will push to origin before they realize their mistake, and then their only recourse to fix bad commits is if they saved a backup as part of their backup system.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think you should be editor agnostic here, and rather refer to the environment variable that controls this behaviour in git.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I thought adding the exit vim clue would save a lot of people a lot of searching 😉 I saw something similar in the GitLab documentation for interactive rebase and I thought it was kind and helpful. I tried to keep it more concise and be clear it's just an example.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd hate for people to read our instructions and come away with the impression that they have to learn vi before they can master a rebase. If you want a generic vt100-compatible text editor pico/nano would be a lot more suitable for beginners who are just slavishly following our instructions.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wholeheartedly agree. I don't think I implied that people need to master vim though?! At least on macs vim is the default editor, and I don't know how many beginners change it 🤷♀️ So likely the first time they run a rebase it would open in vim, and they might not know what to do. This means we need to add instruction for mac users to change the .bash_profile before they run rebase to nano to change their default, and/or a hint on how to exit vim. I am not sure what's the common default editor on windows and linux.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like the addition of the backup! 🙇♀️ I used a backup tag so far to revert. Probably the branch strategy is less stressful and I should use that too 😃
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
jklymak
commented
Jul 1, 2022
Note, you are probably going to slow this down by including the git workflows here. I wonder if that would be better served as a different PR?
noatamir
commented
Jul 1, 2022
@jklymak I included the git workflows based on Tim's suggestion to make the rebase saved reply short, and add a link to the full rebase instructions in the docs.
If you think the name of the page or its location could be improved, I'd be happy to get input!
But without this page, I would need to remove the rebase saved reply, which is the original reason for this PR 😕
I would like to add more saved replies after we are done with this PR, but the rebase saved reply is the top priority for me, and I'd like to know what's needed to get that in.
jklymak
commented
Jul 1, 2022
I agree with linking out, but I'm just suggesting two PRs - the saved replies can point to the existing instructions, and the other PR can replace the existing instructions. I think its confusing to have git instructions in two places as proposed here. Note that the existing instructions are https://matplotlib.org/stable/devel/gitwash/index.html. Replacing them comprehensively is a great idea, and what you have is a reasonable start to one of the hardest steps.
I think its confusing to have git instructions in two places as proposed here.
I think we sort of all agree that the gitwash instructions are kinda terrible though, so why not as a first pass leave this as is w/ the git instructions and then as a follow on Noa (or someone else) can improve the instructions? that way the replies won't have to be updated when the follow on PR goes up. Kinda like how we have the 'install releases' and 'install for dev' pages, this is the 'quick git guide for fixing problems' and the existing gitwash is the longer 'how to github' (which is wrong anyway, so maybe soft deprecate?)
This PR Addresses discussions raised in the Matplotlib Community Meeting see:
https://hackmd.io/jd_7FjxNQ4y7XgNknvmvGQ#May-12-2022,
and https://hackmd.io/jd_7FjxNQ4y7XgNknvmvGQ#Canned-response-for-needing-a-rebase.
The goal was to create a space in the developer guide to share saved replies the community can share and contribute to.
In addition, I wanted to create an introduction to why we are writing saved replies, and how our community can benefit from them. So that the shared concepts and aspirations discussed in the community calls are documented as well.
After the introduction, I included 2 saved replies, both pertaining to PRs:
I think it fits well under triage for now, but I also didn't want to spend too much time on structure considering a re-structure is on my to-do list.
The docs built locally, so I hope it will also pass the CI 🤞
I look forward to your feedback 🙇♀️