summaryrefslogtreecommitdiff
path: root/portato/plugins
diff options
context:
space:
mode:
authorRené 'Necoro' Neumann <necoro@necoro.net>2008-03-28 12:02:42 +0100
committerRené 'Necoro' Neumann <necoro@necoro.net>2008-03-28 12:02:42 +0100
commitb32ff162963751eba874ec9bbac5c1e27a615054 (patch)
treecf01447d79799ec5687eaa4398fe49a7464b7842 /portato/plugins
parente518b9cb5084f695d5a56da9fc5454c801d288c2 (diff)
downloadportato-b32ff162963751eba874ec9bbac5c1e27a615054.tar.gz
portato-b32ff162963751eba874ec9bbac5c1e27a615054.tar.bz2
portato-b32ff162963751eba874ec9bbac5c1e27a615054.zip
Make find_version run every 30 minutes
Diffstat (limited to 'portato/plugins')
-rw-r--r--portato/plugins/new_version.py36
1 files changed, 26 insertions, 10 deletions
diff --git a/portato/plugins/new_version.py b/portato/plugins/new_version.py
index 687e107..462d67c 100644
--- a/portato/plugins/new_version.py
+++ b/portato/plugins/new_version.py
@@ -2,16 +2,14 @@ try:
from bzrlib import plugin, branch
except ImportError:
plugin = branch = None
-
-from threading import Thread
-
import gobject
from portato.helper import debug, warning
from portato import get_listener
from portato.constants import VERSION, APP_ICON, APP
+from portato.gui.exception_handling import GtkThread
-def find_thread (rev):
+def find_version (rev):
try:
b = branch.Branch.open("lp:portato")
except Exception, e:
@@ -26,17 +24,35 @@ def find_thread (rev):
gobject.idle_add(callback)
-def find_version (*args, **kwargs):
+def start_thread(rev):
+ t = GtkThread(target = find_version, name = "Version Updater Thread", args = (rev,))
+ t.setDaemon(True)
+ t.start()
+ return True
+
+def run_menu (*args, **kwargs):
+ """
+ Run the thread once.
+ """
if not all((plugin, branch)):
- return
+ return None
v = VERSION.split()
if len(v) != 3 or v[0] != "9999":
- return
+ return None
rev = v[-1]
plugin.load_plugins() # to have lp: addresses parsed
- t = Thread(target = find_thread, args=(rev,))
- t.setDaemon(True)
- t.start()
+
+ start_thread(rev)
+ return rev
+
+def run (*args, **kwargs):
+ """
+ Run the thread once and add a 30 minutes timer.
+ """
+ rev = run_menu()
+
+ if rev is not None:
+ gobject.timeout_add(30*60*1000, start_thread, rev) # call it every 30 minutes
ann1-5/+44 2020-05-10Ignore 'dist' folder and build productsRené 'Necoro' Neumann1-0/+2 2020-05-08Print item hashes in debug modeRené 'Necoro' Neumann1-1/+7 2020-05-07Improve html renderingRené 'Necoro' Neumann2-53/+32 2020-05-07Do not assume items to be new when their published date is newer than the las...René 'Necoro' Neumann2-7/+1 2020-05-07Updating some depsRené 'Necoro' Neumann2-2/+7 2020-05-07Better detection if a text starts with html or notRené 'Necoro' Neumann2-4/+13 2020-05-07go fmtRené 'Necoro' Neumann1-3/+2 2020-05-07Add header X-Feed2Imap-GUIDRené 'Necoro' Neumann3-1/+7 2020-05-07update changelogRené 'Necoro' Neumann1-0/+1 2020-05-07FixRené 'Necoro' Neumann1-1/+1 2020-05-07Unified publishedDate and updatedDate into one (just as the old feed2imap...)René 'Necoro' Neumann5-21/+32 2020-05-06Print version during startupRené 'Necoro' Neumann1-1/+1 2020-05-06Improve templateRené 'Necoro' Neumann3-20/+28 2020-05-05Fix pipelineRené 'Necoro' Neumann1-2/+5 2020-05-05Make changelog a part of the release pipeline (untested)René 'Necoro' Neumann2-0/+12