Hi folks, We continue to break things large and small in the codebase, and after a number of different conversations; I thought I'd bring that discussion here.
First - coding quality is only one factor that the PMC considers when making someone a committer. Second - CloudStack is a huge codebase; has a ton of inter-related pieces, and unintended consequences are easy. We also have an pretty heady commit velocity - 20+ commits today alone. Some communities have Review-then-commit - which would slow us down, and presumably help us increase quality. However, I am not personally convinced that it will do so measurably because even the most experienced CloudStack developers occasionally break a build or worse. We could have an automated pipeline that verifies a number of different tests pass - before a patch/commit makes it into a mainline branch. That is difficult with our current tooling; but perhaps something worth considering. At FOSDEM, Hugo and I were discussing his experiences with Gerrit and OpenDaylight, and he thinks thats a viable option. I think it would certainly be a step in the right direction. Separately, Jake Farrell and I were discussing our git-related proposal for ApacheCon, and broached the subject of Gerrit. Jake is the current person bearing most of the load for git at the ASF, and he's also run Gerrit in other contexts. He points out a number of difficulties. (And I'd love for him to weigh in on this conversation, hence the CC) He wants to expand RB significantly, including pre-commit testing. So - thoughts, comments, flames? How do we improve code quality, stop needless breakage? Much of this is going to be cultural I think, and I personally think we struggle with that. Many folks have voiced an opinion about stopping continued commits when the build is broken; but we haven't been able to do that. --David