[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Make output from hooks visible

From: Julian Foad <julianfoad_at_btopenworld.com>
Date: 2006-03-30 01:00:09 CEST

Kristis Makris wrote:
>>Alternatively we don't agree with your assessment of the bug.
> Could I ask why ?

I will answer.

I have not seen any satisfactory reasons stated for why the output should be
reported, and we do not implement any features without good reasons. The hooks
script feature exists to serve certain purposes, and reporting arbitrary
messages to the client during the operation is not one of its purposes. (On
the other hand, reporting an error message when there is an error is a standard
facility within Subversion.) The statement that "I want to see stdout from my
hook script" is not enough.

If somebody were to demonstrate why and how receiving the output makes a
substantial contribution to the usefulness of hook scripts in general, such
that the benefit to the Subversion community as a whole outweighs the increase
in complexity of the system, then we would be happy for somebody to do it.

It is important to realise that making Subversion report the standard output
from hook scripts is not "just like reporting standard error, except it's
stream number 1 instead of 2". On the contrary, it would involve a completely
new aspect to the concept of what executing a "commit" operation involves:
there would now be an extra data stream coming back. It is not just the
Subversion command-line client "svn" that performs commits and would have to be
upgraded to handle this, but there are also several GUI clients and potentially
some DAV/delta-V clients (and those operate to an external standard which
probably does not support such a data stream).

> If one is importing 4000 files, and they have to wait for the hooks to
> execute, they have no idea if Subversion deadlocked or whether the hook
> is really executing (or access to the bugtracker for integration is
> commencing).

That problem is only loosely connected with making stdout from hook scripts
visible. Simply ensuring that the output is reported is neither necessary
(other reporting mechanisms could do it) nor sufficient (for one thing, the
data stream would need to be "flushed" at sufficiently small intervals) to
solve that problem.

There is one thing that we could agree is a bug: that the specification of how
  Subversion handles a hook script's outputs and error status is wrong or
insufficient. I am addressing that in a new thread: "Specification of hook
script interface".

- Julian

To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Mar 30 01:00:39 2006

This is an archived mail posted to the Subversion Dev mailing list.