Commit Graph

9425 Commits

Author SHA1 Message Date
Thomas Arendsen Hein
9137b0ce4a Realigned command table again. 2005-08-06 07:16:37 +01:00
tksoh@users.sourceforge.net
434ce67bf6 hg status: added options to select files by status.
Added options -m, -a, -r and u to select files corresponding
to status M, A, R and ? respectively. If none of these
options are specified, files of all status will be shown.
2005-08-06 07:09:10 +01:00
mpm@selenic.com
be7d339756 Merge with BOS 2005-08-04 13:31:25 -08:00
mpm@selenic.com
c2d5a7769c Merge with TAH 2005-08-04 13:27:41 -08:00
Wallace, Eric S
ac33b6df10 Fix array overflow bug in bdiff
I ran into a bug while importing a large repository into mercurial.
The diff algorithm does not allocate a big enough array of hunks
for some test cases. This results in memory corruption, and possibly,
as in my case, a seg fault.

You should be able to reproduce this problem with any case of more
than a few lines that follows this pattern:

a  b
=  =
1  1
   2
2  3
   4
3  5
   .
4  .
   .
5
.
.
.

I.e., "a" has blank lines on every other line that have been removed in
"b". In this case, the number of matching hunks is equal to the number
of lines in "b". This is more than ((an + bn)/4 + 2). I'm not sure what
motivates this formula, but when I changed it to the smaller of an or
bn (+ 1), it works.

[comment added by mpm]
2005-08-04 13:25:59 -08:00
Kyle Moffett
4a58ee908b Allow import from files with spaces
Index: hg/mercurial/commands.py
===================================================================
2005-08-04 13:22:36 -08:00
Samuel Tardieu
5422ec903a Add an option to hg serve to serve file using IPv6 2005-08-04 13:21:27 -08:00
Thomas Arendsen Hein
081258c314 Handle broken pipe on pressing Ctrl-C with e.g. 'hg log|grep something'. 2005-08-04 18:06:49 +01:00
Bryan O'Sullivan
f83e56bf58 Merge with Matt. 2005-08-04 05:14:59 -08:00
Bryan O'Sullivan
443fbd739c Fix performance of hg diff.
commands.walk has been refactored.  commands.walk's behaviour remains as
it was, but there is a new function, commands.makewalk.  This returns
results that can be passed along to other internal code, in our case
dodiff.
2005-08-03 09:10:48 -08:00
mpm@selenic.com
9161f5c8e4 Merge with BOS 2005-08-02 08:57:32 -08:00
mpm@selenic.com
e29716deb4 Actually implement the -f switch for push 2005-08-01 23:34:23 -08:00
mpm@selenic.com
c0f58ac983 Make ssh URL parsing more robust 2005-08-01 23:23:51 -08:00
mpm@selenic.com
7c0d9a3cf7 Warn on pushing unsynced repo or adding new heads
By popular demand
2005-08-01 23:17:22 -08:00
Thomas Arendsen Hein
2616a4e21f Use list comprehension in hg status. 2005-08-01 17:58:13 +01:00
Bryan O'Sullivan
a159000a3d Attempt to yield names in sorted order when walking.
This is an improvement in behaviour, but the walk and changes code still
has some flaws that make sorted name presentation difficult:

- changes returns tuples of names, instead of a sorted list of (name,
  status) pairs.

- walk yields deleted names after all others.
2005-07-31 18:03:46 -08:00
Bryan O'Sullivan
25438a68e9 Ensure that dirstate.walk only yields names once.
Its predecessor code used to do this, and now it does, too.
2005-07-31 17:54:00 -08:00
Bryan O'Sullivan
2f2a31ce76 Clean up walk and changes code to use normalised names properly.
New function: commands.pathto returns the relative path from one path
to another.  For example, given foo/bar and baz/quux, it will return
../../baz/quux.  This new function is used by the walk and status code
to print relative paths correctly.

New command: debugwalk exercises the walk code without doing anything
more.

hg.dirstate.walk now yields normalised names.  For example, if you're
in the baz directory and you ask it to walk ../foo/bar/.., it will yield
names starting with foo/.

As a result of this change, all of the other walk and changes methods
in this module also return normalised names.

The util.matcher function now normalises globs and path names, so that
it will match normalised names properly.

Finally, util.matcher uses the non-glob prefix of a glob to tell walk
which directories to scan.  Perviously, a glob like foo/* would scan
everything, but only return matches for foo/*.  Now, foo/* only scans
under foo (using the globprefix function), which is much faster.
2005-07-31 17:42:46 -08:00
mpm@selenic.com
768ed5f6f9 Psyco was failing to call dirstate.__del__ for import
Remove it.
2005-07-30 09:01:59 -08:00
mpm@selenic.com
b90578da57 Merge with BOS 2005-07-30 09:00:14 -08:00
mpm@selenic.com
666129a0b4 Merge with TAH 2005-07-30 08:35:29 -08:00
mpm@selenic.com
c29a4a3c68 add note about -C to update message 2005-07-30 08:30:12 -08:00
Bryan O'Sullivan
e6c1da7c61 Adapt commit to use file matching code.
The code is slightly complicated by the need to commit all outstanding
changes in the repository if no file names are given (other commands
operate on the current directory and its subdirectories in this case).

localrepository.changes has acquired an optional match parameter, to let
it filter out include/exclude options.
2005-07-29 15:02:27 -08:00
Bryan O'Sullivan
4d6bf4b62a Reduce the amount of stat traffic generated by a walk.
When we switched to the new walk code for commands, we no longer passed a
list of specific files to the repo or dirstate walk or changes methods.
This meant that we always walked and attempted to match everything,
which was not efficient.

Now, if we are given any patterns to match, or nothing at all, we still
walk everything.  But if we are given only file names that contain no
glob characters, we only walk those.
2005-07-29 12:30:12 -08:00
Bryan O'Sullivan
56cb6cecf2 Move commands.forget over to using new walk code.
With no names, it now recursively forgets everything, as is the default
behaviour of other commands.  And prints the names of all files it
hasn't specifically been told to forget.
2005-07-29 08:49:01 -08:00
Bryan O'Sullivan
cc5f100120 Fix performance regression in addremove command.
When I rewrote addremove, I lazily put a call to repo.changes in,
which was unnecessary and slow.  This is a new rewrite, preserving the
file name behaviour, but replacing the call to repo.changes with a walk,
which is much cheaper, and avoids calls to os.stat on all but files that
have probably been deleted.
2005-07-29 08:42:28 -08:00
Thomas Arendsen Hein
d3b77c0789 Merge with upstream 2005-07-29 06:43:21 +01:00
mpm@selenic.com
04d7166797 Fix the directory and revlog collision problem
This adds escaping for directory names so that directory foo.i doesn't
collide with the revision data for file foo.
2005-07-27 18:50:32 -08:00
mpm@selenic.com
e4d910ab82 Fix undo after aborted commit bug
Commit would overwrite undo.dirstate unconditionally, so an undo after
an aborted commit would restore the dirstate from the aborted commit
and not the prior transaction.

This copies dirstate to journal.dirstate and moves it after a
successful transaction.
2005-07-27 18:16:20 -08:00
Stephen Darnell
b957313b12 Add a --time command line option to time hg commands 2005-07-27 10:18:44 -08:00
thananck@yahoo.com
b2ea3f96f3 Provided platform dependent implementations for explain_exit
os.system return code is system dependent.
2005-07-27 10:18:22 -08:00
mpm@selenic.com
6b8940724b Fix copy in subdirectories
Spotted by Chad Netzer
2005-07-27 10:05:12 -08:00
mpm@selenic.com
185e6a4945 Add changegroup hook for push/pull 2005-07-27 09:07:28 -08:00
TK Soh
cc943b9a88 Add paths command
The following patch adds the 'paths' commands to show a named path, or list of
available paths. In case anyone find it useful.
2005-07-27 08:19:59 -08:00
mpm@selenic.com
44898730bf Shorten hashes displayed in log 2005-07-27 08:14:52 -08:00
mpm@selenic.com
50f9864860 Hide errno in abort messages 2005-07-26 21:52:40 -05:00
mpm@selenic.com
3823d6eace Make pull count jargon less confusing
revisions are now synonymous with changesets, and not file changes
2005-07-25 12:02:29 -05:00
mpm@selenic.com
036be5ad14 Fixes for annotate
Handle files that aren't in the repo
Handle empty files
2005-07-23 14:11:49 -05:00
Thomas Arendsen Hein
cc635ee7b9 Show all dirstate info for 'hg debugstate'. 2005-07-23 17:11:29 +01:00
mpm@selenic.com
ace1cac10d Fix bug in exception handling for hardlink clone 2005-07-23 10:14:42 -05:00
mpm@selenic.com
9520e62074 Fix local file changes being ignored after non-branch merge
Bug introduced in 45dd84ebbed8
Spotted by TAH
2005-07-23 10:00:56 -05:00
Bryan O'Sullivan
afb14169de Get addremove to use new walk code.
It is now more verbose than it used to be.  If given file names, it
prints nothing, as before.  But if given patterns or nothing, it prints
the names of the files it is operating on, to remove that air of mystery.

It also now operates at or below the current directory.
2005-07-22 19:45:48 -08:00
mpm@selenic.com
f8e53b93db Hack to fix missing '/' problem in URLs 2005-07-22 20:07:14 -05:00
mpm@selenic.com
8e0881ad8a Don't mark files with 'm'erge unless we're actually merging branches
For 3-way merges, we were marking files as 'm', which should only be
used for branch merges. This was causing files to show up in 'hg
status' that aren't actually modified.
2005-07-22 19:23:00 -05:00
Thomas Arendsen Hein
ba5a4e2eff Added deprecation warnings if -t or --text is used for commits. 2005-07-22 16:27:30 +01:00
Thomas Arendsen Hein
aafc5792d1 Changed more occurances of 'text' to 'message'. 2005-07-22 16:26:46 +01:00
Andrew Thompson
1ecb4f2e16 Change all references to -t --text commit message to -m and --message. 2005-07-22 15:59:13 +01:00
Thomas Arendsen Hein
c476ddb6d6 There was an extra space after 'hg id' when there are no tags. 2005-07-22 08:58:16 +01:00
Thomas Arendsen Hein
8ba70bc4df Updated help strings and test-help:
- options -I/-X: always at the end, don't include them in the synopsis.
- NAME is optional for hg revert
- other small changes.
2005-07-22 08:47:35 +01:00
Thomas Arendsen Hein
4ac08580ae Show filenames for hg export in verbose mode on a separate lines.
This makes parsing by external tools much easier.
2005-07-22 07:42:47 +01:00
mpm@selenic.com
1f521ec7c5 Check protocol versions
This also allows the old unidentified protocol
2005-07-21 18:20:13 -05:00
mpm@selenic.com
e16b6ba2ce Simplify content type checking 2005-07-21 18:19:20 -05:00
Muli Ben-Yehuda
0bf14d0d7e When pulling from a non hg repository URL (e.g. http://www.kernel.org/hg)
you geta pretty obscure error (zlib: uknown compression type). The
attached patch modifies hgweb.py and hg.py to supply and check a
'Content-type: application/hg-0.1' HTTP header for the branches,
between and changegroup commands, so that we know it's a proper hg
repo before snarfing the input. Comments appreciated!
2005-07-21 18:18:43 -05:00
mpm@selenic.com
d1b02c9855 Add tag -t, deprecate tag -m
manifest hash: 893aa9732b500edfa6ffc099f76b00a88a5b1943
2005-07-21 15:29:35 -05:00
mpm@selenic.com
b558c4fe0c Add -m for rawcommit
manifest hash: cf066b609ab4854a731c103f1d456d89cf5e1312
2005-07-21 12:29:19 -05:00
mpm@selenic.com
1698a5cd7e Change C to M in status 2005-07-21 12:24:42 -05:00
mpm@selenic.com
0da7c8cf44 Add -m for commit and deprecate -t
Index: hg/doc/hg.1.txt
===================================================================
2005-07-21 12:23:55 -05:00
mpm@selenic.com
f37cae8945 Handle empty file list for annotate 2005-07-21 12:22:54 -05:00
mpm@selenic.com
de5db2bbb6 Remove ls command 2005-07-21 12:22:29 -05:00
mpm@selenic.com
88969029c3 Refactor matchpats and walk
Move core match function code to util
Add some comments and whitespace
Simplify options
Use lambdas instead of always and never
2005-07-21 12:21:33 -05:00
mpm@selenic.com
f70080b8c0 Fix some line wrapping
manifest hash: 43af5dafa55e01f89727096f4d6784317f3eb0d6
2005-07-20 20:11:23 -05:00
Bryan O'Sullivan
98efeab033 Split make_file back out into make_filename and make_file.
It turns out that make_filename is useful by itself.
2005-07-20 04:08:11 -08:00
Bryan O'Sullivan
197de447fb If the argument to make_file can act like a file, return it.
This is useful for code that calls command functions, but doesn't
want to send I/O through the filesystem.
2005-07-20 03:55:16 -08:00
Bryan O'Sullivan
6e8461ae49 Merge with Matt's tip. 2005-07-20 03:52:06 -08:00
Bryan O'Sullivan
bd62653aff Update tests to reflect walk changes. 2005-07-20 03:43:05 -08:00
Bryan O'Sullivan
89e035ebd1 An empty .hgignore file must cause us to ignore nothing, not everything! 2005-07-20 03:37:01 -08:00
Bryan O'Sullivan
790baed0b9 Convert annotate over to walk interface.
Add emptyok parameter to walk and matchpats, for commands that require
at least one name.
2005-07-20 03:23:12 -08:00
Bryan O'Sullivan
643472c556 Convert diff command over to using walk code. 2005-07-20 03:16:20 -08:00
Bryan O'Sullivan
ce7fede45a Add name matching to status command. 2005-07-20 03:01:23 -08:00
Bryan O'Sullivan
e5a5499cf6 Only walk over files that match our criteria. 2005-07-20 02:57:20 -08:00
Bryan O'Sullivan
0b81e3969d Turn make_filename into make_file, which returns a file handle. 2005-07-20 02:48:16 -08:00
mpm@selenic.com
59b4a46202 Fix verify error reporting bug
Spotted by Chris Mason

manifest hash: d5a6e5cb65d2de65a68d1f85c8692e79622844d3
2005-07-19 15:09:04 -05:00
Bryan O'Sullivan
161b15b929 Get commands to raise Abort instead of ui.warn(...),sys.exit(1). 2005-07-19 07:42:36 -08:00
Bryan O'Sullivan
fc2a7aae7c Add a source designator to the walk methods.
If the source is 'f' (the filesystem), the file definitely exists in
the filesystem.  If 'm' (a rev or dirstate manifest), the file may not
still exist with the given name.
2005-07-19 07:15:59 -08:00
Bryan O'Sullivan
b9dc9cad21 Merge with Matt's tip. 2005-07-19 07:00:03 -08:00
Bryan O'Sullivan
4e963737e8 Get add and locate to use new repo and dirstate walk code.
They use a walk function that abstracts out the irritating details, so
that there's a higher likelihood of commands behaving uniformly.
2005-07-18 06:54:21 -08:00
Bryan O'Sullivan
f3838c3254 Work on walk code. 2005-07-16 15:13:40 -08:00
Thomas Arendsen Hein
a7b90ec3c8 Make annotate use option --rev instead od --revision like other commands.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Make annotate use option --rev instead od --revision like other commands.

manifest hash: fe9c9cd9d42657f60d302b557f1f33640fd51199
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFC2LAwW7P1GVgWeRoRAqYKAJ4tiLIVTRN0Ot6bjrEZRc9VFrk3zwCdGx/C
PhOGWMHVlNYGZxmdXridIc4=
=J7Cn
-----END PGP SIGNATURE-----
2005-07-16 07:58:56 +01:00
Thomas Arendsen Hein
dd5a1ee437 Some cleanups in commands.annotate().
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Some cleanups in commands.annotate().

manifest hash: 9581ad3bb9ebc418e4772158c505e34b92496e92
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFC2K+nW7P1GVgWeRoRAr3VAKCGvKbhmG4yweZTgmxIgaZlmz16HQCdFupq
BKcWfEn17Y1l6IDbGS0rDyI=
=/fR/
-----END PGP SIGNATURE-----
2005-07-16 07:56:39 +01:00
Thomas Arendsen Hein
8734e61b04 Added missing newline after two error messages.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Added missing newline after two error messages.

manifest hash: c730cdf92c66ee5b44a4cd9b67f72deb844e4010
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFC2B0mW7P1GVgWeRoRAjXJAJ48fbg6jXN65pBPGW/YmWn9OtKakACgjnr9
DPySaeLr3/bU7KhFdZPI7/4=
=Lvsx
-----END PGP SIGNATURE-----
2005-07-15 21:31:35 +01:00
Thomas Arendsen Hein
b3aaf95a41 Merge with myself.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Merge with myself.

manifest hash: e47e1ba87ecb28a08f819401fd8c2a88bc830261
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFC168rW7P1GVgWeRoRAmknAJ0ea1BrnM1KSnfPqkYpurFpV+booACcDGNh
ka6ciaH1pQLhOyKgqdbqwOA=
=pOV4
-----END PGP SIGNATURE-----
2005-07-15 13:42:19 +01:00
Thomas Arendsen Hein
c39640c326 Show filename for hg export in verbose mode.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Show filename for hg export in verbose mode.

manifest hash: 4fbb7bb566ef04e64079fb1fd61974ad47f22e7c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFC15svW7P1GVgWeRoRAleQAJ4kXmyj+56kTb5lV9VrQYpu4O3h5ACfXU5W
M0TB/OvU0g5uvudZVQMsJd0=
=yq7Y
-----END PGP SIGNATURE-----
2005-07-15 12:17:03 +01:00
Thomas Arendsen Hein
73f9932b92 Use dirstate to check if .hgtags needs to be added.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Use dirstate to check if .hgtags needs to be added.

manifest hash: f90af1553754eb703fc457ffdd5ded0de6fa47e0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFC15i1W7P1GVgWeRoRArDvAKCSxWDCbwU12ICwwVUoe753H8GYIwCfZGs0
HcL8cOp+eHz85AMJJE/xfck=
=1xKK
-----END PGP SIGNATURE-----
2005-07-15 12:06:29 +01:00
Thomas Arendsen Hein
ea4e83ea22 Fix synopsis: hg forget needs at least one file name.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix synopsis: hg forget needs at least one file name.

manifest hash: 1386189a11f9bc539ae2c4bf93333235931d8bc6
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFC14i7W7P1GVgWeRoRAj3OAKCBPkYzoxOHu0Xp/vZ6Myz6JGM4hACgimU+
Gw1Av4ESM2ivORd8ulHMdBc=
=kDiv
-----END PGP SIGNATURE-----
2005-07-15 10:58:19 +01:00
Thomas Arendsen Hein
e747504c6c Changed command synopsises to match style of common UNIX tools.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Changed command synopsises to match style of common UNIX tools.

manifest hash: cf62235e46f5c06ac5a3c88cb61e9b57d35fe222
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFC13YhW7P1GVgWeRoRAnSOAKCOtrYHZ2XMTjpphY/G2UZHcJcZeQCdFsgv
D5Hu+s9ahVX8hns2ZbQpriI=
=g6NW
-----END PGP SIGNATURE-----
2005-07-15 09:38:57 +01:00
Thomas Arendsen Hein
f2fc4d951f Make "hg parents REV" work (again?)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Make "hg parents REV" work (again?)

manifest hash: d14db0d23b539ad0b754a51a83926d14f1be9a6e
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFC12adW7P1GVgWeRoRAtknAJ9TeUybLWYWY+Bi2b5grmAspgfemwCeP9cd
6mYSTWIsovCqW59KIrEvVVo=
=u5nR
-----END PGP SIGNATURE-----
2005-07-15 08:32:45 +01:00
mpm@selenic.com
2f677d5118 Merge with TAH
manifest hash: 197e0d1a0d7376a9eb72381330462f06490ab821
2005-07-14 22:56:55 -08:00
mpm@selenic.com
ec0bda6bb8 Be quiet about broken pipes
manifest hash: 3163ebe2f15c3a577456cfdcd2b136c3c7cf7378
2005-07-14 18:41:36 -08:00
Thomas Arendsen Hein
e78588e43a Make makelock and readlock work on filesystems without symlink support.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Make makelock and readlock work on filesystems without symlink support.
This way you can have a repository on a fat partiton, e.g. a USB stick.

manifest hash: cea2c120ef2b25a50c5d98b59648f773feefe470
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFC1t5yW7P1GVgWeRoRAsKjAJ9BFcn/EqBK/dmJ4BY1pPIZIbDDJACghN3p
VCQS6CJ72MHpzhOOsnOpHzE=
=laDT
-----END PGP SIGNATURE-----
2005-07-14 22:51:47 +01:00
Thomas Arendsen Hein
061a741620 merge program setting from hgrc wasn't used.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

merge program setting from hgrc wasn't used.

manifest hash: 49da647e02534f51324a7a955a34c64c05bd8fa0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFC1pKjW7P1GVgWeRoRAt6AAJ9ZB6NerDpWA/k2ZZeN6VUsSDkB8wCePhMd
Xr+Tb86zo+xFhHq7YkDvLak=
=+BY9
-----END PGP SIGNATURE-----
2005-07-14 17:28:19 +01:00
Thomas Arendsen Hein
70103c7dc3 On importing the result of 'hg export', parse while reading and drop headers.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On importing the result of 'hg export', parse while reading and drop headers.

manifest hash: 385cb4205bb6e4291a412d740400de44bd2e4014
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFC1otNW7P1GVgWeRoRAiSpAJ4jGhjyEnI2aqCM6pgC8KWSWRkDugCgkVMK
rd/YNziDK3TNRhI3yKNrLVw=
=w6ht
-----END PGP SIGNATURE-----
2005-07-14 16:57:01 +01:00
Thomas Arendsen Hein
33c7cea999 Removed extra spaces for default parameters according to PEP8.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Removed extra spaces for default parameters according to PEP8.

manifest hash: 0f6bcc95adf406c8f6dafd92b7c7d3523b6dfe2c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFC1oNhW7P1GVgWeRoRAn76AJ4m8rFUeeUDRC0qVEmjjmPClmAFsQCdE3rN
Juv2dSoGteRm0DBXz7xnF4c=
=PMki
-----END PGP SIGNATURE-----
2005-07-14 16:23:13 +01:00
Thomas Arendsen Hein
4726688b78 Removed duplicate use of os.path.normcase().
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Removed duplicate use of os.path.normcase().

manifest hash: cccacfb66a4de9abc20095b28e6bab9b51dc4fa9
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFC1n0LW7P1GVgWeRoRAueGAJ9256Jiwv4QbrFIV3Px/SmBMkddjQCbBop/
J2Yi2np72OAKVPhFhCijH6s=
=aAyf
-----END PGP SIGNATURE-----
2005-07-14 15:56:11 +01:00
Thomas Arendsen Hein
6564a37beb Use python function instead of external 'cp' command when cloning repos.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Use python function instead of external 'cp' command when cloning repos.
Inspired by a patch from Stephen Darnell.

manifest hash: b525b0bf40f349b362db7c46d62be41572ef65cf
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFC1ncZW7P1GVgWeRoRAiJmAJ9GaCPaG6yOKb72I+SpDDdcdXTISACePD0H
GR/F+qqzi2imdgIV77ziLcQ=
=YVd2
-----END PGP SIGNATURE-----
2005-07-14 15:30:49 +01:00
Thomas Arendsen Hein
225c4c2561 Multiple cleanups of things detected by pylint.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Multiple cleanups of things detected by pylint.
Spacing, multiple statements on a single line, overloading builtins,
except statements without exception type, unused variables, etc.

manifest hash: 457b33b30200d9f71ca707a0bef78053d9091107
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFC1jOEW7P1GVgWeRoRApr5AJoClL7FkGXT9Z36xF71zdVH463O0wCeJJwb
gJSn0jHlLZ3m25OI+BuZCrI=
=HVDq
-----END PGP SIGNATURE-----
2005-07-14 10:42:28 +01:00
Thomas Arendsen Hein
2898765c52 Removed extra newline in hg log when not using the --patch option, fixed tests.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Removed extra newline in hg log when not using the --patch option, fixed tests.

manifest hash: 4d83d4af68581affe4cd2dacf840ec78bf18311e
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFC1jJdW7P1GVgWeRoRAkoIAJ4kI8WFisp8fJTMsUCddLwK0O1mHQCgj+fx
XDIXrDpUULYSSck3eD4QHY4=
=jKKB
-----END PGP SIGNATURE-----
2005-07-14 10:37:33 +01:00
mpm@selenic.com
09e51635fb HG environment variables take precedence over hgrc
manifest hash: c128b53429f861c0b75c2a81c6ad4907e4779810
2005-07-13 01:48:03 -08:00
mpm@selenic.com
437dd476b1 Minor merge fixups
return a proper errorlevel on abort
let force jump across branches
catch exception on unlink

manifest hash: 6787814cd75e9f9623c56dc36f865afd54f56bfa
2005-07-13 01:46:50 -08:00
mpm@selenic.com
c1d7762996 Make manifest lookup use changeset ids
manifest hash: 83cf1ac9c68ad9e8de29d2c629c8a06eaeeeae15
2005-07-13 01:42:48 -08:00
mpm@selenic.com
f2122f67e2 Repair the hgweb search interface
manifest hash: f5c644f14b31da897dc66f96c2852ae1f11f43f1
2005-07-13 01:41:49 -08:00
Matt Mackall
ec337aec34 Hide file hashes in log
There are six different kinds of revision numbers and hashes:

changeset hash and local number
manifest hash and local number
file hash and local number

We really ought to expose only the changeset hash and local number, so
begin hiding the others from the end user

manifest hash: 40d07cc930e84a9283d5e03ade23e3454401e148
2005-07-12 20:55:42 -08:00
Matt Mackall
6219c06395 Reapply startswith() changes that got lost with stale edit
manifest hash: 16d7feedd561591a21727a4c13a1223019d802a7
2005-07-12 00:51:49 -08:00
Matt Mackall
68b8829c92 Sort files for removal 2005-07-11 15:07:04 -08:00
Matt Mackall
bfd9f3d6ab Handle undeletion of files when checking out old revisions
Spotted by Marc Singer
2005-07-11 15:06:32 -08:00
Matt Mackall
7235bde6be Actually move .hg into ignore 2005-07-11 10:28:20 -08:00
Matt Mackall
93a507d8d0 Alternate fix for SIGHUP on the other OS
Suggested by K Thananchayan
2005-07-10 17:11:27 -08:00
Mikael Berthe
6c5d37b7f0 hg clone stored path fix
# HG changeset patch
# User Mikael Berthe <mikael@lilotux.net>
# Node ID a08808d8ffd811c1174216c598da5c27d20bc2c9
# Parent  0bda45294416406d4c6fbaf1cb643dd0bf6b3a16
hg clone stored path fix

The abspath() has been lost in changeset 634 (ed741e6e5a5e).
2005-07-10 16:15:20 -08:00
chad.netzer@gmail.com
899bc83dfc Make consistent use of str.startswith() in conditionals.
# HG changeset patch
# User chad.netzer@gmail.com
# Node ID 45db196de89a15fd045cd789f701b0180fd276f1
# Parent  852adf9ffa4dd2cb1a504bd207f0cad178ac4024
Make consistent use of str.startswith() in conditionals.
2005-07-10 16:14:56 -08:00
Matt Mackall
5fb8ca60d2 Move .hg into ignore() 2005-07-10 16:13:39 -08:00
mwilli2@localhost.localdomain
f2f576fe2c .hgignore speedups patch incorporating Matt's feedback.
# HG changeset patch
# User mwilli2@localhost.localdomain
# Node ID c78a9d4398c63b6bc689e456e1cab3850a846c8a
# Parent  5155a0b6300820be38eb7e04d26525be39307df2
.hgignore speedups patch incorporating Matt's feedback.
2005-07-10 16:03:20 -08:00
Edouard Gomez
5195263115 Dont trap SIGHUP on the other OS
# HG changeset patch
# User Edouard Gomez <ed.gomez@free.fr>
# Node ID 34a547cb33fe515ef4cdc8ccd173546671253ae9
# Parent  5155a0b6300820be38eb7e04d26525be39307df2
Dont trap SIGHUP on the other OS

HG doesn't work anymore on the other OS since signals are trapped.

This is due to the fact that as explained in Python docs not all
signals are defined for all platforms, so python was complaning about
missing signal.SIGHUP.
2005-07-10 16:02:39 -08:00
mark.williamson@cl.cam.ac.uk
7d47f35832 A number of minor fixes to problems that pychecker found.
# HG changeset patch
# User mark.williamson@cl.cam.ac.uk
# Node ID 55d38977b7f2e73b8c1090179928ac96c8922b90
# Parent  0bda45294416406d4c6fbaf1cb643dd0bf6b3a16
A number of minor fixes to problems that pychecker found.
2005-07-10 16:01:11 -08:00
Radoslaw "AstralStorm" Szkodzinski
f70194b3b9 Pass username to hgeditor, remove temporary file
# HG changeset patch
# User Radoslaw "AstralStorm" Szkodzinski <astralstorm@gorzow.mm.pl>
# Node ID 5c5d1484b51a53918575a199ab8985160f0ce2d7
# Parent  5155a0b6300820be38eb7e04d26525be39307df2
Pass username to hgeditor, remove temporary file
2005-07-10 16:00:17 -08:00
Matt Mackall
2156cc914b Move commit hook after commit completes
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Move commit hook after commit completes

manifest hash: bc65b570af67ee4748efaba2ff8a6cddf91b8a14
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFC0ZwSywK+sNU5EO8RAuAjAJsHGTXsOCnxq+xbq/Q0H+ayGnzaiQCfdWn6
or+IWK3sjYILYncTxMFZJdE=
=mQb7
-----END PGP SIGNATURE-----
2005-07-10 14:07:14 -08:00
Matt Mackall
bc958d41d5 Whitespace cleanup
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Whitespace cleanup

manifest hash: 7abcbe23247dd5b7dea6fa44fb80d9f909cf6829
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFC0ZvmywK+sNU5EO8RAhhDAJ0YXOx5B2F/3NjFB+5YcUtkHqVyuQCgnNyp
tWbRrjDz/SbKz/tFAsxJDqo=
=xB66
-----END PGP SIGNATURE-----
2005-07-10 14:06:30 -08:00
Matt Mackall
c4c7a27643 Generate a friendlier except for failed lookups
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Generate a friendlier except for failed lookups

manifest hash: 1a4384b791bba2107604e56168166dfcbfb54086
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFC0Ws6ywK+sNU5EO8RArBGAJ9EA0mCNGqO+w6LaO358sVe19o7lQCdGffF
MmQ/ZIvxoJOjYTo+PLBWMqI=
=4VIg
-----END PGP SIGNATURE-----
2005-07-10 10:38:50 -08:00
Matt Mackall
2b45be3873 dirstate.forget() takes a list
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

dirstate.forget() takes a list

manifest hash: e444474a5ac76d3562ee8c0211e1a88ec53155ef
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFC0WO+ywK+sNU5EO8RAlmYAJ9pcSgpvvuqLzfUkeApXZyOb3j6pQCgi9Te
e8ZI236WNWfyrwEASxFIeLM=
=yDVZ
-----END PGP SIGNATURE-----
2005-07-10 10:06:54 -08:00
Matt Mackall
9f4ad36efb Warn about bogus ignore expressions
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Warn about bogus ignore expressions

manifest hash: 7beb33a1f0879a1d2457953187a523417bc7a101
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFC0IPqywK+sNU5EO8RAsOdAJ0bFxZoUjSk/BxWZ9C50SlxlDBlBQCeKbu0
QVzZZKIFlDRVWOsi8zfamHA=
=zAVL
-----END PGP SIGNATURE-----
2005-07-09 18:11:54 -08:00
Matt Mackall
bc0449b7fa Fix out of range regression
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix out of range regression

From: Filip Brcic <brcha@users.sourceforge.net>

The old revlog.py issued "index out of range" error when cloning the repository
Now I have reverted the parts of revlog.py to the old state when prev was
initialized as -1 and later assigned self.tip() only if that is possible.
Previously prev was always initialized as self.tip() and that is where the
out of range error was.

manifest hash: c94c9aee8b6d382ef52c3981f306a6e7e5f4c4d1
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCzzIxywK+sNU5EO8RAtlcAJ0TX9FXuC2c3YHuYXNwqZhdzPWUlgCggq+a
yJzUKDKH/gvnD3Tx3jcmCn8=
=euPi
-----END PGP SIGNATURE-----
2005-07-08 18:10:57 -08:00
Matt Mackall
23c3e09d30 Make cloning by hardlink quiet again
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Make cloning by hardlink quiet again

manifest hash: bd12b4deedb99e06415619f858b95b566a6d329e
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCzvGGywK+sNU5EO8RAiCzAJ9iCRbyijLT7PqkgCI9eFn+9pl+KQCfdcB1
yHxfvLCL39wAAcBo6Hebpvo=
=qne+
-----END PGP SIGNATURE-----
2005-07-08 13:35:02 -08:00
Matt Mackall
7ad3935fdb Fix corruption resulting from skipping parts of a revision group
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix corruption resulting from skipping parts of a revision group

We were occassionally losing track of what revision a delta applied to
when we skipped over deltas we already had and applying the delta
against the wrong base. This could result in coredumps from mpatch,
consistency errors, or failed verify.

manifest hash: fcf20a8abfd81f08fae2398136b2ed66216b2083
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCzu5SywK+sNU5EO8RAi10AJ9cqIfQzOzbcdH36t1LR/rY+UMtHwCeM79p
Dtv+Jh0McLZr6nf4iJyhDgI=
=5o6U
-----END PGP SIGNATURE-----
2005-07-08 13:21:22 -08:00
Matt Mackall
ad29857686 Non-grouping regex for ignore
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Non-grouping regex for ignore

Suggested by Mark Williamson

manifest hash: dfd4686e7ac9f96e79da600edf299ed64213e05d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCzjX3ywK+sNU5EO8RAnc1AJ4/sKzyZJiRs6UzE3uksE2U9rOkVQCeJsZf
PhHsNtEt/WyL+v44mBfk8Mk=
=e+Qy
-----END PGP SIGNATURE-----
2005-07-08 00:14:47 -08:00
Matt Mackall
ccd4188077 Fix an odd revlog bug
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix an odd revlog bug

If revlog had a cached -empty- revision, as opposed to no cached
version, it could get confused. This cropped up in verify on a
particular repo.

manifest hash: 90ccf122087f6bbcb4322cb9d9bb8124610ba886
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCzjRaywK+sNU5EO8RAgVEAKCv3WBJt1rBOX0UlTDXFPygPIru+gCfTZxJ
CEz1lYny1gkQ+haGY26QdBs=
=C/K5
-----END PGP SIGNATURE-----
2005-07-08 00:07:54 -08:00
Matt Mackall
e4ed038d5b Fix bug in reverting deleted files
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix bug in reverting deleted files

Force updates and reverts wouldn't restore deleted files in the
working dir. This should fix that.

manifest hash: e14809399bbc63da42e8c8f694cc8acf31e537f7
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCzjOJywK+sNU5EO8RAqVLAKCC1BF6JhNiO6n4LJGvy9RBTgOelwCdF9Tr
sADRnovYt9xSnUGmd1Om9JQ=
=SdcP
-----END PGP SIGNATURE-----
2005-07-08 00:04:25 -08:00
Matt Mackall
b9a708f99a Experimental ignore regex speed-up
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Experimental ignore regex speed-up

manifest hash: c6922086fb78201b60ba8cbde5b51512225ebcc8
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCzWkvywK+sNU5EO8RAohzAJ9BwkFJQzs0QRH71r1Y1Wm0QCSmEwCgrESQ
Ej3Kt/y0JdhOJzQLsAiufqk=
=SPjY
-----END PGP SIGNATURE-----
2005-07-07 09:41:03 -08:00
Matt Mackall
cbe4c5f492 Attempt to read all remaining remote output at close
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Attempt to read all remaining remote output at close

manifest hash: e1eda33686726559849388b048a838933862fe89
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCzM60ywK+sNU5EO8RAudsAJwPW/MPUBXFV13UbYmZyiwdzSr8QwCfYJqc
l1ZDWPZPTN5UGUlfs0CCu7Y=
=2Tat
-----END PGP SIGNATURE-----
2005-07-06 22:41:56 -08:00
Matt Mackall
d35c78a55f Show remote client output with "remote:" 2005-07-06 22:30:00 -08:00
kreijack@inwind.REMOVEME.it
42bbe1d4e5 this patch permits hgweb to show the deleted files in the changeset diff
# HG changeset patch
# User kreijack@inwind.REMOVEME.it
# Node ID 08b33970007e753f12b2b2f9d0e169981a6e8c3c
# Parent  d5198e5dd8087ca487031662f0908a6296512e5d
this patch permits hgweb to show the deleted files in the changeset diff
2005-07-06 22:28:50 -08:00
mason@suse.com
5cc69df211 Performance enhancements for manifest.add()
# HG changeset patch
# User mason@suse.com

Performance enhancements for manifest.add()

Improve manifest.add performance by using bisect to insert/remove
changed items into the manifest list.  This also generates the
manifest delta directly based on the changes being made.
2005-07-06 22:28:35 -08:00
Matt Mackall
b35386d135 typo in help message.
From: "Aneesh Kumar K.V" <aneesh.kumar@hp.com>
2005-07-06 22:27:53 -08:00
Matt Mackall
66044de47d Catch SIGHUP
This should reduce the chance that a repo we're connected to via ssh
gets interrupted without doing rollback.
2005-07-06 22:27:07 -08:00
Matt Mackall
4a3866a379 Switch push over to the new scheme
Now push works transparently with any repo with lock and
addchangegroup. Currently this is local repos and ssh.
2005-07-06 22:25:40 -08:00
Matt Mackall
073fa93171 Add addchangegroup to the ssh protocol 2005-07-06 22:23:57 -08:00
Matt Mackall
8cf75f2dfd Add a scheme for handling remote locking
This adds an object that remembers to unlock the remote repo on
destruction and lock/unlock functions for the ssh protocol. The remote
repository should also unlock itself when the connection goes down.
2005-07-06 22:23:27 -08:00
Matt Mackall
46871ef83d Fix up the broken bits in findoutgoing 2005-07-06 22:21:23 -08:00
Matt Mackall
f8a8da4071 Move the empty changeset detection out of findincoming to pull
This lets us reuse findincoming for findoutgoing
2005-07-06 22:20:56 -08:00
Matt Mackall
e873216620 Protocol switch from using generators to stream-like objects.
This allows the the pull side to precisely control how much data is
read so that another encapsulation layer is not needed.

An http client gets a response with a finite size. Because ssh clients
need to keep the stream open, we must not read more data than is sent
in a response. But due to the streaming nature of the changegroup
scheme, only the piece that's parsing the data knows how far it's
allowed to read.

This means the generator scheme isn't fine-grained enough. Instead we
need file-like objects with a read(x) method. This switches everything
for push/pull over to using file-like objects rather than generators.
2005-07-06 22:20:12 -08:00
Matt Mackall
e16fdada85 Add a repo method to report repo device
This is used to establish whether repos are on the same device for
hard linking. Remote repos all return -1.
2005-07-06 22:14:10 -08:00
thananck@yahoo.com
65554049c5 Provides output option to cat command
# HG changeset patch
# User thananck@yahoo.com
# Node ID c838b9c2c71b1d64b8bde786f6470b30f23962de
# Parent  d5198e5dd8087ca487031662f0908a6296512e5d
Provides output option to cat command
expand function in commands.doexport is moved to toplevel and renamed
to make_filename. The 'cat' command now accecpts --output <pattern>
switch to specify the destination file.

Index: hg/mercurial/commands.py
===================================================================
2005-07-05 18:23:56 -08:00
Bryan O'Sullivan
a59fdd1e1e Remove debug print from locate code.
# HG changeset patch
# User Bryan O'Sullivan <bos@serpentine.com>
# Node ID 5240abb57899b745f2e6465be29d9d54c4777364
# Parent  13b74665cbdf735a91f231956d0fe73e446340ea
Remove debug print from locate code.

Index: hg/mercurial/commands.py
===================================================================
2005-07-05 18:22:28 -08:00
Bryan O'Sullivan
f6784ca518 Use repo.getcwd() in a few obvious places.
# HG changeset patch
# User Bryan O'Sullivan <bos@serpentine.com>
# Node ID fb74eaa2b5b763ad5591b2e51dbb377bf8342064
# Parent  ebf5eba347a17a5c09000b3342caf350cd060a1b
Use repo.getcwd() in a few obvious places.
2005-07-05 18:19:22 -08:00
Bryan O'Sullivan
39b21b4b72 Add locate command.
# HG changeset patch
# User Bryan O'Sullivan <bos@serpentine.com>
# Node ID ebf5eba347a17a5c09000b3342caf350cd060a1b
# Parent  4309b0a5a6010dd2e5811b77d2bc29a51acf290f
Add locate command.

Used for finding files with names that match specific patterns,
such as "*.c".

This patch also introduces localrepository.getcwd, which returns the
current directory relative to the repository root.
2005-07-05 18:19:01 -08:00
Matt Mackall
014f47251b Cleanups for repo.pull
Use repo.pull in pull and clone commands
Teach clone about ssh:// (temporarily)
Fix up shutil issue on failed pull
2005-07-05 18:12:57 -08:00
Matt Mackall
5dd4f6c486 Add an sshrepository class and hg serve --stdio 2005-07-05 17:55:22 -08:00
Matt Mackall
3cc4e98ed3 Change remote repository to httprepository 2005-07-05 17:50:43 -08:00
Matt Mackall
4db088e7cd Add generic repo commands for pull and push 2005-07-05 17:50:02 -08:00
Matt Mackall
4c5093f684 Add a function to calculate the outgoing changegroup 2005-07-05 17:49:01 -08:00
Matt Mackall
d5f0bb5101 Attempt to handle RSS URIs properly
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Attempt to handle RSS URIs properly

manifest hash: 1546939c11a8640ca56f0b0f5c7bdc878b4faa67
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCycliywK+sNU5EO8RAukgAJ9eoJdqTiTQ8xSsSeHMIBmHnnQk9QCfQpFL
SAJKUYknvv4IJDUyHjQc61k=
=zGdJ
-----END PGP SIGNATURE-----
2005-07-04 15:42:26 -08:00
Bryan O'Sullivan
07e1ed88bb Handle unrecognised options correctly.
# HG changeset patch
# User Bryan O'Sullivan <bos@serpentine.com>
# Node ID 837a023781a0228e5791e8e278129d2d54d13f99
# Parent  4309b0a5a6010dd2e5811b77d2bc29a51acf290f
Handle unrecognised options correctly.
2005-07-04 12:39:35 -08:00
thananck@yahoo.com
2c19d0663d open .hgtags as binary
# HG changeset patch
# User thananck@yahoo.com
# Node ID 2bd20bb06f817796d76b8e126f4a685426c4faf4
# Parent  7a240687674e6cf5a8dfd45973d7e3978b89af79
open .hgtags as binary

The '.hgtags' file, in tag command, is opened as binary for interoperability with the other OS
2005-07-04 12:39:21 -08:00
maf46@burn.cl.cam.ac.uk
7b2a775c50 Fix zombie files in merge
# HG changeset patch
# User maf46@burn.cl.cam.ac.uk
# Node ID 57667c9b93a5a743e4629d15a0e6bd76699130c3
# Parent  4309b0a5a6010dd2e5811b77d2bc29a51acf290f

Fix zombie files in merge

Keir Fraser observed the following:

> I made a small test case that illustrates the bug in merging changesets
> with 'hg remove's in them:
>
> 1. Create a repository A containing files foo & bar.
> 2. Create clone called B.
> 3. A removes file bar, and commits this removal.
> 4. B edits file foo, and commits this edit.
>
> Now, if B:
>   # hg pull ../A; hg update -m; hg commit
> Then bar remains deleted.
>
> If A:
>   # hg pull ../B; hg update -m; hg commit
> Then bar is resurrected!
>
> It looks as though, when you merge across a branch, any deletions in
> your own branch are forgotten.
> ...
> Fixing this is a must, as zombie files are a real pain. :-)

Keir later patched our local copy of hg as shown below, which fixes
the problem.  I've also enclosed a test which captures the test Keir
outlined...

Files deleted on a branch should not automatically reappear in a merge

Patch notes:
 1. The first chunk does not change behaviour, but cleans up the code
    to more closely match check of 'force' in the second chunk. I
    think it makes the code clearer.
 2. The second chunk fixes two bugs --
    i.  If we choose to keep a remotely-changed locally-deleted file,
        then we need to 'get' that file. If we choose to delete it
        then no action need be taken (it is already deleted in the
        working manifest). Without this fix, choosing to delete would
        get a Python traceback.
    ii. The test for whether the file was remotely-created is
        insufficient. It is only true if f is not in the common
        ancestor. Otherwise the file was deleted locally, and should
        remain deleted. (this is the most important fix!)


Index: hg/tests/test-merge6
===================================================================
2005-07-04 12:38:34 -08:00
thananck@yahoo.com
2f8cac900d Output file of 'export' is opened as binary (other OS)
# HG changeset patch
# User thananck@yahoo.com
# Node ID 7a240687674e6cf5a8dfd45973d7e3978b89af79
# Parent  4309b0a5a6010dd2e5811b77d2bc29a51acf290f
Output file of 'export' is opened as binary (other OS)
2005-07-04 12:22:21 -08:00
Matt Mackall
74572c09e6 Stop patch description import at diff -r
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Stop patch description import at diff -r

manifest hash: cc269f69c26ad4fba1fdaeefe2dc8191a0669fe0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCyZmyywK+sNU5EO8RAkODAJ9d/JYpBOZiOcQxlz0n2VtIPtK/IgCgl2Lj
caGbq4yn4RxzBQqqIoQzOTQ=
=9fHy
-----END PGP SIGNATURE-----
2005-07-04 12:18:58 -08:00
Bryan O'Sullivan
920a086a80 Demand-load most modules in the commands and ui modules.
# HG changeset patch
# User Bryan O'Sullivan <bos@serpentine.com>
# Node ID 059c6e42fc4221816e26a72bef8cf780891989ca
# Parent  4309b0a5a6010dd2e5811b77d2bc29a51acf290f
Demand-load most modules in the commands and ui modules.

This improves response times for a number of simple commands, as the
Python interpreter doesn't end up loading modules that it never uses.

There's less benefit to demand-loading in other modules.
2005-07-04 12:16:27 -08:00
Alecs King
943d295ac7 On Sat, Jul 02, 2005 at 02:11:34PM -0700, Matt Mackall wrote:
# HG changeset patch
# User Alecs King <alecsk@gmail.com>

On Sat, Jul 02, 2005 at 02:11:34PM -0700, Matt Mackall wrote:
> On Sun, Jul 03, 2005 at 12:49:27AM +0800, Alecs King wrote:
> > Hg is really very nice.  The only feature i miss from git is the
> > whatchanged -p, which shows a diff along with a changeset.
> > python before, i just dig into the mercurial/commands.py a while and
> > see what diff(), dodiff(), export(), show_changeset(), log() would
> > normally do.  There might be one thing or two missed or wrong.  But here
> > it is: a '-d' option to 'hg log' showing the diff info.  You can use 'hg
> > log -d' to show the whole history with the diff or 'hg log -d <file>' to
> > show that info of a particular file.  And also works with the '-r'
> > option.
>
> Let's use -p. We're going to be combining the global and per command
> switch namespace shortly and the global -p will disappear.

Okay. '-d' changed to '-p'. Just like 'whatchanged -p', now we have
'hg log -p'.

> Also, the argument list for show_changeset is getting a bit unwieldy.

This time i remain show_changeset untouched at all.  Only changed some
bits of log().
2005-07-04 12:15:44 -08:00
shaleh@speakeasy.net
6e0d7d452c * clean up error handling when user requests to use a non file object
# HG changeset patch
# User shaleh@speakeasy.net
# Node ID 1ae21732349f5b6dba2941609a044d9c365a6fb2
# Parent  d3df6f5c87d045ba97457269261c35c30b04524b
* clean up error handling when user requests to use a non file object
  - use os.path.exists() to verify the item exists
  - use os.path.isfile() to check whether the item is a file or not

diff -r d3df6f5c87d0 -r 1ae21732349f mercurial/hg.py
2005-07-04 11:20:20 -08:00
shaleh@speakeasy.net
2c86300941 check export options for changeset before running
# HG changeset patch
# User shaleh@speakeasy.net
# Node ID 0cc64f4312540b2081c76dc589cc825d734676d8
# Parent  f7bfe827ea381afc89f486b2d93d7f4fe86de04d
check export options for changeset before running

diff -r f7bfe827ea38 -r 0cc64f431254 mercurial/commands.py
2005-07-04 11:06:01 -08:00
Matt Mackall
b1602d40de [PATCH] hg tag: local tag support in file .hg/localtags
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] hg tag: local tag support in file .hg/localtags

From: Radoslaw Szkodzinski <astralstorm@gorzow.mm.pl>

Support local tags in .hg/localtags

Also minor cleanups in related functions

manifest hash: 553b2e896fed3c9055ed18482ce15cfaa4fc41ce
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCyYdJywK+sNU5EO8RAhohAKC2I3U44EXi+k4ofo5AWHBOg+94bgCfcbzs
VQ2yWkPPHZycjtswOBmepa8=
=v5AX
-----END PGP SIGNATURE-----
2005-07-04 11:00:25 -08:00
Matt Mackall
c77de876fa Add username/merge/editor to .hgrc
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Add username/merge/editor to .hgrc

These take priority over the equivalent environment vars
Deprecate HGMERGE, HGUSER, and HGEDITOR in docs
Add ui section to docs
Remove undocumented HG_OPTS
Raise username code out of changelog class
Make tests ignore ~/.hgrc

manifest hash: d127ef02bc5266036b4c77a55319519e91bd475b
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCyM5NywK+sNU5EO8RAuU7AJ9zKk1TFrJXHM04jOOJJeBSp8jlTgCeP+tr
qwGFd+WaNqTepZ0wun5g9Uc=
=QEBu
-----END PGP SIGNATURE-----
2005-07-03 21:51:09 -08:00
mpm@selenic.com
d330200569 [PATCH] Parse and use header data from an hg export'ed changeset
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Parse and use header data from an hg export'ed changeset

From: Andrew Thompson <andrewkt@aktzero.com>

This should make it easier to import changesets that are hg export'ed
from other Mercurial users:

Add a routine to catch the user from an hg export'ed changeset.
Add user to commit call.
Add trap for changelog snippet, which is promoted to the beginning of
the commit text.

manifest hash: cf5b068f4cec411ff8b9fa3db324ab44ed012778
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCyMXAywK+sNU5EO8RAqk5AJ9rC4ZwzcpDfxrNqIBrrTj6eL2mzQCgmZ5O
wSkis2J9Xz2wOZAhjVcxIgQ=
=32D+
-----END PGP SIGNATURE-----
2005-07-03 21:14:40 -08:00
mpm@selenic.com
d0c0c29814 [PATCH] Get "hg serve" to optionally log accesses and errors to files
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Get "hg serve" to optionally log accesses and errors to files

From: Bryan O'Sullivan <bos@serpentine.com>

Get "hg serve" to log accesses and errors to files.

manifest hash: 573ef524d84cc7d2777f5fd982f2ef47f4bcf668
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCyMA5ywK+sNU5EO8RAp1eAJoD6Qqy6XcGInzZKdo0Qp7gLttYzACfRywL
fSGapmCAIaZPoBvoxXTk8Zo=
=ZicU
-----END PGP SIGNATURE-----
2005-07-03 20:51:05 -08:00
mpm@selenic.com
c516e24cd9 Split wrapped demandload line
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Split wrapped demandload line

manifest hash: e562d8b7e2c66c83dfc8a09c503edb1dac0fe997
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCyL/sywK+sNU5EO8RApE9AJwKG7SYhyT3uDteHecQKJPMm+nuAgCglKNp
MDDX+bOSNQMhCyAH83CuzRw=
=MpjC
-----END PGP SIGNATURE-----
2005-07-03 20:49:48 -08:00
mpm@selenic.com
593e1b0cbe [PATCH] Get "hg serve" to print the URL being served
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Get "hg serve" to print the URL being served

From: Bryan O'Sullivan <bos@serpentine.com>

If invoked with verbosity, print the URL at which we are serving.

Useful if you bind to any port with "-p 0", and need to know what port
the server is listening on.

manifest hash: d317225606fbd2ec5819e1f266575b0485dfba79
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCyL9hywK+sNU5EO8RAjFQAJoDBRl5VoGIklxA1PdFGCt8Jb3iMQCeILeD
XAwnnSCy/IQ/MDfYf6z7oWI=
=FNVC
-----END PGP SIGNATURE-----
2005-07-03 20:47:29 -08:00
mpm@selenic.com
bf1b300c82 Add globals to templater/fixup RSS
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Add globals to templater/fixup RSS

This removes a bunch of duplicate header() and footer() bits and makes
url and reponame available to all templates.

Fix up RSS bits to use url
Fix strftime call

manifest hash: 63e616e4c7f517a630d80429336817d64e900b68
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCyLlRywK+sNU5EO8RAj9IAJkBDzMQaOwRmF0q8tRmVRnzHCjShACfSTCj
dbfAWg1crv/mUuRZlWL6Tc4=
=Z331
-----END PGP SIGNATURE-----
2005-07-03 20:21:37 -08:00
mpm@selenic.com
8f2da8b8ee Simplify RSS date generation
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Simplify RSS date generation

manifest hash: 3b1628aaee450c292949f6d079b4a05ccb5ce6ab
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCyLatywK+sNU5EO8RAiLMAKCqYFyzSDCU6Wm34LSWZroAHMqa4QCfSWv6
jh/vvuQS0qmXybm6Ivd7XVY=
=x1Rf
-----END PGP SIGNATURE-----
2005-07-03 20:10:21 -08:00
mpm@selenic.com
f1ebc0d231 [PATCH] Add RSS support to hgweb
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Add RSS support to hgweb

From: Goffredo Baroncelli <kreijack@libero.it>

with the two small patches below, now hgweb can act as feed source.
Two kinds ofobjects can be tracked: the changelong and the files. This
can be useful if anyone would track the changes of a file ( and
because git has it, mercurial have to has ).

To check the changelog the url is
http://127.0.0.1:8000/pippo.pluto?cmd=changelog;style=rss

To check a file ( the mercurial/hgweb.py for examples ) the url is
http://127.0.0.1:8000/?cmd=filelog;file=mercurial/hgweb.py;filenode=0;style=rss

The first patch adds a new filter for the template: the filter is
named rfc822date, and translates the date from the touple format to a
rfc822 style date. The second patch adds the templates needed to
create the rss pages.

Tested with akgregator ( kde ).

[tweaked by mpm:

 add Content-type: text/xml
 add support for URL to header()
 add header with link and content type
 add RSS links on the normal pages]

manifest hash: 170c03d50490d7160097f59abdde1a5073d2ba82
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCyFmLywK+sNU5EO8RApkrAKCYF/vZ3DwdMXPBds2LxGEX8+tK5QCfTeOc
ZhPN8Xjt2cD3wMbNXMcoNSo=
=COlM
-----END PGP SIGNATURE-----
2005-07-03 13:32:59 -08:00
mpm@selenic.com
4acd72ad9f [PATCH 4/5]: cleaning the template parent management in hgweb
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH 4/5]: cleaning the template parent management in hgweb

From: Goffredo Baroncelli <kreijack@libero.it>

Now the patch remove every use of the tag p1/p2/p1rev/p2rev from the
code ( even+the ones not used ), replacing everywhere with the tag
parent ( even where the previous +tag are not use ), so the
information to the templates is still given.

manifest hash: ede1f299e9201fdad2ecf48e63314350acbb047e
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCyEqxywK+sNU5EO8RAjc5AJ9o8AU6/YRuERblO/0kgWwDN4rqQQCgkVj/
UBtzW5x0yD65mK6rb4f+bQk=
=07yG
-----END PGP SIGNATURE-----
2005-07-03 12:29:37 -08:00
mpm@selenic.com
eee2ab41c0 [PATCH] use <arpa/inet.h> instead of <netinet/in.h> for ntohl/htonl
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] use <arpa/inet.h> instead of <netinet/in.h> for ntohl/htonl

From: Jed Davis <jdev@panix.com>

This fixes the Mac OS X build problem; hopefully it won't break any
other OSes, especially since SUSv3 says arpa/inet is the right header.
( http://www.opengroup.org/onlinepubs/009695399/functions/ntohl.html )

manifest hash: 2f06ff0cffefdb35e794131afcd1f34f9fdfa5cf
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCyEoFywK+sNU5EO8RAk6WAJ9v/pnr07zUXKM9EBQQGaKSZAlhxACdHrwS
XTLSL6pPGAwaRfExGF2A3DQ=
=Rtv9
-----END PGP SIGNATURE-----
2005-07-03 12:26:45 -08:00
mpm@selenic.com
d56d83961e A bunch of parsing/help updates
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

A bunch of parsing/help updates

more explanation of how to get non-basic commands
shorten names of debug functions and add docstrings
add undo long docstring
promote anotate, export, and revert
make the global opts array global
refactor parsing
kill two unused arguments to fancyopts
update test-help

manifest hash: 459ae2273aaf54f71b4576677a681dc53ab2908c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCyEDhywK+sNU5EO8RAr0DAJ9LTu8Fc2quLRtuwLPTQzWqlOJWKwCbBpZk
pnMkYnshsutVYljcil1P46I=
=Sleg
-----END PGP SIGNATURE-----
2005-07-03 11:47:45 -08:00
mpm@selenic.com
89f9d08d36 Shorten help
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Shorten help

Basic commands are now marked with "^" in the table
only basic commands are show in hg help by default
copyright banner not displayed with help by default

manifest hash: 7337678588354ca669a3b13d1fbb0ad893563947
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCx9LNywK+sNU5EO8RAokCAJ9ZK2sGEto9RLyukFX+n0nzHRoB9QCfU84I
e+Evc2g91kSS92FPrIC+Hnw=
=yUmt
-----END PGP SIGNATURE-----
2005-07-03 03:58:05 -08:00
mpm@selenic.com
350922da2c Restructure option handling
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Restructure option handling

This allows global options to appear before or after the command name

Also includes a patch from Andrew Thompson <andrewkt@aktzero.com> to
catch invalid global options.

manifest hash: 2a1285c0caf04ae79dca10cb899d183d84a6f3d4
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCx80cywK+sNU5EO8RApJSAJ9U6ijOIbMDAd4lcahY6dXCTPcsNACeKuNT
iVhCp9IvacwwuHjAFXsLJEQ=
=Q9Qe
-----END PGP SIGNATURE-----
2005-07-03 03:33:48 -08:00
mpm@selenic.com
c6129ace2e options: kill -d for debug
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

options: kill -d for debug

You must now use --debug.
This is a preparatory step for changing the option parsing from:

hg [global-opts] <command> [command-opts]

to

hg [global-opts] <command> [global or command opts]


manifest hash: ec5ecc687340baa109a98b742f1cd8d1f4aadeed
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCx4urywK+sNU5EO8RAl90AJ0fwKU/GwHpJvlTFl5naeJbkceWewCgh4jK
kaTSSodACgPzgbFiid5RL4Y=
=siEe
-----END PGP SIGNATURE-----
2005-07-02 22:54:35 -08:00
mpm@selenic.com
37921ae8a8 hg revert should revert to parent, not to tip
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg revert should revert to parent, not to tip

manifest hash: b6b622d0316f9f7ef60e500fb73844a4b0ad7b69
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCx27VywK+sNU5EO8RAnpHAKC1H3GAPC5wYlgpJG7Z7rWPl+vblQCeKVsz
UCjkaDw40evLbltWoY24xQs=
=dmvS
-----END PGP SIGNATURE-----
2005-07-02 20:51:33 -08:00
mpm@selenic.com
c7c6ca830d [PATCH] hg revert
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] hg revert

From: Bryan O'Sullivan <bos@serpentine.com>

Add revert command.

manifest hash: 0094e6bf421f34bd0492a33f95400b1b095a6bdc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCx2BaywK+sNU5EO8RAigMAKCrvgTtIDuirCsMVlbiTMqaJy3UNgCdEcTL
hMN1X8FZi6sH+NjUdr9sYBg=
=i58L
-----END PGP SIGNATURE-----
2005-07-02 19:49:46 -08:00
mpm@selenic.com
4394004b4a Remove all remaining print statements
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Remove all remaining print statements

Convert most prints to ui.warn or ui.write
Pass a write function into transactions

manifest hash: d1b0af7a344fc087a5acfe3ae87b782c20d043e0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCx1Q3ywK+sNU5EO8RAqSTAJwM5t/m+JOlf2ZXOjuItCSdFiubcwCdFm3G
HoicikSYpTgfCj2pIRfyLjo=
=Loqo
-----END PGP SIGNATURE-----
2005-07-02 18:57:59 -08:00
mpm@selenic.com
6d45cee266 [PATCH] New export patch
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] New export patch

From: Bryan O'Sullivan <bos@serpentine.com>

Modify export command to accept rev ranges and output file spec.

It can now export a range of revisions, and print exported patches
to files whose names are generated using format strings.

manifest hash: e0085c205cdc31a168bcd25c85772ef00d53031d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCx02iywK+sNU5EO8RAtCKAJ0V2K9+i1OGa27KyC5/nq3m+OdvtgCgpnav
3vfEODMzJVOZoJt9wzI1UCg=
=YAdI
-----END PGP SIGNATURE-----
2005-07-02 18:29:54 -08:00
mpm@selenic.com
ecca3da73a Actually warn on pulling from an unrelated repository
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Actually warn on pulling from an unrelated repository

add some comments to findincoming
track the base nodes of the fetch set
report if the base set only contains nullid
add a test case

manifest hash: 3fc038a6041b0967a20503f5ec8876efc038841a
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCx0yLywK+sNU5EO8RAlK6AJ9J/GKPpYSMzTqmguXPWOISJ+zY5gCghd+j
ClLpn0dKZnB46dh0F8zhuuk=
=emNb
-----END PGP SIGNATURE-----
2005-07-02 18:25:15 -08:00
mpm@selenic.com
be3df7015c Remove empty directories on update
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Remove empty directories on update

manifest hash: 113969ec14c75eb9e1013b23cf096f722932b84d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxyVoywK+sNU5EO8RAklKAKCzSUhuFClkHN85qlnDp5iVscZbtgCeJVwx
dqaqG20GjPMWBg0d1ggI/ro=
=o2Uv
-----END PGP SIGNATURE-----
2005-07-02 15:38:16 -08:00
mpm@selenic.com
0d2a510dc1 Remove -p global switch in preparation for combining namespaces
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Remove -p global switch in preparation for combining namespaces

manifest hash: 88b5d17097aababa5c2c9242deba51598b207e3c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxyR/ywK+sNU5EO8RAvPbAJ0XtMA5E1y71hrx9ahBxU3sys98LwCghnz/
xks9tYPTnG8aizwEmg68EGw=
=5MkD
-----END PGP SIGNATURE-----
2005-07-02 15:34:23 -08:00
mpm@selenic.com
cfb252ef59 Handle unknown files better on update
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Handle unknown files better on update

If we spot an unknown file that's identical to one that's in the
update, we get the updated one so that it shows up in the dirstate
properly.

manifest hash: 988aca64f255df67c27d1c6f8694ea098e4ec159
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxyFyywK+sNU5EO8RAjmiAKCTgINXMPB1CxHt0OgHYPucfjCS7QCcDpJJ
VgKqZS54hTAWN3jL2yllUhI=
=iPQD
-----END PGP SIGNATURE-----
2005-07-02 15:21:22 -08:00
mpm@selenic.com
40aeb3c129 More whitespace cleanups
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

More whitespace cleanups

manifest hash: 6721a7b11295e0127386b080fd7a7b516ebced74
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxwm/ywK+sNU5EO8RAnl+AKCg/7ZCW7zIoG0nefksZzgLzgNmFACgnAFz
ZkW0LyZcU/hkFgXoGwo7ktk=
=AW+0
-----END PGP SIGNATURE-----
2005-07-02 13:40:15 -08:00
mpm@selenic.com
0420d357e1 transaction: nullify journal after close()
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

transaction: nullify journal after close()

This keeps us from trying to cleanup in __del__.

bug spotted by K Thananchayan <thananck@yahoo.com>

manifest hash: 1f4c5fa43d2458cdcb6ec0f0a7066b3c3e699f33
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxwQ6ywK+sNU5EO8RAuGhAJ9+BnKILwRCF9EKlPTz2zptiysQ/QCgsB3s
VKIehiStv+ibWQQi15k4mwk=
=nZD1
-----END PGP SIGNATURE-----
2005-07-02 13:16:42 -08:00
mpm@selenic.com
3398c7e9ff [PATCH 5/5]: cleaning the template parent management in hgweb
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH 5/5]: cleaning the template parent management in hgweb

From: Goffredo Baroncelli <kreijack@libero.it>

remove the unused function hgweb.parent()

manifest hash: cd5a8812bc0ecbefb2e9e007f6e2bad12cd9e485
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxv0BywK+sNU5EO8RAtw8AJ4ttjQzg2ZT+17r054Uaidvn34ruwCgtTDt
Gcr7hR1VvMyFC70IWBdXIpE=
=oKEL
-----END PGP SIGNATURE-----
2005-07-02 12:45:53 -08:00
mpm@selenic.com
7376d96b33 [PATCH 3/5]: cleaning the template parent management in hgweb
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH 3/5]: cleaning the template parent management in hgweb

From: Goffredo Baroncelli <kreijack@libero.it>

the filediff template use the old style p1/p2 and p1rev/p2rev
inteface; the patch removes this old stuff, and update the code to the
new style

manifest hash: 29536b6ee71f03a48bceb7336040070ecd0d2b9e
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxvplywK+sNU5EO8RApW4AKCrTLHofr8jELtvNRpoNJHc0sjEfgCfaY2q
/H96T6BMMXA4VLFVxzOBHCo=
=u4El
-----END PGP SIGNATURE-----
2005-07-02 12:34:45 -08:00
mpm@selenic.com
5c93c1becd [PATCH 2/5]: cleaning the template parent management in hgweb
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH 2/5]: cleaning the template parent management in hgweb

From: Goffredo Baroncelli <kreijack@libero.it>

hgweb: rename #parent1# and #parent2# to #parent# in the template managment

manifest hash: c7da29f029a1c875127989bb6635007a90f8f59c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxvmkywK+sNU5EO8RAnREAKCXuVAU054xkYsfQLug3y/u4tpGxQCfdnKA
QkX42FSUBN1EwFyzrzC6vs0=
=o8VK
-----END PGP SIGNATURE-----
2005-07-02 12:31:32 -08:00
mpm@selenic.com
c67b89b408 [PATCH 1/5]: cleaning the template parent management in hgweb
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH 1/5]: cleaning the template parent management in hgweb

From: Goffredo Baroncelli <kreijack@libero.it>

the template pages contain two entry named #parent1# and #parent2#;
this is no +good because with the template system implemented in hgweb
both the functions can be replaced with only one entry named
"#parent#". The code in hgweb will replace this tag with the
appropriate number of parents (+one, two... or more if and when will
be used ).

The first two patch perform this change in two step:
1) change the code to manage only one entry ( #parent1# )
2) remove any reference to #parent2#, and change both the code and the
   templates to rename #parent1# in #parent2#

the last three patchs are clean-up.

The patch are five

- - patch #1:
- - clean the code in order to ignore #parent2# and use only #parent1#

hgweb: chanage the parent1/parent2 code managment

manifest hash: 6ba707904edf176c7269f2d9b80502902e6934c6
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxvivywK+sNU5EO8RAkotAJ4vbR0KE+Jem20rQbaJxy8NRFeyJgCdHy2M
hxmeD9erv17BrSKLGd5QAQI=
=Or/F
-----END PGP SIGNATURE-----
2005-07-02 12:27:27 -08:00
mpm@selenic.com
6b7d3a80e3 [PATCH] Add tags to hgweb
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Add tags to hgweb

From: Goffredo Baroncelli <kreijack@libero.it>

manifest hash: 3a59c363799c974b042dbb55f943d830feb1b34f
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxcfHywK+sNU5EO8RAgEKAJ40SRMOyBOkbS8QU2MIBUzBnhu5AwCbBDjR
M+gaWyqzqOBzO1r+9zpb37k=
=l1pL
-----END PGP SIGNATURE-----
2005-07-01 14:46:31 -08:00
mpm@selenic.com
6c1bdb9b2f repo.changes: fix duplicate changes
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

repo.changes: fix duplicate changes

We need to discard the changed and added lists from dirstate.changes
before adding to them when comparing manifests. Otherwise something
that changed from rev->parent->working dir will appear twice.

Bug spotted by Goffredo Baroncelli <kreijack@libero.it>

manifest hash: 64c335e2fe6df6d1ce29d0903f16821c7566768f
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxcT3ywK+sNU5EO8RAivLAJ4gqbWfMnt+BdyGac/ZGduy2KbNegCgncPV
D4ay6Qw9sIodEPjRebvk3GE=
=AZd2
-----END PGP SIGNATURE-----
2005-07-01 14:34:31 -08:00
mpm@selenic.com
3f8a95f419 [PATCH] Make ui.warn write to stderr
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Make ui.warn write to stderr

From: Bryan O'Sullivan <bos@serpentine.com>

> Someone is probably using ui.write instead of ui.warn.

Actually, ui.warn uses ui.write.  So hg never prints to stderr right
now.  Here's a patch to fix that.

[mpm: add sys.stdout.flush()]

manifest hash: c09c645a5985b640a7ad884afb0eeb11fcffbb19
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxcEaywK+sNU5EO8RAhWUAJ9vVteAodKC9zIhIWUuPqVl2d915QCePp5S
asuv62w4Zv+o0gB3SoucYdQ=
=NYrs
-----END PGP SIGNATURE-----
2005-07-01 14:18:02 -08:00
mpm@selenic.com
dd80a7c8ce hg clone: only use the absolute path for .hg/hgrc
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg clone: only use the absolute path for .hg/hgrc

manifest hash: 7fb6a265249a3c910c0321eb1efc61c38429ac91
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxZ5mywK+sNU5EO8RApIwAJwKdex+GwoflS8vKY9h7qA1F4/Z8wCgjkWH
VsKsuPsM97sluArdDZLZsbs=
=0g6X
-----END PGP SIGNATURE-----
2005-07-01 11:49:58 -08:00
mpm@selenic.com
af937ff86a Fix dodiff/changes
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix dodiff/changes

dodiff was failing to pass both nodes to changes
changes was comparing things backwards, resulting in added/deleted confusion
  in dodiff
changes was deleting things from cached manifests, use copy()
changes now sorts output lists

manifest hash: 6ad972b0895b9d855e246efef49c2ebd943946b3
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxZhZywK+sNU5EO8RApZWAJ9mYv1zc7IjXPIMwbVsfroQs8jfBACgn7R7
rTqLTTyIkM1OpL/ebnMtCOY=
=VcIr
-----END PGP SIGNATURE-----
2005-07-01 11:24:09 -08:00
mpm@selenic.com
398e6f24b7 fancyopts: drop unneeded import
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

fancyopts: drop unneeded import

manifest hash: 09729db8a301510f021fd84a9e82a16ea3ccc67b
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxZegywK+sNU5EO8RAnJwAKCn8kw2VzLc1NgObPFyYI1NxtBJSACgk1v4
d041JB9E0PybyftBFV55Of0=
=Cp7N
-----END PGP SIGNATURE-----
2005-07-01 11:21:04 -08:00
mpm@selenic.com
dc38274672 [PATCH] hg clone stored path fix
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] hg clone stored path fix

there is a small problem with hg version bbdec6f875a4+20050701. when i
clone a repository (on my local system), the path of "parent" repo
stored in the clone repo is not correct.

here is more details -- i clone a repo named "xen-today" with:

hg clone xen-today/  test4

then file "test4/.hg/hgrc" contains:

[paths]
default = /home/aq/projects/hg-xen/xen-today

Signed-off-by: Nguyen Anh Quynh <aquynh@gmail.com>

manifest hash: 6ec2f059907fd5544e40c9e78284271d52eeb23f
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxXeyywK+sNU5EO8RAru1AKCVeqGqLrbLn8Zonr683jNlVx+FoACdHoll
B2+uEV33zpxWUj7fcntYJVk=
=SB49
-----END PGP SIGNATURE-----
2005-07-01 09:04:50 -08:00
mpm@selenic.com
b292364b4f transaction: __del__ should do nothing if the journal already exists
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

transaction: __del__ should do nothing if the journal already exists

manifest hash: c85f747ca762b7c446d306cbd7a20f8e566557fb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxXbTywK+sNU5EO8RAvjsAKCcTSzN9OjtoAdaZgtjDs9380ia7ACfcXsx
FcNESqr4nX9b97WTGszJs48=
=C2sL
-----END PGP SIGNATURE-----
2005-07-01 09:01:07 -08:00
mpm@selenic.com
ace13bb9eb recover: the journal is named 'journal'
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

recover: the journal is named 'journal'

spotted by K Thananchayan <thananck@yahoo.com>

manifest hash: a2ecfedb3d58011cdf5ef7741ff61aba15aa5885
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxXVbywK+sNU5EO8RAmiBAKCgULQVAZ42xuPRyzb3Rrk794LtaACgoLdF
TNtgK/MqF6+EjWNJ5mm2geE=
=m5U3
-----END PGP SIGNATURE-----
2005-07-01 08:54:52 -08:00
mpm@selenic.com
24ce1f4da4 Move dirstate.uniq to util.unique
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Move dirstate.uniq to util.unique

manifest hash: 8ac613c30a4471f14ae52f14ed0839d66eeaebb7
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxQAqywK+sNU5EO8RAsTiAJ9E9/cALe+W8ojtfVdiXXre5dB/9gCeOgxr
mRnVw/WDplkATW5450Pgsug=
=xSfl
-----END PGP SIGNATURE-----
2005-07-01 00:34:50 -08:00
mpm@selenic.com
0bbf366cd3 Unbreak dirstate debug commands
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Unbreak dirstate debug commands

manifest hash: 0a4081443c954d278062dbfbc205119eab350191
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxQAJywK+sNU5EO8RAoIvAJ4wYqOWdVtzEL0BClN0+pLNghyS0ACggwmG
05MpMLTY6+VSueiHMwre+UE=
=zo+4
-----END PGP SIGNATURE-----
2005-07-01 00:34:17 -08:00
mpm@selenic.com
494546a156 Fix some linewrapping
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix some linewrapping

manifest hash: 3be515e65adeb9652e646059fb6dc8d23b0a7a72
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxP0dywK+sNU5EO8RAoSCAJ9kOtNnkesCD/QplxujNJxvb8JJowCeJb0Q
q58TYLTbZ8wnuFwagBABVds=
=CN45
-----END PGP SIGNATURE-----
2005-07-01 00:21:49 -08:00
mpm@selenic.com
5a0ac83fc1 Merge with TAH
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Merge with TAH

manifest hash: b8ea5be49794773eeb6b8beb712a7c1bd9ed1e9b
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxPqMywK+sNU5EO8RAn62AJ9nmqCKGck8T4E90V+jljRV56hcHwCff0Co
jTfrJT1oJrGRgd6VE/B4hKc=
=8nW7
-----END PGP SIGNATURE-----
2005-07-01 00:10:52 -08:00
Thomas Arendsen Hein
cadb8483cb Allow specifying revisions in 'hg log' like with 'hg diff'.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Allow specifying revisions in 'hg log' like with 'hg diff'.

manifest hash: 62d48dbaa0213b36f08dc15bc3b1a1f35ecd89f0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCxPbeW7P1GVgWeRoRApOgAJsFYCQ8EEpYDQz8t53bRXfrP/MXwwCfWDV5
dLv6zwG6/I++SyChFkTPfAY=
=cg0V
-----END PGP SIGNATURE-----
2005-07-01 08:55:10 +01:00
mpm@selenic.com
68e36bb922 [PATCH] bdiff/mpatch under MSVC
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] bdiff/mpatch under MSVC

From: K Thananchayan <thananck@yahoo.com>

MSVC (6.0) environment does not have 'stdint.h' and does not provide
`inline' qualifier. The following patch is needed to make mecurial
installable under MSVC.

manifest hash: a5b64235acced16cb451faa698922559fec4e573
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxPapywK+sNU5EO8RAmRnAKCt9cOASaIsYB6kNUDSIStR1DmY4gCgnXlL
Jf0nMmGEkoyXtB0eV+fLzJU=
=fKD5
-----END PGP SIGNATURE-----
2005-06-30 23:54:17 -08:00
mpm@selenic.com
a8560099ac [PATCH] Catch OSError usefully
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Catch OSError usefully

From: Bryan O'Sullivan <bos@serpentine.com>

This is a rewrite of an earlier clone cleanup patch. Catches OSError
properly.

manifest hash: b1faf01867195a992a9ada0edb2095f85ab3e68f
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxPSnywK+sNU5EO8RAmX4AJ9KG8MFZc7B79ZW22Qd7aQ4KyxUHwCgnkJz
Mj0FkpW+uccoSqKc2pxxv5k=
=LW+l
-----END PGP SIGNATURE-----
2005-06-30 23:45:43 -08:00
mpm@selenic.com
916122bc8c Fix braindamage in repo.changes
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix braindamage in repo.changes

manifest hash: d34a5d36fde0ecb444ea3a5b156bea0bff51554d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxPRxywK+sNU5EO8RAh/vAJ0buHjZ7w4Y2I6l9FnHl0prmTURrgCbBqOU
cJ6wUXXPaRmQJS4ECFPCZcE=
=WMC4
-----END PGP SIGNATURE-----
2005-06-30 23:44:49 -08:00
mpm@selenic.com
997f2e74be Merge with TAH
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Merge with TAH

manifest hash: 1742d7ba2093dc643b57e45167cb2d794212cbb9
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxPCQywK+sNU5EO8RAkr0AJ9qut/31lCLQ/xY3FWaF3c21RhS7wCfW1eV
3WexPDsJldMAr3V5vc9eowA=
=pJYu
-----END PGP SIGNATURE-----
2005-06-30 23:28:16 -08:00
mpm@selenic.com
04bb5e57f0 Minor hgweb fixup for new diff code
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Minor hgweb fixup for new diff code

manifest hash: a80a817fa1511c6ea76f07b2e03691539c19de55
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxO7lywK+sNU5EO8RArAkAJ49Piw1lKwhno5XtTdE0J2B3KIeJQCgpeZW
JbFuy/zzo2e45xu6Uez8CMw=
=sQOB
-----END PGP SIGNATURE-----
2005-06-30 23:21:09 -08:00
mpm@selenic.com
70952fe5b2 Add multiple keyword search to hgweb
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Add multiple keyword search to hgweb

People kept pestering me about this one. Now it's done.

If you type a tag/id/rev in the search box, it takes you to that entry
in the changelog.

If you type some other random keywords, it does a case-insensitive
search through the history and returns the most recent N items.

It's not super-fast, but it's serviceable.

manifest hash: e8fa980dee92cf78c04051d3028da9b07a45f3de
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxO6JywK+sNU5EO8RArAwAKCq+9qO/OL0mQxa1J7C77Z6AcZoWgCfbiDC
AZ5KllldwBtdRRREn7HH6go=
=sIy0
-----END PGP SIGNATURE-----
2005-06-30 23:19:37 -08:00
Thomas Arendsen Hein
bd3eea9171 Add an empty line after description in verbose mode of show_changeset.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Add an empty line after description in verbose mode of show_changeset.
This makes it a little bit easier to see where a new changeset starts.

manifest hash: dd0dc3a135ca2fabed03b86116863c93a451670d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCxOVgW7P1GVgWeRoRAjtdAJ9B/ECd/Rhws2Bd+IcwRyqcYEN0ugCfbug2
Uhy2yUhV+mlrqFkoNBkcOmM=
=ttyp
-----END PGP SIGNATURE-----
2005-07-01 07:40:32 +01:00
mpm@selenic.com
d78c234443 Propagate file list through dodiff
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Propagate file list through dodiff

This speeds up operations like 'hg diff Makefile'. Previously it would
walk the entire directory tree looking for changes. Now it will only
stat Makefile. Further, if Makefile appears untouched, it will skip
reading the manifest.

manifest hash: ab22a70a5511ed2d7a647f2cd15d129a88dccabf
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxNRyywK+sNU5EO8RAgb6AKC2TzWmRjNsWq0Q9Pa+ppCZ6Y+pdwCfdHUA
UHu024/2Wt6C6WZ5vcWfPbo=
=E35L
-----END PGP SIGNATURE-----
2005-06-30 21:28:18 -08:00
mpm@selenic.com
bb74daf6a1 Refactor diffrevs/diffdir into changes
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Refactor diffrevs/diffdir into changes

Add dirstate.changes to replace most of diffdir
Add localrepository.changes to replace diffrevs/diffdir

This code can now efficiently check for changes in single files, and
often without consulting the manifest. This should eventually make 'hg
diff Makefile' in a large project much faster.

This also fixes a bug where 'hg diff -r tip' failed to account for
files that had been added but not committed yet.

manifest hash: 20fde5d4b4cee49a76bcfe50f2dacf58b1f2258b
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxMxpywK+sNU5EO8RAhzOAJ9VLQJoC+hiRYQtTSPbDhXBEJfQZwCgpDx9
GAwQ9jZHNsgXckBfXNCkJV8=
=hMuc
-----END PGP SIGNATURE-----
2005-06-30 20:54:01 -08:00
Thomas Arendsen Hein
3665eda59f Merge with upstream
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Merge with upstream

manifest hash: 78c3657547aa957be685a4d54462570eb4b5e181
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCxFpbW7P1GVgWeRoRAqWGAKCkLQPbZpdLCBWKD+pecMtTRiu9EACfbuz4
dtHuM/86dYZ6CRqQHohJVjk=
=v+Vv
-----END PGP SIGNATURE-----
2005-06-30 21:47:23 +01:00
mpm@selenic.com
5ef0b809a3 Deal with failed clone/transaction interaction
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Deal with failed clone/transaction interaction

> What is happening is that something in the transaction machinery is
> causing the directory to be completely recreated.

The transaction gets rolled back by its destructor. This is critical
so it happens whenever an exception occurs that unwinds the stack.

Unfortunately, what's happening with clone is we're trying to delete
the directory during exception propagation. And a reference to the
transaction is held in the exception backtrace stack frames so it
still exists until the exception is completely resolved.

So there's no way to do the directory delete inside the exception
handling cleanly.

But we can handle it similarly to the transaction itself: use an
object with a destructor.

manifest hash: fc38550a20d64d08333f256bbedc312493c1390b
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxDT2ywK+sNU5EO8RAjikAJ0Tej56rAutxQDfYzVbFGtT1sEC5ACgmVds
/fwdQyHn+FwshugqXLemUaM=
=3f78
-----END PGP SIGNATURE-----
2005-06-30 10:07:50 -08:00
mpm@selenic.com
dd1709b3e6 [PATCH] Handle 'name firstname <email@server>' correctly in annotate
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Handle 'name firstname <email@server>' correctly in annotate

- From ed.gomez@free.fr

manifest hash: 8af8d6b2afd8caf8e48e5150b91410dea730d41a
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxCpzywK+sNU5EO8RAj8tAJ9lIXS7tlgonp6B810QahCZM0NsigCdH8xQ
cRhEGvrKDrTgc4AY9guylDU=
=+sWJ
-----END PGP SIGNATURE-----
2005-06-30 09:22:59 -08:00
mpm@selenic.com
a9e28d9090 [PATCH] Generate correctly XML entities for obfuscated user
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Generate correctly XML entities for obfuscated user

From: Edouard Gomez <ed.gomez@free.fr>

manifest hash: 8e4e2d087ff60020c948d34e724fca99c84a9115
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxCpDywK+sNU5EO8RAs6yAKCy97yrMO6VYlkRIF3diLoGClZSOgCfekPE
ttPsLRoDTH12Tv6omFg6uUA=
=8ZBC
-----END PGP SIGNATURE-----
2005-06-30 09:22:11 -08:00
mpm@selenic.com
c1cb05f697 clone: abort on pre-existing destination directory
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

clone: abort on pre-existing destination directory

manifest hash: c1c205ea212ed73521cebe0524da364f40ebf387
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxCIjywK+sNU5EO8RArteAKCM7oPK+htBvhz7n0Eo//A1BuGRQwCfY1xL
7denU7OqsKUf9UKKkhbWLB8=
=rhfi
-----END PGP SIGNATURE-----
2005-06-30 08:47:31 -08:00
mpm@selenic.com
c6e600652f Hashing speed-up
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hashing speed-up

- From Chris Mason

manifest hash: c10091676647015b907a3ddce4dc629cb485de36
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCxCFmywK+sNU5EO8RAjiEAJ98eBaomWIUtT7DAm5dCbcAOe1I7gCdFl/E
AvepXnn+tLC2Grk9et2sL3M=
=spZz
-----END PGP SIGNATURE-----
2005-06-30 08:44:22 -08:00
Thomas Arendsen Hein
ad6e7b4361 Added support for hg:// and old-http:// to 'hg clone'.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Added support for hg:// and old-http:// to 'hg clone'.

manifest hash: 4292cc7927afbec5663b5fff4317a238fb65cdec
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCw44lW7P1GVgWeRoRArWzAJ9AjiCF7poldqFxshV+lAyHZKy2PACgpCt1
KTdmdp+AL6m953NnYc5QNbo=
=BWbr
-----END PGP SIGNATURE-----
2005-06-30 07:16:05 +01:00
mpm@selenic.com
fc6637cb83 Attempt to fix negative revision count from pull
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Attempt to fix negative revision count from pull

manifest hash: 4e8881037d545f4bf76d2c1b06f685b2467cd3a8
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCw4yUywK+sNU5EO8RApUkAKCCYTpBG3Wpu15aVeG0iBWE612S5wCgnSBi
PEfXF4NI2O9AqWijOMBq6aM=
=AyGw
-----END PGP SIGNATURE-----
2005-06-29 22:09:24 -08:00
mpm@selenic.com
2091fea6f0 Fix clone bug wth trailing slash
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix clone bug wth trailing slash

manifest hash: ca78730f00063c57b70db69cf9ecfc3f83c02e84
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCw4lNywK+sNU5EO8RApq+AJ9YTl92lLnk9UMvWWSeEue/siS6pACgsg68
FLAc0OVzeULP7ORKRHCtpQI=
=IL3R
-----END PGP SIGNATURE-----
2005-06-29 21:55:25 -08:00
mpm@selenic.com
635030f69d [PATCH] Add --traceback option
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Add --traceback option

From: Bryan O'Sullivan <bos@serpentine.com>

Add --traceback option, to force printing tracebacks on top-level exceptions.


manifest hash: 4347f42205b8b23835424b4e4100860ff2834b95
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwx7GywK+sNU5EO8RAgS8AKCmJAvTMGNJYYIW9eTI3RAqJZMfYACfS/rl
Hn1Ukml5D1fdSvyehH2G080=
=eLJO
-----END PGP SIGNATURE-----
2005-06-29 14:20:54 -08:00
mpm@selenic.com
d7cb4634bd show connect message on push
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

show connect message on push

manifest hash: 3edbff798a71719c91890b9ab5fda5c2bd64f256
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwx10ywK+sNU5EO8RAv0uAJsGMalwZ2aEElzZ8io5zlM/DjwqJACglVLb
7KXzzHdXfKGXOr00gUV4mvc=
=sfeK
-----END PGP SIGNATURE-----
2005-06-29 14:15:16 -08:00
mpm@selenic.com
92b8cf377d [PATCH] Perform clone in place
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Perform clone in place

From: Bryan O'Sullivan <bos@serpentine.com>

This is a rewrite of one of my earlier clone cleanup patches.  This
patch only does one thing - make clone operate in place.  It depends on
safe-clone.patch.

Don't have clone use os.chdir.  Instead, do everything in place.

manifest hash: cf7cf24f8fa1120b609b0beee4281bc236e484c0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwxxJywK+sNU5EO8RAjnlAJ44B1jhFvuYF3uNDH6qWDKaqgURuwCdFeFo
Y9tjLx6TLCBWT146h21YEGA=
=E1n/
-----END PGP SIGNATURE-----
2005-06-29 14:10:17 -08:00
mpm@selenic.com
eeb242a6fb [PATCH] Force "hg clone" to always create a new directory
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Force "hg clone" to always create a new directory

From: Bryan O'Sullivan <bos@serpentine.com>

I just screwed myself by typing "hg clone foo" without specifying a
destination directory, and after I was done mopping up the mess,
concluded that this is a dangerous mode of operation that has no
practical value.

I've thus modified the clone command so that it always creates a
destination directory.  If none is specified, the destination is taken
as the basename of the source.

hg clone foo
        -> error, because foo already exists
hg clone http://www.selenic.com/hg
        -> new repo, named hg
hg clone ../bar
        -> new repo, named bar

manifest hash: f21ed8f805a60c1326d99220772e1574b0870d6c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwxsIywK+sNU5EO8RAgooAKC3IL6vKyADb9s2qqqi4GMw2Z7asACbBtE/
TvPgwGtIiB2GC+N+V7r1VpI=
=uTcK
-----END PGP SIGNATURE-----
2005-06-29 14:04:56 -08:00
mpm@selenic.com
986879ff2d Fix empty pull bug that appeared this morning
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix empty pull bug that appeared this morning

manifest hash: 53e4709a701f03d9905933c80758ba13caf3998c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwxdJywK+sNU5EO8RAuoPAJ4tb9fd1Emm21/HLAEpyntaW2uoHQCfcc8z
J8LB4mVG3gTsvRtiLZBVV/g=
=+2C3
-----END PGP SIGNATURE-----
2005-06-29 13:48:57 -08:00
mpm@selenic.com
0fc691de8e [PATCH] Fix use of util.CommandError
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Fix use of util.CommandError

From: Bryan O'Sullivan <bos@serpentine.com>

Fix CommandError so error messages don't say "abort: abort: ...".

manifest hash: 2aea4c8043d321882dcdf846a42a55403ce1086f
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwvOZywK+sNU5EO8RAqF/AJ9IIr6JPPUc15tb7w4lnI7yMFxSmgCfQUYn
OX7Uz7G3dJNRIjAxJtGwCLo=
=xj/W
-----END PGP SIGNATURE-----
2005-06-29 11:16:41 -08:00
mpm@selenic.com
6130458f13 Fix failed clone in current directory
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix failed clone in current directory

Spotted by Edouard Gomez.

manifest hash: 83fd3bb8056c531f2d696f00c5bd6a61274783eb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwu0jywK+sNU5EO8RAqPiAJ9tCL5PhHoGMTbaQzpt5dl+EkCH9QCgh4WL
EOFeD2th0Ucs7Npu3t+VUB0=
=p/Ig
-----END PGP SIGNATURE-----
2005-06-29 10:49:07 -08:00
mpm@selenic.com
ff8f6ad60d Add --repository option
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Add --repository option

From: Goffredo Baroncelli <kreijack@libero.it>

manifest hash: 714316cb69ed5fcd981aa1bdb12de499e8348997
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwuyRywK+sNU5EO8RAmh7AKCtUxqC0KFcMYmoh/voLAbh6BncpwCgrL42
zzSMZAiUg4KEO9BxxlJOcDs=
=eUcM
-----END PGP SIGNATURE-----
2005-06-29 10:46:41 -08:00
mpm@selenic.com
0cdd5f0aa9 Change getchangegroup to findincoming
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Change getchangegroup to findincoming

manifest hash: 46dbdc025ead342f7c70a0051d1c596cfcbb6699
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwuwAywK+sNU5EO8RAoV/AJ9GaoLTKMo2aoycSIZyBt/8r073vQCeK/tO
W1PwSot4HmnmcpR6RVIy9+0=
=PiBt
-----END PGP SIGNATURE-----
2005-06-29 10:44:16 -08:00
mpm@selenic.com
0fb5db6915 Whitespace cleanups
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Whitespace cleanups

manifest hash: ac954bc3a4f034c12638a259ecd65841f5b63c5c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwuubywK+sNU5EO8RAluIAJ98XQpNdZUpSmYKgDmrMRlbL76ZzQCfes0t
rknNUN/PhtyA4bzL646dOz4=
=UyCE
-----END PGP SIGNATURE-----
2005-06-29 10:42:35 -08:00
mpm@selenic.com
1e42f2bba3 change unrelated repository error to a warning
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

change unrelated repository error to a warning

manifest hash: 7c1481639c7e7ba91fd391a9fa6eb17e838f894e
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwZ+xywK+sNU5EO8RAnnjAJ494NZfAdMVP48VegHQ+WeZ05DPogCbBEWC
d3N47FYG87x1CJOh9VzwVCQ=
=lrGp
-----END PGP SIGNATURE-----
2005-06-28 11:06:25 -08:00
mpm@selenic.com
4c6bd72bb6 hg clone: don't try to delete "."
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg clone: don't try to delete "."

manifest hash: 7e7bd5375f7729812b7188b7a53287b3c6049823
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwZvlywK+sNU5EO8RAjn6AKCaBNWdLSNXIDqQZ3vMcN5ie5ZZaQCfaG37
hAN32PbYoQh8UC88AeOKOk4=
=kBOD
-----END PGP SIGNATURE-----
2005-06-28 10:50:13 -08:00
mpm@selenic.com
9c78e40a49 Remove unnecessary deletion in hg clone
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Remove unnecessary deletion in hg clone

manifest hash: 4a750332a8b1fe07b63f77ccede89d6486a478e9
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwZpIywK+sNU5EO8RAq0IAKCsEtjbl9pe25FAkiDZo8+kAW8mpwCdGS7a
JIMPHNUQeb552c4jaPjoyBs=
=Jp3X
-----END PGP SIGNATURE-----
2005-06-28 10:43:20 -08:00
mpm@selenic.com
9397a75d94 Disallow merging of unrelated projects
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Disallow merging of unrelated projects

manifest hash: 40badbca64e1ccfd83fee8cd7bf5099f57b6f8bf
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwZn6ywK+sNU5EO8RAmdeAJ9TAaGSe0nGMdL+Du3AGwm9x28IUgCgpfGG
UunOBkobMVLGdHegnOvQkmQ=
=VwVi
-----END PGP SIGNATURE-----
2005-06-28 10:42:02 -08:00
mpm@selenic.com
a053dfbfab More fiddling with uint32_t includes for extensions
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

More fiddling with uint32_t includes for extensions

manifest hash: 1ad16a0262e9bd2769e32c13c7fd0c7b0cd7dde7
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwS+/ywK+sNU5EO8RAhK1AKCtF/57nKCc1AU+l0sR74kHhY1NCwCfSvQK
QQc5i8abuGkFpU5VUBJt5XQ=
=H+CX
-----END PGP SIGNATURE-----
2005-06-28 03:08:47 -08:00
mpm@selenic.com
4303665bb4 [PATCH] replace history with log
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] replace history with log

From: Radoslaw Szkodzinski <astralstorm@gorzow.mm.pl>

Merge hg history into hg log leaving the first as an alias

(tweaked by mpm: update docs, tests, use existing alias mechanism)

manifest hash: f85001a4373b8b823a6221ba5c506628059d6779
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwSr1ywK+sNU5EO8RAmbAAJ9HlFkf8/qLOAQUtj8CWxGRPEyzVgCgtXwP
SdnAg1a2q4693+TBiOjrimY=
=w9rf
-----END PGP SIGNATURE-----
2005-06-28 02:48:21 -08:00
mpm@selenic.com
1c414eddc0 [PATCH] Harden os.system
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Harden os.system

From: Bryan O'Sullivan <bos@serpentine.com>

Add util.system function.  This is similar to os.system, but will
either succeed (if the process finishes with a zero exit code) or raise
a util.CommandError (if the process exits uncleanly or is killed by
a signal).

Add util.explain_exit function.  This tends to be ubiquitous in code
that calls other processes, and must describe what has gone wrong.

Change some uses of os.system over to util.system.

manifest hash: e3bf4adcac5b915432ec0af00efdbcef86bea4b1
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwSipywK+sNU5EO8RAr0RAJkBDt8XQ7mYQAWNHNgTOVt1eyWU1QCfe1oO
2OwxyWqpbRNACVJHHfZ3/Xw=
=OaRX
-----END PGP SIGNATURE-----
2005-06-28 02:38:33 -08:00
mpm@selenic.com
8d07742680 [PATCH] Add ui.expandpath command
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Add ui.expandpath command

From: Bryan O'Sullivan <bos@serpentine.com>

Add ui.expandpath function.

manifest hash: dd2b9e536b94b453b06604b88ba339d93698b2e0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwSbMywK+sNU5EO8RAibuAJ9jAMqhR3cbTqbPG3g9M8INgFmbvACgjAU2
LpalLI+zhalEUIf1Uw8W5l8=
=fqB8
-----END PGP SIGNATURE-----
2005-06-28 02:30:36 -08:00
mpm@selenic.com
da3a05e37d [PATCH] Fix "no-update" option to clone
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Fix "no-update" option to clone

From: Bryan O'Sullivan <bos@serpentine.com>

Turn "no-update" (invalid Python identifier) into "noupdate".

manifest hash: 1dfb3212b97531437d5a243813896c090a05d95a
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwST1ywK+sNU5EO8RAvGnAJ9/RvohYRxpMTWkK6YCiF6r3U68FACeNRcr
mE/NYJzVbijiLK9TwWm8QgQ=
=w/KV
-----END PGP SIGNATURE-----
2005-06-28 02:22:45 -08:00
mpm@selenic.com
9a1b46a47d Use $USERNAME as a fallback for commit
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Use $USERNAME as a fallback for commit

Suggested by Giuseppe Bilotta <bilotta78@hotpop.com>

manifest hash: 3f86a63aebaf6c30eaa3a2081e1e5f9caa20caa1
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwSPvywK+sNU5EO8RAqpYAKCmwfTfeNGCTqy2wuBs/bmtxMKt1ACeIpRo
/vencPT6Z/WNXW+6p9NlZRY=
=jFZ/
-----END PGP SIGNATURE-----
2005-06-28 02:18:23 -08:00
mpm@selenic.com
a58fa92f5c Fix troubles with clone and exception handling
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix troubles with clone and exception handling

Clone deletes its directory on failure

This was deleting the lockfile out from under the lock object before
it got destroyed

This patch shuts lock up and makes the cleanup code for clone a little
cleaner.

manifest hash: f666fddcf6f3a905020a091f5e9fd2cb5d806cdd
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwSGOywK+sNU5EO8RAkx2AKCIxPczl9YWnuUM+bMQnpVr8kv6uQCeNWld
SUxSB99PGJHhq1LWFaSJJNw=
=Frk/
-----END PGP SIGNATURE-----
2005-06-28 02:08:14 -08:00
mpm@selenic.com
fa23bbfb7e Better messages for rollback and undo
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Better messages for rollback and undo

manifest hash: 22eeb8848b0e07e1f23a896b03c37f7d6f4bd82d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwSBtywK+sNU5EO8RAhNEAJ9MGJxgZjIKegh1TA7++wGbAzkovACgqL3I
k1ii4X5PEWEDcoyOp0VqJn4=
=wzlT
-----END PGP SIGNATURE-----
2005-06-28 02:03:25 -08:00
mpm@selenic.com
68d2510e3c [PATCH] Clean up destination directory if a clone fails.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Clean up destination directory if a clone fails.

From: Bryan O'Sullivan <bos@serpentine.com>

On Mon, 2005-06-27 at 16:27 +0800, Soh Tk-r28629 wrote:

> Hg clone left the dest directory if the source isn't valid.
> I think it should either validate the source before mkdir, or do a
> rmdir to clean it up.

Good suggestion, thanks.  As validating the source in advance isn't
really practical, I opted for the latter.

manifest hash: 1508afddd2402142f9d8b2387652d4cb28ccc1f5
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwRGPywK+sNU5EO8RApBOAJ9Fj22MP3pYJhxWsj8BYbcgWzIOKwCff9yC
lX87RrDKicM1W61lBpQl20w=
=efck
-----END PGP SIGNATURE-----
2005-06-28 00:59:59 -08:00
mpm@selenic.com
255a41b58b Add exception class for repository errors
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Add exception class for repository errors

This gives friendlier errors for repo exceptions

manifest hash: f3bef1ddb0c3911b9866ebdafa1fe72df48c8ecd
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwRCfywK+sNU5EO8RAg7fAJ9PMka8pJCy7mMTqFFJ5aQFemHpxwCfezPR
cZRAXmbWTTI+/WnVFDjpfM0=
=8crk
-----END PGP SIGNATURE-----
2005-06-28 00:55:59 -08:00
mpm@selenic.com
d18e292a59 [PATCH] simplify init
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] simplify init

From: Bryan O'Sullivan <bos@serpentine.com>

Remove source directory option from "hg init".

manifest hash: 2ace7b16c962fb434340b937fbcd494f3098a85f
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwQG/ywK+sNU5EO8RArbCAJ9DG45GepMI0Z9KWXqV8gmEbV1WfwCgotih
LGAkD8iTfOLn7HIPVqt9FWY=
=65uW
-----END PGP SIGNATURE-----
2005-06-27 23:52:31 -08:00
mpm@selenic.com
3208f69a04 Pull from TAH
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Pull from TAH

manifest hash: 08b55e07198b8a4272753895fe3727d9f52ebb75
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwO5YywK+sNU5EO8RArUtAJ9gsYYNbZH22COOz9B7ppwgCDxM8ACfYWcl
n9Dim3Z7qepGUXvRDEeFZ9c=
=JMQx
-----END PGP SIGNATURE-----
2005-06-27 22:29:44 -08:00
mpm@selenic.com
1bbff51e92 Add initial hook support
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Add initial hook support

This adds the basic hook code as well as pre and post-commit hooks.
Argument passing is by environment variable key/value pairs so that
extra data can be passed over time. File lists will generally not be
passed to hooks as these can be extremely long (>1M).

manifest hash: 45cf9bab432782c391bc9c1c048c84cc75d52740
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwOukywK+sNU5EO8RAsVsAJ9QipR2aKRSSvoRNo+3If6JddUDkwCgkZrM
KEmZpUOxhNHqezFVrHDRTjE=
=aedm
-----END PGP SIGNATURE-----
2005-06-27 22:18:12 -08:00
Thomas Arendsen Hein
be488ec695 Make show_changeset show added/deleted files only in debug mode.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Make show_changeset show added/deleted files only in debug mode.
This was necessary due to performance reasons.

manifest hash: 35af5e8ff88a8706406fc8c42251ada79c7c9549
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCwOUkW7P1GVgWeRoRAvB5AKCJ9x/P3XOJVlQnCoh8cblnye+9RgCgkXLW
7Bt8/5yhPnsejYIGUMnppgo=
=DNsf
-----END PGP SIGNATURE-----
2005-06-28 06:50:28 +01:00
mpm@selenic.com
fad4970cee Remove stdint.h from mpatch and bdiff
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Remove stdint.h from mpatch and bdiff

It's only there for ntohl and htonl and should be pulled in by in.h.

manifest hash: 65954290279241ac92c9ce04c21cf1a3c9dd54e0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCwD8KywK+sNU5EO8RAhv2AJ40R/T72XK63IbeEFqMLSRJbRJWdACcDa9r
dOL9XpyYxR09REbAHw0JrlE=
=8wkZ
-----END PGP SIGNATURE-----
2005-06-27 10:01:46 -08:00
Thomas Arendsen Hein
e29a5892e2 Make show_changeset show added and deleted files in verbose mode.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Make show_changeset show added and deleted files in verbose mode.

manifest hash: 189c2da64862f471b75b9d205907bff86c7423a3
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCv4voW7P1GVgWeRoRAlLaAJsHGWEfNMMfDdsnk9/G9w86nf2I2QCgi4Rc
3HgiUFeTPi71I0tH+SV5Gsc=
=/see
-----END PGP SIGNATURE-----
2005-06-27 06:17:28 +01:00
mpm@selenic.com
4fb29605c3 [PATCH] add clone command
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] add clone command

Add clone command. Mark with-source version of "init" as deprecated.

manifest hash: 3c31263474977c3d8303f45f71c44f7b7e10e97e
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCvzhOywK+sNU5EO8RAmh+AJwIlRfX143oxKShgPWF2dbDvCuH3gCbBrAW
isIHptwVRX8pcA0lU638pHo=
=ZoQy
-----END PGP SIGNATURE-----
2005-06-26 15:20:46 -08:00
mpm@selenic.com
4df69565c0 Pull from TAH
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Pull from TAH

manifest hash: 470ea90dd95189a019f4d96016a45db8a297b841
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCvzZzywK+sNU5EO8RAkZhAKCUJKX1vFtkFxV7qFwbuWQj62zcnQCfU687
jxKpBVesIXSOpBO4NbW/RIM=
=hSBe
-----END PGP SIGNATURE-----
2005-06-26 15:12:51 -08:00
mpm@selenic.com
302feb06a6 Minor speed improvements for bdiff
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Minor speed improvements for bdiff

Consolidate the jpos/jlen arrays to improve cache locality.
Do the same for the hash head/length arrays.

manifest hash: e6d9ed36782741b1d6fcce8c2d00155a9540e81d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCvzWxywK+sNU5EO8RAlTMAJ9+yl0dKIeWv4RegeLy7g6wcnoYwgCgk6la
ip6KEAyBb7ktsX14KyZ5+/s=
=utNJ
-----END PGP SIGNATURE-----
2005-06-26 15:09:37 -08:00
Thomas Arendsen Hein
40492559aa Removed some unused variables.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Removed some unused variables.

manifest hash: 89f5eba2fb642276b32d13dc12fe4c72448e47e4
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCvquwW7P1GVgWeRoRAuLCAJ4lzcbSrQT2m+Kqxgktvih5FRlM9wCgmYDh
a8QVhV8JyZBi5BbRNV2RHSo=
=YpXM
-----END PGP SIGNATURE-----
2005-06-26 14:20:48 +01:00
Thomas Arendsen Hein
e85b52767c hg import checking for quiet mode didn't work. Fixed using the ui module.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg import checking for quiet mode didn't work. Fixed using the ui module.

manifest hash: 3418ba604188b5abb2554615aff0ae59f4fee882
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCvqsfW7P1GVgWeRoRAjWVAJ9eNW+GnTJGvXMLxr1uPy5wM40gcQCeP6QO
7qW+m8/YmXLLi+vn2ETyWrM=
=UGui
-----END PGP SIGNATURE-----
2005-06-26 14:18:23 +01:00
Thomas Arendsen Hein
2129d1d1cd Fixed call to ui.warn()
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fixed call to ui.warn()

manifest hash: 3b82298c61822aaa41b4d9b579ec94a968a4b610
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCvqpMW7P1GVgWeRoRAotJAKCKG1BH2RKobak9ebapjViN8cQI1ACgisqU
jghqrq9978lFUA9zjA/N2eE=
=g65B
-----END PGP SIGNATURE-----
2005-06-26 14:14:52 +01:00
Thomas Arendsen Hein
ecc182c8f3 Cleaned up command alias handling in help.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Cleaned up command alias handling in help.

manifest hash: cfff5b739437073beddbc6e1f4c47ca958eeb1b2
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCvqocW7P1GVgWeRoRAkM/AJ9iXHfhyAJH8kL167OiG95EJSsAKwCfWZFt
5S2AiXffxtPLIzxb/evzHZQ=
=ppvs
-----END PGP SIGNATURE-----
2005-06-26 14:14:04 +01:00
Thomas Arendsen Hein
a9e1f4b47e Handle errors in .hgtags or hgrc [tags] section more gracefully.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Handle errors in .hgtags or hgrc [tags] section more gracefully.

manifest hash: 85c62e1bf3ad78b243ee60f43c3c577700a8c96d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCvp6jW7P1GVgWeRoRAo23AKCZRU22IweynNtf9k3q4pEyqEaozACeMIRV
6tNOkr3h6jTiMZ2bJgPeabg=
=+U5s
-----END PGP SIGNATURE-----
2005-06-26 13:25:07 +01:00
Thomas Arendsen Hein
fbe157b4b5 Really _call_ method revlog.count in revlog.lookup()
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Really _call_ method revlog.count in revlog.lookup()
This fixes e.g. 'hg export 398737777' (exists in the mercurial repo).

manifest hash: 9de9ad4c40d0746cb3db346a01c373e3b4aba54a
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCvovbW7P1GVgWeRoRAiyEAJ9gVZZiMGA3YItcWRHeai/9C+dMTgCbBiii
QoFaXQ9wZDds8fVVsvENAYw=
=msWK
-----END PGP SIGNATURE-----
2005-06-26 12:04:59 +01:00
mpm@selenic.com
44ac4156e1 extensions: use stdint.h
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

extensions: use stdint.h

Not sure why I didn't do this the first time around. Hopefully still
builds everywhere.

manifest hash: 965582286a190728f8cc0dfb8e11ee56628a59a5
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCvfRgywK+sNU5EO8RAg9SAJ4/ZVpQZcDY5xovLDTZK2txEegEgwCdF2b+
lzSIP109qq8D+KIdUWsbEPc=
=+0Yy
-----END PGP SIGNATURE-----
2005-06-25 16:18:40 -08:00
mpm@selenic.com
3173ade5df Minor annotate performance tweaks
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Minor annotate performance tweaks

manifest hash: 2edd508182c7b3dfb2e0b9b90baebdd364cb29f0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCvfQeywK+sNU5EO8RAsYSAJ0R8SuWnyQxVgauoaEuezOe3Taq/wCbBnEs
+VG0LNrXnQM9khQyc0+pCeg=
=U5gX
-----END PGP SIGNATURE-----
2005-06-25 16:17:34 -08:00
mpm@selenic.com
db87d5d874 Fix up version module name and command conflict
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix up version module name and command conflict

This unties the command name from the function name

manifest hash: 926d097f75cbb5eb2464bb253e9a89050c6208bd
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCvRLnywK+sNU5EO8RAvryAJ9RU0PLFOXjjtQjs8UVyOC9wde69gCgrV+G
8jYfMyWwvwsmOM7wMblPGqM=
=Acyk
-----END PGP SIGNATURE-----
2005-06-25 00:16:39 -08:00
mpm@selenic.com
5ff41c691c Various node id lookup tweaks
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Various node id lookup tweaks

- - lookup of nullid with lazymap fixed
- - do the Pythonic thing with negative rev numbers (-1 == tip)
- - bound ranges on rev numbers
- - catch exceptions more correctly
- - restrict node id matching to beginning of string on

manifest hash: 15918cb74f41ac4bbf8bf02bc3bb599f24f0b5b8
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCvQzDywK+sNU5EO8RAnKfAJ4vzXnrGmRwOlPqNQFxxrUKchzAzQCcDkbi
g3T3KiiVUckrWpziGq67YUE=
=vrSU
-----END PGP SIGNATURE-----
2005-06-24 23:50:27 -08:00
mpm@selenic.com
92f7e42f97 [PATCH] add "root" command
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] add "root" command

From: Bryan O'Sullivan <bos@serpentine.com>

Add "root" command

Useful for scripting.

manifest hash: a2df76139130ac034e53872f24f21f31b083bc42
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCvQZGywK+sNU5EO8RAtYSAKCKRyuxzcDOTV9q+GY5WZDJ/VZgzwCfXhut
VvGtiSnIqoBeQ/PtPsokMb0=
=gUsq
-----END PGP SIGNATURE-----
2005-06-24 23:22:46 -08:00
mpm@selenic.com
d0abc4682a Add version command
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Add version command

Suggested by Arun Sharma

manifest hash: 7fc056ffe45ee854f00e76916a560fba28c74a91
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCvQW+ywK+sNU5EO8RAqGQAJ91Eysw4tHVpOB7ICeN9hMF/p+lfQCgksmg
TAKr5VNrw2wIZtSKjgQRqiA=
=8w84
-----END PGP SIGNATURE-----
2005-06-24 23:20:30 -08:00
mpm@selenic.com
42d1a50012 Merge from http://moffetthome.net:8012/
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Merge from http://moffetthome.net:8012/

manifest hash: 3a67864af6b0276eabe640274633ca2625dbd4a5
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCvQKkywK+sNU5EO8RArUHAKCSGtpEfJwYGoAIpj4mBDvcPted9wCgnzML
xr8WQ8DdPkJ9DVsLjvsbhJU=
=O7Fd
-----END PGP SIGNATURE-----
2005-06-24 23:07:16 -08:00
mpm@selenic.com
ef9fd5ee6e [PATCH] /dev/null for other OS
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] /dev/null for other OS

From: K Thananchayan <thananck@yahoo.com>

Null device name is platform dependent. Introduce util.nulldev
- - platform dependent constant and use it instead of '/dev/null'

manifest hash: 95a1bfdb712c53ef97aaff73f7f4c87e9299cf59
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCvQCGywK+sNU5EO8RAiRBAKCcXasCCFT2+6wgklkgqIt4l3UwugCeKWii
h/8iRYEw8Rp8B67abiFiwyY=
=L3Mk
-----END PGP SIGNATURE-----
2005-06-24 22:58:14 -08:00
mpm@selenic.com
827f825708 add dirstate debugging commands
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

add dirstate debugging commands

As I've played with various different merges and more recently
rawcommit, I've found the following patch to be very very helpful in
figuring out whether the dirstate is being left in a consistent or
inconsistent state with respect to the current manifest.

I attempted to deduce the invariants that were assumed by the current
code, and then check it in this code.

I may or may not have captured the design intent in this check; if not,
I'd be very happy to hear more clearly what was intended, so that I can
write tests to that expectation.

Anyway, here's the patch. Not sure if it's a good idea to commit it to
the mainline, or just leave it as a debugging aid. I attempted to
package it so that it doesn't interfere with normal usage.

Michael Fetterman

(tweaked by mpm: remove -d magic)

manifest hash: 869f5b5f954dc0f46ba27322359e811d5e21d71c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCvP77ywK+sNU5EO8RArmtAKCCVuI2slANzWZ26P5edtH/ixdwNwCfZLWl
5P+V+C92II3usO4YW2MULKY=
=/Pv4
-----END PGP SIGNATURE-----
2005-06-24 22:51:39 -08:00
kyle@zeus.moffetthome.net
b724addd44 Added stdint.h include to fix build on Mac OS X Tiger [v10.4] 2005-06-24 20:53:51 -05:00
mpm@selenic.com
00dfb16988 Add 'local' tags
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Add 'local' tags

Local tags are repository-private tags that override the usual tags.
They're not version controlled.

manifest hash: cce27c853d36f03adba4bd543a37c8faf1a0c749
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCu3SSywK+sNU5EO8RAlVAAJ9sTyIW2EkzBPSPp+3uU6a+6DUC6QCcD0vE
jiwqhtfCuvG5LLs54LkzamY=
=D9IP
-----END PGP SIGNATURE-----
2005-06-23 18:48:50 -08:00
mpm@selenic.com
8510fbd2d1 rawcommit: do lookup of parents at the appropriate layer
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

rawcommit: do lookup of parents at the appropriate layer

manifest hash: fc4b2d4416d00da5db2f4659e42ecba2a96dba1e
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCu2UoywK+sNU5EO8RApdDAJ9Vph6qVyzL++YeXyFC8HKf9ZhkGgCeNc0Y
j2AMu6aWmuLuy2XwztS8gms=
=f8mQ
-----END PGP SIGNATURE-----
2005-06-23 17:43:04 -08:00
mpm@selenic.com
ce2783cea1 Make lookup a bit smarter
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Make lookup a bit smarter

Handle overflow error
Handle "0000" -> nullid, not 0

manifest hash: f3af0c171216687c621fd0214efe45775e5a1d34
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCu2PrywK+sNU5EO8RArqWAJ9hafXgnHjCDE/Sxtvyo+e+qmPaGgCfR8AV
DCG3i0NasG3ItbPvux2Dm5Q=
=zjqN
-----END PGP SIGNATURE-----
2005-06-23 17:37:47 -08:00
mpm@selenic.com
71401f47a5 hg import error checking
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg import error checking

From: Chris Mason <mason@suse.com>

hg import wasn't checking the return value of patch
and wasn't making sure the list of files collected
was unique.

manifest hash: 85b2a0f0602cfff6ba6a61128a50d79d7fb6e1c7
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuym/ywK+sNU5EO8RAlwSAJ48h8hHi3JMNwrVq0CXIfgMCTGRRQCfSfpP
9kHam+Rt8tra46lCQ4d27G4=
=P00x
-----END PGP SIGNATURE-----
2005-06-23 13:29:35 -08:00
mpm@selenic.com
4b67f9b493 rawcommit dirstate tweak
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

rawcommit dirstate tweak

Before this patch, rawcommit can mess up the dirstate unless it is
committing against the current parent.

This patch changes rawcommit, such that when adding a child to some
node other than the current parent, rawcommit does not attempt update
the current dirstate.

This seems easily debatable; it creates an asymmetric behavior for
rawcommit. It means that when doing a rawcommit against the current
parent, there's effectively an implied "hg update" to the newly
created node. When doing a rawcommit against any other node, no such
"hg update" occurs.

The other obvious alternates would be:
1) rawcommit never update the dirstate
2) rawcommit always does an "hg update"...

This patch also includes a test for various uses of rawcommit...

Michael Fetterman


manifest hash: 428517d82a02501f14b0d8fac064411980780e91
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuymPywK+sNU5EO8RAvdvAKCxW1QZtyOviNfuwO592IaKApwvEACfdrYD
83m/o8oJvRKu3yGvNGHtwfk=
=KbmU
-----END PGP SIGNATURE-----
2005-06-23 13:28:47 -08:00
mpm@selenic.com
0ef8f163ee Permission handling for the other OS
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Permission handling for the other OS

From: K Thananchayan <thananck@yahoo.com>

Preserve exec permission under Windows on existing source files. Not an ideal
solution as there is no way to specify exec permission for a new file.
Nevertheless, this helps working on crossplatform projects.

manifest hash: c50da52ad4645f40bd6204c4fd458e880bc3f801
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuvJeywK+sNU5EO8RAscXAJ40eAHZjTip5to6BGPdoXxxL5gNQQCgl5GT
8S1Ckank5I/0ScGtapZKqTA=
=QrQp
-----END PGP SIGNATURE-----
2005-06-23 09:33:18 -08:00
mpm@selenic.com
82f810c4fa Use __inline instead of inline
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Use __inline instead of inline

This should let us compile bdiff.c on the other OS.

manifest hash: c1233bb3c7fc060e49dbd2597c122d903797db9e
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuu/WywK+sNU5EO8RAtqvAKC0d8Kv8He6xNCwmFnvKcff9BT4gACeLq7n
9JDFxYtWMrgjwlShfay1nL4=
=GDFt
-----END PGP SIGNATURE-----
2005-06-23 09:22:30 -08:00
mpm@selenic.com
bbbaa90a70 Commands cleanup
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Commands cleanup

move patch function to import_
strip underbars from function names in help
remove debugaddchangegroup and debugchangegroup
remove -q option from import
remove some aliases: ann, dump, dumpmanifest, merge, resolve
add rm alias

manifest hash: a3259c52d69be93e272b336098ab8549ec1922bb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCulc9ywK+sNU5EO8RAvLqAJ0fIvuSCYZgXUBubBREL7dfg5y/yQCglYte
AwWOEQJoLGHXbpvPYI1uljo=
=hQeO
-----END PGP SIGNATURE-----
2005-06-22 22:31:25 -08:00
mpm@selenic.com
20411bdc00 Optimize annotate a bit
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Optimize annotate a bit

Keep the original text around so we don't need to rejoin it
Use slice insert-in-place rather than += to construct new lists
Construct the decorated list with list multiply rather than comprehension

manifest hash: 8c0effb9777750d524d71ad3a2eade3c6ddd579e
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuca0ywK+sNU5EO8RAtvQAJwOViomGCtlZx/R76i8/CZGvGPqUwCfdybd
nRUv1854GjzCbfygzXfeIes=
=6Q+E
-----END PGP SIGNATURE-----
2005-06-22 12:14:44 -08:00
mpm@selenic.com
cd9928ff94 Fix a compile warning for bdiff
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix a compile warning for bdiff

manifest hash: 263a8d670a4960f57b6738d41b40626efe1d90d5
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD4DBQFCubyMywK+sNU5EO8RAvw5AJ4usI49PlchNMgytp29Fajf+6aGfgCY/7YV
PBZf1pfbBH3nO0gEi33CNg==
=cw8/
-----END PGP SIGNATURE-----
2005-06-22 11:31:24 -08:00
mpm@selenic.com
c6e599029c Replace difflib with bdiff for annotate
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Replace difflib with bdiff for annotate

This is a quick hack to get bdiff working for annotate, can still be
optimized quite a bit.

manifest hash: 380ae3092c73b7e1946952edec3588248bc13c5e
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCubxGywK+sNU5EO8RAv7RAJ9lTdxRAVqzGs4XnPoZAmx/fbeUZwCfWar2
RqLGipS5JmMOy1pL1ehNxqY=
=KLgM
-----END PGP SIGNATURE-----
2005-06-22 11:30:14 -08:00
mpm@selenic.com
20fd1f6e98 Add bdiff.blocks / minor performance tweaks
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Add bdiff.blocks / minor performance tweaks

This refactors bdiff.bdiff so that we can get a list of matching
blocks of line numbers for use by annotate/unidiff.

Minor performance tweaks:
- - add a field for equivalence so we can keep h around a bit longer for cmp
- - mix len into the hash to reduce collisions
- - move an operation into the slow path in longest_match

manifest hash: b1aee590b6291b31069ea8a86b6aa8fb259ac244
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCubu2ywK+sNU5EO8RAm4FAJ9r10aJpT7qA96nqGYFHcuy4XcIHgCfeFx5
q0PyTXeZQc7Fw5kwEPcoykI=
=QXSb
-----END PGP SIGNATURE-----
2005-06-22 11:27:50 -08:00
mpm@selenic.com
d2615cc70c Start using bdiff for generating deltas
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Start using bdiff for generating deltas

manifest hash: bf6ed7d17d96810b7f40b50811b104b568c64b4b
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCubqVywK+sNU5EO8RAor6AKCm8Zqg0DIhLzaMPp5/GKPKk/GjKwCfbCe+
/CBmpvcTxSJofY9RE08cCVY=
=2yu2
-----END PGP SIGNATURE-----
2005-06-22 11:23:01 -08:00
mpm@selenic.com
663c3fc4ae Pull from TAH
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Pull from TAH

manifest hash: 600d04efbd836d555d11a3bd9d821d1d8c0a9790
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuPFxywK+sNU5EO8RAjfzAKC18Zc2EOkXhy1zcpgGnyPHnFMdmgCfW5Ut
I5HSWqZMt8H0WJx1Or7ajNc=
=27D5
-----END PGP SIGNATURE-----
2005-06-21 21:04:49 -08:00
mpm@selenic.com
b2a320abcc Fix typo in merging new files
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix typo in merging new files

manifest hash: 4a6fee1e54c5c465a74f4d756a1ac549b15fdb2f
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuOvVywK+sNU5EO8RArovAJ4ua9EhnO8wWfKRZ36E6F4Wrv5JPACghCXn
sHr/TSkxdy48OUVkhTbhhhQ=
=poww
-----END PGP SIGNATURE-----
2005-06-21 20:40:53 -08:00
mpm@selenic.com
e0a4782d31 [PATCH] Enables lock work under the other 'OS'
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Enables lock work under the other 'OS'
From: K Thananchayan <thananck@yahoo.com>

os.symlink is not supported under Windows. This patch
introduces util.mklockf, util.getlowner that use
regular files under Winodws but symlink under unix.

tweaked by mpm:
 - changed function names
 - fixed to work on UNIX

manifest hash: 6f650a78a3b203dcad2f861582500b6b4036599a
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuN5sywK+sNU5EO8RAva8AJ9L9z/JHRAJS1bix48ZzSpn9ZUyPwCffhmg
UfLSFBmd5tPDDi3mgsrdDEA=
=ZYS9
-----END PGP SIGNATURE-----
2005-06-21 19:43:40 -08:00
mpm@selenic.com
5e62f2ce10 [PATCH] rename under the other OS
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] rename under the other OS

From: K Thananchayan <thananck@yahoo.com>

Rename fails under windows if dest file exists. This
patch add a rename method to util module that removes
the dest file and retries if initial attempt fails.

manifest hash: 2744d9fd1717e15133b411a269df909fa8ec0faf
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuNzDywK+sNU5EO8RAsPBAJ9NQN3bTuJvTem5x+utGnoMkhYc0QCbBFSJ
PoMP69H1UnVE6drFlnlFE0s=
=pePw
-----END PGP SIGNATURE-----
2005-06-21 19:36:35 -08:00
mpm@selenic.com
d9341c39ce [PATCH] Repo locator fix for the other `OS'
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Repo locator fix for the other `OS'

From: K Thananchayan <thananck@yahoo.com>

The following patch modifies repo locator to behave
properly under windows.

manifest hash: 481252f9667ab5408dc1985a72a1916f903f4f2b
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuNv5ywK+sNU5EO8RAvD9AJ9mYSzmn99sc2vNtw68sPaKKWe2UQCgoiLd
1q1t+JMs57+I0LUdwrwsEDw=
=dlmm
-----END PGP SIGNATURE-----
2005-06-21 19:33:13 -08:00
mpm@selenic.com
1a1ca5cd0e [PATCH] file seperator handling for the other 'OS'
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH]  file seperator handling for the other 'OS'

From: K Thananchayan <thananck@yahoo.com>

The following patch maintains repo root relative source file names in
canonical form (with '/' as file seperator).

Mercurial calls os.path.join, os.path.normpath, os.path.walk that use
platform's file seperator. This patch does not change seperator in
these circumstances (except when the result refer to source files).

manifest hash: 2fbb4cb0d3d0bc4f4de5c7c8803fb738072ec6c5
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuNuBywK+sNU5EO8RAhAZAKCV8cz11+rdof9n1tHb0uDScF34GgCeITNi
4aVikToPXqXyReN9kFP5pnY=
=xcV5
-----END PGP SIGNATURE-----
2005-06-21 19:31:13 -08:00
mpm@selenic.com
0ae2f84e6d Minor tweak to binary mode patch
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Minor tweak to binary mode patch

manifest hash: 4fce0b7b405b124e035526d4a458e888d9bd82ef
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuNr1ywK+sNU5EO8RAs83AJ9i+yafrjWWjWm1lTwCr0fO8cAU+gCghmxg
+S1W1KuMzgxJAtuhq6h6uBk=
=9JhP
-----END PGP SIGNATURE-----
2005-06-21 19:28:53 -08:00
mpm@selenic.com
a88586e98c [PATCH] file type fixes for the other 'OS'
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] file type fixes for the other 'OS'

From: K Thananchayan <thananck@yahoo.com>

Filetype fixes:
All working files and files in the repository are processed as binary.
.hgignore is read as text when constructing ignorelist as this file
is intended to be edited.

manifest hash: c034cdcc54011fd3de9e32f1aa8b2b6f84e1b2b8
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuNoRywK+sNU5EO8RAjarAJ9ScUoFL1A7mpO7qorCy6okhi0nggCcDgpp
dfDl4dALGQA0PqXqtI+T5gU=
=IVxr
-----END PGP SIGNATURE-----
2005-06-21 19:25:05 -08:00
mpm@selenic.com
ee0f69d039 [PATCH] Removal of a file added by merging branches
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Removal of a file added by merging branches

From: Michael A Fetterman <Michael.Fetterman@cl.cam.ac.uk>

Fixing a bug where removal of a file which is added when doing a merge
would cause python exception to be thrown.

manifest hash: 0bdd80e8abcee6aaa4804bb588f9939596fb3dd0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuNjLywK+sNU5EO8RAo44AJ4mvjsJcYOj/EmVDFrdkK3D3WHFSwCffxfV
cRl8mXc252/oRcYaMZbgrlg=
=S5x6
-----END PGP SIGNATURE-----
2005-06-21 19:19:39 -08:00
mpm@selenic.com
bc5ccf31e3 [PATCH] Don't prompt user for keep-vs-delete when the merge is about to be aborted
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Don't prompt user for keep-vs-delete when the merge is about to be aborted
From: Michael A Fetterman <Michael.Fetterman@cl.cam.ac.uk>

If an "hg update" is attempted across branches, it is aborted with an
error message, basically saying that "update -m" is required.  Don't
prompt the user for "keep vs delete" kinds of questions before deciding
to abort.

manifest hash: 250d3a0e866af2feac9344d499b26c254c33abc4
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuNeDywK+sNU5EO8RAu2BAJwNWXXN2L+4TnOUGaOe9iBj6CgOYgCfRKIE
RF5czx2UQ2pSIP119xzq9mQ=
=Akj6
-----END PGP SIGNATURE-----
2005-06-21 19:14:11 -08:00
mpm@selenic.com
46f265df70 remove double assignment
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

remove double assignment

spotted by Goffredo Baroncelli

manifest hash: a0406a618ce5b2b9b10073b29960d594094aa3ed
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuNXhywK+sNU5EO8RAh9yAJ0aVTnxsumDAdF3JORp1pDebxeE8wCgisdG
vf/JwxHbQEqGrefU1nbs928=
=NDGW
-----END PGP SIGNATURE-----
2005-06-21 19:07:13 -08:00
mpm@selenic.com
d5711e92d7 [PATCH]: Typo in localrepository.update
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH]: Typo in localrepository.update

From: Goffredo Baroncelli <kreijack@libero.it>

I think that there is an error in the method update() of the class
localrepository. The variable 'm2n' was used instead of 'man'; so the
parent2 flags is computed instead of the ancestor flags.

manifest hash: dc11810367615245c4b39660d135ab3c0e71b85d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuNWpywK+sNU5EO8RAv9ZAKCxwbd242xZQ1CCrW2WDdQ4gclKtACghXYl
7j1YTRpINItwdXzak3cBS60=
=+Tf8
-----END PGP SIGNATURE-----
2005-06-21 19:06:17 -08:00
mpm@selenic.com
4266c33df9 Add 'other OS' bits to bdiff.c / style cleanups
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Add 'other OS' bits to bdiff.c / style cleanups

manifest hash: 9a0ef60a59af0594f95a2b22de243fe8ef059762
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuNL0ywK+sNU5EO8RAg+yAKCe8dG411HdZZvsxB25AtfBBApQBQCgnb7O
MGO0xvEBgAtt+3F+VJBkiU4=
=F7r7
-----END PGP SIGNATURE-----
2005-06-21 18:54:44 -08:00
mpm@selenic.com
474ceb8130 Make mpatch.c compilable under the other `OS'
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Make mpatch.c compilable under the other `OS'

From: K Thananchayan <thananck@yahoo.com>

manifest hash: 7b3033b761b147149fb0bcd6ff6120ccb73f16f1
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuNJCywK+sNU5EO8RAtMVAKCJxQYOa7VX4DYKDPw02ILjINiDmwCggreC
9Xw/stNxkV7zVY2IFDC14is=
=tFmZ
-----END PGP SIGNATURE-----
2005-06-21 18:51:46 -08:00
mpm@selenic.com
1cfde4e8cc [PATCH] Merging files that are deleted in both branches
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Merging files that are deleted in both branches
From: Michael A Fetterman <Michael.Fetterman@cl.cam.ac.uk>

OK, attached is an improved version of this patch...

When I went back through it, I discovered that the prior version was wrong
when doing real merges (as opposed to jumping between revisions that have
a simple linear relationship).  So that's been addressed here, too.

> Here's an hg changeset patch that deals with simultaneous deletion of a
file
> in both the working directory and in a merged branch.
>
> Test case included in the patch.

manifest hash: c8078733c252403314d8046efa6ecefc49c83050
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuNF8ywK+sNU5EO8RArtdAJ9syw/JXRZzP1sxnEYXzZywkJLAPACeKpqL
5osA3AggrCbbSLTNcYVXJ8U=
=T5Ik
-----END PGP SIGNATURE-----
2005-06-21 18:48:28 -08:00
mpm@selenic.com
659dbef2f6 [PATCH] Merging identical changes from another branch
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Merging identical changes from another branch

From: Michael A Fetterman <Michael.Fetterman@cl.cam.ac.uk>

The issue comes up when a local uncommitted *new* file (i.e. not in the
current manifest) is being merged with an identical file from a branch.
Since the file is not in the current manifest (it's either in the
current "to-be-added" list, or in the "unknown" state), there's no
(local) node from which to create a mergepoint.

manifest hash: 4e64ce654a6473524789a97bbaf8bff61b4343af
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuM/1ywK+sNU5EO8RAn7xAKCJoH/CgzVK4h4xPJDrd2lY9XOINACgmt01
92uuMswZXcoCchQAaxew7C0=
=qRsk
-----END PGP SIGNATURE-----
2005-06-21 18:41:57 -08:00
mpm@selenic.com
f0a7e9bd41 Check if repository exists
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Check if repository exists

From: Goffredo Baroncelli <kreijack@libero.it>
Subject: Re: Trivial: in remoterepository.__init__ check if the repository
        exist

I hope that this is correct :-)

Another typo, another patch, tank to Peter Stamfest and Radoslaw Szkodzinski.

The patch is trivial: adds a check in the body of the init method of the
+remoterepository
class. Before if the path didn't exist, hg would not raise any error.

Test manually performed after the patch has been merged:

test:                                                     result
create a new repository from another local repository     OK ( no problem )
create an empty repository                                OK ( no problem )
pull from a not existent repositary                       OK ( raise an error )

(error message tweaked by mpm)

manifest hash: ac7f625a8d87c693b61718b9fc5604d28b882bbd
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuM0gywK+sNU5EO8RAsnGAJ42HE3m01tlGqrIR3GVfuhvCjEJkgCfffvp
bEhfvjaiAdBV50HMULq8N00=
=QDHW
-----END PGP SIGNATURE-----
2005-06-21 18:29:52 -08:00
mpm@selenic.com
6de06ab6cb [PATCH] Unintuive use
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] Unintuive use

From: Vincent Danjean <vdanjean.ml@free.fr>

> 1) "hg pull" does not tell what and if it does something.
> 2) hg does not tell if the data have been merge or not, if we have to
> call resolve, ...

Here is a patch for 1) and 2). It also add an option to 'pull' to call
update if there is something new.

Tweaked by mpm:
 - change message style
 - use ui.status
 - change option from resolve to update

manifest hash: a61a7af00ef2f33867f6c88f95dc8258cb1a3e51
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuMcpywK+sNU5EO8RAucjAKC06gwAico7Wz5YOcp5u9NVxEhItwCfcIzA
VmiifZTj5ZUjTTcPhmiKh2M=
=rbLT
-----END PGP SIGNATURE-----
2005-06-21 18:04:25 -08:00
mpm@selenic.com
aaaf715ee8 [PATCH] rawcommit fix again
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] rawcommit fix again

From: Christopher Li <hg@chrisli.org>

Rawcommit need to allow no argument when using file list options.

Chris

manifest hash: 049977598f355ad9e54eeb18f8831fc4c1fee36d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuMR9ywK+sNU5EO8RArXFAJ98iZaSIzsc0KBgtMW5v4yVuWfpZQCdH2yQ
bYOgCTRNapYqq5YtnOHfErk=
=1Poe
-----END PGP SIGNATURE-----
2005-06-21 17:53:01 -08:00
mpm@selenic.com
11f489a590 [PATCH] (3/4) Removing an added file
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] (3/4) Removing an added file

From: Michael A Fetterman <Michael.Fetterman@cl.cam.ac.uk>

Here's an hg changeset that deals with "hg add"ing and then "hg remove"ing
a file without ever committing it.  Previously, this caused a python
exception
at commit time.

Test case included in the patch.

manifest hash: 4d012f3f8b1aa664fed9e8bc2849931b28728acd
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuMPtywK+sNU5EO8RAuxMAKCmeMLqOUBmUfCfbQgYOAysOvKkwgCfcJai
2My0M7KqhwnJSbZXbGIOcow=
=N7N0
-----END PGP SIGNATURE-----
2005-06-21 17:50:37 -08:00
mpm@selenic.com
109875616d From: Radoslaw Szkodzinski <astralstorm@gorzow.mm.pl>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

From: Radoslaw Szkodzinski <astralstorm@gorzow.mm.pl>

add hg tag command

Tweaks by mpm:
 clean up error messages
 handle non-existent .hgtags file
 add tests
 update test-help output

manifest hash: 569c7fe01193159919af2566e8f5089409ffad65
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuMMwywK+sNU5EO8RAuUdAJ90TkT/D9lDOnEVAW2d3WT7K8Ct3QCggiJA
c9Qbd79K4UWKQAVkYq03cOY=
=SWS8
-----END PGP SIGNATURE-----
2005-06-21 17:47:28 -08:00
mpm@selenic.com
2875576bbc Add a fast binary diff extension (not yet used)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Add a fast binary diff extension (not yet used)

manifest hash: fbfdcab2b1f4856af45176fcf2423d602dfe88c4
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCuL6eywK+sNU5EO8RAoT+AJ95z9gx2IrucBS30CnCQFkZT7lSbgCgnXh5
ScZcgwzJ/mEo9i5vuKNlCIs=
=Gr58
-----END PGP SIGNATURE-----
2005-06-21 17:27:58 -08:00
Thomas Arendsen Hein
80cfc46aba Make it possible to specify a version number in setup.py.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Make it possible to specify a version number in setup.py.

manifest hash: 905feb305205801eb3833e5a84161fb57b83c86e
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCtc/QW7P1GVgWeRoRAlCaAJ9G2GRf0wIEVEbYNoV4PjV4b024bQCfcUFf
WVYQlTXqninDXyKas2yQYdo=
=ofg/
-----END PGP SIGNATURE-----
2005-06-19 21:04:32 +01:00
Thomas Arendsen Hein
1f53e34055 Allow hgrc's proxy host and $http_proxy env var to start with http://
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Allow hgrc's proxy host and $http_proxy env var to start with http://

manifest hash: 5bf4bb43606f3e5544d55be886502ab5a61f9ff3
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCtcR6W7P1GVgWeRoRArk0AKCgHpelPjAKjbzh3iifZayAhovm+gCeL0hl
XU7LBUrK2Z2qQHN0w9I8XUk=
=QaAW
-----END PGP SIGNATURE-----
2005-06-19 20:16:10 +01:00
Thomas Arendsen Hein
bef1927f8c remember_version() only writes version if called in a Mercurial repository.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

remember_version() only writes version if called in a Mercurial repository.
forget_version() resets version only if remember_version() wrote it.

manifest hash: b30df9d93c233f4bf07150cc5067f294a98c16f4
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCtXFiW7P1GVgWeRoRAgkjAJ9jkwCAHf3yJyDI8R582XjNFNFeWgCZAe27
iqGPYzrRErf6gPKZcoBMsD4=
=t2Bx
-----END PGP SIGNATURE-----
2005-06-19 14:21:38 +01:00
Thomas Arendsen Hein
1f172db45e Allow override of HTTP_PROXY, http_proxy and no_proxy; make no_proxy work.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Allow override of HTTP_PROXY, http_proxy and no_proxy; make no_proxy work.

manifest hash: cfddccef1e8acaa8b06e652e5bbc274d31f0df1d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCtIp/W7P1GVgWeRoRAgNRAJ4//Ptbq9Cba7S2L5ltvP92gcijZQCeKuU/
S/togHQXp34v2ypVH+8wyP4=
=jpn2
-----END PGP SIGNATURE-----
2005-06-18 21:56:31 +01:00
Thomas Arendsen Hein
26b86a9abe Support for 'hg --version'. setup.py stores version from hg repository.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Support for 'hg --version'. setup.py stores version from hg repository.

manifest hash: c69058298ea12035f2cf356f987ba2fb5ff4bbae
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCtD6ZW7P1GVgWeRoRAnGHAKCLscthht2UlBEMDmxL9cku4PlcswCffOVo
wTOhYkW4Ie5+8bdmL8EqsvY=
=uGpn
-----END PGP SIGNATURE-----
2005-06-18 16:32:41 +01:00
Thomas Arendsen Hein
878eebd88e Show revisions in diffs like CVS, based on a patch from Goffredo Baroncelli.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Show revisions in diffs like CVS, based on a patch from Goffredo Baroncelli.
Changes from the original patch:
- - Use 'diff -r ...' instead of 'hg diff -r ...' to support filetype detection
  by at least file(1) and vim.
- - Adjusted tests for this change.
- - Some cleanups.

manifest hash: 5f37d1ef75ea7f4e48b53f02371053ba54fb70f8
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCsyZzW7P1GVgWeRoRAqczAJ479lR9Z289sP+VH5L+N7pQRU14SACfUueq
88ABloIR3VyRIa4qbujnZio=
=Vva9
-----END PGP SIGNATURE-----
2005-06-17 20:37:23 +01:00
mpm@selenic.com
9f69588496 commands: report http exceptions nicely
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

commands: report http exceptions nicely

manifest hash: 37760b304eedffcea9c1c01d03334cf4f6048fd3
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsx6QywK+sNU5EO8RAnyEAKC3RBzwlVAyI+SSYHj1Z+Psn1Aq3gCcDQJf
pqPitXBuvdZbLdK0ti2kFOk=
=ZjC9
-----END PGP SIGNATURE-----
2005-06-17 11:03:44 -08:00
mpm@selenic.com
4cfc2b085e hg init: add -u flag to update
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg init: add -u flag to update

From: Andrew Thompson <andrewkt@aktzero.com>

I was trying to get init to run update by passing an option. The basic
part works, but if you use the -u option, you have to specify the
changeset number, tag, or tip. Anyone see a way to make this work easier?

(minor tweaks by mpm)

manifest hash: 9e39e822693e1f175cd5e02a8d4a984d82afbd92
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCswJaywK+sNU5EO8RAuILAJ42ZVtnHnlbq/xz6SxhaWLtI4KZ/QCgqS6F
6EDjkfy1F8dmBTf8Ob3ac/s=
=f3WC
-----END PGP SIGNATURE-----
2005-06-17 09:03:22 -08:00
mpm@selenic.com
8098f7c792 hgweb: pull cgitb into CGI script example, where it can easily be disabled
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb: pull cgitb into CGI script example, where it can easily be disabled

This also eliminates cgitb dumps in the logging output of hg serve

manifest hash: a0aa07a706c2c388c0b49505e2960197f716920c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsv9DywK+sNU5EO8RAieFAJwOjdfkz7pILNVUTvpMkRa6/OIhIQCgo2TP
I2E4hxQ0N7mTtl45pXEFLsk=
=tG0v
-----END PGP SIGNATURE-----
2005-06-17 08:50:11 -08:00
Thomas Arendsen Hein
ac6b04147f create .hg/hgrc with [paths] default entry only if source was given on hg init.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

create .hg/hgrc with [paths] default entry only if source was given on hg init.

manifest hash: 8229e52ba4d3a6be51e053986230d195cff78966
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCstisW7P1GVgWeRoRAqaVAJ0SK+3Sjki5OD61bCZj1HEo5hYcsQCfRV0z
MJpYg9kiWJg8a4CzASoa+Hs=
=Ql0q
-----END PGP SIGNATURE-----
2005-06-17 15:05:32 +01:00
Thomas Arendsen Hein
dd7457ebb0 Show tags in hg history etc.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Show tags in hg history etc.

manifest hash: 5520d8f5be86d5183c5b6f84e25cb99eb35ad4b7
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCsphGW7P1GVgWeRoRAtujAJ97McEv8gL8m1uZz79ufKgbzFf6ZACfd7vQ
49wFPb65oMSwro9XjOoGgCk=
=BSsw
-----END PGP SIGNATURE-----
2005-06-17 10:30:46 +01:00
Thomas Arendsen Hein
52a5465da5 Improvements for hg identify:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Improvements for hg identify:
Don't add the modified flag if unknown files are found.
Remove extra space if there was no tag found.
Multiple tags for a single parent separated by '/'.
Getting rid of sum() to aid porting to Python 2.2.

manifest hash: f91224afcb239908ba3ef02299fcf2b0380ebd1a
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCspWvW7P1GVgWeRoRAnqbAJwL1DIzOxOrdqpPj9vsYJeeiq+VrQCcCyli
P+b/S0s2n628ku1IfrW3Elo=
=lgRY
-----END PGP SIGNATURE-----
2005-06-17 10:19:43 +01:00
Thomas Arendsen Hein
d126bd1067 Fixed problems with extra spaces around tags in .hgtags
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fixed problems with extra spaces around tags in .hgtags

manifest hash: 2a40f403d5d7d9c4d39e52fa6edefa74d5797167
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCspTvW7P1GVgWeRoRAg9PAJ9OWdUii+qO+U5ioaAbkFeIROA/7gCdGgau
ZP8jmI1h95ZK3KS/QlQMeQ4=
=lRFd
-----END PGP SIGNATURE-----
2005-06-17 10:16:31 +01:00
mpm@selenic.com
61535bd5d9 mpatch: attempt to handle unpack alignment issues on Solaris
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

mpatch: attempt to handle unpack alignment issues on Solaris

manifest hash: e185dc380bab61cf11a9973ee3ddd2e904e56299
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsnOtywK+sNU5EO8RAlzQAJ9YIhbL8BJjT+J/pOiQVES2wsF0igCgnFRl
ok5f8i8GbNk77sRbpsGnUF0=
=m0Zh
-----END PGP SIGNATURE-----
2005-06-16 22:54:37 -08:00
mpm@selenic.com
0b40b51431 hg merge: fix time asymmetry bug with deleting files on update to past
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg merge: fix time asymmetry bug with deleting files on update to past

manifest hash: 41feb7bf9b56e071a538a0918224898acb2bd31c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsm6XywK+sNU5EO8RAncbAKCwn/W4cr6civp4Zt79JFH6um0/lQCdFCh8
F7ZOQ+S/PL3HL4iE6avOBDc=
=kHPm
-----END PGP SIGNATURE-----
2005-06-16 22:32:55 -08:00
mpm@selenic.com
39bfce9301 Ancestor algorithm fix
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Ancestor algorithm fix

The ancestor algorithm was a bit too optimistic about node ordering
still. Add revision numbers to the comparison to sort things out.

manifest hash: f4eaf95057b5623e864359706dcaee820b10fd20
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsTrCywK+sNU5EO8RAtqMAJ9fEJEesPn+0SMg/i/g5vZYmX/pBgCfVnhl
+s88q/Wilw27MVWP6J6oqX8=
=k9AU
-----END PGP SIGNATURE-----
2005-06-16 00:39:30 -08:00
mpm@selenic.com
6b876058c8 Merge with TAH
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Merge with TAH

manifest hash: f73215065ecbcfd9a0d0964de5ed73a392837a56
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsQqNywK+sNU5EO8RAiuOAJ4lL23LcxAkbPHy33snasBgrkhNxQCgkBLO
ohB0/EA2dAvQtu5sMSW03D8=
=lF8D
-----END PGP SIGNATURE-----
2005-06-15 21:13:49 -08:00
mpm@selenic.com
7b7db9ddb1 Show nice short hashes in hgweb
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Show nice short hashes in hgweb

manifest hash: c73a8e32a823af7ea7440d1db2b0c022a4366bb5
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsQpkywK+sNU5EO8RAmSIAJ40aYEFBi07drKuPLuofXNaUkEFtgCghC9g
mG8mmhucbBe4hcZWL0AdG8I=
=Khp7
-----END PGP SIGNATURE-----
2005-06-15 21:13:08 -08:00
mpm@selenic.com
3a091e0210 Change the size of the short hash representation
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Change the size of the short hash representation

First note that this number doesn't really matter, as we always check
for ambiguous short hash ids.

Here's the math on collision probability:

>>> import math
>>> def p(f, n): return 1 - (1 / math.exp(n**2/(2*f)))
...
>>> p(2**32, 30000.0)
0.09947179164613551   # with 30000 changesets (BKCVS), we have a 9% chance
>>> p(2**32, 65000.0)
0.38850881217977273   # and with a full import from BK, we'd have a 39% chance
>>> p(2**40, 1e6)
0.36539171908447321   # we'd like to be "safe" for 1M csets, so 40 isn't enough
>>> p(2**48, 1e6)
0.001774780051374103  # But 48 looks good
>>> p(2**48, 1e7)
0.16275260939624481
>>> p(2**48, 5e6)
0.043437281083569146
>>> p(2**48, 2e6)
0.0070802434913129764
>>> p(2**48, 3e6)
0.01586009440574343

manifest hash: 24d9f928a463f46708b0e11fb781d5a241851424
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsQoMywK+sNU5EO8RAoBBAJwII9GV6dT9QUOYAk3gZGw9z0JvjACfSI4q
IFnTu1F7P5OuLelO1GsM8Bs=
=CNWk
-----END PGP SIGNATURE-----
2005-06-15 21:11:40 -08:00
Thomas Arendsen Hein
bca47d8774 hgweb: fix deleted file in filediff key error
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb: fix deleted file in filediff key error

manifest hash: f751d213d2d2d49b3631dbe72699554e58ae590a
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCsQOVW7P1GVgWeRoRAvRAAJ9cLxO+QLg6gEnn/0XPZJP1G/8/KQCfdygL
b+awDXRJmE0onoNzvzzIcBg=
=jDV4
-----END PGP SIGNATURE-----
2005-06-16 05:44:05 +01:00
mpm@selenic.com
7bdae1e0eb Move httprangereader into its own file
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Move httprangereader into its own file

manifest hash: 7a856e4024ce5d3d305e23e418a77d3058c74ddf
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsPj4ywK+sNU5EO8RAizKAJ9kbYVAC+iL4cKml14BcwX9okdnJQCgjLAP
cWM5/y9FdC3THOC6DkUNic0=
=PkL6
-----END PGP SIGNATURE-----
2005-06-15 19:58:48 -08:00
mpm@selenic.com
b94509e428 hg push: "default-push" default target path
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg push: "default-push" default target path

manifest hash: 368f3a073e172272bac06bf5b2ace78f03ffd3bf
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsPeJywK+sNU5EO8RAuNZAKChSFEUCILHmRJmj3/7EDij3RK31gCdF2qF
vQ8+72bbEPmxa3HOTdNliu0=
=Nyi+
-----END PGP SIGNATURE-----
2005-06-15 19:52:41 -08:00
mpm@selenic.com
6f13d3e93a revlog: add a children function
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

revlog: add a children function

manifest hash: eda39cb99d0df5b3262d97a9e161a8acceb1da3d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsPZ0ywK+sNU5EO8RAiAcAJ9D+y8zQ/Gai7CpTkfTamPFxmvVRACcDRv9
5HkupYyrxslGnGJpELaF1is=
=zf1d
-----END PGP SIGNATURE-----
2005-06-15 19:48:04 -08:00
mpm@selenic.com
f8d48b6b40 hgweb: fix deleted file in changeset key error
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb: fix deleted file in changeset key error

We simply point to nullid. This is very arguably the correct thing to
do.

manifest hash: c16f1c05a087e5d3274cb84dfd09d048430f0495
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsPCdywK+sNU5EO8RAuJzAJ9j2Yn7KHceFxYgKvOd5V4fNNLKmQCfTZ9s
jorkRZcX2hdZqRkxM8q8VMk=
=+bEb
-----END PGP SIGNATURE-----
2005-06-15 19:23:09 -08:00
mpm@selenic.com
731d510728 Use errno.EPIPE rather than 32
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Use errno.EPIPE rather than 32

manifest hash: c9cb2fadf7ef4392b2f16b3f76ca2a39964b7ae0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsNNOywK+sNU5EO8RAudrAKCGKfgsHmSLdt5HYpUtX4S/QSFCQgCeKb7M
Qld4CLe1M3aktU0tugb51Gs=
=1LB7
-----END PGP SIGNATURE-----
2005-06-15 17:18:06 -08:00
mpm@selenic.com
95875aeeae hgweb: remove pointless manifest reads
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb: remove pointless manifest reads

pointed out by Goffredo Baroncelli

manifest hash: 7aa5b93dc73755f02887702d0a01118d91b3b289
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsNK6ywK+sNU5EO8RAhJeAJ9ck6KYdupiuuyXXU5Mr8upx+D/NgCcDJmI
y7ZVFQoiaYFoJy+GWQ2zFes=
=RHPt
-----END PGP SIGNATURE-----
2005-06-15 17:15:38 -08:00
mpm@selenic.com
d5f0f4b898 One too many newlines in verbose output showed up in regression
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

One too many newlines in verbose output showed up in regression

manifest hash: 184bd0353358ec24c3711420ba3c6745a688ebc9
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsMC9ywK+sNU5EO8RAuYsAJ4wCphPRGI5omFy0VkbiQp8OairRwCcDdD2
pAR58+i+urS7MlbaDisCYUM=
=Ty7w
-----END PGP SIGNATURE-----
2005-06-15 15:58:53 -08:00
mpm@selenic.com
c36436262c Add hg copy
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Add hg copy

extend dirstate to remember copies
add copy command
add copy repo operation
write copy metadata with commit

manifest hash: 9f42c7b4a2400d35807b5f18c05a31814fa3e375
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsMBTywK+sNU5EO8RAjXpAJ9fvNtTP1A/4veqFWQHcWGro7buyACgoVXz
/ngGOFowxS/zGkvUvGavYGQ=
=drb1
-----END PGP SIGNATURE-----
2005-06-15 15:57:07 -08:00
mpm@selenic.com
923df46e46 Fix another sortdiff cornercase
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix another sortdiff cornercase

manifest hash: 32b2d1750689c561c9471fb68a9f3571364399cb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsL6AywK+sNU5EO8RAhaeAJ4zw18vo4oGTvymplKb7olKEeg0aQCfVxX1
2o/PcrE6EeboHpQn5E0Wb/Y=
=eENW
-----END PGP SIGNATURE-----
2005-06-15 15:49:20 -08:00
mpm@selenic.com
da73063c69 filelog: add metadata support
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

filelog: add metadata support

To add metadata, we add an escape sequence "\1\n" to indicate that
some key:value metadata pairs follow.

manifest hash: 9a019d50f8d389b2c16cb46f4eab62c136b70fd7
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsJfFywK+sNU5EO8RAl1AAJ9BJPgDWnot5MUdPnzPiNxlyhG0rACfVo10
6q9fGaPUpf8mxefz7G8D0Z0=
=1BL6
-----END PGP SIGNATURE-----
2005-06-15 13:04:05 -08:00
mpm@selenic.com
91c58aba0f hgweb: add file permissions
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb: add file permissions

From: Goffredo Baroncelli <kreijack@libero.it>

Show permissions in hgweb

Tweaked by mpm

manifest hash: f11361c6da21f3ba60c5e6a173396754c36efb1d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsHFqywK+sNU5EO8RAoqFAJ44P8kZoZDiY5Fw8LWpL/3ArXNE2QCeO3z4
0zV5rXWa/r/xgf+AVTLeQ/4=
=FzLj
-----END PGP SIGNATURE-----
2005-06-15 10:20:26 -08:00
mpm@selenic.com
f82d510aa2 [PATCH] manifest.readflags performance buglet
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[PATCH] manifest.readflags performance buglet

From: Chris Mason <mason@suse.com>

Performance buglet in manifest.readflags: only re-read the manifest
when the mapcache is not present or does not correspond to this node

manifest hash: 188ad778308a2e5c885d452d7b7e61c082e8ceb2
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsG4wywK+sNU5EO8RAv+IAJ9sU87MythE/HYf3wH/V7ctzNdR1gCfclr9
ydsk6wtk/n6uKb4U7BvGvLM=
=5cOx
-----END PGP SIGNATURE-----
2005-06-15 10:06:40 -08:00
mpm@selenic.com
03a2dd3e51 hg import: better file accounting
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg import: better file accounting

From: Chris Mason <mason@suse.com>

Change hg import to call hg addremove with the file list to make sure files
added/deleted by the patch are properly accounted for.  Instead of using
lsdiff, the output of patch is parsed directly to find the file list.

manifest hash: defed8cb90d6f976fb47949ac03dc4b88870ba77
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsG1BywK+sNU5EO8RAvV9AJ9H25L5vdnZB1xpAakuN3tGuMfRfgCfdAgP
3xBc3S4F74/7DdS2GXRNhGw=
=oXXT
-----END PGP SIGNATURE-----
2005-06-15 10:02:41 -08:00
mpm@selenic.com
178e58d650 hg commit: add -A flag
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg commit: add -A flag

From: Chris Mason <mason@suse.com>

Add hg commit -A that calls hg addremove before trying to run the commit

manifest hash: d25cb3ab4e0dc2e8642bcbef32da4ab178cd4823
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsGzrywK+sNU5EO8RAvdFAJ46ZjyACMvKEUq8RmdxZB9ZE0z6ygCfYYzq
UP2EXTOQ2pdhxKFyad8h/Rg=
=wzZD
-----END PGP SIGNATURE-----
2005-06-15 10:01:15 -08:00
mpm@selenic.com
b78962df13 hg addremove: take optional files list
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg addremove: take optional files list

From: Chris Mason <mason@suse.com>

Change hg addremove so that it can take a list of files to process instead
of searching the entire tree for candidates.

manifest hash: 592d8771ea5703dd6ed4459239dab84e15ee9321
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsGyqywK+sNU5EO8RAt0jAKCSDQ1fxgQNP08kehdxlQwX5DUuuQCgqRB2
7gZoRNyJmOy5BVp6VBmUJbw=
=THQB
-----END PGP SIGNATURE-----
2005-06-15 10:00:10 -08:00
mpm@selenic.com
80eaf20433 hgweb: change number navigation tidy up
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb: change number navigation tidy up

manifest hash: 9fe0ad4fba9a7a0d4c604299024ce7732198c831
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCr+vkywK+sNU5EO8RAiOyAJ92O9ALuJTbVPPGC/x6vL6yK7GggwCgs4ta
5StdA4D/dOEUvN6O3xicKhk=
=fP4C
-----END PGP SIGNATURE-----
2005-06-15 00:50:44 -08:00
mpm@selenic.com
5a0275e7f9 Merge with TAH
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Merge with TAH

manifest hash: ec82cc2d7b7357fd7db4917e09d7d6865482de58
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCr+f1ywK+sNU5EO8RAuPtAJ0WilDBo3iG4S/dmIabhzYW987TtgCgkjkM
8OmatsrjG01iJAhkKJj+XnQ=
=mOLr
-----END PGP SIGNATURE-----
2005-06-15 00:33:57 -08:00
mpm@selenic.com
92f8f94e43 merge3: fix argument order
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

merge3: fix argument order

We were passing the wrong argument order to hgmerge. Add a merge
conflict test case.

manifest hash: 2d88786a3f31dcaa9d44f564c21f0d2a4f14f09c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD4DBQFCr+ZoywK+sNU5EO8RAouJAKCOx5oxhVXkLqsfCPBXx0+wP5IeogCYoZzF
ooZT2fyN3tL3uVM2YP8KcA==
=O4fE
-----END PGP SIGNATURE-----
2005-06-15 00:27:20 -08:00
mpm@selenic.com
9db9caef14 Fix yet another resolve corner case
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix yet another resolve corner case

manifest hash: a194321b5cd718a3c31f327c5145a4ebd8dd4ef4
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCr+IvywK+sNU5EO8RAt49AJwLBBq7AZfo1WqcwZvzSVENvJGLmgCePumQ
0/9RwjL/PorsvFJi+CiFYyY=
=S6HA
-----END PGP SIGNATURE-----
2005-06-15 00:09:19 -08:00
mpm@selenic.com
051bbe3f44 rework all code using tags
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

rework all code using tags

Add three utility functions:

tags(): get (and possibly load) the tags mapping
tagslist(): sort tag,node by revision (aka topologically)
nodetags(): return a list of tags associated with a node (also cached)

Update all the code using tags to use these.

Simplify identify code
 make unknown always visible if printed
 don't ignore tip pseudo-tag

manifest hash: e6deb4d545ad465be7735f9ec43227bcb5e238c7
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCr+HjywK+sNU5EO8RAh4/AJ90cI0WxmvQAj6Lq2ZiG8LmqZan/QCfR8B5
ltu8tOIEHDa8LhfS9wtBu0k=
=pv3t
-----END PGP SIGNATURE-----
2005-06-15 00:08:03 -08:00
Thomas Arendsen Hein
feca5d85b5 Merged with mercurial-identify (which includes upstream's current tip)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Merged with mercurial-identify (which includes upstream's current tip)

manifest hash: b135d201757b84bbe7f14a446d2b001fd0cc1aa2
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCr9mNW7P1GVgWeRoRAmTjAJ919wnvZXbKI27N0cDJCrumR3z4rQCcD6PO
yZTmrT6p+gt6GBO+j5FVBn0=
=HWn8
-----END PGP SIGNATURE-----
2005-06-15 08:32:29 +01:00
Thomas Arendsen Hein
309c848358 Handle the case where the current working copy is not based on a checkout.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Handle the case where the current working copy is not based on a checkout.
Print 'unknown' in verbose mode and nothing otherwise.

manifest hash: 5742c3c3a762b77ee1aeb62ed53b8f2d8e47a05d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCr8WJW7P1GVgWeRoRAtNkAJ9Qea4u8GG8zdSk87qLApT88KMrgQCeO22w
bJ12ieVHvLzc2NNAGV+zbeQ=
=IYni
-----END PGP SIGNATURE-----
2005-06-15 07:07:05 +01:00
Thomas Arendsen Hein
f515c9ab96 added hg identify|id (based on a patch from Andrew Thompson)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

added hg identify|id (based on a patch from Andrew Thompson)

manifest hash: b8f801efb6cf14a6d754fed2cf47149f4e77b3cc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCr8BLW7P1GVgWeRoRAj3+AJ4jIvfBnu6vbF+SOS2ybVTboXe7pACfZkkT
2G2bbxYowVnrytOXVg6BhlU=
=wNpZ
-----END PGP SIGNATURE-----
2005-06-15 06:44:43 +01:00
mpm@selenic.com
95b22d4a98 default path support with .hg/hgrc
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

default path support with .hg/hgrc

hg init creates a new .hgrc file containing a default path pointing to
where we pulled from. hg pull now uses "default" as the default source.

manifest hash: 0908e3b0648f92a63a3b58e49107cedf07ca0fb4
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCr5SBywK+sNU5EO8RAmvRAKCPdItvtxYyAOgG24732J7PZMFnVgCfe21B
MoilYzCQi5GOswS2mk0aE6M=
=Gude
-----END PGP SIGNATURE-----
2005-06-14 18:37:53 -08:00
mpm@selenic.com
2bdabb4c9d Add support for .hg/hgrc file
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Add support for .hg/hgrc file

manifest hash: a6d2fc7ed8d56e2f0d65aad78a4d8359898ca246
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCr5QZywK+sNU5EO8RApnlAJ9nD65i2aEQcljV+Y39zgImpcdtgwCgpT9G
O2D8FDFpRNyYki/QPt5e/AQ=
=bQCZ
-----END PGP SIGNATURE-----
2005-06-14 18:36:09 -08:00
mpm@selenic.com
5fe6d79231 Fix misrecognition of commands
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix misrecognition of commands

manifest hash: e8a19b922c3129c37050589edfb83d742c08a808
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCr38xywK+sNU5EO8RApRbAJ9CcBFI5MQiilZZaucVGX84tyFwvACfaYL1
tgI+dsdbAAiFhW8eEPYX7ts=
=Zu9L
-----END PGP SIGNATURE-----
2005-06-14 17:06:57 -08:00
mpm@selenic.com
efb1c558de hg rawcommit: fix files arg conflict
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg rawcommit: fix files arg conflict

I try to sync with tip again. I found out the raw commit is broken for me
because the keyword "files" is list as named argument as well so it will
not show up in the rc dictionary. Here is my quick fix to make it work
with my script again.

Chris


manifest hash: 10f85636e02cb4b19b319b7ebbfd2ec5096c3a6d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCr1HSywK+sNU5EO8RArWMAJoD67SPN4QJcVaHBVh9FiNXWy80FQCePpA/
BZ63h+bqXESeMMLb7Kh5ytA=
=69X0
-----END PGP SIGNATURE-----
2005-06-14 13:53:22 -08:00
Thomas Arendsen Hein
0517b0579a Cleaned up show_changeset()
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Cleaned up show_changeset()

manifest hash: f9aa30cfa465d7aa096abb652ec04f1a5ec1072f
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCroC+W7P1GVgWeRoRAuheAJsEx7eFaoHoz+YejLIiN4BSfE117ACfYdM6
NQGNTp3ftUSuVpcMLvV8A1U=
=8Ihb
-----END PGP SIGNATURE-----
2005-06-14 08:01:18 +01:00
mpm@selenic.com
2e5f7971fb Merge with TAH
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Merge with TAH

fixup history messages to not interfere with GPG signing

manifest hash: aea3a92e4699dfe0cbd98e6e2c8c6971218a59b8
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCrkK4ywK+sNU5EO8RAqxHAKCNyjTE5F/7EvM+ipjhgzIUk1aWZACgm7zz
eBcKlHcOA8ceUcn4IEBLQpM=
=YfHT
-----END PGP SIGNATURE-----
2005-06-13 18:36:40 -08:00
mpm@selenic.com
d2dd697347 hg pull: more query fixes
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg pull: more query fixes

Pull was getting confused by single-element branches because it had
seen the top end already.

Also, the previous change to do seenbranch on the base of the branch
was bogus.

Minor cleanup and a bit more diagnostics in the branch-narrowing code.

manifest hash: 71d4dced9f74bef43d3a54d086dccd0a96d68e26
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCrjLgywK+sNU5EO8RAsxSAJ92U31Pz7K14Ctje4SEec2857Ut7QCgoVwY
ho65mloslCSidLsEnxYfBDI=
=Wts9
-----END PGP SIGNATURE-----
2005-06-13 17:29:04 -08:00
mpm@selenic.com
b51d9e3229 mdiff: fix the fix
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

mdiff: fix the fix

I saw you check in the thing back in but with another typo.

You check in "la < lenb", should be "la < lena".

So we are even :-)

Chris


manifest hash: 57157502250b0120bcc12a75a530d4c133673b39
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCrg5tywK+sNU5EO8RAvLPAKCOs76LKPniKHFa15YwzWWsNZ5/xACfesl3
WCiUjdeYUtU3jVKCEwmjAT0=
=+GFy
-----END PGP SIGNATURE-----
2005-06-13 14:53:33 -08:00
mpm@selenic.com
6ecc8916bc mdiff: reinstate new algorithm
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

mdiff: reinstate new algorithm

This unreverts the new algorithm with a fix from Chris (s/len/lena)
and adds some comments on what it's doing.

manifest hash: 75fc1acee1926e57d495f67a44cd88d9555f2356
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCrf4UywK+sNU5EO8RAoRzAKCA2vpUAGNqTkDeba3YHo6XXht7VgCfXQK0
/j5yv5cucnsYezCdclpftOA=
=FNMD
-----END PGP SIGNATURE-----
2005-06-13 13:43:48 -08:00
mpm@selenic.com
c03e65957e hg merge: some getchangegroup fixups
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg merge: some getchangegroup fixups

- - filter more duplicates
- - request batching
- - lookup ordering
- - request counting

After these fixes, grabbing 1800 changesets on top of the 28k
changeset kernel history takes 23 round trips rather than a couple
hundred.

manifest hash: 78e893b68000267a8c7ea49fd38758f2fc96269f
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCrea0ywK+sNU5EO8RAv3cAKCQveivdApJIlslTCMLMp2VogRXfACeNRnx
Ihsf5yLz60fFpqlzAmZBACk=
=Euku
-----END PGP SIGNATURE-----
2005-06-13 12:04:04 -08:00
mpm@selenic.com
9e5dff9854 lazyparser speed ups
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

lazyparser speed ups

When we do __contains__ on a map, we might as well load the whole
index. Not doing this was slowing down finding new changesets quite by
a factor of 20. When we do a full load, we also attempt to replace the
revlog's index and nodemap with normal Python objects to avoid the
lazymap overhead.

manifest hash: 9b2b20aacc508f9027d115426c63a381d28e5485
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCreYIywK+sNU5EO8RAoNHAJ9+LmXqsTQb9Bh3mZHq0A0VfQOleQCffHmn
jC/O0vnfx5FCRsX2bUFG794=
=BDTz
-----END PGP SIGNATURE-----
2005-06-13 12:01:12 -08:00
mpm@selenic.com
7ecd747c5c hgweb: Fix reloading of index
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb: Fix reloading of index

We were reloading every request because we weren't saving the old
mtime.

manifest hash: 507330727957ff53c48b38f427f0b70469a49271
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCreVpywK+sNU5EO8RAp/YAJ9cXh2II4DGAQtRc58yj4hi49C8jgCfT7bV
22w73T2FiYBjzMk8N8STUVI=
=eghX
-----END PGP SIGNATURE-----
2005-06-13 11:58:33 -08:00
Thomas Arendsen Hein
ad0d364be1 Use common output function show_changeset() for hg heads|history|log|tip.
show_changeset() uses functions from ui.py instead of print.
2005-06-13 08:49:21 +01:00
mpm@selenic.com
bb97db269e Transparent proxy support
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Transparent proxy support

Originally from "Michael S. Tsirkin" <mst@mellanox.co.il>

manifest hash: 74cf7456ef35ff8d4c007544f0d1a57c69d3c929
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCrSIUywK+sNU5EO8RAje1AJ41ALW8soF78Mo3UTraV1QQvJoFSQCgrqvc
I9ohlI4hzdjOD+wSwRGlERQ=
=Ugfi
-----END PGP SIGNATURE-----
2005-06-12 22:05:08 -08:00
mpm@selenic.com
3b22065d68 hg push: propagate return code
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg push: propagate return code

manifest hash: 3c4c5a0eba4c2eb431e4830fafe3138c12f9bddf
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCrQ3sywK+sNU5EO8RAkGpAJ40HsYprOWEZzmqw47ZYvZukMzKvgCeIGfD
H6gB6idJV4K2SpEaFUByRYE=
=LV1Z
-----END PGP SIGNATURE-----
2005-06-12 20:39:08 -08:00
mpm@selenic.com
7a60f504ed stopgap hg push support
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

stopgap hg push support

This does hg push by running hg serve and tunnelling it over ssh to a
client at the destination doing hg pull.

manifest hash: 552607f1e8bea238b4c585209af93f0594121dd1
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCrP8NywK+sNU5EO8RAmGJAKCJ9kQSz6Bs/4cYCvKU7TpDXPHSbgCdEE1X
FfZe2y2xtgSeHQa/uZLqEBQ=
=KlPp
-----END PGP SIGNATURE-----
2005-06-12 19:35:41 -08:00
mpm@selenic.com
8f62e88ec1 mdiff: revert grouping optimization for the time being
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

mdiff: revert grouping optimization for the time being

This had trouble with Ted T'so import test while the original didn't.

manifest hash: e2fc49b5277096bd4c5081558af5efe9964d5310
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCrHzXywK+sNU5EO8RArocAJwKlxrnyVpdYaKzgJG/b4gSVOYBTwCgkl2t
zD807fsMULRDdDe1k9jVPcU=
=Iivz
-----END PGP SIGNATURE-----
2005-06-12 10:20:07 -08:00
mpm@selenic.com
1b72add8c7 hg commit: user and date options
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg commit: user and date options

- From Ted Ts'o

manifest hash: f6ce29eed387664c6f0631b666158eb930876cb3
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCrHx4ywK+sNU5EO8RAp/uAKCEGhvm1tpBJ9Bub8BlalWaIpMeqgCfUejo
IoevMbk4cjxQ5P3Zo2pSFs8=
=Ibp3
-----END PGP SIGNATURE-----
2005-06-12 10:18:32 -08:00
mpm@selenic.com
b077acf769 More tweaking to rawcommit for repo conversion
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

More tweaking to rawcommit for repo conversion

manifest hash: 912e7d61fc15845fd24baada9f553c2d38b26f06
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCrGdBywK+sNU5EO8RApbrAKCPVvxnSgkzAWpwc6uRDCCYAsqO7QCeMonn
tZS4URbMI2aDQYw15wDEZHg=
=C2Vn
-----END PGP SIGNATURE-----
2005-06-12 08:48:01 -08:00
mpm@selenic.com
9e30d45970 Minor caching improvement for manifest
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Minor caching improvement for manifest

manifest hash: 91d827f4041f1151875a52199618cdd1a219ac79
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCrGGBywK+sNU5EO8RAotVAJ93JTk6XoHnZrbGzcZQ1N+P7kNKiACfYj+F
RlcmcLHc3rEMkcM127BszDg=
=5zAN
-----END PGP SIGNATURE-----
2005-06-12 08:23:29 -08:00
mpm@selenic.com
d5231c190f Optimize diff and status in subdirectories
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Optimize diff and status in subdirectories

This walks the tree from the subdirectory down.

Based on a patch by Arun Sharma

manifest hash: 3a8545369b4eb6911b9d0fcdd8e4dc77784fa3d8
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCrF6/ywK+sNU5EO8RAosUAKC0KWcMfsLErEInDk1X1vpM54HFEgCfUwcN
gXhaAviQZJ8h0ssl3BMmMfI=
=KnRD
-----END PGP SIGNATURE-----
2005-06-12 08:11:43 -08:00
mpm@selenic.com
e5f91203c2 fix KeyErrors from reading empty dirstate
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

fix KeyErrors from reading empty dirstate

manifest hash: 04a797f1b53e34153c8ea18950a5dd0eefb4694d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD4DBQFCqyj+ywK+sNU5EO8RAoepAJYp2TjjaMq3l+ZrRfogyvUGCebgAJ9nKPdr
nP/Y3F1GvOle58NTIQ6UBA==
=0k3O
-----END PGP SIGNATURE-----
2005-06-11 10:10:06 -08:00
mpm@selenic.com
133874df1d hg patch: add default commit text
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg patch: add default commit text

I was doing some benchmarks via hg import and found a few patches where
the commit string ended up empty.  hg would then try to prompt you for the
commit string.  The patch below forces a default string based on the patch
name.

Signed-off-by: Chris Mason <mason@suse.com>

Modified to only be added if there's no commit text - mpm

manifest hash: 35da46e3832a98e2d288604e6be8c82e85405ef8
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCqg+/ywK+sNU5EO8RAqCIAJ4/Nj6c3MusY3HyD8HeHjqc+GlFMQCbBWA5
HhCmOoJuL5Uoz7WlGPlpumw=
=M3/j
-----END PGP SIGNATURE-----
2005-06-10 14:10:07 -08:00
mpm@selenic.com
d62ed01d52 add easy profiling support
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

add easy profiling support

Now you can do hg -p [command] and it will run it under the hotshot
profiler

manifest hash: fcad346798243ad2434bc5458ed8d3456707c599
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCqgqYywK+sNU5EO8RAp9BAJsFI7iUWYEMvXWYaVt4VmrlOF3enwCdEFRJ
l/EZmMLecbfQcbbh5oo0yHs=
=voa0
-----END PGP SIGNATURE-----
2005-06-10 13:48:08 -08:00
mpm@selenic.com
5a13901487 Add tip to tags
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Add tip to tags

This makes a tag for the current tip that always overrides what's in
the tags files.

manifest hash: b1a17d0238aa84ee30773be79e4a32dca321a0c3
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCqfzVywK+sNU5EO8RAgdEAJ41VvLHIIzNZbIC/nHmoJOpZL0+4gCfRxpC
eSq341nfmMZNcrqmGYYALe4=
=miH1
-----END PGP SIGNATURE-----
2005-06-10 12:49:25 -08:00
mpm@selenic.com
d1d2bb53b2 add tip to repo.lookup 2005-06-10 12:48:12 -08:00
mpm@selenic.com
a8abcc624e more merge fixes
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

more merge fixes

Logic for getting a remote change should work going backwards and forwards

Mark all the changes in the merge that we don't get or merge so we
have the right list of files in the changeset

manifest hash: 88be742f510a2c58b276172ae538f9533f5e7491
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCqc+CywK+sNU5EO8RAjOKAJwNkC7phUO77IGW20R7MKyWBGP01gCgjxP6
K2CqUESHr2+0J96q3N74Siw=
=zb2f
-----END PGP SIGNATURE-----
2005-06-10 09:36:02 -08:00
mpm@selenic.com
2b99655794 various fixups for git import
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

various fixups for git import

cache manifest flags properly after add
rawcommit
  handle flags
  handle multiple parents better
  commit a complete manifest
verify
  changesets and manifests are no longer necessarily 1:1
  check for duplicate nodes

manifest hash: 5bf65f506d2b0da94d42d9fb1f792d58f6453c58
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCqU9wywK+sNU5EO8RApUUAJ9sXVIKMcmLChdk2M95U6DW37qNNQCgid08
/1E9Y4vw25HcxwJlXopV1lU=
=oohz
-----END PGP SIGNATURE-----
2005-06-10 00:29:36 -08:00
mpm@selenic.com
b7514f43bc revlog: allow duplicates
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

revlog: allow duplicates

If two branches make the same change to the same parent, the result
will be an identical hash. Git apparently does this all the time. Deal
with it gracefully.

manifest hash: c6217eab4b310e1ae529dd75ab90e717dbe5d55d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCqU61ywK+sNU5EO8RAkFqAJ9KhWUQgjZbzzB/+mTkolH0GkT1awCfa+Mj
ulbI4xCRZcvfQE492mcNwQA=
=N6In
-----END PGP SIGNATURE-----
2005-06-10 00:26:29 -08:00
mpm@selenic.com
fee1819a7d hg init: when hardlinking, remove dirstate
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg init: when hardlinking, remove dirstate

manifest hash: 48d32cdfe7eacf17b012226a884384e48377b0d8
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCqU5gywK+sNU5EO8RAmzxAJ4hQUt/qrIcPzuGHf5dazJkKc9wgwCgpqV/
zSC4SHAvJQ2VptJSSVCEOAg=
=QVG+
-----END PGP SIGNATURE-----
2005-06-10 00:25:04 -08:00
mpm@selenic.com
0af71ae547 Merge with TAH
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Merge with TAH

manifest hash: 5a7d047acc6df6ba03db532657f54c0d38e4cffe
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD4DBQFCqIECywK+sNU5EO8RAg56AJ95hB6uw7Fc55XgwgZls4UUNRt1jACYrkrq
V9VJhhv29Fd/LEZy+ydoGQ==
=unEK
-----END PGP SIGNATURE-----
2005-06-09 09:48:50 -08:00
mpm@selenic.com
be968da64f hg update: fix clobbering files when going backwards
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg update: fix clobbering files when going backwards

spotted by Andrew Thompson

manifest hash: 0cfc2d189a395fb8761391d9918864034aa7a9b8
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCqH9BywK+sNU5EO8RAoHrAJwN9Y2Jrvbdp/seTkGl6D/g1uxK0wCglZWz
jQ6F3A6ikzTXwhEq+KsR8Qw=
=9IPU
-----END PGP SIGNATURE-----
2005-06-09 09:41:21 -08:00
Thomas Arendsen Hein
01375d2142 Turn on +x for every +r bit when making a file executable and obey umask. 2005-06-09 09:24:08 +01:00
Thomas Arendsen Hein
ed63b972a6 Fixed usage of removed variable 'wp'. 2005-06-09 08:53:07 +01:00
mpm@selenic.com
091e79d4cd Fix hg import fix
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix hg import fix

Spotted by TAH.

manifest hash: f8d648c43c090537d3af1a79cc53784357a2f057
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCp9umywK+sNU5EO8RAkovAKCwRyUN7HOEFTnqK8OJ3zVY+CYEHACgtj5f
naeGpDbq0haT628rPDbtAB0=
=W8Zf
-----END PGP SIGNATURE-----
2005-06-08 22:03:18 -08:00
mpm@selenic.com
c2d0aab436 hg patch: fix to actually take a list of patches 2005-06-08 21:22:38 -08:00
mpm@selenic.com
6bf860f30e hg help improvements
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg help improvements

Handle showing option help in commands.py rather than fancyopts
Show getopt exception string if argument parsing fails and call help
Show help for invalid arguments
Show exception string for invalid arguments with -d

manifest hash: 9bd3e908cc080c21bb5e85822f675c35a8396fef
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCp8GNywK+sNU5EO8RAoJfAJ4pB0I4xH4CTuGmAwArfBzIsT9plACeImkm
4ml9x78fmPgKpDYIr/qhfVY=
=YeZv
-----END PGP SIGNATURE-----
2005-06-08 20:11:57 -08:00
mpm@selenic.com
fad79b21a5 Make most file opening binary
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Make most file opening binary

This should make Windows happier

manifest hash: 4a906f7c55d8af4e962385c645852d0b3d858b42
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCp52mywK+sNU5EO8RAtOzAJwK8MOtl3B0MDAXyJDnDFt9mHNINwCfVdRG
8z35hXvIJhz3sRo0ogdUZ0s=
=eM45
-----END PGP SIGNATURE-----
2005-06-08 17:38:46 -08:00
mpm@selenic.com
7ddff96dc1 Add wopener for opening files in the working directory
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Add wopener for opening files in the working directory

manifest hash: cad3a930764244a32f8e45c2ea95fa9b98690b5f
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCp5qxywK+sNU5EO8RAkfAAJ9C7V8zlbUVM8Dfs4raXMtT2bk4RQCfRfVt
IfYoaVsbOUW4U1XipOZycAw=
=5JDH
-----END PGP SIGNATURE-----
2005-06-08 17:26:09 -08:00
mpm@selenic.com
7209a3bed2 replace hg branch with hg init [source]
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

replace hg branch with hg init [source]

This does the hardlink trick if both repos are on the same filesystem,
otherwise it does a pull.

manifest hash: 780a3a0aca6e4a535909c6221ee94394701ec1c9
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCp5anywK+sNU5EO8RArdDAJ9Tiia0YZmZ6xiTYdKhZJ2UZY8V5wCfeoPy
DamQ2Zyz3yTjNqu4ge0CuRQ=
=EXv5
-----END PGP SIGNATURE-----
2005-06-08 17:08:55 -08:00
mpm@selenic.com
346aff0bc3 hg commit: add -t and -l options
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg commit: add -t and -l options

This lets you specify commit text on the command line or point to a
file containing it.

manifest hash: 38201933edb1a89a5c3e0054d1b733cc4af46880
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCp40yywK+sNU5EO8RAgirAJ9ZAkfN+RyhPQGJBXKz3f7cR2xC0gCgo5l2
I9LQHVXT22rPb4tYUVq/bgQ=
=pA04
-----END PGP SIGNATURE-----
2005-06-08 16:28:34 -08:00
mpm@selenic.com
62655b2307 commit: edit text fixups
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

commit: edit text fixups

if given text, don't call editor
if editor returned only whitespace, abort

manifest hash: 7b6158a37568d91be1443b487d0a2cea1ba55dd3
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCp4zXywK+sNU5EO8RAqCrAJ921nNgI/akM8oacXewkIYdxaoiAgCffOP5
UOIl4GzvkOkcqd5YFS83pa8=
=seZT
-----END PGP SIGNATURE-----
2005-06-08 16:27:03 -08:00
mpm@selenic.com
86e8dabf8d commit: abort with empty commit text
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

commit: abort with empty commit text

manifest hash: d932ca95c920d6a4d33281d29e605c6995930016
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCp4oLywK+sNU5EO8RAulBAKCOhHn6p/xNaJUFs/IsOY8+1ad3ZQCfbUNb
XigHO+zgvzzsFWIvLnZFiGI=
=lldi
-----END PGP SIGNATURE-----
2005-06-08 16:15:07 -08:00
mpm@selenic.com
78007b3d26 hg pull: ditch .hgpaths for new .hgrc
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg pull: ditch .hgpaths for new .hgrc

The format is like this:

[paths]
main = http://selenic.com/hg
hgweb = http://edge2.net/hg/hgweb/
hgdoc = http://edge2.net/hg/man/

manifest hash: fc99889443381bdecc223f09ee65a74a8d5952c1
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCp3VKywK+sNU5EO8RAsbfAKCrzNh2yKI0KF9qCzHPz7eXjx688wCeKmIL
RXfAOuycKOTVJU6oFnBbBBo=
=OjMb
-----END PGP SIGNATURE-----
2005-06-08 14:46:34 -08:00
mpm@selenic.com
9299550092 ui: add configuration file support
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

ui: add configuration file support

manifest hash: 2d0768a6f3797d4ccc870170b874bfd7aeb2f787
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCp3TyywK+sNU5EO8RArYYAJ4+wWQmO7HIXewuGwB3a5DjiWGHwgCcDpeF
Pz2lScnpVZPPbDQiS+VnBnM=
=ffwc
-----END PGP SIGNATURE-----
2005-06-08 14:45:06 -08:00
mpm@selenic.com
70fff322e4 verify: don't die from new permission bits
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

verify: don't die from new permission bits

manifest hash: f8799eb3574dab3ee1523ae61b1a513eff1a7044
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCp3TQywK+sNU5EO8RAkiSAKCd0wEciYzcZYmeMic+9QLVtbf9SACginpE
1pjBr5SyqQu66rh+zWPgZqQ=
=cgDM
-----END PGP SIGNATURE-----
2005-06-08 14:44:32 -08:00
mpm@selenic.com
c91ce39fc5 mpatch: properly NULL out return in lalloc
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

mpatch: properly NULL out return in lalloc

From: K Thananchayan <thananck@yahoo.com>

manifest hash: 69952cb34e184eff19e3abff7638eb3a446f4dca
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCp0B+ywK+sNU5EO8RAuGdAJ4iZOnxExpZuhTjO0fcOFE9mNn/IACgjXbw
7mVqfBJeLbxViBorImLE12k=
=A1Vj
-----END PGP SIGNATURE-----
2005-06-08 11:01:18 -08:00
mpm@selenic.com
c9932ec2cb hg cat: relative file support
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg cat: relative file support

also fix a bug in relpath

From: K Thananchayan <thananck@yahoo.com>

manifest hash: a443a66dfb90b38ea491de1e817b2877170bc9f8
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCp0AGywK+sNU5EO8RAgfVAJ9vlXfLKs1A/TegG3wuPeuxoSQMCACbBPGF
RObiYj1st0k1zQYBlvSlQbk=
=GZbB
-----END PGP SIGNATURE-----
2005-06-08 10:59:18 -08:00
mpm@selenic.com
2665f365bd permissions merge: remove a debugging print
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

permissions merge: remove a debugging print

manifest hash: 488144aeb1544ecc377ab41983e6cabd4a8b1f5f
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCpz4KywK+sNU5EO8RAi+YAKCBmiiDkhe2ygCv4LF21RS3/iH0VgCeLwd5
c/yhTklZ9lnLWXy5dmuPNZk=
=UtDf
-----END PGP SIGNATURE-----
2005-06-08 10:50:50 -08:00
mpm@selenic.com
551154e610 unidiff: handle empty diffs more gracefully
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

unidiff: handle empty diffs more gracefully

manifest hash: e2030f7e55dc333ba0cd5b0847d1f1a08e3c5d64
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCpz0uywK+sNU5EO8RAnt4AJ9pyaS6/xNnlhCUocq3m0HbCwHJ/gCgrP/H
IvBJtq1eXvRedfitF25vBgw=
=pd5n
-----END PGP SIGNATURE-----
2005-06-08 10:47:10 -08:00
mpm@selenic.com
e2c2b50378 merge: update permissions even if file contents didn't change
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

merge: update permissions even if file contents didn't change

manifest hash: f24ed7970c6ca48329a7aa9c2037d96333f7172e
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCpz0PywK+sNU5EO8RArOMAJ9CImCJMdubq5HsB3KrxOt1EG7PEgCgpPWg
lnVxviZhv31EHtnxujQBoqM=
=qxYq
-----END PGP SIGNATURE-----
2005-06-08 10:46:39 -08:00
mpm@selenic.com
dda2865a7f add tracking of execute permissions
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

add tracking of execute permissions

Changes to executable permissions are now tracked. We only track one
bit here as the others tends to be problematic. "hg manifest" now
shows file permissions.

manifest hash: b76b85d12a9550fdc9fbc4f9446a812f3a2bbe88
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCpzYBywK+sNU5EO8RAgkMAJ48l2ac12E20EFS24/i8ScwOtG4HwCgkbaE
ue6l1RJroqzNA7vNeqwCwK4=
=sEmJ
-----END PGP SIGNATURE-----
2005-06-08 10:16:33 -08:00
mpm@selenic.com
850c76c740 various merge improvements
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

various merge improvements

add -C flag: force update and overwrite local changes
add -m flag: allow merges with conflicts
  we no longer do merge by default
  and we print a warning message when the merge fails
fix bug in printing merge failure message
fix bug diffing files in 'm' state

manifest hash: 75545a6db45d1e371082343d01c9f177df0f9db3
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCpm6tywK+sNU5EO8RAvb+AJ0euC3YkUYA944hds3ooPxbw6NpVwCfc1dj
TiNsPIds560S5jgw44eWNto=
=GPXN
-----END PGP SIGNATURE-----
2005-06-07 20:06:05 -08:00
mpm@selenic.com
97511c7cdc merge: Fix bug where we overwrote local when local was newer
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

merge: Fix bug where we overwrote local when local was newer

Spotted by Arun Sharma

manifest hash: b81acb971c6471d95748cd349590cc70e448dce3
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCpl9oywK+sNU5EO8RAtseAJ92EEMovbVy0J1rFuxcGvED066m+ACfaWYF
Q1/PcvkuH9aIqwMNkMK+aPU=
=61JM
-----END PGP SIGNATURE-----
2005-06-07 19:00:56 -08:00
mpm@selenic.com
6fe3792f6b diff: use tab to separate date from filename
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

diff: use tab to separate date from filename

manifest hash: 73812de990e0e787320c11f7bd83c4ca91a52c4c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCpdDxywK+sNU5EO8RAhKwAKCFcUa/p6ALbjoOl4I8VKJknZtu7gCdFvoE
HQn1iq4gnJoeurB7YLMRpqc=
=ltYP
-----END PGP SIGNATURE-----
2005-06-07 08:53:05 -08:00
mpm@selenic.com
2155d2e394 hgweb: ignore pipe errors
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb: ignore pipe errors

manifest hash: 3a3baaa175a422bf499f414b5186ed551827db56
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCpVkhywK+sNU5EO8RAo5aAJ9KPR/Gwp8YBswhyKqzVYVlgBl49ACghr65
sGKxB7ctoX9XB1WDht8WUzk=
=J2bp
-----END PGP SIGNATURE-----
2005-06-07 00:21:53 -08:00
mpm@selenic.com
e6b0f779c9 Reverse order of hg log and hg history lists
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Reverse order of hg log and hg history lists

Suggested by Arun Sharma

manifest hash: 5f663a03e7ace601383c7291a17f83c9aeeccdda
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCpVXDywK+sNU5EO8RApeOAJsFXG0qeO+yidIwyPrBHSmDMaKfdwCeMAWl
uClUZxGNburRXmNLLAPHk9k=
=1ytE
-----END PGP SIGNATURE-----
2005-06-07 00:07:31 -08:00
mpm@selenic.com
ee779f3908 hgweb: shrink the default changelog list to 10
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb: shrink the default changelog list to 10

manifest hash: 4d5f9f35b3dcb6bf05c0f25ab89cedba269ad924
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCpVUbywK+sNU5EO8RAlmTAJ9HzQz9C1lmL22IGU0tXYDTLqcVAQCfTD1U
pDF449wXA8ocjAF+UUJ7sL8=
=YyBZ
-----END PGP SIGNATURE-----
2005-06-07 00:04:43 -08:00
mpm@selenic.com
4369356848 unknown command fixups
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

unknown command fixups

from Andrew Thompson

manifest hash: 3ed1956585a905a52d93491ea95096be23c9acf8
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCpVTaywK+sNU5EO8RAkvLAJ0ff8/kVQc93jGy5t1uJ5R8m0M4OACfZ1Ba
O7CldaLkwEzqybw/5iL6NAw=
=WGtU
-----END PGP SIGNATURE-----
2005-06-07 00:03:38 -08:00
mpm@selenic.com
f9509bed55 Fix argument processing for patch and rawcommit
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix argument processing for patch and rawcommit

manifest hash: fc76fcd22ca69185bbec1855f72dda5b692e03f3
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCpVNMywK+sNU5EO8RAn2nAJ4gBbdn8K6xN55Igh6J2ZJEMgRGBACgr0Xb
KkjbnOrNL5uQmBHx59C7HdY=
=qsQi
-----END PGP SIGNATURE-----
2005-06-06 23:57:00 -08:00
mpm@selenic.com
3dc346edec hgweb: fix non-existent source or destination for diff
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb: fix non-existent source or destination for diff

manifest hash: c076bc00ba04911392085f3d0697106f4d24b808
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCpJtjywK+sNU5EO8RAsaTAKCso0BDI3GQxN9ZZRNeMXjeZXCXLgCfYM+R
JpTBR7gUZtV+pEexSfFlRDQ=
=moF8
-----END PGP SIGNATURE-----
2005-06-06 10:52:19 -08:00
mpm@selenic.com
d7c489168a Attempt to make diff deal with null sources properly
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Attempt to make diff deal with null sources properly

manifest hash: 7766ed2b885640157b93474b6e42573ec061fcfb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCpJsdywK+sNU5EO8RAr5gAJ9sIik+3FDyI8UvIvrWlku4QgMZWQCcDFvh
MvtqY8pFYTFLp7tM2zzTlu4=
=a0oy
-----END PGP SIGNATURE-----
2005-06-06 10:51:09 -08:00
mpm@selenic.com
8cb7d2e30b Fix empty repository transaction bug
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix empty repository transaction bug

manifest hash: df334795ea545f2401d08f734b8b6933af053d7b
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCo0lbywK+sNU5EO8RAr0TAJ9g9703187KXlpBOffNUGcYKGTLzwCgrqdq
jYjtTvZZ3nRCt8biaTcad3c=
=+riB
-----END PGP SIGNATURE-----
2005-06-05 10:50:03 -08:00
mpm@selenic.com
1b992606bb implement demand loading hack
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

implement demand loading hack

This attempts to speed up start-up times without pushing imports down
into local scopes.

manifest hash: f9c18897e67f7872b44f5c89bdde00edfc3628ce
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCo0kHywK+sNU5EO8RAg5HAKCxRKAz3FXDyv4wScq1ZbwTgfPa2gCfW9K+
dg5nC3Uvp4FilP8waF6liAY=
=dolF
-----END PGP SIGNATURE-----
2005-06-05 10:48:39 -08:00
mpm@selenic.com
69571cc22f fix addremove
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

fix addremove

manifest hash: 15a37c156e2186e89ef086ef974541bf1c695280
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoqunywK+sNU5EO8RAuICAJ9x7W0xz1ZBJ7nFYiiQEBljyYwqhACfVE7R
oiP0nigB4SzQMMmifrQ7UkA=
=/c5l
-----END PGP SIGNATURE-----
2005-06-04 23:37:11 -08:00
mpm@selenic.com
3ef1f33074 hgweb: watch changelog for changes
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb: watch changelog for changes

Check the mtime of the changelog for updates on each invocation of
run(). For the standalone server, this means you don't need to re-run
it to pick up changes.

manifest hash: 398bdbf03b867df27da9e803a094dd265f62e12c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFConlTywK+sNU5EO8RAljMAKCigJKR2aXabt1kuYeiAl+PZEN1owCeKShZ
oZKfo+I7e967FqI9l7NIPFE=
=pTp6
-----END PGP SIGNATURE-----
2005-06-04 20:02:27 -08:00
mpm@selenic.com
f490c35a61 Sort tags in revision order
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Sort tags in revision order

manifest hash: 23f33a4ece3d36e4387d9c096a87e3d758db0cbc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFConLsywK+sNU5EO8RAkBTAJ0c71AIsyi3YFyNIZTAMgEIMgEHNACggAKC
YrPLqJ3nzAX/tLSprvR/SUY=
=WTsq
-----END PGP SIGNATURE-----
2005-06-04 19:35:08 -08:00
mpm@selenic.com
736738b892 minor fixes for update()
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

minor fixes for update()

manifest hash: ee88b90b933d83d5a9e108ec5519da93629bf29b
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCom+pywK+sNU5EO8RAqOxAJ9Cbk8NTlFAmlF3phcmz9MlaVYRuwCdGDjC
oMFBjhRhvif/nBJbHjqW2Qw=
=RN0T
-----END PGP SIGNATURE-----
2005-06-04 19:21:13 -08:00
mpm@selenic.com
70d641d612 hg help: use docstrings only
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg help: use docstrings only

Now all Mercurial commands are at least partially self-documenting

manifest hash: 177e5f0fb13c258cc56d9b42cf762e55c3141531
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFComzMywK+sNU5EO8RAr3dAJ0dtlW4h7xZgaj1T3lchPnO2HHb/QCfcSnJ
e3SRVwd8DjsfxHFNQfOx+Qk=
=+6jb
-----END PGP SIGNATURE-----
2005-06-04 19:09:00 -08:00
mpm@selenic.com
c92138acf3 unify checkout and resolve into update
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

unify checkout and resolve into update

This replaces checkout and resolve with a single command:

$ hg help co
hg update [node]

update or merge working directory

    If there are no outstanding changes in the working directory and
    there is a linear relationship between the current version and the
    requested version, the result is the requested version.

    Otherwise the result is a merge between the contents of the
    current working directory and the requested version. Files that
    changed between either parent are marked as changed for the next
    commit and a commit must be performed before any further updates
    are allowed.

manifest hash: 513d285d7fb775d0560de49387042a685ea062f7
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFComS7ywK+sNU5EO8RAmgRAJ96GA6qvHLy0Jp0fzUrR2os2azPuACePsdC
YBldZtA7yIuTnV2vIbn7OSE=
=QtM/
-----END PGP SIGNATURE-----
2005-06-04 18:34:35 -08:00
mpm@selenic.com
cf588a4602 Remove invalid state from dirstate
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Remove invalid state from dirstate

It's no longer needed now that we backup and restore dirstate properly

manifest hash: 74c98540d685a76bd95dd7ebf4aaeff678706952
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCojZgywK+sNU5EO8RApaEAKCXO9Tl5h8vAC7GcQyUCx+feFExyACaAjfp
2hWiAJ9+B7EQgx2BJFE9Xek=
=apay
-----END PGP SIGNATURE-----
2005-06-04 15:16:48 -08:00
mpm@selenic.com
c99fbdbb54 Handle unknown commands nicely
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Handle unknown commands nicely

manifest hash: 787091fe5d983cdcd12491daaaf3cf60e9e950cc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCojXfywK+sNU5EO8RAlniAJ4gow9qBZ80Rvv8J3Rp8Ow2J/HOzwCglI3z
Ra50GpqCglTuqWvPcBNfdMQ=
=2s1i
-----END PGP SIGNATURE-----
2005-06-04 15:14:39 -08:00
mpm@selenic.com
a4d9f7b253 backup dirstate for undo
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

backup dirstate for undo

manifest hash: 2999407c1f8999e91ba0e23828cb406803b364a5
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCojXDywK+sNU5EO8RAotIAKC3P3Oz+9n/EgqkFc0UMTlUErSNAQCgpjYm
hpuZlC4lNO6aRiDfPVDL8Cw=
=DDtT
-----END PGP SIGNATURE-----
2005-06-04 15:14:11 -08:00
mpm@selenic.com
aef4dbabbe Catch broken pipes in command interpreter
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Catch broken pipes in command interpreter

manifest hash: b1550ec705836af571bf0c0921d9e768ac5e5e80
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoipEywK+sNU5EO8RAg2WAKCu3NUArYzOX2UwGj8pv3AnDQCwoQCffPWk
RcaNt0+COwST2FlbQQOxEk8=
=jbZG
-----END PGP SIGNATURE-----
2005-06-04 14:25:08 -08:00
mpm@selenic.com
f95bf8d95c import and startup cleanups
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

import and startup cleanups

add commands:run()
add copyright notice to commands
eliminate/reorganize imports to speed up start time:

0.5b:
$ time bash -c 'for i in `seq 100`; do ~/bin/hg > /dev/null; done'

real    0m7.718s
user    0m6.719s
sys     0m0.794s

new:

$ time bash -c 'for i in `seq 100`; do hg > /dev/null; done'
real    0m2.171s
user    0m1.684s
sys     0m0.444s

just python:

$ time bash -c 'for i in `seq 100`; do python -c pass; done'
real    0m0.988s
user    0m0.771s
sys     0m0.207s

Ignoring the fixed cost of loading the Python interpreter, we're 5.6
times faster. With the Python load time, we're still 3.5 times faster.

manifest hash: acce5882a55c76eb165316f5741724c8ce4ef587
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoihAywK+sNU5EO8RAqMdAJwMe6Ur0R9G6jjayNa5hH2C3c4k/gCeIYvc
N178vaWWGciX9zq+g5qCAls=
=buhv
-----END PGP SIGNATURE-----
2005-06-04 14:16:32 -08:00
mpm@selenic.com
0b9e66eded migrate remaining commands
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

migrate remaining commands

This removes basically everything from the top-level hg script

manifest hash: 34883e89d8def30e28936b38a9342d2f650f4c94
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoiD7ywK+sNU5EO8RAh0cAKCeOO9vahYs0tGmMNKk8bflw35p2wCgr6Wr
y0SNLHSVBMCzXtC9zlfDPog=
=3nJx
-----END PGP SIGNATURE-----
2005-06-04 13:45:31 -08:00
mpm@selenic.com
cede7eda00 migrate verify
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

migrate verify

Move the bulk of the verify code into the localrepository class and move
the command into commands.py

manifest hash: 793a8d0094d56ab0a411cd11d7fe7f39c923f209
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCog33ywK+sNU5EO8RApfBAJ4mCmiMmZE1fEfbR6sA+aP1csPvqQCfXHzY
3XK7yc19AivXf5HGKEOL3eM=
=GISf
-----END PGP SIGNATURE-----
2005-06-04 12:24:23 -08:00
mpm@selenic.com
58e0ba5a39 Migrate rawcommit, import, export, history, and merge
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Migrate rawcommit, import, export, history, and merge

manifest hash: f932108ee40e34b460e94b6fe60d6a06ac9f760c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoguVywK+sNU5EO8RAtohAKCe9Qr5R+YeLRluJlTxRGrJW/nnoQCfW/+F
I0BSOeNpb6jdUxTZY1jV0xo=
=hNXm
-----END PGP SIGNATURE-----
2005-06-04 12:14:14 -08:00
mpm@selenic.com
aeaf337d80 big heap of command clean-up work
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

big heap of command clean-up work

Migrate add, forget, remove, commit, diff, addremove, tip, log,
recover, and serve.

Fix up filterfiles, relfilter, and relpath to be a bit more bulletproof

Alphabetize functions and the command table

Make everything in commands.py relative-path aware

manifest hash: f0856031a7be4e49289677b467f29bcf24ebce4a
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCof6gywK+sNU5EO8RAoW1AJsHu8vchPSjls7wVbvsq/UKlGhqtgCgtnnl
xSBxyf/TEVWjHIk3uTa8WSE=
=YPMl
-----END PGP SIGNATURE-----
2005-06-04 11:18:56 -08:00
mpm@selenic.com
3e7e8842c6 root relative IO and valid commit states
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

root relative IO and valid commit states

do all working dir manipulation relative to localrepository.root
change the valid commit states

manifest hash: def7de4dfb4cad1fd4ef6f713fa3b5c903e05c58
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCof1VywK+sNU5EO8RArEVAJ9F/zFYqRvS2dWxOhONCm1OjEjILQCfcmDq
ARbGkSFSyVmyUSBSEq4n//E=
=qIEI
-----END PGP SIGNATURE-----
2005-06-04 11:13:25 -08:00
mpm@selenic.com
bc554a1e69 fix heads for rev 0
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

fix heads for rev 0

manifest hash: 7b2f4607f6c54b660d63ac35ba953576464e1511
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCofyyywK+sNU5EO8RAjkeAJ4rfOQ9HV+gpndsTzuoS6R3f+mzEQCfcb0P
IWhTz6XDpTWEkjzcK++mZ4k=
=mINY
-----END PGP SIGNATURE-----
2005-06-04 11:10:42 -08:00
mpm@selenic.com
3b426c1a49 Resolve bits from TAH
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Resolve bits from TAH

manifest hash: dc639d419de857b22da9f707cbb557c328eb12f5
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoRIaywK+sNU5EO8RAswQAKCiEcQ5RV3C2JZXgQBch28VO3NpSgCdEzcD
Td8bV8IKVUIXtvrcy1rCZTY=
=tAU7
-----END PGP SIGNATURE-----
2005-06-03 18:29:46 -08:00
mpm@selenic.com
63e6cb46d3 Replace tkmerge with hgmerge
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Replace tkmerge with hgmerge

hgmerge attempts to find and use merge, kdiff3, tkmerge, and diff+patch.
hg will use hgmerge unless overridden with HGMERGE

manifest hash: 9137a620df4b235e66343b0fd0dba87fe631546e
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoRGrywK+sNU5EO8RAi2VAJ9bh97ChGJymP/p8rvCuyNAMnk1bQCgrIGP
vYI6qlyWKQZ01ObUTAIg92o=
=+mRH
-----END PGP SIGNATURE-----
2005-06-03 18:27:55 -08:00
mpm@selenic.com
9fec0c0d80 mdiff.py: kill #! line, add copyright notice
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

mdiff.py: kill #! line, add copyright notice

manifest hash: acb4e14d5947d0fde5b89a874af0476773ee1cee
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoM9CywK+sNU5EO8RAizVAJ41dqQxxx8nouBxJMcFmoVRRo4GfACbB9RV
Xc0cqaoPVL7p87opPKjgNWw=
=HyjH
-----END PGP SIGNATURE-----
2005-06-03 13:44:34 -08:00
mpm@selenic.com
cac235fda2 hgweb.py: kill #! line, clean up copyright notice
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb.py: kill #! line, clean up copyright notice

manifest hash: a2910abe3f58687ccf55179ab37f66dee2b6e775
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoM71ywK+sNU5EO8RAil4AJ9edZ1FJ0WbikVBYBMNO+MldBRqnACfRtuH
Nw/BuBueQfEhaI3i+9+Q9/g=
=vV8+
-----END PGP SIGNATURE-----
2005-06-03 13:43:17 -08:00
mpm@selenic.com
886068ea40 Merge from tah 2005-06-03 13:32:37 -08:00
mpm@selenic.com
f7650114aa hg resolve: merge a given node into the working directory
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg resolve: merge a given node into the working directory

This is the first pass at working directory-based merges. Doing a
resolve adds a second parent to the working directory state for the
next commit.

manifest hash: 827b19995dd2d7686286da3b62c7d5fe3e0bc48c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoMSHywK+sNU5EO8RAnOkAJsHH9jviMJcQJ4JurFuSlrbIwKqRACdHgNC
kkfoAxX2E5jkuOeSJ1Hjalk=
=bdrT
-----END PGP SIGNATURE-----
2005-06-03 12:58:47 -08:00
mpm@selenic.com
b458eb50ea add 'm' state to dirstates
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

add 'm' state to dirstates

This state indicates that a file has been merged with resolve and must
be in the next commit.

manifest hash: dc90629b73056b671f7be3de0283039c96c9ca0f
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoMQSywK+sNU5EO8RAuxHAKCHckvSiLwegl5hbF5x5EeQg0MA2gCcCYD+
78Ol99Y9nk5ZA2bbYgM+AQw=
=vMOg
-----END PGP SIGNATURE-----
2005-06-03 12:56:50 -08:00
mpm@selenic.com
015cc81147 make diffdir default to dirstate.parents()
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

make diffdir default to dirstate.parents()

update various diffdir users to use default

manifest hash: aeca2b9da1aca278dd5e3f27cc2906667803577d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoMPcywK+sNU5EO8RAkY8AJ90UHQXnJnkG9PJKG7IsgPeOZ2WZACgiarS
HhS2zX3TRM9WdZHo5nLvZGw=
=7YyP
-----END PGP SIGNATURE-----
2005-06-03 12:55:56 -08:00
mpm@selenic.com
862bcc8767 teach commit about dirstate.parents()
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

teach commit about dirstate.parents()

manifest hash: 89374a15a1e680a251f1a084c18136cb27ad2b42
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoMOeywK+sNU5EO8RAj6rAJ9NBf0401gAlzA315m7gaEPeteaewCfe6A4
Bn3nm77acgIukB1ePfK1o1Y=
=P2y2
-----END PGP SIGNATURE-----
2005-06-03 12:54:54 -08:00
mpm@selenic.com
0e2281d551 teach rawcommit about dirstate.parents()
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

teach rawcommit about dirstate.parents()

manifest hash: 776f28b896f8de8c39c9edb0956faca78c1a827a
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoMN2ywK+sNU5EO8RAnJpAKCh5MVSMNlk1GRYPm7IOavhurYPLgCfYc9w
k4bTiV62lgoyItdmkynS1Jg=
=gVyk
-----END PGP SIGNATURE-----
2005-06-03 12:54:14 -08:00
mpm@selenic.com
f554f899b0 move repo.current to dirstate.parents()
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

move repo.current to dirstate.parents()

dirstate now tracks the parents for the working dir
add a parents command to show them

manifest hash: cd69237838c3f69f7937723c4a6803d47cb27cfa
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoMGuywK+sNU5EO8RAg5UAKCVLUrsJtkoIOTM+e0BLqEVN3Ni3gCeNDyy
ZF8jD728cl9K7S4sIN4gX4Y=
=P4bu
-----END PGP SIGNATURE-----
2005-06-03 12:46:38 -08:00
mpm@selenic.com
34a8455a78 fix repo locking
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

fix repo locking

We've actually got to assign the lock to a local variable, otherwise
it gets released immediately.

manifest hash: d55fc8858649c59ed9fa1f8cb90b63b33a71c223
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoMERywK+sNU5EO8RAgqwAKCPhmTOK/n5bjJ6Xh4mC9Q8mJDx4wCfZBGX
Uik+3sUcQRqgHjsP0fIjjiU=
=U1p0
-----END PGP SIGNATURE-----
2005-06-03 12:44:01 -08:00
mpm@selenic.com
2a4127e46c fix bad assumption about uniqueness of file versions
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

fix bad assumption about uniqueness of file versions

Mercurial had assumed that a given file hash could show up in only one
changeset, and thus that the mapping from file revision to changeset
was 1-to-1. But if two people perform the same edit with the same
parents, we can get an identical hash in different changesets.

So we've got to loosen up our uniqueness checks in addgroup and in
verify.

manifest hash: 5462003241e7d071ffa1741b87a59f646c9988ed
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoMDkywK+sNU5EO8RAg9PAJ9YWSknfFBoeYve/+Z5DDGGvytDkwCgoMwj
kT01PcjNzGPr1/Oe5WRvulE=
=HC4t
-----END PGP SIGNATURE-----
2005-06-03 12:43:16 -08:00
mpm@selenic.com
7189fac106 add back tempfile import
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

add back tempfile import

manifest hash: e6673585d42d0992230d23c8334a9e26eb94d34a
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCoMBAywK+sNU5EO8RAvTAAKCwlVzxvm9enBR+xMmkj2aRMEYkkwCfXUqT
SlEdijBZ9fnktzxadp7/evU=
=uL7e
-----END PGP SIGNATURE-----
2005-06-03 12:40:32 -08:00
mpm@selenic.com
788383bd38 make pull work for multiple heads
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

make pull work for multiple heads

add repository.heads()
teach remoterepository and hgweb about heads command
teach getchangegroup about multiple heads
break apart addchangegroup and merge (cleaning up merge saved for later)

after this change, it is now possible to pull and get multiple heads, but
not possible to merge the heads

manifest hash: 86fe3ede296254698fdd4c97df02944993ef2cbb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCn8SZywK+sNU5EO8RAkSvAJ9NOA4UZ3cFyyzymlYBZnV+PpGRcACeLL+R
PFaSgJHGKvxsXpvPYiZA0O0=
=L2Xr
-----END PGP SIGNATURE-----
2005-06-02 18:46:49 -08:00
mpm@selenic.com
beee203034 Beginning of multi-head support
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Beginning of multi-head support

Add revlog.heads()
Add heads command to list changeset heads

manifest hash: 50df6fffe59a40c19782e2c77c8077db026fde67
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCn7tFywK+sNU5EO8RAusWAJ9EojIxgqEEt8VZd5S+5Laj8tHV+ACfWLb5
TC7AnsoFGg50jAWF0EsofDA=
=nzyH
-----END PGP SIGNATURE-----
2005-06-02 18:07:01 -08:00
mpm@selenic.com
4a3f7fbb37 change dircache into dirstate
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

change dircache into dirstate

The dircache now tracks adds and removes directly

diffdir now makes a proper distinction between added and unknown files

Add a forget command to unadd files

Undo tries to fix up the state of just the files in the undone commit

Add and remove complain about files that are not in a proper state of
existence


manifest hash: ca0cd6abc5e119670acf11a54fefa2bc986eadf3
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCn7TRywK+sNU5EO8RAhnSAKC2oHg1HJOCGsvpUYj4SBEq0HmuJQCgr5gl
jEBTs5AFD5IhF73YAgrcnkE=
=prQA
-----END PGP SIGNATURE-----
2005-06-02 17:39:29 -08:00
Thomas Arendsen Hein
344b9ab253 ui.warn can use more than one argument like the other ui methods. 2005-06-02 07:06:29 +01:00
mpm@selenic.com
1f5ef11c2b hg checkout: refuse to checkout if there are outstanding changes
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg checkout: refuse to checkout if there are outstanding changes

This is a stop-gap until I make the working dir logic smarter

manifest hash: a3f6adcb7eecec294000039057d59771958f4186
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCnnrKywK+sNU5EO8RAtqBAJwPQQrW5GhjMP9HMkFtfD7qhqxIcgCfXvA4
oXHO13uzBn5JOaTH3KwsMbQ=
=IzTY
-----END PGP SIGNATURE-----
2005-06-01 19:19:38 -08:00
mpm@selenic.com
9c2cf95fb6 merge: catch unexpected responses
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

merge: catch unexpected responses

This dumps the data received from the remote server in case we fail to
parse its output.

manifest hash: da5232649a0e02645bccd8b50665d9c3e247fdc2
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCnkMRywK+sNU5EO8RApAGAKCw7ZHF4YUaTi3ychbUe5Lr47OsCwCfUqKg
lxA/sgDmeDMbmwbV5S+Beik=
=y6TB
-----END PGP SIGNATURE-----
2005-06-01 15:21:53 -08:00
mpm@selenic.com
8f7a14f45c hg annotate: actually annotate the given version
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg annotate: actually annotate the given version

Bug spotted by Edouard Gomez

manifest hash: 3e29a7a8eb70b92483958ceffe94045a82899c61
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCnkF7ywK+sNU5EO8RAvvnAJsFjkpFdzQ+cPyrvQE25V16/z3dBQCeIyzf
S/N2S/RcfFd9Ca56Xvf/jAM=
=0qMq
-----END PGP SIGNATURE-----
2005-06-01 15:15:07 -08:00
mpm@selenic.com
51af397ad7 hgweb: import ui
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb: import ui

Fix from Edouard Gomez

manifest hash: 6157f19523d28465a6f0c49adec96c17aa9df118
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCnj3YywK+sNU5EO8RAgHBAJ0b+oHTOyDVDtC5vsQvAzpn0saRAACfYmAU
5q/mDghl/UWYGiSAY1i/l0w=
=i9MB
-----END PGP SIGNATURE-----
2005-06-01 14:59:36 -08:00
mpm@selenic.com
dd6fb288d8 catch TERM signal in command processor
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

catch TERM signal in command processor

This keeps kill from interrupting a transaction without cleanup.

manifest hash: c50091696a3396dfed5c3168bd9e0d94c457a04b
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCniLNywK+sNU5EO8RAvepAKCCnEX7vPheIyOu2IvV6dDahdFMWACeMih6
E2R3rA/MGACxG9HpSNH6lak=
=HR1s
-----END PGP SIGNATURE-----
2005-06-01 13:04:13 -08:00
mpm@selenic.com
f1f83067d7 commands: migrate status and branch
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

commands: migrate status and branch

manifest hash: 7d893a81a81539173fc74d86152062a1a70bed13
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCnhESywK+sNU5EO8RAlBJAKCmv2gHefMOXfX/UUCy1tfV0cOqOQCfbeX8
oaT15B7GBL2lcalGrPXkzY8=
=8gVe
-----END PGP SIGNATURE-----
2005-06-01 11:48:34 -08:00
mpm@selenic.com
ffc0d3cdc2 commands: better argument processing, per-command help
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

commands: better argument processing, per-command help

This passes command line arguments as positional arguments rather than
as a list and attempt to catch exceptions if the arguments don't match up.

It also adds 'hg help [cmd]' which prints the syntax and docstring for
the given command.

manifest hash: cef3ac7076f99fce4265a5dc7acb57fb03d93270
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCnghXywK+sNU5EO8RAv+5AJ9MfCCRxE+pNu3i44v5I4IyQoRaiQCeNqEK
wBzAiP+Q6F/9PL2xOrrZGHw=
=EYdk
-----END PGP SIGNATURE-----
2005-06-01 11:11:19 -08:00
mpm@selenic.com
c2d54398a7 commands: fix up some help strings
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

commands: fix up some help strings

manifest hash: e9e6061cd37d77e8061cab6a0cd3ca701e6900d7
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCngG/ywK+sNU5EO8RAnhCAJ422e7LecJ5D/15I5PcQZxGvsgvvQCeOWIb
7LTyyAYDeht6yOQCdLWmXIE=
=bjQG
-----END PGP SIGNATURE-----
2005-06-01 10:43:11 -08:00
mpm@selenic.com
4e26999123 hg undo: fixup working dir state
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg undo: fixup working dir state

manifest hash: 60fd7a5621f7c4e87c7c36097aaf11b22e7ee0b4
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCngETywK+sNU5EO8RAiC/AKChvIgy61YfOLJcTQg5BKkTLLErRgCgnJMr
+xb+XsjeNfK+83MzeuE8UOk=
=EIlj
-----END PGP SIGNATURE-----
2005-06-01 10:40:19 -08:00
mpm@selenic.com
4cc432f9f1 Beginning of new command parsing interface
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Beginning of new command parsing interface

This adds commands.py, with a primary interface dispatch(args)

Dispatch searches a table of known commands, handles switches, sets up
a repo object if appropriate, and dispatches the command.

It also handles KeyboardInterrupt and can handle similar exceptions in
the future.

If the command is unknown, it falls through to the current command handler.

Commands currently handled by the new scheme: help, init, and annotate

manifest hash: 134cd032c880985e3f92f82efb8b629dd862ba4c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCnXEGywK+sNU5EO8RAuDAAJ9q7K4w7qGVWv1NWjCPFGO/UJc6VQCdEhMQ
sBBlSRzah9QPy8K94catZyg=
=wuRf
-----END PGP SIGNATURE-----
2005-06-01 00:25:42 -08:00
mpm@selenic.com
91589c0bf7 revlog: remove some unnecessary imports
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

revlog: remove some unnecessary imports

manifest hash: 63c887eceb54c8bd5a10692a905fb79079057246
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCnXASywK+sNU5EO8RAkxVAJ92do7puoVbgHE2whbow4MGKKv4pQCeMmms
bt2r/9oVoFclTh2dL3SaQ2Q=
=Jeuv
-----END PGP SIGNATURE-----
2005-06-01 00:21:38 -08:00
mpm@selenic.com
5064b78681 Move ui class to its own module
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Move ui class to its own module

manifest hash: f75c8f9cdfe16f143ab633d0072c14ba88ac88be
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCnVxxywK+sNU5EO8RAgPgAJ48p7w4Do/saCC8WkBvHj/rdnoiEgCgrSs9
Wu1fOSgST3rn/2JpZAdFRdA=
=91tt
-----END PGP SIGNATURE-----
2005-05-31 22:57:53 -08:00
mpm@selenic.com
79bacd4c40 hg rawcommit command
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hg rawcommit command

From: Christopher Li <hg@chrisli.org>

This allows direct access to the commit command, primarily for
importing from other SCMs.

manifest hash: bea39fa8207582c9fa7ba0904721eb5113c61cf4
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCnUinywK+sNU5EO8RAhWqAJ9PiafRbfEIA3VsO07BbGZr5adNvgCfT2k7
blYTdkrIiRzzCxn6yPq8Yu4=
=o8k0
-----END PGP SIGNATURE-----
2005-05-31 21:33:27 -08:00
mpm@selenic.com
c6171242df hgweb: add template filters, template style maps, and raw pages
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb: add template filters, template style maps, and raw pages

Template filters:

in templates, you can now specify a chain of filters like

#desc|firstline|escape#
#desc|escape|addbreaks#
#date|age#

to specify how you'd like raw text (or whatever) to be transformed.

Template style maps:

add ;style=foo to a URL and we'll use templates/map-foo if it exists.

Raw output:

Together, these two features make it east to implement raw
downloadable files and patches. Simply link to the same page with
style=raw and present the output as unfiltered text/plain with that
template.

manifest hash: 5954a648b3d6b4e6dc2dcd1975f96b4b0178da2a
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCnUMyywK+sNU5EO8RAkKjAJ9h9JElSCbWBPUnL+koCSDxgo38AwCgrccM
0qwyKdh/fUNglICxSh3HBNA=
=Svlo
-----END PGP SIGNATURE-----
2005-05-31 21:10:10 -08:00
mpm@selenic.com
4c466962c7 annotate: memory efficiency
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

annotate: memory efficiency

Keep track of how many times a given ancestor is referenced and delete
the annotation information after it's no longer relevant. This tends
to reduce the number of cached revisions to just a couple.

manifest hash: 281e48b67ce310e355bed1615e0f16a643850f56
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCnJjyywK+sNU5EO8RAkZ1AKCugPjkRgwVB+71amZf8H5dLCbNvgCfePIB
4FHI1c9IOEzHUNkYPDGqt+0=
=OnFo
-----END PGP SIGNATURE-----
2005-05-31 09:03:46 -08:00
mpm@selenic.com
8037bd584f annotate: deal with merges
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

annotate: deal with merges

This rewrite of the annotate code deals with merges:
- - find all ancestors
- - sort ancestors topologically
- - for each ancestor, pairwise annotate with parents
- - keep a cache of annotations for efficiency

manifest hash: b960d9b9c6a7f6ba351c97675b00a1dd3004dcf1
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCnJclywK+sNU5EO8RAphZAKCkUuHh4jEJz7YwD9uzCT76GaSR/wCfUVUQ
VbGna/9jrOAFlrB3mZ3e4qg=
=yDFy
-----END PGP SIGNATURE-----
2005-05-31 08:56:05 -08:00
mpm@selenic.com
49b6b62ead hgweb: fix tip so that it doesn't need refreshing
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb: fix tip so that it doesn't need refreshing

manifest hash: 5bf1837a29c5612872ab206053f9d15e899e3664
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCm1mhywK+sNU5EO8RAjdQAKCLrRFv2/rfHYNI2tFvF5HKINaTjQCfRhxo
ca39aZ0SaNeCBqc1nMPOTcw=
=4pHG
-----END PGP SIGNATURE-----
2005-05-30 10:21:21 -08:00
mpm@selenic.com
74463f46b4 hgweb: add view-only support
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb: add view-only support

Turning on hgweb.viewonly prevents pulls. This is a good idea for
machines with limited CPU/bandwidth.

manifest hash: 68d1d04dad83743f3326e8b4f2e51387787f06c0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCm0tnywK+sNU5EO8RAm1fAJ9rNjWOr+e3UosFyauBSEgyie8meACeKwjc
QqbfuXPLg/+TKr2HIrC3DA4=
=i8Yj
-----END PGP SIGNATURE-----
2005-05-30 09:20:39 -08:00
mpm@selenic.com
e4703accd9 hgweb: make age() smarter
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb: make age() smarter

manifest hash: 3aa19b2960d81843e573a8ce79a242defeb80f6a
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCm0JYywK+sNU5EO8RAvLUAKCJbWqvnzfirS64LbaWbBaWlkfbfACcCyGq
Y9UMZRGDBGCEIVu9f/F/F6U=
=+ULo
-----END PGP SIGNATURE-----
2005-05-30 08:42:00 -08:00
mpm@selenic.com
55d14e5d8d Changes to network protocol
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Changes to network protocol

Stream changes at the delta level rather than at whole delta groups
 this breaks the protocol - we now send a zero byte delta to indicate
 the end of a group rather than sending the entire group length up front
Fix filename length asymmetry while we're breaking things
Fix hidden O(n^2) bug in calculating changegroup
 list.append(e) is O(n), list + [element] is not
Decompress chunks on read in revlog.group()
Improve status messages
 report bytes transferred
 report nothing to do
Deal with /dev/null path brokenness
Remove untriggered patch assertion

manifest hash: 3eedcfe878561f9eb4adedb04f6be618fb8ae8d8
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCmzlqywK+sNU5EO8RAn0KAJ4z4toWSSGjLoZO6FKWLx/3QbZufACglQgd
S48bumc++DnuY1iPSNWKGAI=
=lCjx
-----END PGP SIGNATURE-----
2005-05-30 08:03:54 -08:00
mpm@selenic.com
32cfa6a5d1 merge: add count of new manifests, files, and revisions
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

merge: add count of new manifests, files, and revisions

manifest hash: ff29e3124693a0172ac936fac03fd73cc91778f5
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCmfrjywK+sNU5EO8RAnHZAJ4gwnv4QUipIcP2PhyFVS1lXh9TQwCgipSi
r+6d9lUHu2U9UJGFkJPyi/4=
=Caod
-----END PGP SIGNATURE-----
2005-05-29 09:24:51 -08:00
mpm@selenic.com
afc4fce136 merge: short-circuit search for merge into empty repo
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

merge: short-circuit search for merge into empty repo

We should have 3 cases for merge:

- - we have no changesets
- - we have less than half the changesets
- - we have more than half the changesets

For no changesets, we can immediately tell that we need everything.
This happens when we initially branch from a remote repo, so we simply shortcircuit the search and grab everything from the root

When we're actually tracking a project, we should generally have most
of the changesets, so the current search algorithm should minimize
searching.

It should rarely occur that upstreams gets far ahead of us, in which
case, we suffer a longer search.

manifest hash: eabd55841b03225176ea72b985aad36431a438a9
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCmfajywK+sNU5EO8RAuyKAKCf7Nw6XSK5HEzbrZae7Q06e3dk4wCgjbK6
YUTEfkpPP1h3mNHIHRKz+aI=
=eGMq
-----END PGP SIGNATURE-----
2005-05-29 09:06:43 -08:00
mpm@selenic.com
0c92a53dcc Fix two minor merge bugs
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fix two minor merge bugs

Fix variable name for printing manifest node
Trouble with empty between lists from remote repos

manifest hash: 000e9267b17c870f673210c8aae50d99e0e5b72b
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCmOmtywK+sNU5EO8RAs7AAJ9dVyOn5Ne+EopdUqOe8IKVH86R3wCfUhNO
CLpuRURCB5Ang19YZ5MLGeg=
=NF1T
-----END PGP SIGNATURE-----
2005-05-28 13:59:09 -08:00
mpm@selenic.com
68acd15143 Add $HGEDITOR hook and example script
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Add $HGEDITOR hook and example script

This hook makes signing commits easier.

manifest hash: ba8723e4b52323528dfa681a58658a5b4b2c02e4
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCmONFywK+sNU5EO8RAj87AKCEa5r9EepdYPiYRGo/jAjjwCIcVACfeBPe
QDInXr7karo6/P8d2bM/tVU=
=rxIQ
-----END PGP SIGNATURE-----
2005-05-28 13:31:49 -08:00
mpm@selenic.com
868bdf2214 Add manifest hash to commit messages for easy signing
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Here's an example:

This is the current manifest hash:

 e06d11165178d03c296ea7e7854f91e612a8d6bf

It was copied from the HG: comment lines that are added to the commit.
Then I wrote this commit message, signed it, then closed the commit.

The manifest hash is a hash of all the files in the project together
with the hashes of manifest's parents. Thus, signing the manifest hash
allows us to verify the entire state of project at the time of the
commit.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCmMrcywK+sNU5EO8RAoKwAJ4gPz2dI1Xh44N3tra43clUGhLVggCbBxuu
8pBZt85SA9ty39+e2+hL9WI=
=t/xS
-----END PGP SIGNATURE-----
2005-05-28 11:48:00 -08:00
mpm@selenic.com
b43cebfe40 Improved binary diff from Christopher Li
This is more intelligent/efficient by combining neighboring inserts,
replaces and deletes. Passes test of converting kernel repo, but
doesn't appear to substantially affect compression or performance.
2005-05-27 19:38:34 -08:00
mpm@selenic.com
dbf12abbe4 hgweb: Sort tags by revision number 2005-05-27 13:30:35 -08:00
mpm@selenic.com
9a234b70ad hgweb: Fix navigate to 0 bug 2005-05-27 12:45:41 -08:00
mpm@selenic.com
57a99c80af Change hg: protocol name to http: and http: to old-http:
hg: will continue to work for a bit
old-http: will be phased out soon
2005-05-27 12:26:14 -08:00
mpm@selenic.com
d5d19174b2 hgweb: make navigation of changesets a bit nicer 2005-05-26 22:47:43 -08:00
mpm@selenic.com
1dd7e5c920 hgweb: alternating colors for multifile diffs 2005-05-26 20:37:05 -08:00
mpm@selenic.com
3d6a44cc6c trivial tweak to merge3 2005-05-26 18:20:24 -08:00
mpm@selenic.com
59375bb06a hg diff: fix missing final newline bug 2005-05-26 13:02:28 -08:00
mpm@selenic.com
546aa0fdbb hgweb: add tags links and manifest links
This adds a simple new tags page to browse by tag, adds the tag link
everywhere, and adds manifest links to the tags and changelog pages.
2005-05-26 12:24:01 -08:00
mpm@selenic.com
474171f31c hgweb: don't blow up on search for unknown keys 2005-05-26 10:11:05 -08:00
mpm@selenic.com
7ac7091e05 Add tag/rev/node search to hgweb 2005-05-26 10:08:47 -08:00
mpm@selenic.com
9be61ee466 Make fancyopts handle no arguments
This lets hg serve work with no args.
2005-05-26 09:56:20 -08:00
mpm@selenic.com
f86593199d Make undo and recover friendlier
Add them to the help display, have them report failure
2005-05-26 09:48:50 -08:00
mpm@selenic.com
683f21be6a Implement recover and undo commands
This adds an interface to transaction to rollback with a given journal file
and commands to rollback an existing .hg/journal or .hg/undo.
2005-05-26 09:04:54 -08:00
mpm@selenic.com
0058e326b8 Simply repository locking
This is a first pass at implementing repo locking. Next up, journal
recovery and undo.
2005-05-26 08:53:04 -08:00
mpm@selenic.com
7bd4038f51 Add 'hg serve' command for stand-alone server
This adds a simple stand-alone web server mode to hg that exports the
current repo for merging and browsing. The default port is 8000.
2005-05-25 16:27:10 -08:00
mpm@selenic.com
949217673f Install the templates where they can be found by hgweb.py
This ought to use package_data but that doesn't exist in Python 2.3.
So we do a hack of install_data and use glob.

This also adds templatepath() to hgweb.py which finds the templates
relative to hgweb.py's location.
2005-05-25 16:21:06 -08:00
mpm@selenic.com
2424ff846c Fix some broken parent links in hgweb 2005-05-25 09:04:38 -08:00
mpm@selenic.com
7400685c33 Merge from hgweb 2005-05-25 08:54:54 -08:00
mpm@selenic.com
34f1196e86 Bail on attempts to do an empty commit 2005-05-25 08:53:34 -08:00
mpm@selenic.com
a9d4acea6a Pass filename to $HGMERGE
This lets the merge program be slightly more user-friendly
2005-05-24 23:34:06 -08:00
mpm@selenic.com
0616f6d8db Improve pruning of branches in outstanding changeset algorithm
These changes make the client keep track of what it's seen more
carefully to avoid some redundant requests.
2005-05-24 23:13:25 -08:00
mpm@selenic.com
dba1a9fc73 A new ancestor algorithm
The old ancestor algorithm could get fooled into returning ancestors
closer to root than it ought to. Hopefully this one, which strictly
orders its search by distance from room, will be foolproof.
2005-05-24 23:11:44 -08:00
mpm@selenic.com
cbe151d218 Handle merge with deletions
If you merge with a repo that has deleted a file after editing it, hg
attempted to resolve the file. This (correctly) resulted in hg verify
errors because the resolved version didn't show up in the manifests.

This moves the manifest resolution before file resolution and decides
which files to resolve based on the (partially) resolved manifest.
After files are resolved, the final manifest is committed.
2005-05-24 20:30:35 -08:00
jake@edge2.net
8778053fe5 changed pos to rev for changelog cmd, changed & to ; 2005-05-24 07:42:05 -07:00
mpm@selenic.com
a2b716acff Fix transaction handling bug by reverting fileopener change 2005-05-23 22:14:41 -08:00
mpm@selenic.com
e4397937b5 Prettify the web interface
Add header, footer templates
Add null parent handling
Combine files and directories
Add parity flag for alternating line colors
Add line numbers to filerevision
2005-05-23 20:57:48 -08:00
mpm@selenic.com
84eb10c391 Minor safety checks to manifest diff 2005-05-23 16:05:48 -08:00
mpm@selenic.com
61d83d35a2 Revamped templated hgweb 2005-05-23 16:00:02 -08:00
mpm@selenic.com
97321927a5 Merge from hgweb 2005-05-22 08:13:38 -08:00
jake@edge2.net
74291d2018 added annotate
fixed error page to get tmpl_dir
2005-05-21 22:43:14 -07:00
jake@edge2.net
3e268da5fc change template to a generator
add write call to output generator
2005-05-21 20:31:54 -07:00
jake@edge2.net
b58f1149d5 fix problem with non wrapping file list
fix file list not appearing in checkin
2005-05-21 16:21:16 -07:00
jake@edge2.net
318e83d25f added template support for some hgweb output, also, template files for
the parts that have been converted
2005-05-21 16:13:42 -07:00
mpm@selenic.com
e7e047fdee Add safety checking to mpatch 2005-05-21 13:14:58 -08:00
jake@edge2.net
1f51ebafe5 making hgweb class 2005-05-21 11:46:16 -07:00
jake@edge2.net
e4aeedbc5c moving hgweb to mercurial subdir 2005-05-21 11:35:26 -07:00
mpm@selenic.com
a264d87bbd Fix braindamaged import in mdiff. 2005-05-20 19:19:25 -08:00
mpm@selenic.com
b4d3ada8cd Remove some debugging code from lazyparser 2005-05-20 17:50:11 -08:00
mpm@selenic.com
36152aee36 Remove python version of the patches code 2005-05-20 17:49:25 -08:00
mpm@selenic.com
4e35c669ab Add a function to return the new text from a binary diff 2005-05-20 17:42:29 -08:00
mpm@selenic.com
ea4eabe690 Add code to retrieve or construct a revlog delta 2005-05-20 17:40:24 -08:00
mpm@selenic.com
484dde5595 Add fileopener to move some pathname knowledge from filelog to repository 2005-05-20 17:38:01 -08:00
mpm@selenic.com
a8e8d775f0 Make revision code slightly faster 2005-05-20 17:36:02 -08:00
mpm@selenic.com
a3b0765ce7 Only use lazy indexing for big indices and avoid the overhead of the
lazy index in the small index case.
2005-05-20 17:35:20 -08:00
mpm@selenic.com
06820561ca Make lazyindex load slightly faster 2005-05-20 17:34:04 -08:00
mpm@selenic.com
24c5c243a2 Simplify checkout slightly, replace checkdir with os.makedirs 2005-05-20 17:33:24 -08:00
mpm@selenic.com
066f1e4183 Sort files on check-in for good I/O patterns 2005-05-20 17:31:55 -08:00
mpm@selenic.com
8b0e7913c6 Make compression more intelligent:
- we don't attempt to compress things under 44 bytes (empirical)
- we check whether larger objects actually compress
- we tag objects to indicate their compression
  NUL means uncompressed and starts with NUL
  x means gzipped and starts with x (handy)
  u means uncompressed, drop the u
2005-05-20 17:31:12 -08:00
mpm@selenic.com
c60581071a Move hg from storing files in data with base64 encoding to full
pathnames with .i and .d extensions. This means we naturally get good
FS layout, and cp and tar fix things up nicely rather than pessimizing
layout.
2005-05-20 17:27:21 -08:00
mpm@selenic.com
836655a3c5 Annotate was being too clever trying to work in place, and triggering
its assert. Simplify it, fix it, and speed it up a tiny bit.
2005-05-20 17:22:02 -08:00
mpm@selenic.com
7a540c10d5 Warn if we fail to truncate something 2005-05-20 17:20:39 -08:00
mpm@selenic.com
aea9850302 Make prompting go
Minor UI tweaking
Add merge prompting
2005-05-18 18:25:37 -08:00
mpm@selenic.com
fb1218fe40 Add paranoia to diff code 2005-05-18 16:59:54 -08:00
mpm@selenic.com
21089cd87c Add iterator to the lazymap code 2005-05-18 16:47:49 -08:00
mpm@selenic.com
785f7947d7 Add updated merge3 code 2005-05-18 16:45:44 -08:00
mpm@selenic.com
2bbb8b5a72 Beginnings of transaction undo support 2005-05-18 16:31:51 -08:00
mpm@selenic.com
7e5280f30b Refactor merge code
Delete old code
Fix calculation of newer nodes on server
Fix branch recursion on client
Fix manifest merge problems
Add more debugging and note messages to merge
2005-05-18 16:29:39 -08:00
mpm@selenic.com
060e7fe13f Fix manifest merge swap bug
Add more debug info to merge
2005-05-17 13:38:21 -08:00
mpm@selenic.com
f2ebab86cb Friendlier exceptions for unknown node errors 2005-05-17 12:20:29 -08:00
mpm@selenic.com
ca952e3eda Fix merge bug, I hope 2005-05-17 11:40:45 -08:00
mpm@selenic.com
6795b63eb7 More useful message on broken addgroup chain 2005-05-17 11:40:26 -08:00
mpm@selenic.com
77028dbcc6 Add -q quiet option
Make -d and -v do something
Add a bunch of debug and note messages
2005-05-17 11:06:59 -08:00
mpm@selenic.com
e85a2a9d28 Gotos are embarrassing. 2005-05-17 10:13:00 -08:00
mpm@selenic.com
08e7e95781 Add basic annotation support
filelog.annotate() will get the change number on each line.

Singed-Off-by: Christopher Li<hg@chrisli.org>
2005-05-17 01:12:30 -08:00
mpm@selenic.com
f16efef9d1 Add "HG: merge resolve" to editor text for merge 2005-05-17 01:07:57 -08:00
mpm@selenic.com
619ec7bc34 Fix bug in lazymap code
Add a sanity check to addgroup
2005-05-17 01:07:01 -08:00
mpm@selenic.com
1bf1e8bf4c Add lazy{parser,index,map} to speed up processing of index files 2005-05-17 00:33:22 -08:00
mpm@selenic.com
8dcd538ef7 Fix a bug in patches() if there's not text and no patch 2005-05-17 00:32:18 -08:00
mpm@selenic.com
00b4996d46 Change revlog to use new patch code 2005-05-16 22:10:02 -08:00
mpm@selenic.com
f161c8bdc8 Add an O(m + nlog n) patching extension 2005-05-16 22:08:33 -08:00
mpm@selenic.com
e56388d1b4 Add mdiff.patches to speed up applying thousands of patches to the manifest 2005-05-14 10:27:14 -08:00
mpm@selenic.com
7c6f4b49c8 Add tag support 2005-05-13 13:12:32 -08:00
mpm@selenic.com
d9094f35ef Fix up a bunch of bugs in the new merge code
Move getchangegroup/addchangegroup to generators
2005-05-13 11:47:16 -08:00
mpm@selenic.com
264f689db9 Diff in subdirectories from Jake Edge
Dates in diff
Fix O(n^2) behaviour of manifest diff
Add a/ and b/ to work with patch -p1
2005-05-12 17:54:55 -08:00
mpm@selenic.com
f6de60c79e Add hg:// protocol
Fix some of the getchangegroup logic
2005-05-12 01:21:58 -08:00
mpm@selenic.com
27770f7f5d Add getchangegroup code to efficiently calculate and request a changegroup 2005-05-11 15:06:41 -08:00
mpm@selenic.com
1171a0a7b6 From: Thomas Arendsen Hein <thomas@intevation.de>
Good. Attached is a patch which also tries to use $EMAIL as the
commit user and removed a try/except by using os.environ.get.
2005-05-11 14:38:26 -08:00
mpm@selenic.com
40a6faf20b Fix resolve bug putting unchanged files in resolve cset 2005-05-11 09:44:12 -08:00
mpm@selenic.com
8bd85e1add Add changegroup support 2005-05-10 00:40:49 -08:00
mpm@selenic.com
22ff07bd9b Fix recursion depth trouble with ancestor algorithm 2005-05-10 00:34:57 -08:00
mpm@selenic.com
af712781e7 Fix occassional diff bug with manifests 2005-05-10 00:33:48 -08:00
mpm@selenic.com
60afa3551c Attempt to recover journal automatically 2005-05-10 00:32:05 -08:00
mpm@selenic.com
97820ba3c6 Fix multiple changes to file per transaction 2005-05-10 00:31:00 -08:00
mpm@selenic.com
9bc9418a12 Fix truncate logic for indices again 2005-05-07 16:33:31 -08:00
mpm@selenic.com
c99659b446 Date is an int as a string in changelog 2005-05-07 16:33:09 -08:00
mpm@selenic.com
90b1458af6 Move hex/bin bits to revlog
Handle lookup of rev -1 of changelog
2005-05-07 16:12:31 -08:00
mpm@selenic.com
8e1b58ff84 Add smart node lookup by substring or by rev number 2005-05-07 16:11:36 -08:00
mpm@selenic.com
e10ce18d5b unidiff: punt on comparing empty files 2005-05-07 16:10:50 -08:00
mpm@selenic.com
ec57dd3c61 Support for 0, 1, or 2 diff revs 2005-05-07 09:27:52 -08:00
mpm@selenic.com
6d687f705b Add diffrevs function to compare two nodes 2005-05-06 09:09:35 -08:00
mpm@selenic.com
daf47e9d59 Fix up commit arg breakage 2005-05-05 15:20:56 -08:00
mpm@selenic.com
e36ca808fb Make diffdir take a revision argument 2005-05-05 15:05:50 -08:00
mpm@selenic.com
cd521a6348 Simplify integrity checking
More fiddling with transaction truncate points (still untested)
2005-05-04 22:51:25 -08:00
mpm@selenic.com
fc0d37860b Fix corruption from manifest.listcache optimization
Put the remove edit text in the right place
2005-05-04 22:47:25 -08:00
mpm@selenic.com
1fb1f1ae9a The actual hg remove fix from Thomas Hein 2005-05-04 15:42:30 -08:00
mpm@selenic.com
1e4e38aea7 From: Thomas Arendsen Hein <thomas@intevation.de>
mercurial 0.4d had the same problems with removing files, but
attached is a patch which fixes that problem.

The key change is in dircache.remove():
 del self[f] should have been del self.map[f]

This error was hidden by the 'except: pass' statement.
2005-05-04 15:32:16 -08:00
mpm@selenic.com
e35c6e552f Fix network pull of repo files with "%" in their base64 encoding. 2005-05-04 10:07:10 -08:00
mpm@selenic.com
070c0db3c5 Fix off-by-one truncation in transaction rollback. 2005-05-04 09:33:46 -08:00
mpm@selenic.com
89e337b327 Fix empty transaction destruction 2005-05-04 09:32:39 -08:00
mpm@selenic.com
78a55d241c Delete journal on destruction even if there are no entries to replay. 2005-05-04 09:30:56 -08:00
oxymoron@cinder.waste.org
c7e0bb4f93 Fix linking of changeset revs when merging 2005-05-03 23:37:43 -08:00
mpm@selenic.com
b713cdf587 Ignore empty ignore patterns 2005-05-03 18:51:52 -08:00
mpm@selenic.com
45bf6cd115 Fix exception handling for reading current working version 2005-05-03 18:36:16 -08:00
mpm@selenic.com
62cccd42a6 Handle nullid better for ancestor 2005-05-03 18:35:03 -08:00
mpm@selenic.com
ca8cb8ba67 Add back links from file revisions to changeset revisions
Add simple transaction support
Add hg verify
Improve caching in revlog
Fix a bunch of bugs
Self-hosting now that the metadata is close to finalized
2005-05-03 13:16:10 -08:00