-
Notifications
You must be signed in to change notification settings - Fork 5.1k
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
Add PR and release guidelines #3224
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.
Do you know what kind of contributor rules Grid and EthereumJS do have?
Good question. They are here... |
Our ( I would agree that this also would make sense to have this in a shared documentation, see also ethereum/js-team-organization#4. //cc @marcgarreau |
Thanks for this initial proposal, @cgewecke. I also agree that this kind of documentation and guidelines would be most effective if shared across the entire EF JS team, but elaborating that shared guidelines, especially getting into agreement about them, can be a significant though worthy task. In the meantime, I think almost any guideline would drastically improve web3.js' situation. The complete lack of one is holding the project back, as now discussions have to be based exclusively on mismatching personal opinions. |
I think this is a great draft and a good starting point for some EF JS team-wide discussion. I've added it to the agenda doc. Agree with @alcuadrado, though: don't let the team-wide discussion block you from something that immediately improves your baseline. We can fine-tune later. |
Some of the things are meant to be quite specific to the demands of this branch fwiw. A very low risk appetite / strict release protocol might be counter-productive on other projects (or even on 2.x here). Maybe that's a nuance that could be captured in any future general documentation....that there are different criteria for high stability branches vs. things in earlier stages of development. |
Co-Authored-By: Samuel Furter <[email protected]>
Co-Authored-By: Samuel Furter <[email protected]>
Co-Authored-By: Samuel Furter <[email protected]>
Co-Authored-By: Samuel Furter <[email protected]>
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.
@nivida RE: types - good point, thanks for that link. I see in that thread that what the guidelines should be is still under discussion...not sure what to add. Maybe that can be done at a later date.
@cgewecke Actually we wanted that, there should be a list of typescript guidelines which should be followed during declare of typings in case of any change. Like, during declare of typings one should not use |
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.
Also, we can add what to do before creating PR, Likto run tests and rebase the branch, etc. @nivida what is your suggestion here.
Let us create those typescript related contributions rules in a separate PR later it is currently more important to have those release and PR guidelines merged.
I'm totally fine in the way currently PRs do get opened and I think we can add such rules if they are required later. Because as bigger the @cgewecke Thanks for writing this up! To be sure those guidelines are aligned with the EthereumJS rules do I think is one last review from @alcuadrado required and we can merge it 🎊 |
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 looks good. I think it should be enough for the first iteration.
Description
As discussed in chat with @nivida - these are ideas for a protocol around 1.x PRs and releases. A basic goal of 1.x has been to make improvements reliably without introducing new problems. This hasn't been achieved yet. Things we've tried include:
In #3070, @alcuadrado suggested both formalizing the release process and using an
rc
release to sanity-check changes. Following this advice would have yielded better results on 1.2.3 / 1.2.4 especially.The idea of this doc is to define a conservative approach to
It's a draft - likely vague, too restrictive, and/or too permissive in some places. Any constructive advice on this topic from anyone in the community is more than welcome.
Sources for the doc include