FIXME
/XXX
/TODO
encountered PYL-W051124 # to leverage cachecontrol, we fetch the feed using requests as usual
25 # then feed the feed to feedparser as a raw string
26 # e.g. https://sourceforge.net/projects/keepass/rss?path=/
27 # TODO this could be better. Now it is actually checking versions in topmost files28 r = self.get('https://{}/projects/{}/rss?path=/'.format(self.hostname, self.repo))
29 feed = feedparser.parse(r.text)
30 for tag in feed.entries:
68 holder_class = sc
69 log.info('Trying %s adapter', k)
70 break
71 # TODO now easy multiple default hostnames per holder 72 hostname = sc.get_matching_hostname(repo)
73 if hostname:
74 holder_class = sc
48 # we can avoid this, by reassigning to what comes after the dash:
49 parts = version.split('-')
50
51 # TODO test v5.12-rc1-dontuse -> v5.12.rc1 52 # go through parts separated by dot, detect beta level, and weed out numberless info:
53 parts_n = []
54 for part in parts:
280 :rtype:
281 """
282 try:
283 # TODO use sanitize_version so that we can just pass tags as values284 # help devel releases to be correctly identified
285 # https://www.python.org/dev/peps/pep-0440/#developmental-releases
286 value = re.sub('-devel$', '.dev0', value, 1)
248 if not ret or version > ret['version'] or d > ret['tag_date']:
249 # rare case: if upstream filed formal pre-release that passes as stable
250 # version (tag is 1.2.3 instead of 1.2.3b) double check if pre-release
251 # TODO handle API failure here as it may result in "false positive"?252 release_for_tag = self.get_formal_release_for_tag(tag_name)
253 if release_for_tag:
254 ret = self.set_matching_formal_release(ret, release_for_tag, version, pre_ok)
You have marked this block as FIXME
/XXX
/TODO
. Please make sure this is addressed, or remove this comment as this could be misleading.