comparison mercurial/changelog.py @ 2522:85f796baab10

Allow the use of human readable dates (issue 251)
author Jose M. Prieto <jmprieto@gmx.net>
date Fri, 30 Jun 2006 18:47:35 +0200
parents 8a1e2a9c7013
children 4ab59a3acd16
comparison
equal deleted inserted replaced
2521:9cceb439048b 2522:85f796baab10
41 if date: 41 if date:
42 # validate explicit (probably user-specified) date and 42 # validate explicit (probably user-specified) date and
43 # time zone offset. values must fit in signed 32 bits for 43 # time zone offset. values must fit in signed 32 bits for
44 # current 32-bit linux runtimes. timezones go from UTC-12 44 # current 32-bit linux runtimes. timezones go from UTC-12
45 # to UTC+14 45 # to UTC+14
46 try: 46 when, offset = util.parsedate(date)
47 when, offset = map(int, date.split(' '))
48 except ValueError:
49 raise ValueError(_('invalid date: %r') % date)
50 if abs(when) > 0x7fffffff: 47 if abs(when) > 0x7fffffff:
51 raise ValueError(_('date exceeds 32 bits: %d') % when) 48 raise ValueError(_('date exceeds 32 bits: %d') % when)
52 if offset < -50400 or offset > 43200: 49 if offset < -50400 or offset > 43200:
53 raise ValueError(_('impossible time zone offset: %d') % offset) 50 raise ValueError(_('impossible time zone offset: %d') % offset)
51 parseddate = "%d %d" % (when, offset)
54 else: 52 else:
55 date = "%d %d" % util.makedate() 53 parseddate = "%d %d" % util.makedate()
56 list.sort() 54 list.sort()
57 l = [hex(manifest), user, date] + list + ["", desc] 55 l = [hex(manifest), user, parseddate] + list + ["", desc]
58 text = "\n".join(l) 56 text = "\n".join(l)
59 return self.addrevision(text, transaction, self.count(), p1, p2) 57 return self.addrevision(text, transaction, self.count(), p1, p2)