[diffoscope] New feature discussion
Chris Lamb
chris at reproducible-builds.org
Thu Jul 9 07:30:07 UTC 2020
[keeping Jean in CC; let me know if you are on this list]
Hi Jean-Romain,
I think we share the same concerns about the scope of diffoscope.
There are already a lot of moving parts, comparators and code that
could do with rewriting, yet alone optimising.
However, I will add the general comment that there is a tendency in
free software development to prematurely add layers of abstraction. I
have nothing against plugin systems and similar abstractions — as
ideas, they are also very satisfying to my geek mind as well. But, in
my experience, they sometimes do not improve the codebase as a whole
as the wider and longer-term negatives are not fully appreciated or
even considered. Also, if they are added prematurely they often don't
really fix the original issue to begin with as they are not understood
properly.
> This use case is very different from the need to spot all
> differences in the context of reproducible builds, so simply
> merging it upstream doesn't seem straightforward.
I think specifics might be better addressed in the MR rather than this
email but what, in general terms, is preventing you from merging this
functionality? It may not be Platonically ideal, but merging it in
some form may be the best step for diffoscope as a whole.
Even if it hacks around existing functionality (eg. --exclude-command
or whatever… again, I won't engage in the specifics in this thread I'm
afraid), but if we *directly* experience what problems we see with
this approach in real life we can make a real judgement about where we
go from there and possibly even see patterns across different
features/problems/whatever.
Compare this to imagining these problems and jumping to the conclusion
that "just adding" abstraction X, plugin system Y or autodetection
system Z would magically fix it … all requiring delicate, nuanced and
exhausting responses by the maintainers that would have to maintain
them.
Hope that makes sense.
Best wishes,
--
o
⬋ ⬊ Chris Lamb
o o reproducible-builds.org 💠
⬊ ⬋
o
More information about the diffoscope
mailing list