ethereumjs / organization

A repo for discussions and other non-code organizing stuff
https://ethereumjs.readthedocs.io
12 stars 16 forks source link

Work dynamics in a growing repository #61

Closed evertonfraga closed 3 years ago

evertonfraga commented 4 years ago

We’ve got more activity now that we have the VM monorepo. I have some concerns:

Whenever a PR is merged, every other PR gets an outdated state, requiring either a click on “Update branch”, or a git rebase from CLI. Each update triggers all the PR’s CI jobs. It slows down work. If any other PR gets merged in the mean time, you’ll have to do it again.

There are some cards on the table we can try to use to mitigate this problem:

A) Relax the rule “Require branches to be up to date before merging”. I am aware that non orthogonal changes can lead to failure, but as we don’t do continuous delivery with many releases per week, I think it might worth the try, keeping an eye on the CI runs after merging PRs.

B) Optimize the CI structure, so we can have more concurrent PRs building jobs. (in progress: #778).

C) Upgrade plan to have 60 concurrent jobs for the organization.

D) Ways of running less concurrent jobs per CI run.

evertonfraga commented 4 years ago

Although the most effective, option A also carries several concerns regarding branching model and how error prone this approach can be. (this was discussed in team call number 7)

I will pursuit the remaining options listed, mitigating the issue with faster build times and targeting less concurrent jobs.

holgerd77 commented 3 years ago

No follow-up and somewhat outdated, will close.