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
Nicolas Dumazet
7eadbe8d42
for calls expecting bool args, pass bool instead of int
...
str.splitlines and email.message.as_string both expect a bool argument
defaulting at False: replace f(1) by f(True) and f(0) by f()
2009-07-13 09:50:26 +09:00
Matt Mackall
eb6cba34d7
Merge with stable
2009-07-09 19:49:02 -05:00
Matt Mackall
f5635aa406
filectx: add a hex method
2009-07-06 14:52:44 -05:00
Matt Mackall
e3dc8aa6db
fix memory usage of revlog caches by limiting cache size [issue1639]
2009-07-09 17:10:07 -05:00
Greg Ward
acf5297c3a
context: improve arg-checking assert.
2009-07-03 10:43:46 -04:00
Matt Mackall
fd08adf4d6
commit: recurse into subrepositories
2009-06-15 02:45:38 -05:00
Matt Mackall
ce2e49a0da
subrepo: introduce basic state parsing
2009-06-15 02:45:38 -05:00
Matt Mackall
56c9dee4e1
context: add a dirty method to detect modified contexts
2009-06-04 16:21:55 -05:00
Augie Fackler
678623416a
dirstate: don't check state of subrepo directories
2009-12-31 17:19:30 -06:00
Benoit Boissinot
0c85bdcee0
context: parents() already filters nullid
2009-12-01 01:08:16 +01:00
Benoit Boissinot
e4e6f5d929
context: use key-sorting instead of tuples
2009-12-01 01:03:54 +01:00
Benoit Boissinot
37cf6c6d68
workingfilectx: always use the same filelog, even for renames
...
workingfilectx() was using the "src" filelog in case the file was renamed in
the working copy.
For consistency, stop special-casing it. This allows us to remove some
duplication between filectx and workingfilectx.
2009-05-20 02:08:53 +02:00
Martin Geisler
0a365d5ca2
use 'x is None' instead of 'x == None'
...
The built-in None object is a singleton and it is therefore safe to
compare memory addresses with is. It is also faster, how much depends
on the object being compared. For a simple type like str I get:
| s = "foo" | s = None
----------+-----------+----------
s == None | 0.25 usec | 0.21 usec
s is None | 0.17 usec | 0.17 usec
2009-05-20 00:52:46 +02:00
Matt Mackall
188df2eaa9
context: add new manifestnode method
2009-05-14 13:21:20 -05:00
Matt Mackall
9a5dcd2974
context: add p1 and p2 methods
2009-05-14 13:20:40 -05:00
Matt Mackall
49e6e0b6c0
filecommit: swallow some bits from _commitctx, add _
2009-05-14 13:20:40 -05:00
Simon Heimberg
df774ad0e5
context: replace pseudo-set by real set
2009-05-14 10:59:55 +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
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
9ec97bdefe
util: take propertycache from context.py
2009-04-26 16:50:44 -05:00
Martin Geisler
3ce0ca846d
context: use Python 2.4 decorator syntax
2009-04-24 18:47:15 +02:00
Martin Geisler
44aa7e92d1
util: use built-in set instead of util.unique
2009-04-22 00:56:06 +02:00
Patrick Mezard
cd3505dbbc
Merge with crew-stable
2009-04-13 21:57:17 +02:00
Patrick Mezard
4764779700
context: fix workingctx.__contains__
2009-04-13 19:47:11 +02:00
Peter Arrenbrecht
a2d3e23eef
cleanup: drop variables for unused return values
...
They are unnecessary. I did leave them in localrepo.py where there is
something like:
_junk = foo()
_junk = None
to free memory early. I don't know if just `foo()` will free the return
value as early.
2009-03-23 13:13:02 +01:00
Matt Mackall
d15d559b7c
errors: move revlog errors
...
- create error.py for exception classes to reduce demandloading
- move revlog exceptions to it
- change users to import error and drop revlog import if possible
2009-01-11 22:48:28 -06:00
Patrick Mezard
6f86a4092b
context: enforce memctx.files() unicity
...
localrepo.commitctx() expects changed files lists to contain unique items and
does not sort itself. Passing duplicates makes them evaluated more than once
and changes the committed changelog id.
2008-12-14 17:35:19 +01:00
Dirkjan Ochtman
d5bf581a69
context: use descriptors to speed up lazy attributes
2008-11-14 12:44:26 +01:00
Dirkjan Ochtman
c8e4c03aa9
context: special-case changectx setup for integer changeid
2008-11-13 21:09:51 +01:00
Matt Mackall
b2807810c6
linkrev: take a revision number rather than a hash
2008-11-12 15:19:14 -06:00
Patrick Mezard
ad3b5c4ec9
context: improve memctx documentation
2008-10-11 13:07:29 +02:00
Peter Ruibal
30a2036f9e
use Exception(args)-style raising consistently (py3k compatibility)
2008-09-08 13:07:00 +02:00
Matt Mackall
08b29d9875
Merge with stable
...
Simplify the copy search algorithm
2008-08-10 18:38:43 -05:00
Dirkjan Ochtman
26b9b92409
context: get rid of unused changectx.filectxs() method
2008-07-21 13:26:42 +02:00
Dirkjan Ochtman
6b15d82e07
context: fix workingctx's __contains__ method
2008-07-21 13:22:11 +02:00
Matt Mackall
e008b3db94
dirstate.walk: build a dict rather than yield
...
Since we're already building a seen dict, we might as well put our
results in it to go slightly faster.
2008-07-22 13:03:21 -05:00
Matt Mackall
8cb2b4a288
dirstate.walk: push sorting up
2008-07-22 13:03:19 -05:00
Matt Mackall
9d3da8e0ee
dirstate.walk: eliminate src from yield
...
- restructure 'step two' to stat unseen files
- remove extra stat logic in status
- remove redundant src
2008-07-22 13:02:36 -05:00
Matt Mackall
b4ff221e3e
minor status fixups
2008-07-22 13:00:22 -05:00
Patrick Mezard
c2be161a5c
context: trigger missing username warning only when necessary
2008-07-20 19:09:00 +02:00
Matt Mackall
b161cadfc8
context: simplify parents code
2008-07-11 18:46:02 -05:00
Matt Mackall
644a7f906e
workingctx: add __contains__ method
2008-07-11 18:46:02 -05:00
Matt Mackall
f1402a6652
context: add walk method
2008-06-27 19:25:48 -05:00
Matt Mackall
087987c8d8
context: add __int__ and hex methods
2008-06-27 18:44:43 -05: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
fbb5127472
use repo[changeid] to get a changectx
2008-06-26 14:35:46 -05:00
Matt Mackall
25b1f97147
context: remove islink and isexec methods
2008-06-26 13:52:16 -05:00
Matt Mackall
d462e1fc26
simplify flag handling
...
add _checklink var to dirstate
introduce dirstate.flagfunc
switch users of util.execfunc/linkfunc to flagfunc
change manifestdict.set to take a flags string
change ctx.fileflags to ctx.flags
change gitmode func to a dict
remove util.execfunc/linkfunc
2008-06-26 13:46:34 -05:00
Matt Mackall
2bd0fe0371
context: clean up parents()
2008-06-26 13:46:33 -05:00
Matt Mackall
2d2ae68ba8
context: simplify changeid logic
2008-06-26 13:46:31 -05:00
Matt Mackall
0a211cf39a
context: consistently return p1 context for None
2008-06-25 17:33:51 -05:00
Dirkjan Ochtman
b5da46f6f1
kill some trailing spaces
2008-06-23 13:12:32 +02:00
Christian Ebert
11232ed4ba
Fix commit date (issue1193)
...
The None check in workingctx prevents calling util.makedate
when date is not explicitly given.
2008-06-21 15:27:51 +02:00
Patrick Mezard
1ae4077ddd
context: add memctx for memory commits
2008-06-19 00:14:23 +02:00
Patrick Mezard
67c45a2700
context: let workingctx.date(), .user() and description() be overriden
2008-06-18 22:52:26 +02:00
Patrick Mezard
767445bf63
localrepo: let commit() get extra data from workingctx
2008-06-18 22:52:26 +02:00
Patrick Mezard
f2fb1d0609
localrepo: hide commit() file selection behind workingctx
2008-06-18 22:52:25 +02:00
Patrick Mezard
d184e29b1c
context: let workingctx parents be overriden
2008-06-18 22:52:25 +02:00
Patrick Mezard
1fa87a95fd
Merge with crew-stable
2008-06-15 13:05:39 +02:00
Patrick Mezard
af038bed31
context: fix workingctx.fileflags() execute bit
2008-06-15 13:01:01 +02:00
Patrick Mezard
91d2df2c77
Merge with crew-stable
2008-04-12 21:34:01 +02:00
Patrick Mezard
3409e6fdc3
context: handle untracked files in filectx.fileflags()
2008-04-12 21:08:03 +02:00
Paul Moore
0046a32c4b
python 2.6 compatibility: add __hash__ to classes that have __eq__
2008-04-04 22:41:17 +02:00
Alexis S. L. Carvalho
dd492604df
filectx.ancestor: use fctx._repopath to cache filelogs (issue1035)
...
_repopath may be different from _path for workingfilectx when there
are renames involved.
2008-03-16 06:10:47 -03:00
Matt Mackall
865487e7f2
revlog: report node and file when lookup fails
2008-03-11 17:42:29 -05:00
Joel Rosdahl
4f8012378a
Remove unused imports
2008-03-06 22:23:41 +01:00
Joel Rosdahl
5dae3059a0
Expand import * to allow Pyflakes to find problems
2008-03-06 22:23:26 +01:00
Thomas Arendsen Hein
deb94bc7fe
Removed trailing spaces from everything except test output
2008-03-07 00:24:36 +01:00
Patrick Mezard
4b9a547de4
context: fix filectx.parents() bug introduced when editing 3fb82bcfc6e3
2008-01-06 15:40:32 +01:00
Maxim Dounin
4d9877b4eb
Fix copies reporting in log and convert.
...
If copy logged in file revision, we report copy for changeset only
if file revisions linkrev points back to the changeset in question
or both changeset parents contain different file revisions.
This fixes extra copies reported when executable bit was changed for
previously copied file.
2007-12-29 17:11:48 +03:00
Maxim Dounin
940a0afd31
context: preserve changeset in filectx if we have one
...
If we know original changeset we are working with - try hard to
preserve it. Fallback to filelog.linkrev() only if we have no way
to get original changeset, since linkrev() may point to other
changeset.
2007-12-29 16:57:43 +03:00
Thomas Arendsen Hein
347da85c36
Removed tabs and trailing whitespace in python files
2007-12-29 19:49:48 +01:00
Bryan O'Sullivan
d32d6fb57f
make LookupError more detailed
2007-11-28 08:36:55 -08:00
Bryan O'Sullivan
2a0ef5ab06
Fix context iterator.
2007-11-02 14:44:33 -07:00
Bryan O'Sullivan
6df62fb77c
convert: make contents of "extra" dict available from sources, for sinks.
...
This breaks hash preservation for hg->hg conversion, as each converted
change gets a convert_revision item added to its extra dict. Ugh.
2007-10-10 15:30:00 -07:00
Patrick Mezard
2dee2a1086
Fix workingctx exec/link bit of copies on non-supporting systems
2007-10-07 15:07:35 +02:00
Patrick Mezard
8102777e5e
Fix bad lambda prototype in workingctx.fileflags()
2007-10-06 17:54:33 +02:00
Patrick Mezard
904ffeda9f
context: add fileflags() to avoid rebuilding manifests
2007-10-05 23:01:38 +02:00
Matt Mackall
410e8d67c6
context: add __contains__, __getitem__, and __iter__
2007-07-21 16:02:09 -05:00
Matt Mackall
642976187f
contexts: improve filectx eq test
2007-07-16 17:39:03 -05:00
FUJIWARA Katsunori
03774e057f
Allow filectx.annotate to return the line number of first appearance.
2007-07-08 19:46:04 +02:00
Matt Mackall
cfe7a0a522
merge: make test for fast-forward merge stricter (issue619)
...
don't allow merging with an ancestor
fix != on contexts
add a test
2007-07-05 13:34:18 -05:00
Matt Mackall
7be33e5057
context: add tags() method
2007-06-21 11:42:39 -05:00
Patrick Mezard
0b90ff3d83
Merge with crew-stable
2007-06-20 00:22:51 +02:00
Patrick Mezard
aae84719a5
Fix issue 589: "undelete" sequence leads to crash.
2007-06-20 00:10:21 +02:00
Thomas Arendsen Hein
4d29c6dc8e
Updated copyright notices and add "and others" to "hg version"
2007-06-19 08:51:34 +02:00
Matt Mackall
5fa7270b2d
Merge with stable
2007-05-08 11:42:48 -05:00
Matt Mackall
d4deb74aa1
context: fix workingfilectx._changectx
2007-05-07 22:30:36 -05:00
Matt Mackall
e896adead6
Merge with -stable, fix small test failure
2007-03-14 01:26:09 -05:00
Matt Mackall
c2bb73121f
Move branch read/write to dirstate where it belongs
2007-03-13 18:50:02 -05:00
Matt Mackall
19d825d10e
Minor default branch cleanups
2007-03-13 15:47:55 -05:00
Alexis S. L. Carvalho
fd69fe8d91
"default" is the default branch name
2007-03-13 15:02:33 -03:00
Thomas Arendsen Hein
d104165f50
Use only integer part of mtime in workingfilectx.date(), fixes test-context.py
...
Similar to what is done in dirstate.status() (changeset db96436edaee)
and has to be removed when Mercurial switches to subsecond granularity.
2007-02-26 21:57:33 +01:00
Thomas Arendsen Hein
c20f16ea94
Fixed workingfilectx.date() (found by Thomas Waldmann) with test.
2007-02-23 17:31:00 +01:00
Matt Mackall
2e27ddd82b
symlinks: use is_link wherever is_exec is used
2006-12-29 20:04:31 -06:00
Matt Mackall
b875ad6c04
exec: add execfunc to simplify exec flag support on non-exec filesystems
2006-12-29 20:04:30 -06:00
Benoit Boissinot
35f1d19852
context: create a filectxt with filelog reuse
2006-12-25 18:57:55 +01:00