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

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
> <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