I didn't hear any objections, so I committed the patch (along with
rev'ing the API) in r1171713.
On Tue, Sep 13, 2011 at 1:15 PM, Hyrum K Wright
> In looking over the client diff APIs, I noticed the output parameters
> are file handles, not streams. This feels...odd to me, so I hacked
> together the attached patch which updates the APIs to use output
> streams. It isn't ready to commit just yet, but before doing the
> backward compat dance (rev'ing an API before it's even released, ugh),
> I thought I'd post it here for comments or concerns first.
> The one gotcha is that running an external diff command still requires
> files, so this patch creates temporary ones and then copies them to
> the stream. Right now, this is a limitation of our own APIs, but
> fundamentally it's because APR wants an apr_file_t to plug into the
> stdout and stderr of processes it launches. Ideally, we'd find some
> way of mimicking an apr_file_t with a stream, but that feels like
> Future Work.
> Incidentally, one motivation for having streams instead of files is
> compressed pristines. At some point, I'd like to use streams as
> *input* to things like diff and merge, which is a prerequisite for
> storing stuff in compressed form and uncompressing it via a stream.
> (If that doesn't make much sense, it's 'cause I'm still working out
> the details in my head.)
> uberSVN: Apache Subversion Made Easy
uberSVN: Apache Subversion Made Easy
Received on 2011-09-16 20:45:33 CEST