equal
deleted
inserted
replaced
6 """ |
6 """ |
7 __docformat__ = "restructuredtext en" |
7 __docformat__ = "restructuredtext en" |
8 |
8 |
9 import locale |
9 import locale |
10 from md5 import md5 |
10 from md5 import md5 |
|
11 from datetime import datetime, timedelta |
11 from time import time |
12 from time import time |
12 from random import randint, seed |
13 from random import randint, seed |
13 |
14 |
|
15 try: |
|
16 strptime = datetime.strptime |
|
17 except AttributeError: # py < 2.5 |
|
18 from time import strptime as time_strptime |
|
19 def strptime(value, format): |
|
20 return datetime(*time_strptime(value, format)[:6]) |
|
21 |
14 # initialize random seed from current time |
22 # initialize random seed from current time |
15 seed() |
23 seed() |
16 |
24 |
17 def make_uid(key): |
25 def make_uid(key): |
18 """forge a unique identifier""" |
26 """forge a unique identifier""" |
36 :param include: None (means no exclusion) or a function taking a |
44 :param include: None (means no exclusion) or a function taking a |
37 date as parameter, and returning True if the date |
45 date as parameter, and returning True if the date |
38 should be included. |
46 should be included. |
39 """ |
47 """ |
40 date = begin |
48 date = begin |
|
49 incr = timedelta(incr, 0, 0) |
41 while date <= end: |
50 while date <= end: |
42 if include is None or include(date): |
51 if include is None or include(date): |
43 yield date |
52 yield date |
44 date += incr |
53 date += incr |
45 |
54 |