Skip to content
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

[Merged by Bors] - Add "how to adopt pull requests" section #6895

Closed
wants to merge 14 commits into from

Conversation

oCaioOliveira
Copy link
Contributor

Objective

Solution

Co-authored-by: Erick erickmelovidal@gmail.com

Fixes bevyengine#5539

Co-authored-by: Erick <erickmelovidal@gmail.com>
Copy link
Member

@MrGVSV MrGVSV left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this section should also include how to go about requesting permission in the original PR as well as conferring with org members to close the original when the new one is ready.

CONTRIBUTING.md Outdated
@@ -275,6 +275,12 @@ By giving feedback on this work (and related supporting work), you can help us m
Finally, if nothing brings you more satisfaction than seeing every last issue labeled and all resolved issues closed, feel free to message @cart for a Bevy org role to help us keep things tidy.
As discussed in [*How we're organized*](#how-were-organized), this role only requires good faith and a basic understanding of our development process.

### How to adopt pull requests

When you want to contribute pull request with the label *S-Adopt-Me*, to preserve the credit of the original authors, you must reference the PR hash in the description.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You could probably add a link to the S-Adopt-Me label. That way, people reading this section can see which PRs are up for adoption.

CONTRIBUTING.md Outdated
@@ -275,6 +275,12 @@ By giving feedback on this work (and related supporting work), you can help us m
Finally, if nothing brings you more satisfaction than seeing every last issue labeled and all resolved issues closed, feel free to message @cart for a Bevy org role to help us keep things tidy.
As discussed in [*How we're organized*](#how-were-organized), this role only requires good faith and a basic understanding of our development process.

### How to adopt pull requests

When you want to contribute pull request with the label *S-Adopt-Me*, to preserve the credit of the original authors, you must reference the PR hash in the description.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Preferably adopters should build off of the existing commits of the original author. This should mention pulling down the commits of the original PR as a base and rebasing into main to preserve the commit history and credit of the original author.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not always necessarily practical- the largest blocker to #5373 was a need for a rebase upon mainline, and squash-reduction to a single commit aided in that rebase significantly when creating #6853. If this is a preference, that's fine, but I'd avoid elevating it to a hard requirement.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not always necessarily practical- the largest blocker to #5373 was a need for a rebase upon mainline, and squash-reduction to a single commit aided in that rebase significantly when creating #6853. If this is a preference, that's fine, but I'd avoid elevating it to a hard requirement.

Hello @Dessix, did you comment in the correct PR? I didn't understand your comment...

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Preferably adopters should build off of the existing commits of the original author.

@oCaioOliveira To rephrase my prior comment: "Reusing the original commits is sometimes hard".

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yep, IMO this should be noted as a preference, not a requirement.

@james7132 james7132 added C-Docs An addition or correction to our documentation A-Meta About the project itself labels Dec 9, 2022
@oCaioOliveira
Copy link
Contributor Author

I think this section should also include how to go about requesting permission in the original PR as well as conferring with org members to close the original when the new one is ready.

Hello @MrGVSV, if the PR already has the S-Adopt-Me label, isn't it understood that the original PR will be used as a base? Why would it be necessary to ask for permission?

@oCaioOliveira
Copy link
Contributor Author

oCaioOliveira commented Dec 10, 2022

Hello @james7132 and @MrGVSV, your suggestions were implemented, can you check?

CONTRIBUTING.md Show resolved Hide resolved
CONTRIBUTING.md Outdated Show resolved Hide resolved
@alice-i-cecile
Copy link
Member

Hello @MrGVSV, if the PR already has the S-Adopt-Me label, isn't it understood that the original PR will be used as a base? Why would it be necessary to ask for permission?

I understood this request to add another section explaining the etiquette / practices around how that label gets added in the first place :)

@MrGVSV
Copy link
Member

MrGVSV commented Dec 11, 2022

Hello @MrGVSV, if the PR already has the S-Adopt-Me label, isn't it understood that the original PR will be used as a base? Why would it be necessary to ask for permission?

I understood this request to add another section explaining the etiquette / practices around how that label gets added in the first place :)

Yes, sorry for being unclear before! This was what I meant since you may want to adopt an old PR without the label (or even just ask for permission to apply the label if you’re not planning on adopting it yourself).

@alice-i-cecile
Copy link
Member

@oCaioOliveira feel free to resolve comments as you address them to help reviewers understand outstanding concerns.

oCaioOliveira and others added 3 commits December 11, 2022 21:33
Co-authored-by: James Liu <contact@jamessliu.com>
Co-authored-by: James Liu <contact@jamessliu.com>
@oCaioOliveira
Copy link
Contributor Author

Hello @MrGVSV, we added a section explaining the etiquette / practices around how that label gets added.

Copy link
Member

@MrGVSV MrGVSV left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking a lot better! I think the second paragraph is pretty much good to go. Just a few comments on the surrounding paragraphs.

CONTRIBUTING.md Outdated
@@ -275,6 +275,14 @@ By giving feedback on this work (and related supporting work), you can help us m
Finally, if nothing brings you more satisfaction than seeing every last issue labeled and all resolved issues closed, feel free to message @cart for a Bevy org role to help us keep things tidy.
As discussed in [*How we're organized*](#how-were-organized), this role only requires good faith and a basic understanding of our development process.

### How to adopt pull requests

Occasionally authors of pull requests get busy or become unresponsive. This is a natural part of any open source project. To avoid blocking these efforts, these pull requests may be *adopted*, where another contributor creates a new pull request with the same content. If there is an old Pull request without the label that is without updates, comment to the organization whether it is appropriate to add the *[S-Adopt-Me](https://github.com/bevyengine/bevy/labels/S-Adopt-Me)* label, to indicate that it can be *adopted*.
Copy link
Member

@MrGVSV MrGVSV Dec 13, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think there's two things a person can do:

  1. As you mentioned, they can ask an org member if a given PR could use the label (this generally happens on Discord from my observations but can also happen on the PR like you described)
  2. If they want to pick it up themselves, they should likely leave a comment on the PR asking the author if they plan on returning to the PR and if they can adopt it otherwise. If the author gives permission to adopt or simply doesn't respond after some time (maybe a few days?), they may then continue to adopt the PR.

You pretty much have 1 written down here, but 2 is another thing users can do to adopt a PR (and this may sometimes even skip the labeling since at that point the PR has been adopted).

Sidenote: I know this file doesn't necessarily follow this style, but I’d recommend splitting these longer paragraphs over multiple lines (with no empty lines between). This allows markdown to still treat it as a single paragraph, but makes it easier for reviewers to leave comments on particular sentences or phrases— both for this PR and all future ones that modify these lines.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The 2 was resolved as you asked, can you check please?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We followed your suggestion of splitting these longer paragraphs over multiple lines, but the CI / markdownlint (pull_request) accused as errors. So we needed to maintain a paragraph.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like the reason for the error was because of some spacing issues. It's telling you to remove trailing spaces on lines:

- Here is a sentence. 
+ Here is a sentence.
And here is another.

It also is suggested to add blank lines between lists and code blocks:

Here is some code:
+
```
fn foo() {}
```

CONTRIBUTING.md Outdated Show resolved Hide resolved
CONTRIBUTING.md Outdated

With this label added, it's best practice to fork the original author's branch. This ensures that they still get credit for working on it and that the commit history is retained. When the new pull request is ready, it should reference the original PR in the description. Then notify org members to close the original.

* Example: `Adopted #number-original-pull-request`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: Not super required, but sometimes people at-mention the original author in their PR description to further give back some credit to that author. Is this something we should add here? Or is it mainly a preference thing that users can decide for themselves (and so we can exclude it from this document)?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We put this part with examples just because in the description of issue (#5539) it asked for "correct way to "adopt a PR" that also preserves credit of the original authors". Do you think this part may be deleted?

oCaioOliveira and others added 4 commits December 15, 2022 00:13
Co-authored-by: Gino Valente <49806985+MrGVSV@users.noreply.github.com>
Co-authored-by: Erick <erickmelovidal@gmail.com>
CONTRIBUTING.md Outdated Show resolved Hide resolved
CONTRIBUTING.md Outdated
@@ -275,6 +275,16 @@ By giving feedback on this work (and related supporting work), you can help us m
Finally, if nothing brings you more satisfaction than seeing every last issue labeled and all resolved issues closed, feel free to message @cart for a Bevy org role to help us keep things tidy.
As discussed in [*How we're organized*](#how-were-organized), this role only requires good faith and a basic understanding of our development process.

### How to adopt pull requests

Occasionally authors of pull requests get busy or become unresponsive. This is a natural part of any open source project. To avoid blocking these efforts, these pull requests may be *adopted*, where another contributor creates a new pull request with the same content. If there is an old Pull request without the label that is without updates, comment to the organization whether it is appropriate to add the *[S-Adopt-Me](https://github.com/bevyengine/bevy/labels/S-Adopt-Me)* label, to indicate that it can be *adopted*. Otherwise, should leave a comment on the PR asking the author if they plan on returning, if the author gives permission or simply doesn't respond after few days, then it can be adopted. This may sometimes even skip the labeling since at that point the PR has been adopted.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note: I replied to your comment.

Not a blocker, but I still think it would be beneficial to add a new line after each sentence/phrase. It will make future review much simpler!

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the explanation, we added this suggestion, really is more simpler for review.

CONTRIBUTING.md Outdated
@@ -275,6 +275,16 @@ By giving feedback on this work (and related supporting work), you can help us m
Finally, if nothing brings you more satisfaction than seeing every last issue labeled and all resolved issues closed, feel free to message @cart for a Bevy org role to help us keep things tidy.
As discussed in [*How we're organized*](#how-were-organized), this role only requires good faith and a basic understanding of our development process.

### How to adopt pull requests

Occasionally authors of pull requests get busy or become unresponsive. This is a natural part of any open source project. To avoid blocking these efforts, these pull requests may be *adopted*, where another contributor creates a new pull request with the same content. If there is an old Pull request without the label that is without updates, comment to the organization whether it is appropriate to add the *[S-Adopt-Me](https://github.com/bevyengine/bevy/labels/S-Adopt-Me)* label, to indicate that it can be *adopted*. Otherwise, should leave a comment on the PR asking the author if they plan on returning, if the author gives permission or simply doesn't respond after few days, then it can be adopted. This may sometimes even skip the labeling since at that point the PR has been adopted.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Occasionally authors of pull requests get busy or become unresponsive.

This could make it seems like it's all on the authors shoulders... Sometimes it's also on the project side that we fail to reply in a timely manner

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes have been done @mockersf.

oCaioOliveira and others added 2 commits December 20, 2022 11:07
Co-authored-by: Gino Valente <49806985+MrGVSV@users.noreply.github.com>
Co-authored-by: Erick <erickmelovidal@gmail.com>
Copy link
Member

@MrGVSV MrGVSV left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! Thank you!

@alice-i-cecile alice-i-cecile added the S-Ready-For-Final-Review This PR has been approved by the community. It's ready for a maintainer to consider merging it label Dec 21, 2022
CONTRIBUTING.md Outdated
@@ -275,6 +275,26 @@ By giving feedback on this work (and related supporting work), you can help us m
Finally, if nothing brings you more satisfaction than seeing every last issue labeled and all resolved issues closed, feel free to message @cart for a Bevy org role to help us keep things tidy.
As discussed in [*How we're organized*](#how-were-organized), this role only requires good faith and a basic understanding of our development process.

### How to adopt pull requests

Occasionally authors of pull requests get busy or become unresponsive.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is still putting all the fault on PR authors

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, we were sure we had committed the changes, now it's there.

@alice-i-cecile alice-i-cecile removed the S-Ready-For-Final-Review This PR has been approved by the community. It's ready for a maintainer to consider merging it label Dec 22, 2022
CONTRIBUTING.md Outdated Show resolved Hide resolved
Co-authored-by: Gino Valente <49806985+MrGVSV@users.noreply.github.com>
CONTRIBUTING.md Outdated
@@ -277,7 +277,7 @@ As discussed in [*How we're organized*](#how-were-organized), this role only req

### How to adopt pull requests

Occasionally authors of pull requests get busy or become unresponsive.
Occasionally authors of pull requests get busy or become unresponsive, in other hand, on the project side, sometimes members fail to reply in a timely manner.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Occasionally authors of pull requests get busy or become unresponsive, in other hand, on the project side, sometimes members fail to reply in a timely manner.
Occasionally authors of pull requests get busy or become unresponsive, or project members fail to reply in a timely manner.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just cleaning up the wording a bit then this LGTM!

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done! Thanks for the suggestion.

@alice-i-cecile alice-i-cecile added the S-Ready-For-Final-Review This PR has been approved by the community. It's ready for a maintainer to consider merging it label Dec 22, 2022
@alice-i-cecile
Copy link
Member

@oCaioOliveira Thanks for your patience and careful work here; it's great to have this written up :)

bors r+

bors bot pushed a commit that referenced this pull request Dec 22, 2022
# Objective

- Add "how to adopt pull requests" section.
- Fixes #5539

## Solution

- Add "how to adopt pull requests" section in [Contributing.md](https://github.com/bevyengine/bevy/blob/main/CONTRIBUTING.md).

Co-authored-by: Erick <erickmelovidal@gmail.com>
@bors bors bot changed the title Add "how to adopt pull requests" section [Merged by Bors] - Add "how to adopt pull requests" section Dec 22, 2022
@bors bors bot closed this Dec 22, 2022
alradish pushed a commit to alradish/bevy that referenced this pull request Jan 22, 2023
# Objective

- Add "how to adopt pull requests" section.
- Fixes bevyengine#5539

## Solution

- Add "how to adopt pull requests" section in [Contributing.md](https://github.com/bevyengine/bevy/blob/main/CONTRIBUTING.md).

Co-authored-by: Erick <erickmelovidal@gmail.com>
ItsDoot pushed a commit to ItsDoot/bevy that referenced this pull request Feb 1, 2023
# Objective

- Add "how to adopt pull requests" section.
- Fixes bevyengine#5539

## Solution

- Add "how to adopt pull requests" section in [Contributing.md](https://github.com/bevyengine/bevy/blob/main/CONTRIBUTING.md).

Co-authored-by: Erick <erickmelovidal@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-Meta About the project itself C-Docs An addition or correction to our documentation S-Ready-For-Final-Review This PR has been approved by the community. It's ready for a maintainer to consider merging it
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add "how to adopt pull requests" section in Contributing.md
7 participants