Contributors mailing list archives
contributors@odoo-community.org
Browse archives
Re: Proposal for new workflow, incorporating "Optimistic Merging"
Proposal for new workflow, incorporating "Optimistic Merging"
Re: Proposal for new workflow, incorporating "Optimistic Merging"
byWhat about having only one beta repository per version with OM and crowd contribution?
It is much easier to manage the repo and it is sometimes very difficult to decide which repo a contribution should go.
Once the module is mature enough it would be transfered to the stable repo.
I would suggest as well not to publish the beta repo to apps.odoo.com
Your thoughts?
Eric Caudal [Founder and CEO]
Skype: elico.corp. Phone: + 86 186 2136 1670 (Cell), + 86 21 6211 8017/27/37 (Office)
Elico Shanghai (Hong Kong/Shenzhen/Singapore) Odoo Gold Partner, best Odoo Partner 2014 for APAC
Hello all,
Some discussion has been going on, to try to make OCA friendlier
to new contributors.
Have a peek at:
https://twitter.com/jgrandguillaume/status/735738547118825475
The "Optimistic Merging" strategy that can make that possible:
Instead of requesting the contributor to have perfect code,
contributions are quickly merged so that others can improve them
("crowd patching").
This provides a more satisfying experience to contributors,
and provides some "low hanging fruit" for newcomers, such as
simple code style fixes.
"Optimistic Merging" has some research backing it.
Learn more about it here:
- http://hintjens.com/blog:106
- https://www.youtube.com/watch?v=O8CbzKREAj4
Based on these ideas, I would like to draft a proposal.
The outline of the new OCA workflow would be like this:
1) Pull Request are made for a "beta" branch. E.g. "9.0-beta".
2) Pull Request has flash code review and a fast merge
3) Pull Request diff will still be available for further
discussion/collaboration
4) Imperfect code merged is "crowd patched" until suitable for
stable release
5) Pull Requests made for stable branch, e.g. "9.0", extracting
relevant commits form the beta branch.
6) Full code review is made, and green CI required, as per
current standards.
7) Fixes to the Pull Request for stable should then be also
merged into the beta branch.
Some details:
Beta branches are initially branched from the stable ones.
Pull Requests should target beta branches.
These are merged with an Optimistic Merge policy.
Merging would be expected to happen fast,
and PR comments would mostly be for discussion, rather than
validating the merge.
Rarely a PR should be blocked - it must be obviously toxic, or
conflicting with other PRs.
MQT needs some adaptations to be useful in this scenario, but
that's not a real issue, and is a separate discussion.
The beta branches are expected to have frequent improvements
from multiple contributors.
They are not guaranteed to be correct nor API stable.
Module versions are not bumped.
People using code from it should be careful pinning Git
revisions.
Module stable releases should be extracted from the beta branch
and proposed to stable version branches.
Similarly to ports between major versions, this has its details
in order to keep history.
It would usually be done by more experienced contributors, and
we can have tools to make it easier.
Module versions should be bumped in the process.
Would to hear your comments and suggestions.
Best regards
Daniel Reis
_______________________________________________
Mailing-List: http://odoo-community.org/groups/contributors-15
Post to: mailto:contributors@odoo-community.org
Unsubscribe: http://odoo-community.org/groups?unsubscribe
Reference
-
Proposal for new workflow, incorporating "Optimistic Merging"
byClosingAp Open Source Integrators Europe, LDA, Daniel Reis-
Re: Proposal for new workflow, incorporating "Optimistic Merging"
byClosingAp Open Source Integrators Europe, LDA, Daniel Reis -
Re: Proposal for new workflow, incorporating "Optimistic Merging"
bydar@devco.co -
Re: Proposal for new workflow, incorporating "Optimistic Merging"
bydar@devco.co -
Re: Proposal for new workflow, incorporating "Optimistic Merging"
byClosingAp Open Source Integrators Europe, LDA, Daniel Reis -
Re: Proposal for new workflow, incorporating "Optimistic Merging"
byModuon Team, S. L., Rafael Blasco (Moduon) -
Re: Proposal for new workflow, incorporating "Optimistic Merging"
byClosingAp Open Source Integrators Europe, LDA, Daniel Reis -
Re: Proposal for new workflow, incorporating "Optimistic Merging"
byKMEE Informatica ltda, Luis F Miléo -
Re: Proposal for new workflow, incorporating "Optimistic Merging"
bydar@devco.co -
Re: Proposal for new workflow, incorporating "Optimistic Merging"
byClosingAp Open Source Integrators Europe, LDA, Daniel Reis -
Re: Proposal for new workflow, incorporating "Optimistic Merging"
byrvalyi@akretion.com
-