On Thursday, March 20, 2014 10:55:57 PM Stefan Reinauer wrote:
Changes to the coreboot Project Structure
Measures to improve the coreboot Development Model
- Require authors to acknowledge changes made in their name (Forge-Author) [...]
Couldn't agree more.
Define owners for (sets of) mainboards and require these to act as maintainers / gatekeepers, being the controlling instance to submit these mainboard changes. [...]
Build a MAINTAINERS file for common code, and encourage people to keep subsystem maintainers in the loop for changes [...]
This is somewhat what linux does, and it works well for them.
Might be a little OT/irrelevant, but why not make gerrit need a "maintainer must approve" before making the change submittable.
- Look into making gerrit automatically add reviewers based on maintainer lists [...]
Can we find something better than gerrit? I think gerrit encourages too much bikeshedding. It also encourages people to filter out gerrit emails, so that any such maintainers would not "get the message".
Import previous code reviews and results The tree major stakeholders in the project all own internal code review systems, some of which are public (e.g. the Google Chrome OS repository) and have code reviews that include representatives outside of Google to ensure general code quality and making sure the improvements made for products don’t negatively impact upstreamability. For those cases it would be extremely helpful to honor the code reviews already done in the upstream repository
Status: TO BE INVESTIGATED
I couldn't disagree more. First of all, the idea of "representatives outside of <company> to ensure general code quality" is contrary to the idea of allowing the community to scrutinize to-be-upstreamed contributions. When you combine that with the idea of [blindly] honoring code reviews already done upstream, you have effectively eliminated the scrutiny and review from the community. I've seen mostly cases of great external reviews, but have also seen a fair share of bodged, nonsensical ones where terrible patches have been accepted without much thought.
If the community has to accept code reviews done under closed doors, these contributions are effectively code dumps. I do not remember this ever being beneficial to the community, and usually results in the community needing to clean up afterwards. See linux for details.
What do we need to do to allow commercial contributors to work directly upstream? And before you discount this question for menial technical reasons, please take a moment to keep this conversation open, and let's try to find an answer. Will it work for 100% of commercial contributors? No. However, this should be the preferred method for upstreaming contributions. See linux for an explanation why this works best.
- Significantly reduce number of submitters To ensure consistency, scalability and conformity with the general coreboot strategy, we need to define a clear committer structure that defines the original project structure of having a benevolent dictator aka project leader (Stefan Reinauer) and gatekeepers in place. The suggested structure will need to value both community interests and corporate interests equally and hence a good setup would be to have a final amount of six developers with submit rights, three community representatives and three corporate representatives (on from each major stakeholder):
I am sorry to say this Stefan, but, in my opinion, you would not make a good "benevolent dictator".
Over the past years, I have found you to be extremely biased towards the needs of the commercial developers, whilst being less interested and attentive to the needs and wished of the non-commercial part of the community. I do not believe that someone biased towards one part or another of the community can make a great leader. You also, on some occasions, delayed good NC contributions in order to merge less-than-ideal commercial contributions, which later had to be cleaned up by the NC guys.
You are a great person, but I believe that having you as the leader, we would have a "benevolent dictator" for the commercial contributors, where the non- commercial ones would see have a mere "dictator".
On the other hand, I have found Ron Minnich to be very unbiased and equally receptive to ideas from both sides of the community. While I am certain some people might come to point out mistakes Ron had done in the past, unlike you, I did not find a pattern of bias in them. I think Ron is the best candidate for the role of "President and Benevolent Dictator of Coreboot".
Current suggestions:
Patrick Georgi (Secunet) Marc Jones (Sage) Stefan Reinauer (Google)
It has been this way for years, so to speak. I also find you to be a much better candidate as the representative/maintainer for Google contributions. I think you can do much more good to coreboot in this position.
Alex