Patrick Mezard <pmezard@gmail.com> [Sat, 06 Oct 2007 21:19:06 +0200] rev 5404
convert: quote "^" to avoid windows using it as an escape char.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Sat, 06 Oct 2007 15:30:15 -0300] rev 5403
Always copy the necessary files before applying a git patch
This patch removes the "copymod" attribute from the gitpatch
class.
AFAICS, that attribute was only used to delay the copying of
renamed/copied files if there are no other changes to the target,
but in this case, if there are changes to the source, we'll end
up copying the wrong version.
This should fix issue762.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Sat, 06 Oct 2007 15:30:15 -0300] rev 5402
mercurial_sink: regrab locks in setbranch
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Sat, 06 Oct 2007 15:30:15 -0300] rev 5401
convert --filemap: reduce memory usage
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Sat, 06 Oct 2007 15:30:15 -0300] rev 5400
convert: change SKIPREV to 'SKIP'
Patrick Mezard <pmezard@gmail.com> [Sat, 06 Oct 2007 17:54:33 +0200] rev 5399
Fix bad lambda prototype in workingctx.fileflags()
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Sat, 06 Oct 2007 14:14:11 -0300] rev 5398
osutil.c: use readdir instead of readdir64
Some systems (e.g. *BSD) don't have a readdir64 function - the regular
readdir already uses 64-bit types.
On other systems (Linux, Solaris, ...), if Python was compiled with large
file support, Python.h will define _LARGEFILE_SOURCE and _FILE_OFFSET_BITS=64,
so that any call to readdir will actually be a call to readdir64. If Python
was not compiled with large file support, we probably don't want to define
these macros to avoid ABI problems.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Sat, 06 Oct 2007 14:14:11 -0300] rev 5397
osutil.c: include Python.h before the other headers
This is recommended by the Python documentation, since Python.h defines
some constants.
Bryan O'Sullivan <bos@serpentine.com> [Fri, 05 Oct 2007 15:01:06 -0700] rev 5396
Add osutil module, containing a listdir function.
This is similar to os.listdir, only it returns a sorted list of tuples.
Patrick Mezard <pmezard@gmail.com> [Fri, 05 Oct 2007 23:40:33 +0200] rev 5395
hgk: add basic usage and configuration documentation
Patrick Mezard <pmezard@gmail.com> [Tue, 02 Oct 2007 23:28:04 +0200] rev 5394
hgk: add context menu visual diff action
* * *
Patrick Mezard <pmezard@gmail.com> [Fri, 05 Oct 2007 22:39:36 +0200] rev 5393
hgk: add debug-config command to pass configuration options
Patrick Mezard <pmezard@gmail.com> [Tue, 02 Oct 2007 23:28:02 +0200] rev 5392
hgk: fix right-mouse button handling under macosx
Patrick Mezard <pmezard@gmail.com> [Fri, 05 Oct 2007 23:01:38 +0200] rev 5391
Test *_ISLINK merge environment vars
Patrick Mezard <pmezard@gmail.com> [Wed, 03 Oct 2007 23:09:36 +0200] rev 5390
merge: provide *_ISLINK environment vars to merge helper
Sets HG_MY_ISLINK, HG_OTHER_ISLINK, HG_BASE_ISLINK in environment. Without these variables, it's impossible for the merge application to know whether the 'other' and 'base' files were symlinks in their original contexts. For the purposes of the merge they are always emitted as small text files.
Patrick Mezard <pmezard@gmail.com> [Fri, 05 Oct 2007 23:01:38 +0200] rev 5389
context: add fileflags() to avoid rebuilding manifests
Bryan O'Sullivan <bos@serpentine.com> [Fri, 05 Oct 2007 12:42:52 -0700] rev 5388
run-tests.py: allow a different temporary directory to be specified
Bryan O'Sullivan <bos@serpentine.com> [Fri, 05 Oct 2007 12:30:19 -0700] rev 5387
Update test for new output produced since 17ed9b9a0d03
Bryan O'Sullivan <bos@serpentine.com> [Fri, 05 Oct 2007 12:28:18 -0700] rev 5386
Fix accidentally broken test.
Bryan O'Sullivan <bos@serpentine.com> [Fri, 05 Oct 2007 12:17:29 -0700] rev 5385
Merge with crew.
Bryan O'Sullivan <bos@serpentine.com> [Fri, 05 Oct 2007 12:17:01 -0700] rev 5384
Allow tests to run in parallel.
Bryan O'Sullivan <bos@serpentine.com> [Fri, 05 Oct 2007 09:30:02 -0700] rev 5383
run-tests.py: reorder options alphabetically.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Thu, 04 Oct 2007 23:21:37 -0300] rev 5382
convert_svn: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Thu, 04 Oct 2007 23:21:37 -0300] rev 5381
convert_cvs: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Thu, 04 Oct 2007 23:21:37 -0300] rev 5380
convert_git: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Thu, 04 Oct 2007 23:21:37 -0300] rev 5379
mercurial_source: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Thu, 04 Oct 2007 23:21:37 -0300] rev 5378
convert: add a mode where mercurial_sink skips empty revisions.
The getchanges function of some converter_source classes can return
some false positives. I.e. they sometimes claim that a file "foo"
was changed in some revision, even though its contents are still the
same.
convert_svn is particularly bad, but I think this can also happen with
convert_cvs and, at least in theory, with mercurial_source.
For regular conversions this is not really a problem - as long as
getfile returns the right contents, we'll get a converted revision
with the right contents. But when we use --filemap, this could lead
to superfluous revisions being converted.
Instead of fixing every converter_source, I decided to change
mercurial_sink to work around this problem.
When --filemap is used, we're interested only in revisions that touch
some specific files. If a revision doesn't change any of these files,
then we're not interested in it (at least for revisions with a single
parent; merges are special).
For mercurial_sink, we abuse this property and rollback a commit if
the manifest text hasn't changed. This avoids duplicating the logic
from localrepo.filecommit to detect unchanged files.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Thu, 04 Oct 2007 23:21:37 -0300] rev 5377
convert: readd --filemap
To handle merges correctly, this revision adds a filemap_source class
that wraps a converter_source and does the work necessary to calculate
the subgraph we're interested in.
The wrapped converter_source must provide a new getchangedfiles method
that, given a revision rev, and an index N, returns the list of files
that are different in rev and its Nth parent.
The implementation depends on the ability to skip some revisions and to
change the parents field of the commit objects that we returned earlier.
To make the conversion restartable, we assume the revisons in the
revmapfile are topologically sorted.
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Thu, 04 Oct 2007 23:21:37 -0300] rev 5376
convert: move filemapper class to a separate file
Alexis S. L. Carvalho <alexis@cecm.usp.br> [Thu, 04 Oct 2007 23:21:37 -0300] rev 5375
convert: disable current --filemap support
The --filemap support in hg convert doesn't handle merges correctly.
(And after 33015dac5df5 I managed to break it even for simple cases
where we don't want the first revision.)