From c9e99e343601d7c450868d31e644291dc282ffa7 Mon Sep 17 00:00:00 2001 From: Henrik Levkowetz Date: Sun, 26 Jul 2020 14:11:04 +0000 Subject: [PATCH] Refined the code in ietf.sync.rfceditor that deals with errata to distinguish between rejected errata and other errata. - Legacy-Id: 18279 --- ietf/sync/rfceditor.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/ietf/sync/rfceditor.py b/ietf/sync/rfceditor.py index c9cb2da30..3d8912ea6 100644 --- a/ietf/sync/rfceditor.py +++ b/ietf/sync/rfceditor.py @@ -497,18 +497,23 @@ def update_docs_from_rfc_index(index_data, errata_data, skip_older_than_date=Non DocAlias.objects.create(name=a).docs.add(doc) changes.append("created alias %s" % prettify_std_name(a)) - if has_errata: + doc_errata = errata.get('RFC%04d'%rfc_number, []) + all_rejected = doc_errata and all( er['errata_status_code']=='Rejected' for er in doc_errata ) + if has_errata and not all_rejected: if not doc.tags.filter(pk=tag_has_errata.pk).exists(): doc.tags.add(tag_has_errata) changes.append("added Errata tag") - has_verified_errata = name.upper() in errata and any([ er['errata_status_code']=='Verified' for er in errata[name.upper()] ]) + has_verified_errata = any([ er['errata_status_code']=='Verified' for er in doc_errata ]) if has_verified_errata and not doc.tags.filter(pk=tag_has_verified_errata.pk).exists(): doc.tags.add(tag_has_verified_errata) changes.append("added Verified Errata tag") else: if doc.tags.filter(pk=tag_has_errata.pk): doc.tags.remove(tag_has_errata) - changes.append("removed Errata tag") + if all_rejected: + changes.append("removed Errata tag (all errata rejected)") + else: + changes.append("removed Errata tag") if doc.tags.filter(pk=tag_has_verified_errata.pk): doc.tags.remove(tag_has_verified_errata) changes.append("removed Verified Errata tag")