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 proposal #50
Meta proposal #50
Conversation
_proposals/pup-0001.rst
Outdated
| ^^^^^^^^ | ||
|
|
||
| Revision would occur as additional pull requests against the active proposal. This allows the full | ||
| history of a proposal to always be maintained. This is how Python does it. This also allows |
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.
"full history", except for all of the email discussion. That's one part of this that I think is not ideal, that so much discussion would happen separate from the content being discussed.
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.
There is a drawbacks section now which lists this drawback. There is also an alternatives section which includes some alternatives that do keep it in one place. Those two sections are also in the template so they needed to be added anyway. The email archive should make it easy to see the history. See what you think of this new revision.
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.
Looks good @bmbouter. Thanks for creating this proposal. 👍
_proposals/pup-0001.rst
Outdated
| Summary | ||
| ======= | ||
|
|
||
| This proposal is designed 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.
Is this a TODO?
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 this was just not finished. I pushed a new version now.
_proposals/pup-0001.rst
Outdated
| ^^^^^^^^^^^^ | ||
|
|
||
| Once a proposal is merged to the proposals area, an announcement would be sent to pulp-dev, which | ||
| would include a very brief introduction and a link to the proposal in its web viewable form. |
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.
You might want to add something about a PR being opened. Also maybe s/proposal/proposal pull request/.
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 didn't do much with this, but I did list it as an alternative and an open question. I think I'm ready to adopt the pull request until decided on model which would be another small rewrite.
_proposals/pup-0001.rst
Outdated
|
|
||
| General discussion would occur on the announcement thread via pulp-dev. Threaded e-mail readers | ||
| should make this conversation format easy to follow, while keeping the one proposal document in-tact | ||
| and easy to read. |
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 wondering if we should have the discussion at this point in the PR instead of on the mailing list. Thoughts?
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 a listed alternative in the proposal with the latest push. I'd like to get more input from others.
_proposals/pup-0001.rst
Outdated
| come with a statement of objective concerns explaining what harm will come from adopting the | ||
| proposal. -1 feedback should not be used to express subjective preferences. Note that votes can come | ||
| from anyone, not just core devs. This is directly modeled after the Django process [3] who modeled | ||
| their process after the Python and Apache communities. |
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.
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 would the +0 and -0 work w/ this? I listed this as an alternative we should consider. I'd like to get more input from others. Maybe we should do this?
_proposals/pup-0001.rst
Outdated
|
|
||
| This is the bulk of the RFC. Explain the design in enough detail for somebody familiar with the | ||
| project to understand, and for somebody familiar with the codebase to implement. This should get | ||
| into specifics and corner-cases, and include examples of how the feature is used. |
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/corner-cases/corner cases/
_proposals/pup-0001.rst
Outdated
| recast. | ||
| * Core devs are expected to consider and echo serious feedback from the community especially any -1 | ||
| votes from community members. | ||
| * Consensus is not only possible. If obvious consensus is not reached, then the core devs decide. |
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.
Odd sentence: "Consensus is not only possible". Not sure what it's saying.
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 has been fixed.
_proposals/pup-0001.rst
Outdated
| Before Proposing | ||
| ^^^^^^^^^^^^^^^^ | ||
|
|
||
| Discussing an idea via the list prior to writing a formal proposal is encouraged. This is designed |
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.
Which list?
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 recommends using either pulp-list or pulp-dev depending on who would be affected. There are also bullet-point guidelines recommending which to use.
_proposals/pup-0001.rst
Outdated
| Announcement | ||
| ^^^^^^^^^^^^ | ||
|
|
||
| Once a proposal is merged to the proposals area, an announcement would be sent to pulp-dev, which |
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 almost wondering if we should use pulp list if the proposed update affects end users?
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.
Updated in new version
_proposals/pup-0001.rst
Outdated
| "To Merge forward or not?". | ||
|
|
||
| This is different than the communities we are modeling our process after. They use it for feature | ||
| planning also, but I propose that we don't do that currently. |
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 this is good for now but I could see us eventually using this system for things that are too big to be captured by a single user story/feature (e.g. "Support Ansible").
7f10035
to
77257f5
Compare
Content was rewritten for clarity on which mailing lists things should be sent to. Also some small fixes were made from feedback. New sections were added. These sections bring the proposal in line with the sections contianed within. The following new sections were added: * Drawbacks * Alternatives * Unresolved Questions
77257f5
to
8bd174f
Compare
_proposals/pup-0001.rst
Outdated
|
|
||
| Proposals would be in restructured text format and sent as a pull request against the | ||
| pulpproject.org repo or a dedicated repo. We could easily create a tab at the top of pulpproject.org | ||
| to show off merged proposals. This could also be in a separate, dedicated repo like Python does, but |
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 suspect the simplest contributor experience would happen if there is a dedicated repo, a README at the root that summarizes how things work, and users can make PRs against master. That makes the "source" very easy to find and understand. I'm ok with any arrangement though.
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 slightly favor putting proposals in the pulpproject.org repo.
_proposals/pup-0001.rst
Outdated
| The +1, +0, -0, -1 feedback process is used, with votes sent as responses via the | ||
| announcement/discussion mailing list. The voting has the following meanings: | ||
|
|
||
| * +1: "I love the idea and I’m strongly committed to 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.
I suggest changing these to focus on evaluating the proposal itself, and not on the voter's feelings. I think that mindset makes it easier for a participant to fully consider all options, with as much impartiality as is reasonable. Something like:
+1: Will benefit the project and should definitely be adopted.
+0: Might benefit the project and is acceptable.
-0: Might not be the right choice, but is acceptable.
-1: Not the right choice and should definitely not be adopted.
Suggestions on the above are of course welcome.
Put another way, this change supports the idea that we should be participating as custodians of the project, looking out for the project's best long-term interests. Sometimes that might even require choices we don't like, but can recognize as the best path.
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.
Updated in next push. I also removed the sentence reading Also, -1 feedback should not be used to express subjective preferences. since this wording makes that true for all vote types.
_proposals/pup-0001.rst
Outdated
| * If an obvious consensus arises via voting, the proposal is ratified. This is a bit vague, but it | ||
| works for the Django community. | ||
| * Discussion on the thread can confirm if consensus is obvious or not. | ||
| * Votes come from anyone, not just 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.
Add a period at the end of this sentence.
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.
fixed in next push
_proposals/pup-0001.rst
Outdated
| * Votes come from anyone, not just core devs | ||
| * A -1 from a core dev is considered a veto vote and will block ratification until the vote is | ||
| recast. | ||
| * Core devs are expected to consider and echo serious feedback from the community especially any -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.
Add a comma after "community".
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.
fixed in next push
_proposals/pup-0001.rst
Outdated
| works for the Django community. | ||
| * Discussion on the thread can confirm if consensus is obvious or not. | ||
| * Votes come from anyone, not just core devs | ||
| * A -1 from a core dev is considered a veto vote and will block ratification until the vote 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.
Should we define a "core dev" somewhere in this doc?
If so, maybe that would be defined as someone with commit permission to the Pulp source?
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.
Good idea; I added a glossary section with this term and it is referred to from all references of "core dev".
_proposals/pup-0001.rst
Outdated
| Alternatives | ||
| ============ | ||
|
|
||
| What other designs have been considered? What is the impact of not doing this? |
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 add some encouragement here, along these lines:
Be creative. Brainstorm. No idea is too outlandish to mention. Include ideas that are "obviously" bad; even one sentence about why something was ruled out is valuable.
This section is expected to include a diligent accounting of options. Additions will be requested if it does not demonstrate sufficient diligence.
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.
good addition; it's included in the next push
_proposals/pup-0001.rst
Outdated
| Why Approve/Reject This Way? | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| * It treats community decision making (not just core dev decision making) as a first class principle |
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.
Add periods to each line to be consistent with sections above.
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.
fixed in next push
_proposals/pup-0001.rst
Outdated
|
|
||
| * It treats community decision making (not just core dev decision making) as a first class principle | ||
| * It works for the best communities we know of (Django, Python, Apache, etc) | ||
| * It allows people to be as involved or not as they way |
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/way/want/
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.
fixed in next push
_proposals/pup-0001.rst
Outdated
|
|
||
| * The proposal index is updated moving it from an active section to an approved area. This is | ||
| similar to the index of PEPs for Python. | ||
| * A post-approval announcement should be sent in the same thread as the initial announcement and |
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 new thread for the announcement would be valuable. Most readers are likely to eventually tune out a long discussion about details of a proposal they don't feel strongly about. They could easily miss the announcement if it's part of that thread.
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 agree, I updated the proposal to reflect this.
* Adds a Footnotes section * Updates the meaning of the votes from feedback * Grammar fixes * Adds post-approval announcement to be in a new thread
|
Looks good. One thing I noticed though is that you seem to have markdown style links in your proposal which is reStructuredText. |
_proposals/pup-0001.rst
Outdated
| Finding/Discovering Proposals | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| An index mimicking [the Python one](https://www.python.org/dev/peps/) would be created which would |
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/one/PEP index/ ?
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.
fixed in next push
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.
One minor typo and one structural change in the proposal template.
_proposals/pup-0001.rst
Outdated
|
|
||
| * This is very developer focused. Everyone knows how use emails and a web browser. Not everyone | ||
| knows how to use Github review. | ||
| * The proposal never being merged to a Pulp repo may cause us to loose access to previous proposals. |
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/loose/lose/
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.
fixed in next push. The section was removed actually.
_proposals/pup-0001.rst
Outdated
| title: <title goes here> | ||
| author: <author or authors named> | ||
| --- | ||
|
|
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.
Somewhere around here, maybe in the Summary block, maybe by using metadata at the top, should be a templated section that details the PUP status, like python PEPs. The section should include the current approval state, and could also include created/updated timestamps.
I'll happily mess with jekyll and put something together if you want me to, just let me know.
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 added a created: dd-mmm-yyyy and status: [Active|Approved|Rejected|Abandoned] attributes to the frontmatter. It's in the template and also in this PUP itself.
_proposals/pup-0001.rst
Outdated
| Unresolved Questions | ||
| ==================== | ||
|
|
||
| What are we calling it? (PUP, PCP, <your idea 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 like PUP, and it looks like you do, too.
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's take PUP, because PCP stands for acronym of some heavy drug
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.
PUP it is. The next revision has been rewritten to use this for consistency.
_proposals/pup-0001.rst
Outdated
| ==================== | ||
|
|
||
| What are we calling it? (PUP, PCP, <your idea here>) | ||
| Is 10 calendar days the right decision making time default. |
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 I'd prefer two weeks, but agree that making this much longer would be counter productive.
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.
12 days it is. Updated on next push.
_proposals/pup-0001.rst
Outdated
| Footnotes | ||
| ========= | ||
|
|
||
| .. [#f1] A core dev is anyone with the commit bit to the [platform repo](https://github.com/pulp/pulp/). |
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/the commit bit/permission 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.
fixed on next push
_proposals/pup-0001.rst
Outdated
| Unresolved Questions | ||
| ==================== | ||
|
|
||
| What parts of the design are still TBD? |
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 it worth spelling out "to be determined" to the benefit of folks that might not be familiar with this abbreviation?
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, fixed in next push.
|
@daviddavis I switched the filetype to a |
* The name PUP is now used. * PUPs will live as pull requests until a decision is made. * A dedicated repo will now be used instead of pulpproject.org. * Voting uess a minimum of 12 days instead of 10. * The alternative of using Github for feedback is removed because feedback is now allowed directly on the pull request in addition to the mailing list. * The alternative of keeping PUPs as pull requests has been adopted and has been removed from the alternatives section. * Several minor grammer and wording edits.
|
I implemented many changes discussed. One of them was to create a dedicated repo which I did. As such this PR needs to be closed in favor of this one: pulp/pups#1 |

No description provided.