Brendan Cully <brendan@kublai.com> [Thu, 23 Aug 2007 12:23:07 -0700] rev 5211
Do not lose previous tags when adding a tag in raw mode
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Thu, 23 Aug 2007 01:48:29 -0300] rev 5210
merge: forcefully mark files that we get from the second parent as dirty
After a hg merge, we want to include in the commit all the files that we
got from the second parent, so that we have the correct file-level
history. To make them visible to hg commit, we try to mark them as dirty.
Unfortunately, right now we can't really mark them as dirty[1] - the
best we can do is to mark them as needing a full comparison of their
contents, but they will still be considered clean if they happen to be
identical to the version in the first parent.
This changeset extends the dirstate format in a compatible way, so that
we can mark a file as dirty:
Right now we use a negative file size to indicate we don't have valid
stat data for this entry. In practice, this size is always -1.
This patch uses -2 to indicate that the entry is dirty. Older versions
of hg won't choke on this dirstate, but they may happily mark the file
as clean after a full comparison, destroying all of our hard work.
The patch adds a dirstate.normallookup method with the semantics of the
current normaldirty, and changes normaldirty to forcefully mark the
entry as dirty.
This should fix issue522.
[1] - well, we could put them in state 'm', but that state has a
different meaning.
Matt Mackall <mpm@selenic.com> [Mon, 20 Aug 2007 21:10:45 -0500] rev 5209
gendoc: use demandimport
Matt Mackall <mpm@selenic.com> [Mon, 20 Aug 2007 21:14:53 -0500] rev 5208
Merge with -crew
Matt Mackall <mpm@selenic.com> [Sun, 19 Aug 2007 14:04:26 -0500] rev 5207
Merge with -stable
Matt Mackall <mpm@selenic.com> [Sun, 19 Aug 2007 14:03:56 -0500] rev 5206
match: handle large regexes
Some Python versions don't handle large regexes, so when we hit an
overflow, split our regex in two.
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Tue, 21 Aug 2007 02:13:32 +0200] rev 5205
make hg add of a removed file unremove the file
if a file was removed, hg add shouldn't mark the file
as added, but as normal
see issue683
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Tue, 21 Aug 2007 02:02:08 +0200] rev 5204
abort when adding a file in merged state
rupert.thurner@gmail.com [Mon, 20 Aug 2007 22:02:05 +0200] rev 5203
add import from url capability
Patrick Mezard <pmezard@gmail.com> [Sun, 19 Aug 2007 17:38:40 +0200] rev 5202
convert: load parent commits on-demand
Patrick Mezard <pmezard@gmail.com> [Sun, 19 Aug 2007 17:38:07 +0200] rev 5201
convert: wrap cached commits author remapping
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Sat, 18 Aug 2007 21:36:10 -0300] rev 5200
path_auditor: cache names of audited directories
We use a separate cache to avoid problems with
audit = path_auditor(repo.root)
audit("subrepo")
audit("subrepo/file")
whitelisting "subrepo" (which is fine) and then using the same whitelist
with "subrepo/file" (which is not fine).
Since we create a separate path_auditor for every path on the command line,
a "hg add dir/a dir/b dir/c" will still lstat dir 3 times just to audit
the paths.
Thomas Arendsen Hein <thomas@intevation.de> [Sat, 18 Aug 2007 20:21:14 +0200] rev 5199
Quote ^ and ~ chars in test-parentrevspec.
At least ^ causes problems on some sh implementations.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Sat, 18 Aug 2007 14:25:55 -0300] rev 5198
Remove demandimport.enable from dispatch.py
Thomas Arendsen Hein <thomas@intevation.de> [Sat, 18 Aug 2007 11:37:08 +0200] rev 5197
Enable demandimport only in scripts, not in importable modules (issue605)
This way other applications can choose if and when they want this feature,
because it might be problematic if those applications rely on ImportError.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Fri, 17 Aug 2007 23:20:13 -0300] rev 5196
Merge with crew-stable
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Fri, 17 Aug 2007 22:43:38 -0300] rev 5195
Fix sshrepo.unbundle
We weren't reading all the data sent by the server. Depending on
the system, the remote hg (actually, the remote python) could send a
"close failed: [Errno 32] Broken pipe", making some tests fail.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Fri, 17 Aug 2007 22:43:38 -0300] rev 5194
run-tests.py: pass --install-scripts to setup.py
This avoids possible problems when the user has a ~/.pydistutils.cfg.
Fixes issue638. Patch provided by Ralf Schmitt.
Peter Meerwald <pmeerw@pmeerw.net> [Fri, 17 Aug 2007 22:43:38 -0300] rev 5193
recognize user:password in URLs that include port numbers.
when giving user/pwd in an URL, eg.
hg pull http://user:pwd@host.com:666/hg/something,
hg would still ask for user/pwd in interactive mode (or fail in
non-interactive)
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Fri, 17 Aug 2007 20:18:05 -0300] rev 5192
convert: fix mercurial_sink.putcommit
Changeset 4ebc8693ce72 added some code to putcommit to avoid creating a
revision that touches no files, but this can break regular conversions
from some repositories:
- conceptually, since we're converting a repo, we should try to make
the new hg repo as similar as possible to the original repo - we
should create a new changeset, even if the original revision didn't
touch any files (maybe the commit message had some important bit);
- even if a "regular" revision that doesn't touch any file may seem
weird (and maybe even broken), it's completely legitimate for a merge
revision to not touch any file, and, if we just skip it, the
converted repo will end up with wrong history and possibly an extra
head.
As an example, say the crew and main hg repos are sync'ed. Somebody
sends an important patch to the mailing list. Matt quickly applies
and pushes it. But at the same time somebody also applies it to crew
and pushes it. Suppose the commit message ended up being a bit
different (say, there was a typo and somebody didn't fix it) or that
the date ended up being different (because of different patch-applying
scripts): the changeset hashes will be different, but the manifests
will be the same.
Since both changesets were pushed to public repos, it's hard to recall
them. If both are merged, the manifest from the resulting merge
revision will have the exact same contents as its parents - i.e. the
merge revision really doesn't touch any file at all.
To keep the file filtering stuff "working", the generic code was changed
to skip empty revisions if we're filtering the repo, fixing a bug in the
process (we want parents[0] instead of tip).
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Fri, 17 Aug 2007 17:33:27 -0300] rev 5191
Add parentrevspec extension
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Fri, 17 Aug 2007 17:33:27 -0300] rev 5190
Move enabling of demandimport to dispatch.py
This avoids loading many modules before enabling demandimport.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Fri, 17 Aug 2007 17:33:27 -0300] rev 5189
Move cmdtable and reposetup handling out of extensions.py
A new function (extensions.extensions) allows the code that is
interested in those attributes to handle them directly.
This allows some cleanups of extensions.py. Notably, we can
remove the extensions.commandtable hack.
It also makes it easier to add standard extension attributes,
like a "hgwebsetup" function or a "helptable" dict that augments
the data in help.py, etc.
Thomas Arendsen Hein <thomas@intevation.de> [Fri, 17 Aug 2007 19:11:16 +0200] rev 5188
Adjust contrib/hg-ssh for moved dispatch() function.
Matt Mackall <mpm@selenic.com> [Fri, 17 Aug 2007 00:35:16 -0500] rev 5187
Merge with crew
Matt Mackall <mpm@selenic.com> [Wed, 15 Aug 2007 16:55:15 -0500] rev 5186
verify: report expected linkrev
Matt Mackall <mpm@selenic.com> [Wed, 15 Aug 2007 16:55:13 -0500] rev 5185
dispatch: move command dispatching into its own module
- move command dispatching functions from commands and cmdutil to dispatch
- change findcmd to take a table argument
- remove circular import of commands in cmdutil
- privatize helper functions in dispatch
Matt Mackall <mpm@selenic.com> [Wed, 15 Aug 2007 16:10:36 -0500] rev 5184
move parseurl from cmdutil to hg
Matt Mackall <mpm@selenic.com> [Wed, 15 Aug 2007 16:10:24 -0500] rev 5183
fix-up references to repo.RepoError
Matt Mackall <mpm@selenic.com> [Wed, 15 Aug 2007 16:09:50 -0500] rev 5182
remove unneeded imports of mdiff