You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@community.apache.org by hu...@apache.org on 2019/08/08 15:40:26 UTC
svn commit: r1864720 -
/comdev/reporter.apache.org/trunk/scripts/rapp/whimsy.py
Author: humbedooh
Date: Thu Aug 8 15:40:26 2019
New Revision: 1864720
URL: http://svn.apache.org/viewvc?rev=1864720&view=rev
Log:
weave in data in special cases where non-member/chair people fetch partial data from whimsy..
Modified:
comdev/reporter.apache.org/trunk/scripts/rapp/whimsy.py
Modified: comdev/reporter.apache.org/trunk/scripts/rapp/whimsy.py
URL: http://svn.apache.org/viewvc/comdev/reporter.apache.org/trunk/scripts/rapp/whimsy.py?rev=1864720&r1=1864719&r2=1864720&view=diff
==============================================================================
--- comdev/reporter.apache.org/trunk/scripts/rapp/whimsy.py (original)
+++ comdev/reporter.apache.org/trunk/scripts/rapp/whimsy.py Thu Aug 8 15:40:26 2019
@@ -24,6 +24,43 @@ def get_whimsy(url, env, ttl = 14400):
try:
print("Fetching %s => %s..." % (url, wanted_file))
js = requests.get(url, headers = {'Authorization': env.get('HTTP_AUTHORIZATION')}, timeout = 5).json()
+
+ # Some weaving may be required here if we're not member or chair
+ if url == WHIMSY_AGENDA and len(js) < 50 and ttl <= 3600:
+ try:
+ ojs = json.load(open(wanted_file))
+ except:
+ ojs = []
+ xjs = []
+ for attachment in js:
+ aa = attachment.get('attach')
+ at = attachment.get('title')
+ found = False
+ for old_attachment in ojs:
+ ba = old_attachment.get('attach')
+ bt = old_attachment.get('title')
+ if (aa and ba and aa == ba) and (at and bt and at == bt) and attachment.get('digest'):
+ #print("Weaved %s into old.." % ba)
+ old_attachment['digest'] = attachment['digest']
+ old_attachment['report'] = attachment['report']
+ found = True
+ break
+ if not found:
+ ojs.append(attachment)
+
+ js = ojs
+
+ # Extend old cache if needed
+ elif url == WHIMSY_COMMENTS:
+ try:
+ ojs = json.load(open(wanted_file))
+ except:
+ ojs = {}
+ for key, comments in js.items():
+ ojs[key] = comments
+ js = ojs
+
+
with open(wanted_file, "w") as f:
json.dump(js, f)
f.close()