I like the idea of pushing more for "discuss before opening a PR", and this
could help with that part.
We have to be clear though that this is not meant as a way to discourage
contributions.

If we decide to switch to that mode, I think we need to
  - Concurrently update the contribution guide and help contributors
understand the new workflow
  - Have a way to make sure that issues where someone offers help get a
timely response (whatever the outcome is).
The latter point is tricky.


On Mon, Feb 25, 2019 at 3:54 PM Dawid Wysakowicz <dwysakow...@apache.org>
wrote:

> Hi,
>
> I think this is very valuable discussion and thank you for starting it.
>
> In general I am +1 for this proposal. I think though we must make it very
> clear that this will require a careful handling by committers. There are at
> least two cases that come to my mind that we need to be aware of:
>
>    - this will require strict handling and good communication on PRs
>    opened without corresponding JIRA/without being assigned on a JIRA, this
>    happens quite a lot,
>    - we must make sure this will not increase the number of hotfixes,
>    - committers should be active with mentoring efforts (probably more
>    than we are currently). I agree that currently there are many PRs being
>    opened that lack consensus, proper description etc. There is though a
>    number of simpler fixes that are solved and merged quite fast now, which
>    might not get enough attention. The new process will require us to accept
>    such contribution twice (first allow contributor to work on it, second on
>    the PR itself). Right now if we see that this contribution is indeed a
>    simple one it happens only once on already opened PR.
>
> As I said I am +1 for those changes, but we should try hard so that this
> effort improves contributors experience rather than make it harder.
>
> Best,
>
> Dawid
> On 25/02/2019 15:31, Kostas Kloudas wrote:
>
> Really nice idea Timo,
>
> Thanks for taking the initiative to open this discussion.
>
> Although a side-effect, I consider it a big argument about my +1
> the fact that now we create backpressure whenever needed at the
> JIRA level, rather than at the open PR level.
>
> The reason is that not accepting a PR after the contributor has spent
> cycles working on an issue, it can be a lot more demotivating than
> just waiting on the JIRA assignment to be completed.
>
> +1 from my side,
> Kostas
>
>
> On Mon, Feb 25, 2019 at 2:23 PM Timo Walther <twal...@apache.org> 
> <twal...@apache.org> wrote:
>
>
> Hi everyone,
>
> as some of you might have noticed during the last weeks, the Flink
> community grew quite a bit. A lot of people have applied for contributor
> permissions and started working on issues, which is great for the growth
> of Flink!
>
> However, we've also observed that managing JIRA and coordinate work and
> responsibilities becomes more complex as more people are joining. Here
> are some observations to examplify the current challenges:
>
> - There is a high number of concurrent discussion about new features or
> important refactorings.
>
> - JIRA issues are being created for components to:
>    - represent an implementation plan (e.g. of a FLIP)
>    - track progress of the feature by splitting it into a finer granularity
>    - coordinate work between contributors/contributor teams
>
> - Lack of guidance for new contributors: Contributors don't know which
> issues to pick but are motivated to work on something.
>
> - Contributors pick issues that:
>    - require very good (historical) knowledge of a component
>    - need to be implemented in a timely fashion as they block other
> contributors or a Flink release
>    - have implicit dependencies on other changes
>
> - Contributors open pull requests with a bad description, without
> consensus, or an unsatisfactory architecture. Shortcomings that could
> have been solved in JIRA before.
>
> - Committers don't open issues because they fear that some "random"
> contributor picks it up or assign many issues to themselves to "protect"
> them. Even though they don't have the capacity to solve all of them.
>
> I propose to make our JIRA a bit more restrictive:
>
> - Don't allow contributors to assign issues to themselves. This forces
> them to find supporters first. As mentioned in the contribution
> guidelines [1]: "reach consensus with the community". Only committers
> can assign people to issues.
>
> - Don't allow contributors to set a fixed version or release notes. Only
> committers should do that after merging the contribution.
>
> - Don't allow contributors to set a blocker priority. The release
> manager should decide about that.
>
> As a nice side-effect, it might also impact the number of stale pull
> requests by moving the consensus and design discussion to an earlier
> phase in the process.
>
> What do you think? Feel free to propose more workflow improvements. Of
> course we need to check with INFRA if this can be represented in our JIRA.
>
> Thanks,
> Timo
>
> [1] https://flink.apache.org/contribute-code.html
>
>

Reply via email to