)]}'
{"id":"openstack%2Freno~800203","triplet_id":"openstack%2Freno~master~I488d14bc1134a38d4f76ed5f5368c84db8e39df3","project":"openstack/reno","branch":"master","topic":"story/1670421","hashtags":[],"change_id":"I488d14bc1134a38d4f76ed5f5368c84db8e39df3","subject":"loader: Handle note files missing top-level keys","status":"MERGED","created":"2021-07-09 11:07:30.000000000","updated":"2021-07-19 13:12:03.000000000","submitted":"2021-07-19 13:09:47.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":2,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"800203-story/1670421","meta_rev_id":"5c44398aabb6e62569ccc5f0a7561fe2062b1974","_number":800203,"virtual_id_number":800203,"owner":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},{"value":0,"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2021-07-19 13:09:47.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},"all":[{"value":2,"date":"2021-07-19 12:58:44.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},{"value":2,"date":"2021-07-13 21:19:11.000000000","_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},"all":[{"value":1,"date":"2021-07-19 12:58:44.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},{"value":0,"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2021-07-09 11:19:44.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2021-07-09 12:28:47.000000000","updated_by":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"reviewer":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"state":"CC"},{"updated":"2021-07-13 21:19:11.000000000","updated_by":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"reviewer":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"state":"REVIEWER"},{"updated":"2021-07-19 12:58:44.000000000","updated_by":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},"reviewer":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},"state":"REVIEWER"}],"messages":[{"id":"2c72201e2a926e315c1e0e65d61d5f6add27ad17","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2021-07-09 11:07:30.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"3fbaef1e8b6f80d2072e56a3b8c66c45a3936d30","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-07-09 11:19:44.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/341b7dfd20b240358bb4042e5c91e8ab : SUCCESS in 3m 59s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/26ee55aba2b743aca6b3d6f2e9b95681 : SUCCESS in 6m 43s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/90209157ac4149c8bcdcc8e1e51d0e52 : SUCCESS in 6m 51s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/1f6ab15e10e84caaa005ca621830b8c4 : SUCCESS in 6m 13s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/ad76c2499f9a4d51a88032519952b7de : SUCCESS in 3m 47s","accounts_in_message":[],"_revision_number":1},{"id":"dafd0560082bcb552227b7cb1df4929b23052eca","author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"date":"2021-07-09 12:28:47.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"f3807272331f8f4705bb4620c519ea8975e8505c","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2021-07-12 14:14:28.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"fb0b3f78d005302d1723bf35b44529140dd98646","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2021-07-12 14:27:29.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"80cc48a09ae8da79a909dfc22b84b0ff68bfc739","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-07-12 14:39:03.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/d4699bc89d4b4cb3ab1aab97ec172db1 : SUCCESS in 4m 04s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/2490022917914917a7711f07bb05ff89 : SUCCESS in 7m 10s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/3aeb1aeb685249d29a2861ecfb3ce7fd : SUCCESS in 8m 33s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/5ae89f266f2a46a5a596ac6c97ad048c : SUCCESS in 8m 13s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/424f1dbe45144232a7becc27219097a9 : SUCCESS in 4m 34s","accounts_in_message":[],"_revision_number":2},{"id":"426a6322e6336fd48bb042a9e3c3a03668c911d7","author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"date":"2021-07-13 21:19:11.000000000","message":"Patch Set 2: Code-Review+2\n\nI\u0027m still unsure about the breaking nature of this, but I think I can go along with the logic that says it\u0027s correct to throw the error by default and we can come back and add an option to ignore it more silently later if that\u0027s necessary.","accounts_in_message":[],"_revision_number":2},{"id":"9026ac0cd84358aac7ec05559478dbcb8be1393e","author":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},"date":"2021-07-19 12:58:44.000000000","message":"Patch Set 2: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":2},{"id":"7ad4561a571666fb6d6c2188eae68cb84347aae6","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-07-19 12:59:02.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":2},{"id":"84c80c294addf73add16a34341d04d2404460f9e","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-07-19 13:09:47.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/06c9089244b6416a9cf1bd57cbd4c3a4 : SUCCESS in 4m 38s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/b5b6916f2fbe4ba184edb3aacddc6d69 : SUCCESS in 6m 33s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/a0687909ef03461892c26b93c6fc8d15 : SUCCESS in 7m 28s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/f5c68a1416a84f6a86a0103dc4dafdbd : SUCCESS in 5m 24s","accounts_in_message":[],"_revision_number":2},{"id":"a6fad6f0a3c888647e25aa9252e0f4bd2d0d95df","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-07-19 13:09:47.000000000","message":"Change has been successfully merged by Zuul","accounts_in_message":[],"_revision_number":2},{"id":"5c44398aabb6e62569ccc5f0a7561fe2062b1974","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-07-19 13:12:03.000000000","message":"Patch Set 2:\n\nBuild succeeded (promote pipeline).\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/8ba7a957af5c4d4291d5d2989ff2acea : SUCCESS in 59s","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"c2d9357803484d4c535df82f4de8307b4d2954a7","revisions":{"17cbf8b514c2eeb7ee2680f594bd8f45f0a6cb57":{"kind":"REWORK","_number":1,"created":"2021-07-09 11:07:30.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/03/800203/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/reno","ref":"refs/changes/03/800203/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/reno refs/changes/03/800203/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/reno refs/changes/03/800203/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/reno refs/changes/03/800203/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/reno refs/changes/03/800203/1"}}},"commit":{"parents":[{"commit":"7a82e8fe0512e11d796332420a46fe8bb4aa780b","subject":"Moving to OFTC","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/reno/commit/7a82e8fe0512e11d796332420a46fe8bb4aa780b"}]}],"author":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2021-07-09 10:39:03.000000000","tz":60},"committer":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2021-07-09 11:04:30.000000000","tz":60},"subject":"loader: Handle note files missing top-level keys","message":"loader: Handle note files missing top-level keys\n\nRelease note files should look like this:\n\n  issues:\n  - |\n    Some text here.\n\nHowever, it\u0027s possible to make a mistake and create a release note\nmissing the top-level key:\n\n  - |\n    Some text here.\n\nIf you do this, reno fails with a cryptic error which Sphinx will bubble\nup with zero context:\n\n  AttributeError: \u0027list\u0027 object has no attribute \u0027items\u0027\n\nMake this failure more obvious.\n\nChange-Id: I488d14bc1134a38d4f76ed5f5368c84db8e39df3\nSigned-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e\nStory: 1670421\nTask: 42802\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/reno/commit/17cbf8b514c2eeb7ee2680f594bd8f45f0a6cb57"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/reno/commit/17cbf8b514c2eeb7ee2680f594bd8f45f0a6cb57"}]},"branch":"refs/heads/master"},"c2d9357803484d4c535df82f4de8307b4d2954a7":{"kind":"REWORK","_number":2,"created":"2021-07-12 14:27:29.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/03/800203/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/reno","ref":"refs/changes/03/800203/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/reno refs/changes/03/800203/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/reno refs/changes/03/800203/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/reno refs/changes/03/800203/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/reno refs/changes/03/800203/2"}}},"commit":{"parents":[{"commit":"7a82e8fe0512e11d796332420a46fe8bb4aa780b","subject":"Moving to OFTC","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/reno/commit/7a82e8fe0512e11d796332420a46fe8bb4aa780b"}]}],"author":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2021-07-09 10:39:03.000000000","tz":60},"committer":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2021-07-12 14:20:48.000000000","tz":60},"subject":"loader: Handle note files missing top-level keys","message":"loader: Handle note files missing top-level keys\n\nRelease note files should look like this:\n\n  issues:\n  - |\n    Some text here.\n\nHowever, it\u0027s possible to make a mistake and create a release note\nmissing the top-level key:\n\n  - |\n    Some text here.\n\nIf you do this, reno fails with a cryptic error which Sphinx will bubble\nup with zero context:\n\n  AttributeError: \u0027list\u0027 object has no attribute \u0027items\u0027\n\nMake this failure more obvious.\n\nChange-Id: I488d14bc1134a38d4f76ed5f5368c84db8e39df3\nSigned-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e\nStory: 1670421\nTask: 42802\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/reno/commit/c2d9357803484d4c535df82f4de8307b4d2954a7"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/reno/commit/c2d9357803484d4c535df82f4de8307b4d2954a7"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"status":"CLOSED","labels":[{"label":"Verified","status":"OK","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"OK","applied_by":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"}},{"label":"Workflow","status":"OK","applied_by":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"}}]}],"submit_requirements":[{"name":"Verified","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Verified\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dCustom-Rule"],"failing_atoms":[],"atom_explanations":{}}},{"name":"Workflow","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Workflow\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dCustom-Rule"],"failing_atoms":[],"atom_explanations":{}}},{"name":"Code-Review","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Code-Review\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dCustom-Rule"],"failing_atoms":[],"atom_explanations":{}}}]}
