Skip to content

Commit 333f32b

Browse files
committed
Cache result of tracker open in roundup-admin
This change caches the tracker open command by default. To restore the original action where every command run re-opened the tracker, use: pragma _reopen_tracker=true
1 parent 5f2ea13 commit 333f32b

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

roundup/admin.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,7 @@ def __init__(self):
9898
for k in AdminTool.__dict__:
9999
if k[:5] == 'help_':
100100
self.help[k[5:]] = getattr(self, k)
101+
self.tracker = None
101102
self.tracker_home = ''
102103
self.db = None
103104
self.db_uncommitted = False
@@ -1974,7 +1975,13 @@ def run_command(self, args):
19741975

19751976
# get the tracker
19761977
try:
1977-
tracker = roundup.instance.open(self.tracker_home)
1978+
if self.tracker and not self.settings['_reopen_tracker']:
1979+
tracker = self.tracker
1980+
else:
1981+
if self.settings["verbose"]:
1982+
print("Reopening tracker")
1983+
tracker = roundup.instance.open(self.tracker_home)
1984+
self.tracker = tracker
19781985
except ValueError as message: # noqa: F841
19791986
self.tracker_home = ''
19801987
print(_("Error: Couldn't open tracker: %(message)s") % locals())

0 commit comments

Comments
 (0)