def _fetch_updates(cls): logger.info("Fetching updates...") try: updates = [e for e in Extension.all() if e.should_update] except requests.ConnectionError: raise Update.ConnectionError cls._set_cached(updates) Storage.set('last_checked_at', time.time()) return updates
def _set_cached(cls, extensions): cache = {e.filename : str(e.remote.version) for e in extensions} Storage.set('update_cache', cache)
def value(self, val): return Storage.set(self.key, bool(val))
def save(self, sender): rows = self.get() ignore = {r["name"]: True for r in rows if not r["check_for_updates"]} Storage.set('ignore', ignore)