Wrap commit instead of calling pretxncommit hook
a) probably faster
b) relying on pretxncommit hook is problematic [issue273]
This version "openly" updates dirstate after overwriting files
after commit.
Changed test output accordingly.
% help
keyword extension - keyword expansion in local repositories
This extension expands RCS/CVS-like or self-customized keywords in
the text files selected by your configuration.
Keywords are only expanded in local repositories and not logged by
Mercurial internally. The mechanism can be regarded as a convenience
for the current user and may be turned off anytime.
Substitution takes place on every commit and update of the working
repository.
Configuration is done in the [keyword] and [keywordmaps] sections of
hgrc files.
no commands defined
% cat
$Id$
$Id$
% default keyword expansion
% commit
adding a
adding b
a
b
overwriting a expanding keywords
% cat
$Id: a,v b803250b3164 1970/01/01 00:00:00 user $
$Id$
% hg cat
$Id: a,v b803250b3164 1970/01/01 00:00:00 user $
$Id$
% update
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
% cat
$Id: a,v b803250b3164 1970/01/01 00:00:00 user $
$Id$
% custom keyword expansion
% cat
$Id: a,v b803250b3164 1970/01/01 00:00:00 user $
$Id$
% hg cat
$Id: a b803250b3164 Thu, 01 Jan 1970 00:00:00 +0000 user $
$Id$
% commit
a
overwriting a expanding keywords
% cat
$Id: a 375046bad9d3 Thu, 01 Jan 1970 00:00:01 +0000 user $
$Xinfo: User Name <user@example.com>: firstline $
$Id$
% hg cat
$Id: a 375046bad9d3 Thu, 01 Jan 1970 00:00:01 +0000 user $
$Xinfo: User Name <user@example.com>: firstline $
$Id$
% switch off expansion
% cat
$Id: a 375046bad9d3 Thu, 01 Jan 1970 00:00:01 +0000 user $
$Xinfo: User Name <user@example.com>: firstline $
$Id$
% hg cat
$Id$
$Xinfo$
$Id$
% update
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
% cat
$Id$
$Xinfo$
$Id$