-
-
Notifications
You must be signed in to change notification settings - Fork 2.5k
docs: Update informal contributing guide #5890
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
base: main
Are you sure you want to change the base?
Conversation
Thanks for the PR @damianpm. As you've noted, the guide is outdated and could do with a revamp:
|
Hi @Fdawgs sure, I'll update the PR |
ddfd2ee
to
df86314
Compare
@Fdawgs I've updated the PR, let me know if I'm missing anything else |
I didn't have a chance to review before now. I was in agreement that the guide needed updating in regard to some links and a bit of text. I also wanted to ask @voxpelli if the eslint references are still relevant with neostandard.
I completely disagree with all of this.
I would revert this PR to commit |
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.
lgtm
Co-authored-by: James Sumners <321201+jsumners@users.noreply.github.com> Signed-off-by: Damián Peralta Mariñelarena <damianpm@users.noreply.github.com>
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 eslint references are still relevant with neostandard
@jsumners Yes, the ESLint extension is the correct one, we opted for keeping ESLint compatibility when making neostandard
, to make editor compatibility easier :)
{ | ||
"[javascript]": { | ||
"editor.defaultFormatter": "dbaeumer.vscode-eslint", | ||
"editor.codeActionsOnSave": { | ||
"source.fixAll": "explicit" | ||
} | ||
}, | ||
|
||
"workbench.colorCustomizations": { | ||
"statusBar.background": "#178bb9" | ||
} | ||
} |
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'm 👎 on this, see eg. microsoft/vscode#206802
I find it quite jarring when my settings are changed due to an .vscode/settings.json
– and unless all contributors are forced to use VSCode it feels odd to enforce this just on VSCode. Use eg. git hooks on push
to avoid having people push unformatted code.
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.
A better way is to make it a devcontainer and add this as part of its vscode customization section: https://containers.dev/supporting#visual-studio-code
One can make this a devcontainer template that Fastify repositories can easily set up: https://containers.dev/implementors/templates/
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 original guide detailed setting up a Fastify specific VSCode instance. Again, I would revert this PR to commit a068946 (#5890) and then update the content as necessary.
.gitignore
Outdated
@@ -142,7 +142,7 @@ pnpm-lock.yaml | |||
yarn.lock | |||
|
|||
# editor files | |||
# .vscode | |||
.vscode |
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 probably make it:
.vscode/*
!.vscode/extensions.json
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 would keep ignoring the directory. One of the reasons I wrote the guide the way I did is so that we wouldn't have to include this directory at all. The editor is going to update any file in the directory, and will result in extraneous data in PRs.
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 .vscode/extensions.json
is the one useful file
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.
Oh, I misread it. Yeah, that suggestion makes sense. 👍
I think: Keep .vscode/*
!.vscode/extensions.json And maybe partially re-add "Using Visual Studio Code" to describe how to configure those extensions, if deemed necessary, I don't think it is really. |
I don't see a point in the guide if it doesn't result in a configured editor that applies our desired formatting. Otherwise, the guide is:
|
OK, here's my two cents:
|
You don't have to follow the guide. It's there for people who don't know things. You can read what it does and then apply the concepts the way you like. |
It isn't a requirement. It is an example and simple setup for developers that want to utilize what the project deems as a baseline setup. Use whatever you like. I don't use VSCode at all. |
Hi everyone, I see that the PR is still open and the discussion stalled. @damianpm would you like some help? |
Hi, just following up to see if there's anything I can do to help move this PR forward. |
You are quite welcome to pick up on this work. I suggest incorporating the work and feedback from this PR by following https://gist.github.com/jsumners/461ef7a64545108635cc437fde112721 |
Thank you for the infos! |
Hi!
I want to start contributing to the project, so I've been following the informal contributing guide, and I've found it's outdated.
Changes proposed in this PR:
.vscode/settings.json
, including the recommended settings.vscode/extensions.json
, includingdbaeumer.vscode-eslint
in the "recommendations" arrayChecklist
npm run test
andnpm run benchmark
and the Code of conduct