[darcs-devel] announcing darcs 2.0.0pre1, the first prerelease for darcs 2
David Roundy
droundy at darcs.net
Mon Dec 17 23:29:22 UTC 2007
On Tue, Dec 18, 2007 at 08:27:23AM +0900, Stephen J. Turnbull wrote:
> David Roundy writes:
> > Hmmmm. Alas, curl 7.16 is not yet in debian stable (my default for when we
> > can require something),
>
> This is an optimization. Add a configure test for it, build it in
> when available, add a Darcs option for it whether or not it's
> actually, and a warning that this option is unimplemented/a no-op in
> this instance of Darcs when it's not available.
Yeah, that makes sense.
> > but that's still very interesting! Do you by any
> > chance have experience coding with libcurl?
>
> I've wrapped libcurl for XEmacs. It was a while ago, never completed,
> I don't have much experience actually using it, and won't have time to
> look at Darcs soon, but maybe my wrapping experience will be of use.
> Feel free to CC me on any threads regarding work on this.
I'll definitely try to remember to do so!
> > > CURLMOPT_PIPELINING
> > >
> > > Pass a long set to 1 to enable or 0 to disable. Enabling pipelining on a
> > > multi handle will make it attempt to perform HTTP Pipelining as far as
> > > possible for transfers using this handle. This means that if you add a
> > > second request that can use an already existing connection, the second
> > > request will be "piped" on the same connection rather than being
> > > executed in parallell. (Added in 7.16.0)
>
> Based on my minimal experience with libcurl, it looks to me like this
> is a straightforward change to Darcs sources; you don't even have to
> catch any new errors. Looks like libcurl will automatically fall back
> to a new connection if pipelining fails. IIRC switching from "easy"
> to "multi" but providing only "easy" functionality is not that hard,
> you just need to add some boilerplate setup.
That's good news! We'll definitely also need some not-quite-trivial changes
in darcs simply because darcs currently does all its downloads
synchronously, which I presume wouldn't work well with the piplining
changes.
--
David Roundy
Department of Physics
Oregon State University
More information about the darcs-devel
mailing list