-
Notifications
You must be signed in to change notification settings - Fork 29.6k
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
meta: improve contributors guide #15123
Conversation
CONTRIBUTING.md
Outdated
is too small and all contributions are valued. | ||
|
||
This guide details the basic steps for getting started contributing to the | ||
Node.js projects core `nodejs/node` GitHub Repository. |
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.
project's
CONTRIBUTING.md
Outdated
|
||
## Issue Contributions | ||
As a contributor to Node.js, how you choose to act and interact towards your | ||
follow contributors, as well as to the community, will reflect back not only |
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.
Typo: fellow.
CONTRIBUTING.md
Outdated
When opening issues or commenting on existing issues, please make sure | ||
discussions are related to concrete technical issues with Node.js. | ||
Should any individual act in any way that is considered in violation of the | ||
[Code of Conduct], corrective actions will be taken. It is possible, however, |
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.
Missing square brackets: [Code of Conduct][]
.
CONTRIBUTING.md
Outdated
|
||
* For general help using Node.js, please file an issue at the | ||
[Node.js help repository](https://github.com/nodejs/help/issues). | ||
Open, diverse and inclusive open communities live and die on the basis of trust. |
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.
Duplicate "open"?
CONTRIBUTING.md
Outdated
|
||
This section will guide you through the contribution process. | ||
1. By opening the issue for discussion: For instance, if you believe that you | ||
have uncovered a bug in Node.js, creating a new issue in the nodejs/node |
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.
Backticks for nodejs/node
?
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 new ### Step 4: Rebase
part. Rebasing is sometimes hard to any developers when the conflicts are complicated. This will be very helpful :)
I just put some comments for typos I found.
CONTRIBUTING.md
Outdated
For developing new features and bug fixes, the `master` branch should be pulled | ||
and built upon. | ||
Short, clipped responses that do not provide either additional context nor | ||
supporting detail are neither helpful nor professional. To many, such responses |
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.
supporting detail is
?
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.
are
is correct here, I believe but I think a comma is in order.
CONTRIBUTING.md
Outdated
### Resolving a Bug Report | ||
|
||
In the vast majority of cases, issues are resolved by opening a pull request. | ||
The process for opening an reviewing a pull request is simliar to that of |
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.
typo: simliar => similar
CONTRIBUTING.md
Outdated
repository. | ||
|
||
There are two fundamental components of the Pull Request process: one concrete | ||
and technical, and one more process oriented. The concete and technical |
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.
typo: concete => concrete
CONTRIBUTING.md
Outdated
to the `test/parallel/` directory and the right location will be sorted out | ||
later. | ||
|
||
Before submitting your changes in a pull requests, always run the full Node.js |
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.
typo: a pull requests => a pull request
CONTRIBUTING.md
Outdated
#### Step 7: Push | ||
|
||
Once you are sure your commits are ready to go, with passing tests and linting, | ||
begin the process of opening a pull requests by pushing your working branch to |
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.
typo: a pull requests => a pull request
Updated! |
I think that level of detail is overkill, but it may make sense to have a "helpful resources" section at the end |
CONTRIBUTING.md
Outdated
|
||
For developing new features and bug fixes, the `master` branch should be pulled | ||
and built upon. | ||
Short, clipped responses--that provide neither additional context nor supporting |
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.
Are these double dashes intended (+ in the next line)?
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.
Yeah, stand in for an emdash. I should make those actual dashes
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.
Should they be rendered as emdash by GitHub or they are OK by convention? Sorry, I do not want to bother anyone needlessly for this in the future)
CONTRIBUTING.md
Outdated
### Resolving a Bug Report | ||
|
||
In the vast majority of cases, issues are resolved by opening a pull request. | ||
The process for opening an reviewing a pull request is similar to that of |
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.
an reviewing -> and reviewing ?
CONTRIBUTING.md
Outdated
Or you can amend the last commit (for example if you want to change the commit | ||
log). | ||
**Important:** The `git push --force-with-lease` command is one of the few ways | ||
to delete history in git. Before you use it, make sure you understand the risks. |
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.
in git -> in `git` ?
Is it worth to add that (Sorry for accidental closing, wrong button) |
Likely. |
CONTRIBUTING.md
Outdated
time to ensure that the changes follow the Node.js code style guide. | ||
|
||
Any documentation you write (including code comments and API documentation) | ||
should follow the [Style Guide](doc/STYLE_GUIDE.md). |
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.
Should we mention that code fragments in docs are also the subject for the make lint
?
Consider adding https://github.com/evanlucas/core-validate-commit to the possible helpful resources. |
CONTRIBUTING.md
Outdated
Any documentation you write (including code comments and API documentation) | ||
should follow the [Style Guide](doc/STYLE_GUIDE.md). Code samples included | ||
in the API docs will also be checked when running `make lint` (or | ||
`vsbuild.bat lint` on Windows). |
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.
vsbuild.bat -> vcbuild ?
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.
heh. I've always disliked that file.
Concerning the untouched fragment:
Is this path right? Should it be |
CONTRIBUTING.md
Outdated
* [Respect the minimum wait time for comments](#respect-the-minimum-wait-time-for-comments) | ||
* [Abandoned or Stalled Pull Requests](#abandoned-or-stalled-pull-requests) | ||
* [Approving a change](#approving-a-change) | ||
* [Accept that there are different opinions about what belongs in Node.js](#accept-that-there-are-different-opinions-about-what-belongs-in-node-js) |
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.
#accept-that-there-are-different-opinions-about-what-belongs-in-node-js ->
#accept-that-there-are-different-opinions-about-what-belongs-in-nodejs
CONTRIBUTING.md
Outdated
|
||
If a Pull Request appears to be abandoned or stalled, it is polite to first | ||
check with the contributor to see if they intend to continue the work before | ||
checking if the they would mind if you took it over (especially if it just has |
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.
if the they -> if they ?
CONTRIBUTING.md
Outdated
Node.js has always optimized for speed of execution. If a particular change | ||
can be shown to make some part of Node.js faster, it's quite likely to be | ||
accepted. Claims that a particular Pull Request will make things faster will | ||
almost always be met by requests for performance benchmark results that |
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.
Maybe benchmark results
should be linkified to doc/guides/writing-and-running-benchmarks.md or benchmark/README.md?
CONTRIBUTING.md
Outdated
[CI (Continuous Integration) test run]: #ci-testing | ||
[notes about the waiting time]: #waiting-until-the-pull-request-gets-landed | ||
[https://ci.nodejs.org/]: https://ci.nodejs.org/ | ||
[Onboarding guide]: ./docs/onboarding.md |
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.
docs -> doc
CONTRIBUTING.md
Outdated
@@ -262,11 +545,176 @@ point, but don't worry. If you look at the branch you raised your | |||
Pull Request against (probably `master`), you should see a commit with | |||
your name on it. Congratulations and thanks for your contribution! | |||
|
|||
### Reviewing Pull Requests | |||
|
|||
All Node.js contributors who choose to review and provide feedback on pull |
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.
pull requests -> Pull Requests ? (for consistency)
CONTRIBUTING.md
Outdated
@@ -343,3 +799,16 @@ By making a contribution to this project, I certify that: | |||
personal information I submit with it, including my sign-off) is | |||
maintained indefinitely and may be redistributed consistent with | |||
this project or the open source license(s) involved. | |||
|
|||
[Code of Conduct]: https://github.com/nodejs/TSC/blob/master/CODE_OF_CONDUCT.md |
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.
All this part may need ASCII-sorting.
CONTRIBUTING.md
Outdated
### Reviewing Pull Requests | ||
|
||
All Node.js contributors who choose to review and provide feedback on Pull | ||
Requests have a responsibility both the project and the individual making the |
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.
responsibility -> responsibility for ?
CONTRIBUTING.md
Outdated
short amount of time to review and are not ill-intended. Such issues can often | ||
be resolved with a bit of patience. That said, reviewers should be expected to | ||
be helpful in their feedback, and feedback that is simply vague, dismissive and | ||
helpful is likely safe to ignore. |
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.
helpful -> unhelpful ?
Ping @nodejs/collaborators @nodejs/tsc ... one final request for comments |
My only comment is that making CONTRIBUTING.md significantly longer may mean that people are less likely to actually read it, thus defeating the purpose of the added material. I don't know that I have a good solution other than make sure you mercilessly edit for brevity. |
CONTRIBUTING.md
Outdated
fellow contributors, as well as to the community, will reflect back not only | ||
on yourself but on the project as a whole. The Code of Conduct is designed and | ||
intended, above all else, to help establish a culture within the project that | ||
allows anyone and everyone who wants to continue to feel safe doing so. |
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.
"continue"? Not sure I follow that sentence, but maybe you meant "contribute"?
CONTRIBUTING.md
Outdated
Be aware that *how* you communicate requests and reviews in your feedback can | ||
have a significant impact on the success of the Pull Request. Yes, we may land | ||
a particular change that makes Node.js better, but the individual might just | ||
not want to have anything to do with Node.js every again. The goal is not just |
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.
typo: "ever again"
CONTRIBUTING.md
Outdated
check with the contributor to see if they intend to continue the work before | ||
checking if they would mind if you took it over (especially if it just has | ||
nits left). When doing so, it is courteous to give the original contributor | ||
credit for the work they started. |
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.
How are people expected to give credit? In the PR? In commits? Is there an official way, or do you mean conversational on GitHub?
@@ -262,11 +545,176 @@ point, but don't worry. If you look at the branch you raised your | |||
Pull Request against (probably `master`), you should see a commit with | |||
your name on it. Congratulations and thanks for your contribution! | |||
|
|||
### Reviewing Pull Requests |
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.
CONTRIBUTING.md is for people who have never before (or very infrequently) contributed to Node.js. This section seems geared towards Collaborators and seems better suited for the COLLABORATORS_GUIDE.md doc. Are we just putting it here for visibility?
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.
It seems the message of this commit contains some explanation: daf0847
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.
Yep, the commit log message contains the details. One bit of feedback that I have received from the community is that there is extremely little understanding about what to expect when a PR is opened. I've added this here to help ensure that the process is more visible.
|
||
You will probably get feedback or requests for changes to your Pull Request. | ||
This is a big part of the submission process so don't be discouraged! | ||
```markdown |
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.
This is going to get out of date, couldn't it just be a link?
https://raw.githubusercontent.com/nodejs/node/master/.github/PULL_REQUEST_TEMPLATE.md
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.
It could be, but I'd prefer to keep it here, understanding that, yes, it will need to be kept up to date.
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.
but I'd prefer to keep it here
I don't care terribly strongly, but why? The file is already (IMO) too long as is, and the contributor will see the template when they raise the 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.
The key complaint that I've received is that new contributors have no idea what to expect when they start the process. This is largely an attempt to make those expectations clearer.
CONTRIBUTING.md
Outdated
|
||
```text | ||
$ git config --global user.name "J. Random User" | ||
$ git config --global user.email "j.random.user@example.com" | ||
$ git checkout -b my-branch -t origin/master | ||
``` |
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.
Shouldn't my local branch typically track upstream/master
?
Updated! |
@nodejs/collaborators @nodejs/tsc ... one final call for objections. I plan to land this tomorrow. |
PR-URL: #15123 Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com> Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com> Reviewed-By: Yuta Hiroto <hello@about-hiroppy.com>
Landed in bf1ca8f |
Any additional tweaks on this can be made in separate PRs |
PR-URL: #15123 Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com> Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com> Reviewed-By: Yuta Hiroto <hello@about-hiroppy.com>
@nodejs/collaborators ... PTAL