threads / discuss / 470

Mercurial v0.4c

Subject: Mercurial v0.4c

## tl;dr

4 messages between May 4, 2005 and May 5, 2005.

replies: 3people: 2as markdown or json

Matt Mackall· May 4, 2005, 02:58 UTC · lore
A new version of Mercurial is available at:
 http://selenic.com/mercurial/

This version is officially self-hosting, now that I've added the final planned changed to the metadata. To pull the repo, do:

 hg init
 hg merge http://selenic.com/hg

This version fixes numerous reported bugs, adds a "verify" command to check the repository integrity, transaction handling, and some minor speed improvements.

-- 
Mathematics is the supreme nostalgia of our time.
Matt Mackall· May 4, 2005, 18:18 UTC · re: Matt Mackall · lore

Mercurial v0.4d

A new version of Mercurial is available at:
 
  http://selenic.com/mercurial/
This fixes a handful of bugs reported last night, most notably failing
to pull from the http repo. This turned out to be a failure to quote
'%' characters. Thanks to everyone for their feedback.
 
Once you've got the new version installed, to pull the repo:
  hg init
  hg merge http://selenic.com/hg
  hg checkout    # 'hg co' works too

The web protocol is painfully slow, mostly because it makes an http round trip per file revision to pull. I'm about to start working on a replacement that minimizes round trips.

-- 
Mathematics is the supreme nostalgia of our time.
Jeff Garzik· May 5, 2005, 19:04 UTC · re: Matt Mackall · lore

Re: Mercurial v0.4d

Matt Mackall wrote:
> The web protocol is painfully slow, mostly because it makes an http
> round trip per file revision to pull. I'm about to start working on a
> replacement that minimizes round trips.
Can you make it do HTTP 1.1 pipelining?
	Jeff
Matt Mackall· May 5, 2005, 20:36 UTC · re: Jeff Garzik · lore

Re: Mercurial v0.4d

On Thu, May 05, 2005 at 03:04:31PM -0400, Jeff Garzik wrote:
Show 6 quoted lines
> Matt Mackall wrote:
> >The web protocol is painfully slow, mostly because it makes an http
> >round trip per file revision to pull. I'm about to start working on a
> >replacement that minimizes round trips.
> 
> Can you make it do HTTP 1.1 pipelining?

Yes, a zsync-like protocol ought to be doable. But you'll still potentially be doing 16k requests to pull something the size of the kernel, which isn't very friendly to a web server. So I'm working on a stand-alone or possibly CGI-based replacement.

My goal is to do something like this:
client                             server
I last saw change N from you 
                                   W, X, Y, and Z are newer here
Send me X, Y, and Z relative to N
                                   Here you go, deltas from N to X to
				   Y to Z, sorted by file

So not only can we be efficient in number of round trips and data transferred, we can reduce seeks by applying all per-file changes together. We can also usually avoid decompress/recompress and patch/diff because both ends will end up storing the same delta.

-- 
Mathematics is the supreme nostalgia of our time.

← back to recent threads