diff -r 7566f00a3979 -r f84f507c53d3 mercurial/context.py --- a/mercurial/context.py Wed Jun 18 22:52:26 2008 +0200 +++ b/mercurial/context.py Wed Jun 18 22:52:26 2008 +0200 @@ -446,14 +446,26 @@ """A workingctx object makes access to data related to the current working directory convenient. parents - a pair of parent nodeids, or None to use the dirstate. + date - any valid date string or (unixtime, offset), or None. + user - username string, or None. extra - a dictionary of extra values, or None. changes - a list of file lists as returned by localrepo.status() or None to use the repository status. """ - def __init__(self, repo, parents=None, extra=None, changes=None): + def __init__(self, repo, parents=None, text="", user=None, date=None, + extra=None, changes=None): self._repo = repo self._rev = None self._node = None + self._text = text + if date is not None: + self._date = util.parsedate(date) + else: + self._date = util.makedate() + if user: + self._user = user + else: + self._user = self._repo.ui.username() if parents: p1, p2 = parents self._parents = [self._repo.changectx(p) for p in (p1, p2)] @@ -518,9 +530,9 @@ def manifest(self): return self._manifest - def user(self): return self._repo.ui.username() - def date(self): return util.makedate() - def description(self): return "" + def user(self): return self._user + def date(self): return self._date + def description(self): return self._text def files(self): f = self.modified() + self.added() + self.removed() f.sort()