Hi Fokko

Thanks for these changes, it looks great to me !

Regards
JB

On Mon, Jul 29, 2024 at 12:40 PM Fokko Driesprong <fo...@apache.org> wrote:
>
> Resending with correct links :p
>
> Hey everyone,
>
> JB, I fully agree with you. For clarity and consistency, we should point to 
> the docs.
> The starting point for the roles can be as simple as this. For the release 
> manager,
> I clarified the how-to-release page, which includes feedback on a recent PR.
>
> Let me know what you think.
>
> Kind regards,
> Fokko
>
> Op ma 29 jul 2024 om 12:27 schreef Fokko Driesprong <fo...@apache.org>:
>>
>> Hey everyone,
>>
>> JB, I fully agree with you. For clarity and consistency, we should point to 
>> the docs.
>> The starting point for the roles can be as simple as this. For the release 
>> manager,
>> I clarified the how-to-release page, which includes feedback on a recent PR.
>>
>> Let me know what you think.
>>
>> Kind regards,
>> Fokko
>>
>> Op do 25 jul 2024 om 19:56 schreef Micah Kornfield <emkornfi...@gmail.com>:
>>>
>>> Hi J.B. and Fokko,
>>>
>>>> I like the idea of the state diagram, but it feels to me that there are a 
>>>> lot of states in there. Maybe we can take the Airflow AIP states as a 
>>>> start?
>>>
>>> I'll take a closer look but based on the description this seems like a good 
>>> place to start.
>>>
>>>>
>>>> I think it would also be great to make a clear problem statement. I
>>>> think the intention is very valuable but I don't see exactly what
>>>> problem we are trying to solve here.
>>>
>>>
>>> I think we are trying to aim/solve for the following goals/problems:
>>> 1.  To some extent there has been an unfortunate loss of trust in the 
>>> community.  Providing clarity on how day to day business gets done helps 
>>> assure people with concerns that there are reasonable processes in place 
>>> that don't favor any particular corporate interest.
>>> 2.  As the Iceberg community grows what used to be a set of norms are not 
>>> necessarily well socialized among new members, having a little more 
>>> documentation on expectations on what it takes to get contributions 
>>> accepted in the project helps set expectations and empowers committers to 
>>> move things forward, hopefully increasing velocity.
>>> 3.  For larger changes, making it clearer on how to get a change through 
>>> and providing some set of norms that hopefully allows features to avoid 
>>> scope creep/analysis paralysis so the project can continue to be improved 
>>> without undo friction
>>>
>>> Thanks for the feedback.
>>>
>>> Micah
>>>
>>> On Thu, Jul 25, 2024 at 5:01 AM Jean-Baptiste Onofré <j...@nanthrax.net> 
>>> wrote:
>>>>
>>>> Hi,
>>>>
>>>> I think 1, 2 and 4 are directly up to the project. I shared what other
>>>> ASF projects are doing (I'm thinking about Apache Beam, or Apache
>>>> Camel Karaf), it can help to see what we can do (updating .asf.yml for
>>>> instance).
>>>>
>>>> Imho, 3 & 5 should be aligned with the foundation guidelines. I don't
>>>> see strong reasons to deviate here.
>>>>
>>>> I think it would also be great to make a clear problem statement. I
>>>> think the intention is very valuable but I don't see exactly what
>>>> problem we are trying to solve here.
>>>>
>>>> Regards
>>>> JB
>>>>
>>>> On Tue, Jul 23, 2024 at 7:58 AM Micah Kornfield <emkornfi...@gmail.com> 
>>>> wrote:
>>>> >
>>>> > My 2 cents on this topic. I think we are getting bogged down in 
>>>> > relatively minor details/bureaucratic points. This is a reiteration of a 
>>>> > previous recommendation on the topic, but in the interest of making 
>>>> > progress here, I'd propose let's break this conversation down and focus 
>>>> > on incremental definitions/proposals.
>>>> >
>>>> > I've added a potential breakdown below. This is roughly ordered from 
>>>> > codifying day to day business, and extends to longer term concerns.  I 
>>>> > would aim for minimalism on each of these and add additional guidance 
>>>> > when we need it.  It is important to keep in mind that most decisions 
>>>> > made on a day to day basis are fairly easily reversible and more 
>>>> > process/formalism can always be added if some part of the process has 
>>>> > bugs in it.
>>>> >
>>>> > 1.  Requirements to merge a PR (1 committer approval + X amount of time 
>>>> > to allow others to review?)
>>>> > 2.  Requirements major projects/features including spec changes
>>>> > 3.  Define roles/responsibilities and provide guidance on how members 
>>>> > can grow into those roles.  (Cover release manager, comitter, PMC 
>>>> > member, community member, with links as appropriate).
>>>> > 4.  Create guidelines on starting new revision to the specification 
>>>> > (i.e. when will the table V3 spec be considered closed?).
>>>> > 5.  People issues (if the community thinks this is still necessary).
>>>> >
>>>> > Thanks,
>>>> > Micah
>>>> >
>>>> > On Mon, Jul 22, 2024 at 10:05 AM Jack Ye <yezhao...@gmail.com> wrote:
>>>> >>
>>>> >> Just to follow up on the other topics, here are my comments, mainly to 
>>>> >> reconcile with what have been discussed in different threads, which 
>>>> >> could help formulating these multiple-choice questions:
>>>> >>
>>>> >> > What should the minimum voting period be?
>>>> >>
>>>> >> Do we decide a minimum voting period for all topics, or do we decide a 
>>>> >> different period for each topic? So far it seems like the ASF 
>>>> >> convention has different minimum periods defined, like 3 days for 
>>>> >> release [1], 7 days for new committers/PMC members [2].
>>>> >>
>>>> >> > I'd like to include a couple sentences about the different hats at 
>>>> >> > Apache and that votes should be for the benefit of the project and 
>>>> >> > not our employers.
>>>> >> > I'd like to propose that we include text to formally include censor 
>>>> >> > and potential removal for disclosing sensitive information from the 
>>>> >> > private list.
>>>> >>
>>>> >> Personally I am definitely +1 for this, but going back to the topic of 
>>>> >> Iceberg vs ASF bylaws/guidelines, I feel ideally this should also be a 
>>>> >> part of ASF general bylaws/guidelines that Iceberg simply just 
>>>> >> references.
>>>> >>
>>>> >> > Requirements for each topic
>>>> >>
>>>> >> I think this is also missing code modification and the improvement 
>>>> >> proposal votes. My impression so far after discussions in the initial 
>>>> >> bylaws doc [3] is that ASF definition of "code modification" is closer 
>>>> >> to a full design process and uses consensus approval. But in reality 
>>>> >> "merging PR" is a much more lightweight "vote" that typically requires 
>>>> >> just 1 committer approval of the PR. On the other hand, the Iceberg 
>>>> >> improvement proposal process is currently described to use the code 
>>>> >> modification consensus approval vote [4], but there are other options 
>>>> >> like 2/3 majority and majority vote that were proposed.
>>>> >>
>>>> >> > consensus, lazy consensus, lazy majority, lazy 2/3's
>>>> >>
>>>> >> In the initial bylaws doc [3] it was pointed out that the definition of 
>>>> >> "lazy consensus" is different in different documents. In general the 
>>>> >> definition is "no -1", but there is also the definition [5] of "at 
>>>> >> least 1 +1, no -1". I ended up giving it a different name of "minimum 
>>>> >> consensus", and actually this has been the model used for merging pull 
>>>> >> requests. We might want to clarify that part first before voting for 
>>>> >> these options.
>>>> >>
>>>> >> [1] https://www.apache.org/legal/release-policy.html#release-approval
>>>> >> [2] https://community.apache.org/newcommitter.html#discussion
>>>> >> [3] 
>>>> >> https://docs.google.com/document/d/1S3igb5NqSlYE3dq_qRsP3X2gwhe54fx-Sxq5hqyOe6I/edit
>>>> >> [4] https://iceberg.apache.org/contribute/#how-are-proposals-adopted
>>>> >> [5] https://orc.apache.org/develop/bylaws/
>>>> >>
>>>> >> -Jack
>>>> >>
>>>> >> On Fri, Jul 19, 2024 at 2:29 PM Jack Ye <yezhao...@gmail.com> wrote:
>>>> >>>
>>>> >>> > specifically the discussion of the standard roles
>>>> >>>
>>>> >>> Yes, there are also other places with different definitions. For 
>>>> >>> example the default project guideline [1] has additional description 
>>>> >>> of the PMC member and chair responsibilities. There are a few other 
>>>> >>> places like ASF glossary [2] where these terms are defined, I cannot 
>>>> >>> recall on the top of my head, but I can try to dig those up later.
>>>> >>>
>>>> >>> > putting together a committer requirements/guidelines doc
>>>> >>>
>>>> >>> +1. For some context, the committer guideline discussion came from 
>>>> >>> both some initial feedback on devlist, as well as comments in the 
>>>> >>> roles and responsibilities section.
>>>> >>>
>>>> >>> Because I initially used the definition of Hadoop bylaws [3] for 
>>>> >>> committers, which writes: "The project’s Committers are responsible 
>>>> >>> for the project’s technical management." There were then multiple 
>>>> >>> people pointing out that committers are not necessarily technical. If 
>>>> >>> we look into the current definition in the link Owen provided: "A 
>>>> >>> committer is a developer who has write access to the code repository 
>>>> >>> and has a signed CLA on file. They have an apache.org mail address. 
>>>> >>> Not needing to depend on other people to make patches to the code or 
>>>> >>> documentation, they are actually making short-term decisions for the 
>>>> >>> project." And in ASF Glossarsy: "An individual who has the privilege 
>>>> >>> to directly commit changes to an Apache codebase (commit access)."
>>>> >>>
>>>> >>> Indeed it does not have a requirement for committers to be technical, 
>>>> >>> but it is arguably still centered around the right to commit code and 
>>>> >>> merge patches. And that sparked all the discussions of what exactly a 
>>>> >>> committer means, what are the criteria, do we limit committer rights 
>>>> >>> to commit to just sub-project, what about people that do not 
>>>> >>> contribute code, etc. I don't know if there could be a better 
>>>> >>> definition though, maybe we could discuss that in a separate thread 
>>>> >>> that is visible to more Apache members and people in other projects.
>>>> >>>
>>>> >>> I later raised the thread 
>>>> >>> https://lists.apache.org/thread/4fykr8316cw9lhvgq168tx5yj9zy7gc3 where 
>>>> >>> you can find more details about the discussions in the thread as well 
>>>> >>> as in the linked Google doc for committer guideline. Topics like 
>>>> >>> minimum time requirement and recency requirements were discussed 
>>>> >>> there. Personally, I included all those aspects in the draft because 
>>>> >>> my main goal is to have an open discussion about these topics so that 
>>>> >>> we can potentially reach some consensus, and eventually form a clear 
>>>> >>> guideline. It would be nice if we can do that as a part of this 
>>>> >>> process and also moderated in the same way.
>>>> >>>
>>>> >>> -Jack
>>>> >>>
>>>> >>> [1] 
>>>> >>> https://cwiki.apache.org/confluence/display/INCUBATOR/Default+Project+Guidelines
>>>> >>> [2] https://www.apache.org/foundation/glossary
>>>> >>> [3] https://hadoop.apache.org/bylaws.html
>>>> >>>
>>>> >>>
>>>> >>> On Fri, Jul 19, 2024 at 11:54 AM Ryan Blue 
>>>> >>> <b...@databricks.com.invalid> wrote:
>>>> >>>>
>>>> >>>> Another thing that has come up is putting together a committer 
>>>> >>>> requirements/guidelines doc. I think it would be great to have a 
>>>> >>>> discussion about how we want to do that. Specifically, I'm against 
>>>> >>>> adding requirements for new committers (such as time-based minimums 
>>>> >>>> or recency requirements) that exclude people from consideration. I 
>>>> >>>> think it would be helpful to clarify the path to becoming a 
>>>> >>>> committer, though. To me, it's about building trust and that trust is 
>>>> >>>> recognized by a PMC vote.
>>>> >>>>
>>>> >>>> Ryan
>>>> >>>>
>>>> >>>> On Fri, Jul 19, 2024 at 11:00 AM Owen O'Malley 
>>>> >>>> <owen.omal...@gmail.com> wrote:
>>>> >>>>>
>>>> >>>>> I meant specifically the discussion of the standard roles (eg. 
>>>> >>>>> users, committers, pmc, pmc chair) that are well covered in 
>>>> >>>>> https://www.apache.org/foundation/how-it-works/#roles
>>>> >>>>>
>>>> >>>>> .. Owen
>>>> >>>>>
>>>> >>>>> On Fri, Jul 19, 2024 at 10:43 AM Jack Ye <yezhao...@gmail.com> wrote:
>>>> >>>>>>
>>>> >>>>>> Thank you Owen for moving this forward, we heard you were sick, 
>>>> >>>>>> hope you are fully recovered now!
>>>> >>>>>>
>>>> >>>>>> One point regarding "referring to the Apache documentation": I am 
>>>> >>>>>> totally for that, but during the initial investigation, I found out 
>>>> >>>>>> that the Apache documentations are scattered around, and also have 
>>>> >>>>>> conflicting information.
>>>> >>>>>>
>>>> >>>>>> For example, regarding a "vote for committer or PMC member":
>>>> >>>>>> - this new committer doc [1] writes that "A positive result is 
>>>> >>>>>> achieved by Consensus Approval: at least 3 +1 votes and no vetoes."
>>>> >>>>>> - the Apache voting process doc [2] writes that "Votes on 
>>>> >>>>>> procedural issues follow the common format of majority rule unless 
>>>> >>>>>> otherwise stated.", and when consulting a few Apache members, most 
>>>> >>>>>> of them consider voting for committer or PMC member a procedural 
>>>> >>>>>> issue.
>>>> >>>>>>
>>>> >>>>>> Similar situations were found for other topics like description of 
>>>> >>>>>> roles and responsibilities, code modification, etc.
>>>> >>>>>>
>>>> >>>>>> I think it is a great chance for ASF in general to consolidate 
>>>> >>>>>> these information, especially for matters that have common 
>>>> >>>>>> guidelines in ASF that should be adhered to by all projects. With 
>>>> >>>>>> that, we can figure out what to put in the Iceberg specific bylaws, 
>>>> >>>>>> either to directly refer to ASF official information, or to add 
>>>> >>>>>> additional information and guidelines.
>>>> >>>>>>
>>>> >>>>>> Regarding sub-projects, the main reason I proposed it at the 
>>>> >>>>>> beginning was to allow a proper definition of release manager 
>>>> >>>>>> responsibility, since each sub-project is released independently. 
>>>> >>>>>> It was not intended to be tied to committer responsibilities.
>>>> >>>>>>
>>>> >>>>>> Best,
>>>> >>>>>> Jack Ye
>>>> >>>>>>
>>>> >>>>>> [1] https://community.apache.org/newcommitter.html
>>>> >>>>>> [2] https://www.apache.org/foundation/voting
>>>> >>>>>>
>>>> >>>>>> On Fri, Jul 19, 2024 at 10:22 AM Owen O'Malley 
>>>> >>>>>> <owen.omal...@gmail.com> wrote:
>>>> >>>>>>>
>>>> >>>>>>> Everyone is welcome to vote. The Iceberg PMC will have the only 
>>>> >>>>>>> binding votes.
>>>> >>>>>>>
>>>> >>>>>>> .. Owen
>>>> >>>>>>>
>>>> >>>>>>> On Jul 19, 2024, at 10:19, Wing Yew Poon 
>>>> >>>>>>> <wyp...@cloudera.com.invalid> wrote:
>>>> >>>>>>>
>>>> >>>>>>> 
>>>> >>>>>>> Hi Owen,
>>>> >>>>>>> Thanks for doing this.
>>>> >>>>>>> Once you have the questions and choices, who gets to vote on them?
>>>> >>>>>>> - Wing Yew
>>>> >>>>>>>
>>>> >>>>>>>
>>>> >>>>>>> On Fri, Jul 19, 2024 at 10:07 AM Owen O'Malley 
>>>> >>>>>>> <owen.omal...@gmail.com> wrote:
>>>> >>>>>>>>
>>>> >>>>>>>> All,
>>>> >>>>>>>>    Sorry for the long pause on bylaws discussion. It was a result 
>>>> >>>>>>>> of wanting to avoid the long US holiday week (July 4th) and my 
>>>> >>>>>>>> procrastination, which was furthered by a side conversation that 
>>>> >>>>>>>> asked me to consider how to move forward in an Apache way.
>>>> >>>>>>>>   I'd like to thank Jack for moving this to this point. One 
>>>> >>>>>>>> concern that I had was there were lots of discussions and 
>>>> >>>>>>>> decisions that were being made off of our email lists, which 
>>>> >>>>>>>> isn't the way that Apache should work.
>>>> >>>>>>>>   For finishing this off, I'd like to come up with a set of 
>>>> >>>>>>>> questions that should be answered by multiple choice questions 
>>>> >>>>>>>> and then use single transferable vote (STV) to resolve them. STV 
>>>> >>>>>>>> just means that each person lists their choices in a ranked order 
>>>> >>>>>>>> with a formal way to resolve how the votes work.
>>>> >>>>>>>>   The questions that I have heard so far are:
>>>> >>>>>>>>
>>>> >>>>>>>> Should the PMC chair be term-limited and if so, what is the 
>>>> >>>>>>>> period? In my experience, this isn't necessary in most projects 
>>>> >>>>>>>> and is often ignored. In Hadoop, Chris Douglas was a great chair 
>>>> >>>>>>>> and held it for 5 years in spite of the 1 year limit.
>>>> >>>>>>>>
>>>> >>>>>>>> No term limit
>>>> >>>>>>>> 1 year
>>>> >>>>>>>> 2 year
>>>> >>>>>>>>
>>>> >>>>>>>> What should the minimum voting period be? I'd suggest 3 days is 
>>>> >>>>>>>> far better as long as it isn't abused by holding important votes 
>>>> >>>>>>>> over holiday weekends.
>>>> >>>>>>>>
>>>> >>>>>>>> 3 days (72 hours)
>>>> >>>>>>>> 7 days
>>>> >>>>>>>>
>>>> >>>>>>>> Should we keep the section on roles or just reference the Apache 
>>>> >>>>>>>> documentation. I'd suggest that we reference the Apache 
>>>> >>>>>>>> documentation.
>>>> >>>>>>>> I'd like to include a couple sentences about the different hats 
>>>> >>>>>>>> at Apache and that votes should be for the benefit of the project 
>>>> >>>>>>>> and not our employers.
>>>> >>>>>>>> I'd like to propose that we include text to formally include 
>>>> >>>>>>>> censor and potential removal for disclosing sensitive information 
>>>> >>>>>>>> from the private list.
>>>> >>>>>>>> I'd like to propose branch committers. It has helped Hadoop a lot 
>>>> >>>>>>>> to enable people to work on development branches for large 
>>>> >>>>>>>> features before they are given general committership. It is 
>>>> >>>>>>>> better to have the branch work done at Apache and be visible than 
>>>> >>>>>>>> having large branches come in late in the project.
>>>> >>>>>>>> Requirements for each topic (each could be consensus, lazy 
>>>> >>>>>>>> consensus, lazy majority, lazy 2/3's)
>>>> >>>>>>>>
>>>> >>>>>>>> Add committer
>>>> >>>>>>>> Remove committer
>>>> >>>>>>>> Add PMC
>>>> >>>>>>>> Remove PMC
>>>> >>>>>>>> Accept design proposal
>>>> >>>>>>>> Add subproject
>>>> >>>>>>>> Remove subproject
>>>> >>>>>>>> Release (can't be lazy consensus)
>>>> >>>>>>>> Modifying bylaws
>>>> >>>>>>>>
>>>> >>>>>>>> Thoughts? Missing questions?
>>>> >>>>>>>>
>>>> >>>>>>>> .. Owen
>>>> >>>>
>>>> >>>>
>>>> >>>>
>>>> >>>> --
>>>> >>>> Ryan Blue
>>>> >>>> Databricks

Reply via email to