[flashrom] Future flashrom development (Stefan's PoV II)

Stefan Tauner stefan.tauner at gmx.at
Tue Oct 24 04:03:55 CEST 2017


Hi again,

just to summarize my last email (since it's been over a week again):
there was quite some work done behind the scenes for flashrom's git
conversion that also included a proposed change in the development
process in form of a second "main" branch named staging that would have
been introduced to get patches up to a sane quality level faster.

What I had not anticipated was the strong wish to change the reviewing
process/tools and the resulting surge of reviews and new (conflicting)
changes. My plan was simply to take patches provided by any means (and
thus lowering the barrier for contributing although that was only a
bonus) polish them only minimally and then push them to staging to get
them tested. The old (and already somewhat tested) patches would have
had priority to keep conflicts low. This would have been done rather
manually and without much interaction with others (there were
practically no others in the last years :).

However, I was persuaded to allow Patrick to set up coreboot's Gerrit
for the staging branch of flashrom back in Spring 2017. This obviously
made people enthusiastic to participate in the development again and
especially got some reviewing going that has not happened on the ML for
a long time (although it was by no means meant to be used already). This
new interest was a great though (to me) very surprising development.

I ignored that for the time being because I saw it merely as a test to
see how flashrom people get along with Gerrit and if they actually
do reviews unlike on the ML before. And, again, I did not expect it to
get that far but thought it would die off quickly and that I could deal
with it then later. Another reason was that I had no control about it
whatsoever anyway. That means I (still) cannot change
the configuration including permissions, various hooks including the
one that syncs the upstream repo
(https://www.flashrom.org/git/flashrom.git/) etc.
I *still* don't even have the rights to +2/-2 changes regarding
flashrom on Gerrit. So instead of paying close attention to what
happened on the staging branch without my involvement I spent the
little free time I diverted to flashrom into polishing up the build bot
further to allow its integration into jenkins (e.g., add
synchronization to make (queuing of) parallel execution possible) and
refine my git conversion patch to take Gerrit into account (which of
course it wasn't yet because Gerrit was not in my plans before).

Unfortunately the staging branch on Gerrit got a bit out of hand
unexpectedly due to its success. There were some changes submitted that
kinda made dozens if not hundreds of hours of my work obsolete without
anybody even consulting me. The git conversion patch that I submitted to
the ML in fall 2016 (that wasn't reviewed there) was hijacked in the
sense that David took the (already outdated) version from the ML and
pushed it for review on Gerrit. Then Nico did a very thorough review of
it and it got submitted eventually with a number of changes that were
partially not in my interest including one that completely broke the
generation of tarballs. Patrick (who set up Gerrit) re-implemented a
patch that was even acknowledged on the ML and sitting on my local
commit queue to be committed immediately after the git patch. In the
meantime patchwork (the database of old (and new) patches submitted to
the ML) broke (out of my reach) and it didn't look like it would get
fixed for months - but Patrick did so eventually with some efforts.

All the above wasn't helping my motivation much either, neither was the
continuous passive (and sometimes not so much) aggressiveness towards
any efforts on my side to improve the situation from my PoV. The
situation increasingly felt like a hostile takeover... which is even
worse than a hostile fork. So it pretty much looks and feels like my
involvement is neither needed nor welcome by the active community. I've
been doing flashrom development as a hobby but it certainly became more
than that - it became a responsibility towards the users and somehow an
honor (for the lack of a better word).

However, it kinda stopped being fun in the last year and I can't
influence the events the way I deem necessary to fulfill the perceived
responsibility without making it even less fun for me and probably
everybody else at the same time which in the current situation would
simply lead to escalation that I deem even worse than give way. For
those reasons I am (now officially) standing down as whatever I am/was
to flashrom.

FWIW, AFAICT Nico is in general doing a good job driving the development
and is certainly more than qualified to lead the development even
though I am definitely not agreeing with him all the time and I would
have wished for a better cooperation in the past years of my
involvement - they would have been way more productive that way.

I'd say if anybody would actually ask me (but the email is too long
already anyway) my biggest failure was that I tried to compromise too
much. If I would have changed to git earlier and ignore Carl-Daniel's
sentiments towards it, putting things forward even without reviews and
no (or less) consensus (there can't be consensus in the void anyway), or
even switching to Gerrit and not trying to compromise with myself in
this regard... things could have been much different now.

I'll probably not vanish completely and try to at least push the
Patchwork patches and my private ones to Gerrit when I got time and
maybe even more but I won't promise anything anymore that I possibly
won't keep nor will I take any responsibilities for future releases.
Let me know if you need anything else (e.g., passwords).
-- 
Kind regards/Mit freundlichen Grüßen, Stefan Tauner



More information about the flashrom mailing list