revs = persist_data.persist('BB_URI_HEADREVS', d)
key = self.generate_revision_key(url, ud, d)
- rev = revs[key]
- if rev != None:
- return str(rev)
-
- revs[key] = rev = self._latest_revision(url, ud, d)
- return rev
+ try:
+ return revs[key]
+ except KeyError:
+ revs[key] = rev = self._latest_revision(url, ud, d)
+ return rev
def sortable_revision(self, url, ud, d):
"""
key = self.generate_revision_key(url, ud, d)
latest_rev = self._build_revision(url, ud, d)
- last_rev = localcounts[key + '_rev']
+ last_rev = localcounts.get(key + '_rev')
uselocalcount = bb.data.getVar("BB_LOCALCOUNT_OVERRIDE", d, True) or False
count = None
if uselocalcount:
count = Fetch.localcount_internal_helper(ud, d)
if count is None:
- count = localcounts[key + '_count']
+ count = localcounts.get(key + '_count')
if last_rev == latest_rev:
return str(count + "+" + latest_rev)
revs = bb.persist_data.persist('BB_URI_HEADREVS', d)
key = self.generate_revision_key(url, ud, d, branch=True)
- rev = revs[key]
- if rev is None:
+
+ try:
+ return revs[key]
+ except KeyError:
# Compatibility with old key format, no branch included
oldkey = self.generate_revision_key(url, ud, d, branch=False)
- rev = revs[oldkey]
- if rev is not None:
- del revs[oldkey]
- else:
+ try:
+ rev = revs[oldkey]
+ except KeyError:
rev = self._latest_revision(url, ud, d)
+ else:
+ del revs[oldkey]
revs[key] = rev
-
- return str(rev)
+ return rev
def sortable_revision(self, url, ud, d):
"""
revs = bb.persist_data.persist('BB_URI_HEADREVS', d)
key = self.generate_revision_key(url, ud, d, name)
- rev = revs[key]
- if rev != None:
- return str(rev)
-
- revs[key] = rev = self._latest_revision(url, ud, d, name)
- return rev
+ try:
+ return revs[key]
+ except KeyError:
+ revs[key] = rev = self._latest_revision(url, ud, d, name)
+ return rev
def sortable_revision(self, url, ud, d, name):
"""
key = self.generate_revision_key(url, ud, d, name)
latest_rev = self._build_revision(url, ud, d, name)
- last_rev = localcounts[key + '_rev']
+ last_rev = localcounts.get(key + '_rev')
uselocalcount = bb.data.getVar("BB_LOCALCOUNT_OVERRIDE", d, True) or False
count = None
if uselocalcount:
count = FetchMethod.localcount_internal_helper(ud, d, name)
if count is None:
- count = localcounts[key + '_count'] or "0"
+ count = localcounts.get(key + '_count') or "0"
if last_rev == latest_rev:
return str(count + "+" + latest_rev)
self.table, [key])
for row in data:
return row[1]
+ raise KeyError(key)
def __delitem__(self, key):
+ if key not in self:
+ raise KeyError(key)
self._execute("DELETE from %s where key=?;" % self.table, [key])
def __setitem__(self, key, value):