Hi,
On Wed, 18 Oct 2006, Charles Duffy wrote:
Johannes Schindelin wrote:
you neatly clipped the most important part of my email: I quoted you
saying that plugins can even change core behaviour!
quoted
So, the wonderful upside of plugins you described here are actually the
reason I will never, _never_ use bzr with plugins.
I presume that for this reason you will also never, _never_ use a
non-mainline branch of git -- even if its actual code only touches UI
enhancements or something similarly non-core
NO! The point was that I will not gladly run anything which could change
the core. If I know it touches only the UI, there is no problem.
If I get a shell script using git-core programs to do its job, I
_know_ that my repository will not be fscked afterwards.
And _that_ was the whole point of my email.
And that you will never, _never_ use third-party wrappers because they
might play LD_PRELOAD tricks. Or run any software with root privileges
you haven't personally written. Or...
Most of it comes down to trust. And yes, you are correct, I will not run
git with some obscure module LD_PRELOADed that some guy from some planet
sent me.
You might have missed my argument being about the SCM, and not the
universe and all the rest.
The claim that an extensibility mechanism should be rejected wholesale
on account of being excessively powerful, on the other hand, is just
silly.
Oh, but NO! An extensibility mechanism which allows for a fragile system
_is_ silly. Not my rejection of it.
Just take an example (illustrating that once again, one should not
attribute everything to malevolence...): I write a plugin for bzr. It does
really wonderful things, it even cooks you dinner.
Only that I happened to make a small mistake (if you followed some threads
on the git list, you'd know that small mistakes are a hobby of mine), and
by this mistake, your repository is ... gone. Small mistake, big
consequence. That is wrong with such a powerful system which caters for
developers, which are human after all.
Note that such a small mistake would be much more likely caught in git: if
it touches the core, plenty of eyes look at it.
Ciao,
Dscho