From 46a9d26c691648f538c3b98a39ea0ed6de12f756 Mon Sep 17 00:00:00 2001 From: Maniack Crudelis Date: Thu, 12 Jan 2017 13:04:09 +0100 Subject: [PATCH 1/3] =?UTF-8?q?Int=C3=A8gre=20le=20level=20du=20json=20au?= =?UTF-8?q?=20-build.json?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- list_builder.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/list_builder.py b/list_builder.py index 7c30316d..e9e5a46c 100755 --- a/list_builder.py +++ b/list_builder.py @@ -202,7 +202,8 @@ for app, info in apps_list.items(): }, 'lastUpdate': timestamp, 'manifest': manifest, - 'state': info['state'] + 'state': info['state'], + 'level': info['level'] } except KeyError as e: print("-> Error: invalid app info or manifest, %s" % e) From f417d5740f8fde9ed3f7782ecca311e3de4e9eb9 Mon Sep 17 00:00:00 2001 From: Laurent Peuch Date: Mon, 30 Jan 2017 23:52:05 +0100 Subject: [PATCH 2/3] [enh] more robust code --- list_builder.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/list_builder.py b/list_builder.py index e9e5a46c..d7640f2b 100755 --- a/list_builder.py +++ b/list_builder.py @@ -203,7 +203,7 @@ for app, info in apps_list.items(): 'lastUpdate': timestamp, 'manifest': manifest, 'state': info['state'], - 'level': info['level'] + 'level': info.get('level', '?') } except KeyError as e: print("-> Error: invalid app info or manifest, %s" % e) From f33bf9c2ba99c62911aa2185c7befb36a275ba40 Mon Sep 17 00:00:00 2001 From: Laurent Peuch Date: Tue, 31 Jan 2017 00:04:52 +0100 Subject: [PATCH 3/3] [enh] handle level modification in caching --- list_builder.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/list_builder.py b/list_builder.py index d7640f2b..4b6db05e 100755 --- a/list_builder.py +++ b/list_builder.py @@ -82,6 +82,7 @@ for app, info in apps_list.items(): app_url = info['url'] app_rev = info['revision'] app_state = info["state"] + app_level = info.get("level") previous_state = already_built_file.get(app, {}).get("state", {}) @@ -90,6 +91,7 @@ for app, info in apps_list.items(): previous_rev = already_built_file.get(app, {}).get("git", {}).get("revision", None) previous_url = already_built_file.get(app, {}).get("git", {}).get("url") + previous_level = already_built_file.get(app, {}).get("level") if previous_rev == app_rev and previous_url == app_url: print("%s[%s] is already up to date in target output, ignore" % (app, app_rev)) @@ -97,6 +99,9 @@ for app, info in apps_list.items(): if previous_state != app_state: result_dict[app]["state"] = app_state print("... but has changed of state, updating it from '%s' to '%s'" % (previous_state, app_state)) + if previous_level != app_level or app_level is None: + result_dict[app]["level"] = app_level + print("... but has changed of level, updating it from '%s' to '%s'" % (previous_level, app_level)) continue # Hosted on GitHub