Hi everyone,
This is something I've been meaning to bring up for some time, but have just been delaying getting it done. For a bunch of reasons, we need to look at disabling direct pushing on the master branch for all extensions in Gerrit. This doesn't affect other branches, just master. There's a couple of big reasons this is a problem right now, and why we need to change:
1) Eventually, we'll be running tests for all extensions (at the very least linting if no phpunit tests have been written). Jenkins doesn't have the change to -1 a commit if you skip review. 2) It doesn't give anyone a place to complain about the patch. Every commit to master needs a place to say "Hey wait a minute" -- even if it's already been merged. 3) Changes that are directly pushed aren't searchable from Gerrit. This is more a feature request for Gerrit, but one that's easily worked around by just pushing through Gerrit.
I realize that feature branches don't necessarily need the same level of scrutiny, but the "primary" branch for a repository needs to be as public as possible--direct pushing makes this difficult. I don't plan on changing this requirement for any branch that's not "master" or "wmf/" (the latter relating to deployment config). Before I make the change though, I wanted to ask about it publicly to make sure there's no major blockers to me doing so.
Thanks for any feedback you can give.
-Chad