##// END OF EJS Templates
util.datestr: do not crash on revisions with negative timestamp (issue2513)...
util.datestr: do not crash on revisions with negative timestamp (issue2513) Python's time.gmtime(lt) fails on Windows, producing a traceback with ValueError: (22, 'Invalid argument') if lt < -43200. We get a local time boundary value of -43200 if we take "the epoch" Thu Jan 01 00:00:00 1970 = time.gmtime(0) from timezone 'UTC+0' into timezone 'UTC-12'. All other timezones will have larger local time values for that point in time. Aborting with a traceback on 'hg log' for revisions with a timestamp value < -43200 is clearly not acceptable. Returning "invalid timestamp" or similar as string representation is not an option either, since that may crash other tools which parse the output of 'hg log'. Instead, we teach util.datestr() to return the epoch in timezone UTC+0 on *all platforms*, represented by the string Thu Jan 01 00:00:00 1970 +0000 if the timestamp's unix time value is negative. (based on a patch originally proposed by Benjamin Pollack)

File last commit:

r11321:40c06bbf default
r13039:dd24f3e7 stable
Show More
children.py
45 lines | 1.4 KiB | text/x-python | PythonLexer
Thomas Arendsen Hein
Add extension to provide the 'hg children' command (with tests)
r4783 # Mercurial extension to provide the 'hg children' command
#
# Copyright 2007 by Intevation GmbH <intevation@intevation.de>
Martin Geisler
add blank line after copyright notices and after header
r8228 #
Thomas Arendsen Hein
Add extension to provide the 'hg children' command (with tests)
r4783 # Author(s):
# Thomas Arendsen Hein <thomas@intevation.de>
#
Martin Geisler
updated license to be explicit about GPL version 2
r8225 # This software may be used and distributed according to the terms of the
Matt Mackall
Update license to GPLv2+
r10263 # GNU General Public License version 2 or any later version.
Thomas Arendsen Hein
Add extension to provide the 'hg children' command (with tests)
r4783
Dirkjan Ochtman
extensions: change descriptions for extensions providing a few commands
r8934 '''command to display child changesets'''
Dirkjan Ochtman
help: add/fix docstrings for a bunch of extensions
r8873
Thomas Arendsen Hein
children extension: Don't abort when looking at the null revision....
r4785 from mercurial import cmdutil
Thomas Arendsen Hein
Introduce templateopts and logopts to reduce duplicate option definitions.
r6192 from mercurial.commands import templateopts
Thomas Arendsen Hein
Add extension to provide the 'hg children' command (with tests)
r4783 from mercurial.i18n import _
def children(ui, repo, file_=None, **opts):
Martin Geisler
expand "dir" to "directory" in help texts
r8026 """show the children of the given or working directory revision
Thomas Arendsen Hein
Add extension to provide the 'hg children' command (with tests)
r4783
Martin Geisler
children: wrap docstrings at 70 characters
r9253 Print the children of the working directory's revisions. If a
revision is given via -r/--rev, the children of that revision will
be printed. If a file argument is given, revision in which the
file was last changed (after the working directory revision or the
argument to --rev if given) is printed.
Thomas Arendsen Hein
Add extension to provide the 'hg children' command (with tests)
r4783 """
rev = opts.get('rev')
if file_:
ctx = repo.filectx(file_, changeid=rev)
else:
Matt Mackall
use repo[changeid] to get a changectx
r6747 ctx = repo[rev]
Thomas Arendsen Hein
Add extension to provide the 'hg children' command (with tests)
r4783
displayer = cmdutil.show_changeset(ui, repo, opts)
Dirkjan Ochtman
cmdutil: use change contexts for cset-printer and cset-templater
r7369 for cctx in ctx.children():
displayer.show(cctx)
Robert Bachmann
Added support for templatevar "footer" to cmdutil.py
r10152 displayer.close()
Thomas Arendsen Hein
Add extension to provide the 'hg children' command (with tests)
r4783
cmdtable = {
"children":
(children,
FUJIWARA Katsunori
help: show value requirement and multiple occurrence of options...
r11321 [('r', 'rev', '',
_('show children of the specified revision'), _('REV')),
Thomas Arendsen Hein
Introduce templateopts and logopts to reduce duplicate option definitions.
r6192 ] + templateopts,
Thomas Arendsen Hein
Add extension to provide the 'hg children' command (with tests)
r4783 _('hg children [-r REV] [FILE]')),
}