Commit Graph

392 Commits

Author SHA1 Message Date
Martin Geisler
608c008186 cmdutils: fix code style 2010-07-21 09:43:45 +02:00
Nicolas Dumazet
48c3dffac9 log: document the different phases in walkchangerevs 2010-07-20 14:32:33 +09:00
Nicolas Dumazet
13f83afe55 log: slowpath: only walk specified revision range during preparation
Even with --removed, it does not make sense to examine changesets outside
of the revision range that was specified by the user: the last phase only
yields a subset of (revs), preparation phase hence only has to examine
(revs) to fill correctly fncache.
2010-07-20 14:13:33 +09:00
Martin Geisler
f3e224e1d7 cmdutil: fix accidental name clash with revrange function
The revrange function was used further up, and when a local variable
is defined with the same name, the earlier call to revrange becomes a
'local variable used before assignment' error.

The clash was introduced in 3544b3baebb0.
2010-07-19 00:41:41 +02:00
Nicolas Dumazet
8b45506535 log: slowpath: do not read the full changelog
When in the slowpath, we are examining _all_ changesets in revs.
We need to order reads so they happen increasingly for I/O performance.

Increasing windows were used to read changelog backwards in a windowed manner,
reading the changelog forward inside each window. But since no revision range
was specified, it was equivalent to reading the full changelog, even if a
single revision was passed to the commandline.

When --removed is used, we _need_ to scan all changesets, but if we're only
looking for file patterns, this is not necessary and we can stick to
the revspec that was given to us.
2010-07-04 18:07:30 +09:00
Nicolas Dumazet
93f72c67e1 log: remove increasing windows usage in fastpath
The purpose of increasing windows is to allow backwards iteration on the
filelog  at a reasonable cost.
But is it needed?
 - if follow is False, we have no reason to iterate backwards.
   We basically just want to walk the complete filelog and yield all revisions
   within the revision range. We can do this forward or
   backwards, as it only reads the index.
 - when follow is True, we need to examine the contents of the filelog, and to
   do this efficiently we need to read the filelog forward.
   And on the other hand, to track ancestors and copies, we need to process
   revisions backwards. But is it necessary to use increasing windows
   for this?
   We can iterate over the complete filelog forward, stack the revisions, and
   read the reversed(pile), it does the same thing with a more readable code.
2010-07-03 18:11:15 +09:00
Nicolas Dumazet
3ac31c1176 log: refactor: test for ranges inside filerevgen 2010-07-03 18:01:54 +09:00
Nicolas Dumazet
c470caa65c log: refactor: compute the value of last outside of filerevgen 2010-07-03 17:58:48 +09:00
Mads Kiilerich
812bb21f4d log: follow filenames through renames (issue647)
In commands.log a displayer was initialized from
cmdutil.show_changeset() with the initial matchfn (which designates
the specified files which only is correct in the highest revision in
the range). prep() is handed the correct list of files, but
displayer.show() didn't use that list but keept using the original
matchfn.

The matchfn argument to cmdutil.show_changeset() wasn't specified in
other places and is only used in .show(), so now we give the matchfn
as an optional parameter to .show().

We do however still have to detect --patch and --stat from opts in
show_changeset() and let it imply a matchall, but that can now be
overruled with the new .show() matchfn parameter.
2010-06-29 12:12:34 +02:00
Simon Howkins
b6970b73cd heads: fix templating of headers again (issue2130)
(tweaks and test by mpm)
2010-06-24 15:18:47 +01:00
Simon Howkins
f313e6ccd4 cmdutil: only output style header once in non-buffered mode (issue2130) 2010-06-24 15:18:47 +01:00
Matt Mackall
5efb5b5080 revrange: fix up empty query again 2010-06-20 14:21:47 -05:00
Matt Mackall
2d126f9f2e revrange: attempt to parse old-style queries as a first pass 2010-06-19 13:00:01 -05:00
Dirkjan Ochtman
af6b696f0f move working dir/dirstate methods from localrepo to workingctx 2010-06-07 20:03:32 +02:00
Matt Mackall
97e2d2bcdb revset: fix test failure with qfinish 2010-06-04 22:54:43 -05:00
Matt Mackall
5de34fa30a walkchangerevs: allow empty query sets 2010-06-03 18:00:15 -05:00
Matt Mackall
959774dfd8 revset: hook into revrange 2010-06-01 11:18:57 -05:00
Matt Mackall
86ebd43d71 remoteui: move from cmdutil to hg 2010-06-01 11:18:57 -05:00
Alexander Solovyov
b4af7f7817 cmdutil: cleanup imports 2010-05-27 22:50:04 +03:00
Peter Arrenbrecht
10bda79606 rename: make --after work if source is already in R state
I routinely want to use `hg addrem` and then fix up missed renames
manually using `hg mv -A`. This patch allows me to record such
renames from a source in state R to a target in state A.
2010-05-26 16:16:47 +02:00
Matt Mackall
a02b5a5fd1 commands: initial audit of exit codes
bisect: clarify None return
bundle: return 1 on no changes
clone: return result code
copy: limit errors to 0/1
commit: return 1 on no changes
forget: return 1 on errors
grep: return 1 if no match found
remove: return 1 on errors
resolve: return 1 if something fails to resolve
rollback: return 1 if no rollback data
2010-05-15 17:48:49 -05:00
Steve Losh
cbd3276a2b cmdutil: Warn when trying to copy/rename --after to a nonexistant file.
Currently running 'hg rename --after foo.txt bar.typo' is a silent no-op.  This patch adds a warning.  It also updates the copy and rename tests.

No actual functionality is changed.

fixes issue 1822
2010-05-01 18:39:40 -04:00
Yuya Nishihara
539b379b8c log: add --stat for diffstat output
log --stat shows diffstat in place of patch output.
2010-04-01 00:35:12 +09:00
David Greenaway
70b803a04d Move 'findrenames' code into its own file.
The next few patches will increase the size of the "findrenames"
functionality. This patch simply moves the function into its own
file to avoid clutter building up in 'cmdutil.py'.
2010-04-03 11:58:16 +11:00
Yuya Nishihara
e1d422d1b5 commands: refactor diff --stat and qdiff --stat
`opts['unified'] = '0'` can be replaced by `diffopts.context = 0`.
2010-04-07 00:45:20 +09:00
Nicolas Dumazet
2e5722b300 log: remove useless condition
for "copied" to be not None, it requires follow=True
2010-04-23 15:24:11 +09:00
Matt Mackall
399ebe1c0f Merge with stable 2010-04-19 17:00:02 -05:00
Yuya Nishihara
b7e5bbb3f3 remoteui: copy http_proxy settings
http_proxy settings of current repo's .hg/hgrc should be available
on remoteui, so that the httprepo can use them when pulling via http.
2010-04-08 00:13:33 +09:00
Martin Geisler
608d0cbf81 cmdutil: do not translate trivial string 2010-04-05 01:00:14 +02:00
Brodie Rao
3a2a2b8869 cmdutil: make use of output labeling in changeset_printer 2010-04-02 15:22:07 -05:00
Matt Mackall
6e515e4e5d progress: drop extra args for pos=None calls (issue2087) 2010-03-17 18:15:16 -05:00
Martin Geisler
652e04c99c progress: use a verb in present participle 2010-03-15 18:40:00 +01:00
Benoit Boissinot
04d99f9fbc patch/diff: move patch.export() to cmdutil.export()
This API change will allow us to break a cycle between patch and cmdutil.
2010-03-08 19:43:24 +01:00
Benoit Boissinot
7c20de57d6 addremove: avoid fetching data again and again 2010-03-08 00:01:12 +01:00
Benoit Boissinot
467b4c41ef addremove: add progress support for similarity search 2010-03-08 00:00:03 +01:00
Benoit Boissinot
fe5ad60ee3 addremove: atomically update the dirstate
In case someone hits ^C during the similarity search, properly rollback
2010-03-07 23:59:28 +01:00
Brodie Rao
892ba5a830 remove unused imports 2010-02-14 01:52:31 -05:00
Brendan Cully
3743c1ee43 mq: make init -Q do what qinit -c did 2010-02-08 10:50:00 +01:00
Brendan Cully
de80ca9367 mq: add -Q option to all commands not in norepo 2010-02-08 10:23:44 +01:00
Patrick Mezard
4b42e59a7a util: make spawndetached() handle subprocess early terminations
The file-based synchronization introduced by 670de588e29e hangs when the child
process fails before terminating the handshake, which the previous pipe-based
version handled correctly. To fix this, the parent polling loop was fixed to
detect premature terminations of the child process.
2010-02-06 16:50:00 +01:00
Matt Mackall
8d99be19f0 many, many trivial check-code fixups 2010-01-25 00:05:27 -06:00
Matt Mackall
cd3ef170f7 Merge with stable 2010-01-19 22:45:09 -06:00
Matt Mackall
595d66f424 Update license to GPLv2+ 2010-01-19 22:20:08 -06:00
Patrick Mezard
b47d7635f5 templatekw: fix extras, manifest and showlist args (issue1989)
Removing the explicit parameters from keywords signature is easier than copying
and reproducing the original argument list.
2010-01-18 22:59:32 +01:00
Patrick Mezard
965c2821fb Merge with crew-stab le 2010-01-15 10:38:11 +01:00
Patrick Mezard
b5602adbcc cmdutil: expand style paths (issue1948)
Fix suggested by Andrea Riciputi <andrea.riciputi@gmail.com>
2010-01-15 09:50:52 +01:00
Patrick Mezard
052695b2e4 cmdutil: hide child window created by win32 spawndetached()
Hiding the child process window is not strictly necessary but it avoids opening
an empty shell window when running hg serve as well as a task in the task bar.
The window is hidden after the process is already started causing a single
flicker.
2010-01-10 18:13:34 +01:00
Patrick Mezard
48eee05938 Find right hg command for detached process
On Windows, Mercurial can be run from the python script of from a frozen
executable. In the first case, we have to call the python interpreter since the
script is not executable. Frozen executable can be called directly.

Fix 3/3 for issue421
2010-01-06 21:11:58 +01:00
Patrick Mezard
9c0f70e3a8 cmdutil: replace unix pipe handshake with file lock
The pipe handshake cannot be implemented with Windows detached process, which
disables handle inheritance.

Fix 2/3 for issue421
2010-01-06 21:11:58 +01:00
Dirkjan Ochtman
0513f13503 cmdutil: copy auth section in remoteui
This allows me to specify an auth section in a .hg/hgrc instead of just
a global or user-level hgrc.
2009-12-10 12:31:21 +01:00
Nicolas Dumazet
bf5cba2457 cmdutil.service: do not _exit(0) in the parent process
The fact that a parent process spawns a daemon does not necessarily means that
it is the only think it has to do. This was forcing since e8efd88001e7 inotify
processes launched implicitely to exit prematurely:
when no inotify server was running, "hg st" for example would only launch a
inotify server, _exit(0) and thus would not return file statuses.

This changeset adds a test for implicitely launched inotify processes.
Change to output of test-inotify-1208 is correct: it reflects the normal
error message of "hg st" when not dying during "hg inserve" daemon creation.
2009-11-17 15:00:00 +09:00
Dirkjan Ochtman
78e70cd53d cmdutil: fix bug in finddate() implementation 2009-10-30 09:54:39 +01:00
Dirkjan Ochtman
c47d609475 merge changes from mpm 2009-10-30 09:53:39 +01:00
Matt Mackall
4d8e4508a9 walkchangerevs: drop ui arg 2009-10-29 19:03:16 -05:00
Matt Mackall
caf5c5ecca walkchangerevs: reset cache between windows 2009-10-29 19:03:13 -05:00
Matt Mackall
de712b58f9 walkchangerevs: move 'add' to callback
Now walkchangerevs is a simple iterator over contexts
2009-10-29 17:07:51 -05:00
Steve Borho
ab6b033d40 cmdutil: update finddate()
walkchangerevs() now returns contexts, does not take a cache func.
2009-10-28 22:47:46 -05:00
Matt Mackall
74ca11743b Merge with crew 2009-10-27 17:14:19 -05:00
Matt Mackall
0366236cf5 walkchangerevs: internalize ctx caching 2009-10-27 17:01:32 -05:00
Matt Mackall
67e7c0b434 walkchangerevs: yield contexts 2009-10-25 18:43:59 -05:00
Matt Mackall
201d81ac28 walkchangerevs: kill window step of iterator 2009-10-25 18:43:58 -05:00
Matt Mackall
69f8478d8c walkchangerevs: pull out matchfn
* * *
imported patch mercurial/commands.py
2009-10-25 18:43:56 -05:00
Adrian Buehlmann
c0985715f7 cmdutil: minor refactoring of changeset_printer._show
- use ctx.branch() instead of directly accessing the extra field "branch"
- move definitions of locals ('extra' and 'branch') down to where they
  are used
2009-10-24 19:01:40 +02:00
Greg Ward
889a9ffb8d cmdutil: changeset_printer: use methods of filectx/changectx.
This allows extensions that modify changeset metadata (e.g.
description) by overriding methods of changectx to get consistent
behavior from all log-like commands, regardless of whether templates
or styles are used. Without this, overriding changectx methods works
if you use styles or templates, but not with default log format.

This meant adding filectx.extra() for consistency with changectx.
2009-10-05 18:17:13 -04:00
Mads Kiilerich
8ff24147fd cmdutil: templating keywords latesttag and latesttagdistance
This can be used for referring to revisions in a reasonable
meaningful, stable and monotonically increasing way, suitable for
releases or builds directly from a repository.

The latest tag is found by searching through untagged ancestors and
finding the latest tagged ancestor based on tag date. The distance is
found from the length of the longest path to the tagged revision.

For example:
  hg log -l1 --template '{latesttag}+{latesttagdistance}\n'
can return
  1.3.1+197

This is mostly work by Gilles Moris <gilles.moris@free.fr>
2009-10-03 18:31:20 +02:00
Nicolas Dumazet
9c19061a7e cmdutil: service: add an optional runargs argument to pass the command to run
This would be necessary for inotify launching its server: the initial command
is a standard 'hg st'/'hg ci'/... but the daemon to run is 'hg inserve'
2009-08-16 11:30:24 +09:00
Dirkjan Ochtman
e00109f7e7 cmdutil: use context objects for walkchangerevs() 2009-08-20 08:34:22 +02:00
Steve Borho
afad34fc2e cmdutil: fall back to filename if glob expand has errors
On Windows, Mercurial tries to glob expand provided filenames as a
convenience to the user. Unfortunately, there are valid filenames
which are not valid glob patterns.  In those cases, we should fallback
to the original provided filename.
2009-07-12 00:46:43 -05:00
Matt Mackall
540c02c8d3 commit: report modified subrepos in commit editor 2009-07-01 01:05:24 -05:00
Matt Mackall
0210a48141 addremove: build lists of already added and removed files too (issue1696) 2009-06-30 23:25:53 -05:00
Matt Mackall
bc08ba2edf addremove: pass unknown and deleted to findrenames directly again 2009-06-30 16:11:42 -05:00
Matt Mackall
6b9bed125a addremove: normalize some variable names 2009-06-30 15:56:08 -05:00
Matt Mackall
242e029aa1 findrenames: drop unused argument defaults 2009-06-29 15:34:17 -05:00
Matt Mackall
34cb6b5080 addremove: drop some silly variable assignments 2009-06-23 17:51:51 -05:00
Matt Mackall
7253321c4e remoteui: properly create dst with copy() 2009-06-12 02:19:51 -05:00
Nicolas Dumazet
448395f76a cmdutil: service: logfile option to redirect stdout & stderr in a file 2009-05-25 18:14:32 +09:00
Benoit Boissinot
125a85ec87 use new style classes 2009-06-10 15:10:21 +02:00
timeless
fb33de67af Generally replace "file name" with "filename" in help and comments. 2009-06-09 09:25:17 -04:00
Henri Wiechers
4269cb82b8 cleanup: removed unused imports 2009-06-07 21:16:05 +02:00
Matt Mackall
fcb44e87db commit: move explicit file checking into repo.commit 2009-06-01 21:51:00 -05:00
Matt Mackall
7c83f8b030 commit: editor reads file lists from provided context 2009-06-01 14:51:47 -05:00
Matt Mackall
37eaadf540 match: ignore return of match.bad
All users returned false, return can now be dropped
2009-05-31 17:54:18 -05:00
Matt Mackall
a30eb02911 cmdutils: Take over glob expansion duties from util 2009-05-24 16:38:29 -05:00
Matt Mackall
b287cf72fe match: refactor patkind
add patkind(pat) to match
change external users
change util.patkind to _patsplit
2009-05-24 02:56:14 -05:00
Patrick Mezard
e8790c2140 serve: add and use portable spawnvp replacement
There is no standard python command to really detach a process under Windows.
Instead we use the low level API wrapped by subprocess module with all
necessary options to avoid any kind of context inheritance. Unfortunately, this
version still opens a new window for the child process.

The following have been tried:
- os.spawnv(os.P_NOWAIT): works but the child process is killed when parent
  console terminates.
- os.spawnv(os.P_DETACH): works on python25, hang on python26 when writing to
  the hgweb output socket.
- subprocess.CreateProcess() hack without shell mode: similar to
  os.spawnv(os.P_DETACH).

Fix 1/3 for issue421
2009-04-10 21:20:25 +02:00
Robert Bachmann
ef03cfb55c Bugfix and test for hg log XML output 2009-12-30 02:41:19 +01:00
Robert Bachmann
93bde9a865 Added support for templatevar "footer" to cmdutil.py 2009-12-28 17:55:52 +01:00
Nicolas Dumazet
4c31093b61 cmdutil: replace sys.maxint with None as default value in loglimit
Semantically, it is better to use None over any other value when there is
"no value". Using maxint in this context is quite hackish, and is not forward
compatible.
2009-12-14 00:32:29 +09:00
Patrick Mezard
f32df1c921 Make {file_copies} usable as a --template key
Before this, to display file copies in templates, you had to write something
like {file_copies%filecopy}. For some reason, the {file_copy} subtemplate was
used by default but not defined by default in changeset_templater, while styles
were already using it. Here we define {file_copy} in changeset_templater, and
change the templater to handle formatting strings like {file_copies%filecopy}
with already expanded keys (in this case {file_copies}), for backward
compatibility.
2009-12-13 18:06:24 +01:00
Patrick Mezard
46b592cdfa templatekw: change {file_copies} behaviour, add {file_copies_switch}
{file_copies} template now displays file copies with or without the --copies
switch being set. A new {file_copies_switch} template implements the former
behaviour.
2009-12-13 18:06:24 +01:00
Patrick Mezard
f11c571560 cmdutil: extract file copies closure into templatekw 2009-12-13 18:06:24 +01:00
Patrick Mezard
a8e64bad12 cmdutil: extract latest tags closures in templatekw 2009-12-13 18:06:24 +01:00
Patrick Mezard
0ea61cf043 cmdutil: extract file changes closures into templatekw 2009-12-13 18:06:24 +01:00
Patrick Mezard
da27222189 cmdutil: extract repo dependent closures in templatekw 2009-12-13 18:06:23 +01:00
Patrick Mezard
434744ad77 cmdutil: extract ctx dependent closures into templatekw 2009-12-13 18:06:23 +01:00
Patrick Mezard
9de17a2612 cmdutil: replace showlist() closure with a function 2009-12-13 18:06:23 +01:00
Dirkjan Ochtman
9aac0ec2b7 merge with the stable branch 2009-12-10 12:31:57 +01:00
Benoit Boissinot
2c87a7558e log --follow: use a set instead of a list
benchmarked with hg log -qf on the linux kernel:

before:
Time: real 39.010 secs (user 38.840+0.000 sys 0.060+0.000)
after:
Time: real 8.560 secs (user 8.440+0.000 sys 0.080+0.000)
2009-12-10 00:14:22 +01:00
Nicolas Dumazet
414130944c cmdutil: service: add appendpid parameter to append pids to pid file 2009-12-01 11:28:31 +09:00
Benoit Boissinot
da51217b4d backout experimental change from 67851ac42937 2009-12-01 01:43:46 +01:00
Matt Mackall
184d53a4f9 Merge with crew 2009-11-30 15:31:14 -06:00
Patrick Mezard
dee4f69d0f cmdutil: fix missing default 'extra' template 2009-11-30 22:23:09 +01:00
Nicolas Dumazet
668d6309cd run-tests: add --inotify option to test runner
Activate inotify extension when running tests.
2009-11-17 18:50:39 +09:00
Benoit Boissinot
f181483f31 findrenames: improve coding-style 2009-11-24 20:40:04 +01:00
Benoit Boissinot
22b5fe48a3 findrenames: speedup exact match
benchmarked on crew repo with:
rm -rf * ; hg up -C ; for i in `find . -name "*.py"` ; do mv $i $i.new;done

followed by:
hg addremove -s 100

before: Time: real 28.890 secs (user 26.920+0.000 sys 1.450+0.000)
after : Time: real 6.790 secs (user 5.310+0.000 sys 1.350+0.000)
2009-11-24 18:21:47 +01:00
Benoit Boissinot
c6fb6e4c64 findrenames: refactor the score computation 2009-11-24 17:39:42 +01:00
Benoit Boissinot
ee278104a8 findrenames: first loop over the removed files, it's faster
Getting the file from the working dir is less expensive than getting it from
the repo history, hence the speedup.

benchmarked on crew repo with:
rm -rf * ; hg up -C ; for i in `find . -name "*.py"` ; do mv $i $i.new;done

followed by:
hg addremove -s 100

before: Time: real 68.760 secs (user 65.760+0.000 sys 2.490+0.000)
after : Time: real 28.890 secs (user 26.920+0.000 sys 1.450+0.000)
2009-11-24 17:26:42 +01:00
Martin Geisler
6355b4950b cmdutil: mark string for translation 2009-05-20 12:20:27 +02:00
Matt Mackall
16d4ef56bc commit: explain how to abort commit in editor 2009-05-18 17:36:24 -05:00
Benoit Boissinot
bee6cb3d55 addremove/findrenames: find renames according to the match object (issue1527)
Instead of only finding similarities in the added/removed files found
by the addremove step, follow the match object:

hg addremove -s80 foo -> add and removes files in foo
                         + find similarities between files in foo
hg addremove -s80 -> add and removes files in the whole repo
                     + find similarities between files in the whole repo

hg import --similarity will still work correctly (only find similarities
between files found in the patch).
2009-05-17 22:51:17 +02:00
Benoit Boissinot
6f0577d081 addremove: mapping isn't really needed, simplify 2009-05-17 22:40:04 +02:00
Matt Mackall
5534a9c3e3 editor: move HG: filtering from ui to commiteditor 2009-05-14 13:21:17 -05:00
Matt Mackall
ebe3b0ebc3 commit: move commit editor to cmdutil, pass as function 2009-05-14 13:20:40 -05:00
Peter Arrenbrecht
a75765cf7f drop unused imports 2009-05-14 15:35:46 +02:00
Martin Geisler
4d0bbe44ba cmdutil: replace pseudo-set by real set 2009-05-12 01:08:28 +02:00
Dirkjan Ochtman
5c6c43b746 templater: provide the standard template filters by default 2009-05-12 12:04:05 +02:00
Simon Heimberg
09ac1e6c92 separate import lines from mercurial and general python modules 2009-04-28 17:40:46 +02:00
Martin Geisler
750183bdad updated license to be explicit about GPL version 2 2009-04-26 01:08:54 +02:00
Matt Mackall
f6c8930392 replace various uses of list.reverse() 2009-04-26 16:50:44 -05:00
Matt Mackall
2f9b02c62d replace util.sort with sorted built-in
This is marginally faster for small and moderately-sized lists
2009-04-26 16:50:44 -05:00
Matt Mackall
88b13fecec ui: replace parentui mechanism with repo.baseui 2009-04-26 16:50:43 -05:00
Matt Mackall
6708d0e299 add cmdutil.remoteui
remoteui sorts out the issues of getting ssh config options from the
local repo into the remote one while not copying other options like hooks.
2009-04-26 16:50:43 -05:00
Martin Geisler
e2222d3c43 replace set-like dictionaries with real sets
Many of the dictionaries created by dict.fromkeys were emulating sets.
These can now be replaced with real sets.
2009-04-22 00:57:28 +02:00
Martin Geisler
85e0e5f5fa cmdutil: return boolean result directly in want function 2009-04-22 17:15:59 +02:00
Martin Geisler
80dd126e92 remove unnecessary outer parenthesis in if-statements 2009-04-22 01:39:47 +02:00
Dirkjan Ochtman
10e214223e cmdutil: prevent code repetition by abstraction in changeset_templater 2009-04-06 10:51:27 +02:00
Dirkjan Ochtman
7856ee8225 cmdutil: refactor handling of templating in show_changeset() 2009-04-04 17:55:52 +02:00
Matt Mackall
642f4d7151 move encoding bits from util to encoding
In addition to cleaning up util, this gets rid of some circular dependencies.
2009-04-03 14:51:48 -05:00
Martin Geisler
05b3dfb2cf cmdutil: fix untranslatable string in copy 2009-03-27 17:35:00 +01:00
Alexander Solovyov
475ce753d3 templater: ability to display diffstat for log-like commands 2009-03-23 10:41:42 +01:00
Alexander Solovyov
7ea3611901 templater: use contexts consistently throughout changeset_templater 2009-03-23 13:15:57 +01:00
timeless
26d95caa99 help: miscellaneous language fixes 2009-02-28 12:38:45 +01:00
Matt Mackall
ca1b896eac log: ignore --removed if no files specified (issue1166)
Otherwise we filter out merge changesets with no changed files
2009-02-16 17:37:23 -06:00
Jim Correia
78e5b53d7d add --git option to commands supporting --patch (log, incoming, history, tip)
No short -g form, since it would conflict with -g from the graphlog extension.
2009-02-14 22:40:39 +01:00
Alexander Solovyov
18946af340 cmdutil.logmessage: options should be optional 2009-01-19 12:38:54 +02:00
Matt Mackall
e61d364b61 error: move UnknownCommand and AmbiguousCommand 2009-01-12 11:39:38 -06:00
Brendan Cully
99c25ba716 Improved error message for log --follow
Mads Kiilerich notes that the existing message was unclear
when a nonexistent file was supplied.
2008-11-24 17:16:39 -08:00
Dirkjan Ochtman
9ef9b3e5db cmdutil: use change contexts for cset-printer and cset-templater 2008-11-14 13:59:25 +01:00
Matt Mackall
b2807810c6 linkrev: take a revision number rather than a hash 2008-11-12 15:19:14 -06:00
Ronny Pfannschmidt
599e773be7 export: fixed silent output file overwriting
hg export -o outfile 1 2 3 4 had the same effect as hg -o outfile 4

This was caused by opening with 'w' instead of 'a'. This only occurs when
the filename pattern resulted in ambiguous patch filenames.
2008-11-06 11:17:38 +01:00
Dirkjan Ochtman
2f6d26d640 patch: turn patch.diff() into a generator
This should even be a little faster than passing in an fp argument.
2008-11-03 16:48:23 +01:00
Benoit Boissinot
ea7fe6dacc remove unused variables 2008-10-28 19:25:26 +01:00
Matt Mackall
bebeb261d5 findcmd: have dispatch look up strict flag 2008-10-22 17:34:08 -05:00
Matt Mackall
d06459495e rename: handle renaming to a target marked removed 2008-10-18 04:26:09 -05:00
Benoit Boissinot
20fc9c8d79 allow committing a removed directory
fix issue1089
2008-09-03 02:27:25 +02:00
Martin Geisler
28fb695e9a i18n: mark strings for translation in Mercurial 2008-08-31 16:12:02 +02:00
Matt Mackall
a65ef7bc5d util: add sort helper 2008-06-27 18:28:45 -05:00
Matt Mackall
d4ab55a92b status: clean up all users for unknown files 2008-06-27 13:43:29 -05:00
Matt Mackall
bc715be859 add __len__ and __iter__ methods to repo and revlog 2008-06-26 14:35:50 -05:00
Matt Mackall
fbb5127472 use repo[changeid] to get a changectx 2008-06-26 14:35:46 -05:00