Hello.

On 04/23/2018 06:05 PM, Stephen Houston wrote:
> In our meeting today we discussed the need for more patch/commit reviewing
> and that there should be rules in place as to what should require a review
> before being pushed into master. 

I was one of the persons who pushed for the 
all-patches-has-to-go-through-review.
The majority at the meeting found this either not needed, to time consuming or 
hard to realise on subsystems where only one developer is active.

None the less I am happy that there is at least movement in getting more 
changes peer reviewed before they hit master.



>  These were some suggestions:
> Any commit that:
> A. Is not a fix or a feature planned for the next release

This bounds us to a very fixed release plan. Can we always say if a patch 
belongs to a specific feature? Often enough things can get argued
both ways.
As a rule its a bit to fuzzy in my opinion.

> B. Is greater than 50 lines

We had enough one line commits that broke things. 50 sounds a bit arbitrary to 
me.

> C. Is in an area of the code base that has more than one developer
> contributing

Indeed, the areas where really only one developer is active are hard to get 
review for.
My suggestion here is to at least try to get review for the concept if you are 
doing a bigger change.

My proposals for the review rules would be something like this:
1. We encourage commits to be peer reviewed even if you  have commit access to 
the repo. If you are unsure, better ask for a review.
2. If you change code in an area you are not familiar with you must get the 
code reviewed from one of the developer of this subsystem.
3. If your change is not part of the initial plan for the upcoming release it 
needs to get reviewed as well.
4. If to many of your direct commits have been introducing breaks recently we 
might ask you to get all patches reviewed for a while.


For number 2 we would need to have a list if subsystems and their developer 
(first reviewers) and of course fallback all areas not covered
there.
Number 3 would only be relevant if we would do detailed release planning (which 
does very much clash with any time based releases)

> Other suggestions were to require branch pushing for CI certification
> before pushing to master.

This could be done. TravisCI is building all branches with new commits in the 
efl repo.

A developer workflow for this would be:
Do your work in a branch -> push this branch to your devs/ namespace to the 
server -> Check result on Travis build -> if all is fine push
for review or merge into master

regards
Stefan Schmidt

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to