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
<https://github.com/apache/iceberg/pull/10804>. For the release manager,
I clarified the how-to-release page
<https://github.com/apache/iceberg/pull/10787>, which includes feedback on
a recent PR <https://github.com/apache/iceberg/pull/10787>.

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
>> <https://cwiki.apache.org/confluence/display/AIRFLOW/Airflow+Improvement+Proposals>
>> ?
>
> 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