Conversation
da5e871
to
8937025
Compare
pup-0001.md
Outdated
| votes from community members. | ||
| * Consensus is not always possible. If obvious consensus is not reached, then the core devs [1] | ||
| decide. | ||
| * A PUP is accepted with two, +1 votes from core devs [1] and no blocking (-1) votes from core devs. |
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.
s/two,/two/
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.
Instead of having a hardcoded value of X = 2, shouldn't X be related to the number of core devs in the community? The other option could be to adjust this value as and when the community grows.
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's a reasonable suggestion. I think if we're going to base this on the number of "core devs" rather than the community at-large, we would be fine leaving it at X=2. Any change to the number of "core devs" significant enough to warrant a change in X-value would likely warrant reviewing and possibly re-designing some of these guidelines.
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.
Let me suggest that a core dev need not approve, only reject. If a 0 means "it is acceptable" than I would suggest it be that there be one other person who agrees and no one objects.
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.
Actually, as I read this only core devs need to vote which is odd. I would suggest that there be a criteria which is passing that does not mention core devs (e.g. more +1s than -1s). You can add a core dev veto (a -1) if you want, but I think I should be able to suggest an awesome idea that the whole community wants and still have it pass if all the core devs vote +0. (full disclosure, I hate +0 and think it is an implicit +1)
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.
+1 to @bkearney on not having to require any core devs to +1 a PUP. In that case the only criteria for passage would need to be 'no -1 from a core dev'.
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 system of voting is not secret or synchronous and an individual can change their vote. Taken together, votes can be changed because of other votes. This adds a lot of flexibility for us to make strong decisions even when the decision we are making is not well suited to any voting system. If a core dev thinks the PUP ought not to pass because it doesn't have enough support, a core dev can change their vote to a -1.
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.
@asmacdo 's interpretation is interesting and would be valuable to capture in the PUP.
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.
#5 (diff) might be the right place for 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.
I just pushed a new revision which allows +1s to come from anywhere not just core devs. It also includes a paragraph similar to @asmacdo 's comment about recasting votes along with examples.
pup-0001.md
Outdated
| Note that votes can come from anyone, not just core devs [1]. This is directly modeled after [the | ||
| Django process](https://docs.djangoproject.com/en/dev/internals/contributing/bugs-and-features/#how-we-make-decisions) | ||
| who modeled their process after the Python and Apache communities. | ||
| * -1: "Not the right choice and should definitely not be adopted." |
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.
What's the reasoning behind this change? I kind of like the requirement that a -1 vote must include an explanation and that we specify that anyone can vote.
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 see your changes below. Disregard!
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.
Based on what we've discussed in terms of using -1 earlier in the process than final voting, maybe this should be softened to include "I have serious reservations that need to be thought through or addressed." The description here seems only appropriate for a final vote that is a definite "no".
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 pushed a new version, which replaces the language with the suggested bit from this thread.
pup-0001.md
Outdated
| * Stated concerns with a blocking vote can be used to revise a PUP until the blocking vote is | ||
| recast. | ||
| * Votes can come from anyone, not just core devs [1] and are used as data points. | ||
| * Core devs [1] are expected to consider and echo serious feedback from the community, especially |
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 idea that we seriously consider feedback from the community but what does echo mean here?
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 that the interpretation is up to the individual core dev :)
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 also think of this as something which each person can interpret. I've made no changes in response to this thread.
| The +1, +0, -0, -1 voting process is used; votes are sent as responses via the | ||
| announcement/discussion mailing list. The voting has the following meanings: | ||
| announcement/discussion thread on the mailing list. The voting has the following meanings: |
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.
Could another sentence explicitly stating that a vote can be changed at any time in response to other people's concerns and community votes be added?
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've added clarifying language and a section on recasting. It gives this case as a specific example.
|
It seems like this is ready to have comments rolled up into another revision. If additional discussion is needed on a particular point before making a new revision, please call that out. Otherwise I think we'll need a new revision for discussion to continue. |
* Adjusts the +1 approvals to come from anywhere, not just core devs * Explicitly allows for votes to be recast * Explains two examples where votes are recast. One is based on many other -1 votes being cast. The other is when concerns are addressed and a -1 vote is recast.
|
I pushed a new revision which should address all changes. Please go comment. |
|
Reviewed and LGTM. Thanks for updating the proposal. |
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.
Excellent revisions, thanks @bmbouter!
pup-0001.md
Outdated
| a vote to a -1 based on observing many -0 votes which indicate a PUP does not have broad support | ||
| even with enough +1 votes to pass. | ||
| * Votes can come from anyone, not just core devs [1]. | ||
| * Core devs [1] are expected to consider and echo serious concerns from the community, especially |
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.
IMO: s/serious// but feel free to leave as is.
|
|
||
| ### Accepting/Rejecting | ||
|
|
||
| * A PUP is accepted with two +1 votes from anyone and no blocking -1 votes from core devs. |
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.
does 'anyone' mean community member?
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.
Yes anyone effectively means 'community member'. It was added based on some comments from the last round.
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.
Is the author an assumed +1, or is it the author +2 positive votes? I assume tha latter.
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 author's vote is not assumed. They can abstain or vote. If an author votes +1 (very likely), an additional +1 is required to pass. I'm pushing a 2-line clarifying change in the next 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.
That clarifying language commit is here: f5b7282
|
With 8 +1 votes and no -1 votes I'm going to merge this PR. Thanks to everyone who participated. |
No description provided.