Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 16 Apr 2007 20:17:39 -0300] rev 4361
change tests to use simplemerge by default
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 16 Apr 2007 20:17:39 -0300] rev 4360
polish the simplemerge command; add a test
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 16 Apr 2007 20:17:39 -0300] rev 4359
actually port simplemerge to hg
- use bdiff instead of patiencediff; this is a larger change, since
bdiff works on 2 multi-line strings, while patiencediff works on 2
lists;
- rename the main class from Merge3 to Merge3Text and add a Merge3
class that derives from Merge3Text. This new Merge3 class has
the same interface from the original class, so that the tests
still work;
- Merge3 uses util.binary to detect binary data and raises
util.Abort instead of a specific exception;
- don't use the @decorator syntax, to keep python2.3 compatibility;
- the test uses unittest, which likes to print how long it took to
run. This obviously doesn't play too well with hg's test suite,
so we override time.time to fool unittest;
- one test has a different (but still valid) output because of the
different diff algorithm used;
- the TestCase class used by bzr has some extras to help debugging.
test-merge3.py used 2 of them:
- log method to log some data
- assertEqualDiff method to ease viewing diffs of diffs
We add a dummy log method and use regular assertEquals instead of
assertEqualDiff.
- make simplemerge executable and add "#!/usr/bin/env python" header
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 16 Apr 2007 20:17:39 -0300] rev 4358
Import 3-way merge code from bzr
merge3.py is imported as contrib/simplemerge
test_merge3.py is imported as tests/test-simplemerge.py
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 16 Apr 2007 20:17:39 -0300] rev 4357
add mdiff.get_matching_blocks
Matt Mackall <mpm@selenic.com> [Mon, 16 Apr 2007 12:37:30 -0500] rev 4356
Merge with stable
Matt Mackall <mpm@selenic.com> [Mon, 16 Apr 2007 12:27:49 -0500] rev 4355
Merge with crew
Matt Mackall <mpm@selenic.com> [Mon, 16 Apr 2007 12:24:52 -0500] rev 4354
merge: fix quadratic behavior in find-copies
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 16 Apr 2007 13:31:15 -0300] rev 4353
Merge with crew-stable.
TK Soh <teekaysoh@yahoo.com> [Tue, 10 Apr 2007 16:25:21 -0500] rev 4352
test-command-template: improve test coverage
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 16 Apr 2007 13:00:23 -0300] rev 4351
command line templates: add formatnode filter
This will print a full hash node with --debug and a short one otherwise.
Use it with some default templates and in map-cmdline.default to print
the parents. This should fix issue538.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 16 Apr 2007 13:00:23 -0300] rev 4350
fix 'hg <not-log> -v --template foo' with revisions without copies
Matt Mackall <mpm@selenic.com> [Mon, 16 Apr 2007 09:52:37 -0500] rev 4349
Merge with stable
Matt Mackall <mpm@selenic.com> [Mon, 16 Apr 2007 09:51:50 -0500] rev 4348
hgweb: fix rfind bug in PATH_INFO handling
Matt Mackall <mpm@selenic.com> [Sun, 15 Apr 2007 18:42:51 -0500] rev 4347
Merge with crew
Matt Mackall <mpm@selenic.com> [Sun, 15 Apr 2007 18:42:38 -0500] rev 4346
Merge with stable
Matt Mackall <mpm@selenic.com> [Sun, 15 Apr 2007 18:40:22 -0500] rev 4345
Merge with crew
Matt Mackall <mpm@selenic.com> [Thu, 12 Apr 2007 11:00:21 -0500] rev 4344
hgweb: make PATH_INFO handling slightly more robust
Matt Mackall <mpm@selenic.com> [Thu, 12 Apr 2007 12:42:22 -0500] rev 4343
Merge with crew
Brendan Cully <brendan@kublai.com> [Thu, 12 Apr 2007 16:05:28 -0700] rev 4342
Merge with Matt
Matt Mackall <mpm@selenic.com> [Tue, 10 Apr 2007 14:05:15 -0500] rev 4341
Merge with stable
Joel Rosdahl <joel@rosdahl.net> [Mon, 09 Apr 2007 10:39:28 +0200] rev 4340
Add graphlog extension
Brendan Cully <brendan@kublai.com> [Thu, 12 Apr 2007 15:07:05 -0700] rev 4339
Merge with crew-stable
Brendan Cully <brendan@kublai.com> [Thu, 12 Apr 2007 14:45:53 -0700] rev 4338
mq: fix qtop when some patches beneath are guarded
Patrick Mezard <pmezard@gmail.com> [Thu, 12 Apr 2007 22:41:50 +0200] rev 4337
mq: test qtop with holes in the patch sequence.
Brendan Cully <brendan@kublai.com> [Tue, 10 Apr 2007 10:34:43 -0700] rev 4336
Merge with crew-stable
TK Soh <teekaysoh@yahoo.com> [Tue, 10 Apr 2007 12:24:28 -0500] rev 4335
minor typo fix in templater's docstring
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 09 Apr 2007 04:57:25 -0300] rev 4334
Merge with crew-stable.
Patrick Mezard <pmezard@gmail.com> [Sat, 07 Apr 2007 19:42:26 +0100] rev 4333
Add test for issue 529 - "mq aborts when merging patch deleting files".
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 09 Apr 2007 04:24:17 -0300] rev 4332
mq: don't abort when merging a patch that removes files
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 09 Apr 2007 04:24:17 -0300] rev 4331
atomicfile: don't copy the original file if it'll be truncated
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 09 Apr 2007 04:24:17 -0300] rev 4330
use atomictemp files to write the dirstate
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 09 Apr 2007 04:24:17 -0300] rev 4329
use atomictemp files to write branch.cache
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 09 Apr 2007 04:24:17 -0300] rev 4328
util.opener: if requested, use atomicfile even if the file doesn't exist
Right now, surprisingly enough, if you request an atomic file but the
file still doesn't exist, you get a regular file. AFAICS, the only time
this happens is during the initial creation of the dirstate.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 09 Apr 2007 04:24:17 -0300] rev 4327
cache os.umask even on windows
Matt Mackall <mpm@selenic.com> [Fri, 29 Dec 2006 20:04:30 -0600] rev 4326
pull umask-checking up
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Sat, 07 Apr 2007 04:45:27 -0300] rev 4325
Merge with crew-stable.
TK Soh <teekaysoh@yahoo.com> [Thu, 29 Mar 2007 10:25:19 -0500] rev 4324
help: log --keyword is case-insensitive
TK Soh <teekaysoh@yahoo.com> [Thu, 29 Mar 2007 09:32:59 -0500] rev 4323
hgweb: expand keyword search to full list of files
TK Soh <teekaysoh@yahoo.com> [Thu, 29 Mar 2007 09:28:10 -0500] rev 4322
log: expand keyword search to full list of files
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Sat, 07 Apr 2007 04:27:55 -0300] rev 4321
run-tests.py: use coverage.py with "#!/usr/bin/env python" tests
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Sat, 07 Apr 2007 04:27:55 -0300] rev 4320
run-tests.py: small cleanup
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Sat, 07 Apr 2007 04:27:55 -0300] rev 4319
run-tests.py: use coverage.py with *.py tests
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Sat, 07 Apr 2007 04:27:55 -0300] rev 4318
run-tests.py: tell coverage.py to ignore errors
Otherwise there'll be some IOErrors when it tries to open python
files created during the execution of e.g. test-hook.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Sat, 07 Apr 2007 04:27:55 -0300] rev 4317
test-bad-pull: try to avoid timing-related failures
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Sat, 07 Apr 2007 04:27:55 -0300] rev 4316
Try to find diffstat in PATH before calling it
At least on Solaris, /bin/sh will print a "command not found" message
even if we redirect stderr.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Sat, 07 Apr 2007 04:27:55 -0300] rev 4315
Add a pointer to "hg -v help" to the bottom of hg help {,cmd} output
This should make it easier to discover global options.
As a bonus, they are no longer displayed by something like a
hg -v help dates
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Sat, 07 Apr 2007 04:27:55 -0300] rev 4314
revlog.py: fix/tweak read ahead code in lazyparser
Brendan Cully <brendan@kublai.com> [Thu, 05 Apr 2007 15:20:42 -0700] rev 4313
Merge with Matt
Matt Mackall <mpm@selenic.com> [Thu, 05 Apr 2007 17:09:31 -0500] rev 4312
Merge with stable
Matt Mackall <mpm@selenic.com> [Thu, 05 Apr 2007 16:43:18 -0500] rev 4311
merge: fix a bug where copies were ignored
Brendan Cully <brendan@kublai.com> [Thu, 05 Apr 2007 14:55:27 -0700] rev 4310
Merge with Matt
Matt Mackall <mpm@selenic.com> [Thu, 05 Apr 2007 16:25:47 -0500] rev 4309
merge: fix a bug where copies were getting ignored
Emanuele Aina <em@nerd.ocracy.org> [Tue, 27 Feb 2007 09:05:36 +0100] rev 4308
Move back the purge extension in hgext
Emanuele Aina <em@nerd.ocracy.org> [Wed, 28 Mar 2007 21:34:12 +0200] rev 4307
purge: abort with missing files avoiding problems with name-mangling fs
In a name mangling filesystem (e.g. a case insensitive one)
dirstate.walk() can yield filenames different from the ones
stored in the dirstate. This already confuses the status and
add commands, but with purge this may cause data loss.
To prevent this purge refuses to work if there are missing
files and has a 'force' option if the user knows it is safe.
Even with the force option purge checks if any of the missing
files is still available in the working dir: if so there
may be some problem with the underlying filesystem, so it
unconditionally aborts.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Wed, 04 Apr 2007 04:22:08 -0300] rev 4306
Merge last few matcher/locate fixes.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Wed, 04 Apr 2007 04:22:06 -0300] rev 4305
locate: don't print "file not found" messages.
This should fix issue204.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Wed, 04 Apr 2007 04:22:06 -0300] rev 4304
change relglob: patterns to be consistent with glob: patterns
With this change, you have to use "hg locate 'hgweb/**'" to locate
all the files in directories named hgweb. OTOH, "hg locate '*l'"
will locate only files that end with "l" - e.g. a file called "hg.py"
will not be matched just because it's in a directory whose name ends
with "l" (e.g. "mercurial").
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Wed, 04 Apr 2007 04:22:05 -0300] rev 4303
Revert changeset ef1f1a4b2efb; add another test for glob: patterns
With that changeset, it's impossible to use a glob: pattern to match
e.g. all files ending in .py - glob:**.py would also match all files
in a directory called dir.py.
Matt Mackall <mpm@selenic.com> [Mon, 02 Apr 2007 14:16:44 -0500] rev 4302
Fixups for recent changes in revlog version handling
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Tue, 27 Mar 2007 01:41:25 -0300] rev 4301
hgweb: don't display heads in gitweb-style summary page
greg@maptuit.com [Fri, 16 Mar 2007 17:55:42 -0400] rev 4300
hgweb: display named branches in gitweb-style summary page
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Tue, 27 Mar 2007 01:41:23 -0300] rev 4299
test-ssh-clone-r: avoid a shell script
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Tue, 27 Mar 2007 01:41:22 -0300] rev 4298
test-ssh: avoid a shell script
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Tue, 27 Mar 2007 01:41:21 -0300] rev 4297
test-init: avoid a shell script
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Tue, 27 Mar 2007 01:41:20 -0300] rev 4296
test-rename-merge2: avoid a shell script
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Tue, 27 Mar 2007 01:41:18 -0300] rev 4295
test-merge6: avoid a shell script
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Tue, 27 Mar 2007 01:41:17 -0300] rev 4294
test-merge1: avoid a shell script
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Tue, 27 Mar 2007 01:41:16 -0300] rev 4293
test-filebranch: avoid a shell script
Giorgos Keramidas <keramida@ceid.upatras.gr> [Sat, 30 Dec 2006 21:33:45 +0200] rev 4292
Use printf(1) instead of using bash-specific shell code.
Submitted by: Benoit Boissinot <bboissin@gmail.com>
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 26 Mar 2007 23:50:04 -0300] rev 4291
test-ssh: use printenv.py
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 26 Mar 2007 23:50:03 -0300] rev 4290
test-static-http: use printenv.py
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 26 Mar 2007 23:50:01 -0300] rev 4289
test-http: use printenv.py
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 26 Mar 2007 23:50:00 -0300] rev 4288
test-push-http: use printenv.py
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 26 Mar 2007 23:49:59 -0300] rev 4287
test-bundle: use printenv.py
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 26 Mar 2007 23:49:58 -0300] rev 4286
test-hook: use printenv.py
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 26 Mar 2007 23:49:56 -0300] rev 4285
Add tests/printenv.py
This is a small script that can be used as a hook to print the
HG_* environment variables without relying on the shell.
John Goerzen <jgoerzen@complete.org> [Mon, 26 Mar 2007 20:49:57 -0500] rev 4284
Add a filename for the bundle
John Goerzen <jgoerzen@complete.org> [Mon, 26 Mar 2007 20:46:49 -0500] rev 4283
Slight refining to help text in patchbomb.py
Christian Ebert <blacktrash@gmx.net> [Tue, 13 Mar 2007 13:17:26 +0100] rev 4282
hgweb: short hash for tip archive name
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 26 Mar 2007 21:36:26 -0300] rev 4281
add util.lexists
John Goerzen <jgoerzen@complete.org> [Thu, 22 Mar 2007 14:02:39 -0500] rev 4280
Improve documentation for patchbomb and email
John Goerzen <jgoerzen@complete.org> [Mon, 26 Mar 2007 13:57:49 -0500] rev 4279
Add common bundle/outgoing options to hg email
John Goerzen <jgoerzen@complete.org> [Mon, 26 Mar 2007 13:37:48 -0500] rev 4278
Add ability to send bundles to patchbomb extension
Thomas Arendsen Hein <thomas@intevation.de> [Sat, 24 Mar 2007 13:31:43 +0100] rev 4277
Fixed spacing in assignment of REVLOG_DEFAULT_VERSION
Matt Mackall <mpm@selenic.com> [Sat, 24 Mar 2007 02:57:27 -0500] rev 4276
Merge with crew
Matt Mackall <mpm@selenic.com> [Sat, 24 Mar 2007 02:47:33 -0500] rev 4275
changelog: optimize delayed updates for clone vs pull
pull index updates get redirected to memory, then appended on finalize
clone index updates get sent to 00changelog.i.a, then renamed on finalize
Matt Mackall <mpm@selenic.com> [Sat, 24 Mar 2007 02:45:08 -0500] rev 4274
Merge with -stable
Matt Mackall <mpm@selenic.com> [Fri, 23 Mar 2007 00:12:28 -0500] rev 4273
tags: require -f to replace an existing tag
based on a patch from Johan Herland <johherla@online.no>
Matt Mackall <mpm@selenic.com> [Thu, 22 Mar 2007 23:52:50 -0500] rev 4272
tags: fix abababa case, with test case
Matt Mackall <mpm@selenic.com> [Fri, 23 Mar 2007 01:04:21 -0500] rev 4271
Merge with crew
Matt Mackall <mpm@selenic.com> [Thu, 22 Mar 2007 23:37:44 -0500] rev 4270
restructure changelog file appending
- make appending code proper part of changelog with delayupdate/finalize
- use simplified appender that tracks pending data in memory
- eliminate old appendfile and helper classes
- update addchangegroup to use new interface and reuse the existing changelog
Matt Mackall <mpm@selenic.com> [Thu, 22 Mar 2007 20:10:46 -0500] rev 4269
appendfile: handle only changelog.i file
Matt Mackall <mpm@selenic.com> [Thu, 22 Mar 2007 19:54:15 -0500] rev 4268
appendfile: remove unused manifest code
Matt Mackall <mpm@selenic.com> [Thu, 22 Mar 2007 19:52:38 -0500] rev 4267
revlog: simplify revlog version handling
- pass the default version as an attribute on the opener
- eliminate config option mess
Matt Mackall <mpm@selenic.com> [Thu, 22 Mar 2007 19:12:03 -0500] rev 4266
revlog: don't pass datafile as an argument
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Fri, 23 Mar 2007 23:40:25 -0300] rev 4265
use os.path.islink instead of util.is_link; remove util.is_link
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Fri, 23 Mar 2007 23:40:24 -0300] rev 4264
Add some tests for symlink tracking
Eric St-Jean <esj@wwd.ca> [Wed, 21 Mar 2007 23:20:56 -0400] rev 4263
Fix localrepo.copy to deal with symbolic links.
Eric St-Jean <esj@wwd.ca> [Wed, 21 Mar 2007 23:20:56 -0400] rev 4262
Backup symbolic links when reverting
Eric St-Jean <esj@wwd.ca> [Wed, 21 Mar 2007 23:20:56 -0400] rev 4261
fix util.copyfile to deal with symlinks
Brendan Cully <brendan@kublai.com> [Fri, 23 Mar 2007 14:11:31 -0700] rev 4260
hg-relink: do not compare .d files
Brendan Cully <brendan@kublai.com> [Wed, 21 Mar 2007 14:06:25 -0700] rev 4259
Make import opportunistically use merge information
Brendan Cully <brendan@kublai.com> [Thu, 22 Mar 2007 10:44:59 -0700] rev 4258
Add import --exact.
When this option is set, import will apply the patch (which must
be generated by export) to the parents specified in the patch,
and check that the node produced by the patch matches the node
ID in the patch.
Brendan Cully <brendan@kublai.com> [Thu, 22 Mar 2007 10:40:28 -0700] rev 4257
Add --outgoing option to patchbomb
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Tue, 20 Mar 2007 22:21:05 -0300] rev 4256
Merge additional fixes for my matcher changes
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Tue, 20 Mar 2007 22:09:55 -0300] rev 4255
glob:<directory> patterns match the files in that directory.
This makes the behaviour of glob: patterns more consistent:
hg status glob:dir and hg status -I glob:dir will match
the same files.
It's also consistent with the fact that {rel,}path patterns
recursively match the contents of a directory.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Tue, 20 Mar 2007 22:09:53 -0300] rev 4254
Pass normalized directory names to the ignore function
This fixes a bad performance regression caused by dd0d9bd91e0a.
Giorgos Keramidas <keramida@ceid.upatras.gr> [Sun, 18 Mar 2007 22:49:05 +0200] rev 4253
tests: expand test-commit a bit to test 'hg commit .' too
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Tue, 20 Mar 2007 22:09:51 -0300] rev 4252
fix hg commit . in the repo root
Brendan Cully <brendan@kublai.com> [Tue, 20 Mar 2007 13:13:39 -0700] rev 4251
transplant: fix ignoring empty changesets (eg after filter)
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 19 Mar 2007 19:16:35 -0300] rev 4250
Merge with crew-stable.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 19 Mar 2007 19:07:40 -0300] rev 4249
debugsetparents: wlock the repo before updating the dirstate
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 19 Mar 2007 19:07:39 -0300] rev 4248
avoid _wsgioutputfile <-> _wsgirequest circular reference
We use the _wsgirequest object itself as the output file object.
To avoid a "self.out = self" which would create another circular
reference, we make the "out" attribute a trivial property.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 19 Mar 2007 19:07:38 -0300] rev 4247
avoid wsgiapplication <-> MercurialHTTPServer circular reference
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 19 Mar 2007 19:07:37 -0300] rev 4246
hgwebdir: break templater -> templater circular reference
This is essentially another instance of the same problem fixed
by the parent changeset. See its commit message for the details.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Mon, 19 Mar 2007 19:07:35 -0300] rev 4245
hgweb: break templater -> templater circular reference
The problem were some functions passed in the "defaults" argument
during the templater creation which use "self.t" directly. This
creates the cycle:
hgweb object
-> templater object
-> defaults dict
-> footer function
-> hgweb object
Instead of completely avoding the cycle, we break it after using
the templater.
Brendan Cully <brendan@kublai.com> [Mon, 19 Mar 2007 09:36:06 -0700] rev 4244
Add hg-relink script to contrib
Thomas Arendsen Hein <thomas@intevation.de> [Sun, 18 Mar 2007 20:44:58 +0100] rev 4243
merge with crew-stable
Thomas Arendsen Hein <thomas@intevation.de> [Sun, 18 Mar 2007 20:39:25 +0100] rev 4242
Fixed synopsis for some mq commands