)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"e729d20cdfd1ce08dc2a5185cb75c0ba41c070db","unresolved":true,"context_lines":[{"line_number":12,"context_line":"See PEP-585 for more info."},{"line_number":13,"context_line":"https://peps.python.org/pep-0585/"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Depends-On: I49e5729a4d754934e861d4d0fd25fd8b2a80602e"},{"line_number":16,"context_line":"Depends-On: I1e0d0a43cd166e6cfd4be7ca0f426e9fc3625a28"},{"line_number":17,"context_line":"Change-Id: I4c9da881cea1a3638da504c4b79ca8db13851b06"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"63189eed_03cdc009","line":16,"range":{"start_line":15,"start_character":0,"end_line":16,"end_character":53},"updated":"2022-05-16 20:10:53.000000000","message":"These can be removed now that both have merged.","commit_id":"591129e125aa25ceedde90da6c4c90fff8dde80a"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"ee81285fd556db5d0c1cf2e8de4c44f1d807257d","unresolved":false,"context_lines":[{"line_number":12,"context_line":"See PEP-585 for more info."},{"line_number":13,"context_line":"https://peps.python.org/pep-0585/"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Depends-On: I49e5729a4d754934e861d4d0fd25fd8b2a80602e"},{"line_number":16,"context_line":"Depends-On: I1e0d0a43cd166e6cfd4be7ca0f426e9fc3625a28"},{"line_number":17,"context_line":"Change-Id: I4c9da881cea1a3638da504c4b79ca8db13851b06"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"dd87239a_30e1e9f0","line":16,"range":{"start_line":15,"start_character":0,"end_line":16,"end_character":53},"in_reply_to":"63189eed_03cdc009","updated":"2022-05-17 21:04:39.000000000","message":"Done","commit_id":"591129e125aa25ceedde90da6c4c90fff8dde80a"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"2f6b10b77153cd8e4f4a043c698f9e75dfd54dfd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"b7bebed2_23d6caad","updated":"2022-05-04 01:36:59.000000000","message":"This is definitely a more intuitive way to handle typing.  I have one minor concern, but overall I don\u0027t see a problem with this.","commit_id":"d9e03d7500ee7b3f026786c12dbc8a763591ddd2"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"0838beb5515731e2ba3bb86b273ccfc985d88b81","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"3cfc9185_824c3364","updated":"2022-05-11 21:00:20.000000000","message":"This patch doesn\u0027t fix all collection annotations. For example, List is used in these files, and searching for Tuple finds other files that aren\u0027t in this patch.\n\n% ag -sQl \u0027List[\u0027\ncinder/backup/drivers/ceph.py\ncinder/backup/api.py\ncinder/image/image_utils.py\ncinder/scheduler/base_weight.py\ncinder/scheduler/host_manager.py\ncinder/scheduler/filter_scheduler.py\ncinder/volume/drivers/hedvig/hedvig_cinder.py\ncinder/volume/drivers/rbd.py\ncinder/volume/flows/api/create_volume.py\ncinder/volume/flows/manager/create_volume.py\ncinder/volume/volume_utils.py\ncinder/volume/api.py\ncinder/volume/manager.py\ncinder/utils.py\ncinder/flow_utils.py\n","commit_id":"d9e03d7500ee7b3f026786c12dbc8a763591ddd2"},{"author":{"_account_id":22248,"name":"HPE AlletraMP iSCSI CI","email":"hp.cinder.blr.ci@groups.ext.hpe.com","username":"hp-storage-blr-ci","tags":["SERVICE_USER"]},"change_message_id":"078f816457a625073cd5f283ee94075c2fe9b258","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"39deb5af_1e50de2b","updated":"2022-05-02 11:08:55.000000000","message":"run-Nimble Storage Alletra 6k CI","commit_id":"d9e03d7500ee7b3f026786c12dbc8a763591ddd2"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"189752e72a3d611d27a06572ce83f33195e99aab","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"3f452c7f_3bb3cf89","in_reply_to":"3cfc9185_824c3364","updated":"2022-05-12 16:55:05.000000000","message":"Fixed these up -- thanks.  (This is the issue with having multiple patches going in parallel.)","commit_id":"d9e03d7500ee7b3f026786c12dbc8a763591ddd2"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"fae477f505341fa1c1849ba1cae939c0981db91b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"23ee8cae_40fd77ca","updated":"2022-05-13 17:26:50.000000000","message":"recheck\n\ngrenade failed setting up pcp\n","commit_id":"e015d8cb14b9cb86e4efea720644bcb1c42d0376"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"3d069b72984a813d5e31298af56e62922a93a81a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"f20676dc_8372f636","updated":"2022-05-16 17:19:23.000000000","message":"Will rebase this on top of 766064 since that patch is already in the merge queue and it conflicts with this one.","commit_id":"5025eead479c6412fa6eaed2a6987837bc77cb6f"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"90c0ca87d0583f63888cf09169b2d33e16cf99ce","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"5c2722a4_c2499a84","updated":"2022-05-17 20:08:05.000000000","message":"LGTM. waiting on reply before +2","commit_id":"591129e125aa25ceedde90da6c4c90fff8dde80a"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"e729d20cdfd1ce08dc2a5185cb75c0ba41c070db","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"21f793ba_874822d3","updated":"2022-05-16 20:10:53.000000000","message":"Other than extraneous depends-on in commit message, lgtm","commit_id":"591129e125aa25ceedde90da6c4c90fff8dde80a"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"385ff9c698078e59f65fe9856759f34e87c2d7e6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"52c498b8_41a8f6f6","in_reply_to":"5c2722a4_c2499a84","updated":"2022-05-17 21:03:24.000000000","message":"I think they were fine to leave there, but since the patch needed an update due to a merge conflict anyway, I\u0027ve removed them.","commit_id":"591129e125aa25ceedde90da6c4c90fff8dde80a"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"deff9c8d41431f62621d7d0a8fe281a10688a677","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"c156b80c_ef191754","updated":"2022-05-19 15:32:23.000000000","message":"LGTM.","commit_id":"5179e4f6bf49795d2aa4c8d0807a502ee1561f60"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"e5bec8404f704ed0e92a557b9d63216be320964e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"c84d48e6_34aebc6b","updated":"2022-05-19 13:34:06.000000000","message":"Thanks!","commit_id":"5179e4f6bf49795d2aa4c8d0807a502ee1561f60"}],"cinder/image/glance.py":[{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"0838beb5515731e2ba3bb86b273ccfc985d88b81","unresolved":true,"context_lines":[{"line_number":26,"context_line":"import textwrap"},{"line_number":27,"context_line":"import time"},{"line_number":28,"context_line":"import typing"},{"line_number":29,"context_line":"from typing import Any  # noqa: H301"},{"line_number":30,"context_line":"import urllib"},{"line_number":31,"context_line":"import urllib.parse"},{"line_number":32,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"2846946c_2d471626","line":29,"range":{"start_line":29,"start_character":22,"end_line":29,"end_character":36},"updated":"2022-05-11 21:00:20.000000000","message":"This is no longer necessary.","commit_id":"d9e03d7500ee7b3f026786c12dbc8a763591ddd2"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"189752e72a3d611d27a06572ce83f33195e99aab","unresolved":false,"context_lines":[{"line_number":26,"context_line":"import textwrap"},{"line_number":27,"context_line":"import time"},{"line_number":28,"context_line":"import typing"},{"line_number":29,"context_line":"from typing import Any  # noqa: H301"},{"line_number":30,"context_line":"import urllib"},{"line_number":31,"context_line":"import urllib.parse"},{"line_number":32,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"8eaf07de_4498a824","line":29,"range":{"start_line":29,"start_character":22,"end_line":29,"end_character":36},"in_reply_to":"2846946c_2d471626","updated":"2022-05-12 16:55:05.000000000","message":"Done","commit_id":"d9e03d7500ee7b3f026786c12dbc8a763591ddd2"}],"cinder/utils.py":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"2f6b10b77153cd8e4f4a043c698f9e75dfd54dfd","unresolved":true,"context_lines":[{"line_number":167,"context_line":"        raise exception.InvalidInput(reason\u003dmsg)"},{"line_number":168,"context_line":""},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"def execute(*cmd: str, **kwargs: Union[bool, str]) -\u003e tuple[str, str]:"},{"line_number":171,"context_line":"    \"\"\"Convenience wrapper around oslo\u0027s execute() method.\"\"\""},{"line_number":172,"context_line":"    if \u0027run_as_root\u0027 in kwargs and \u0027root_helper\u0027 not in kwargs:"},{"line_number":173,"context_line":"        kwargs[\u0027root_helper\u0027] \u003d get_root_helper()"}],"source_content_type":"text/x-python","patch_set":1,"id":"d38a268a_4b150ebb","line":170,"updated":"2022-05-04 01:36:59.000000000","message":"I commented out the \"from __future__\" in this file and the scheduler files and ran \"tox -e py36 -- cinder.tests.unit.scheduler\" to see what would happen, and this line raises \"TypeError: \u0027type\u0027 object is not subscriptable\" during test discovery.\n\nAll that means is that we may need to be a little careful with backports.  The good news is that Yoga supports 3.6, so we\u0027ll find out on the first backport if something slipped in or not.","commit_id":"d9e03d7500ee7b3f026786c12dbc8a763591ddd2"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"a883bdf3f62c7a61baa12d1a4622c89643c320f9","unresolved":false,"context_lines":[{"line_number":167,"context_line":"        raise exception.InvalidInput(reason\u003dmsg)"},{"line_number":168,"context_line":""},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"def execute(*cmd: str, **kwargs: Union[bool, str]) -\u003e tuple[str, str]:"},{"line_number":171,"context_line":"    \"\"\"Convenience wrapper around oslo\u0027s execute() method.\"\"\""},{"line_number":172,"context_line":"    if \u0027run_as_root\u0027 in kwargs and \u0027root_helper\u0027 not in kwargs:"},{"line_number":173,"context_line":"        kwargs[\u0027root_helper\u0027] \u003d get_root_helper()"}],"source_content_type":"text/x-python","patch_set":1,"id":"c9804e11_5bf9645b","line":170,"in_reply_to":"d38a268a_4b150ebb","updated":"2022-05-05 12:37:20.000000000","message":"Yes, fortunately unit tests will easily catch any mistakes with this for 3.6.","commit_id":"d9e03d7500ee7b3f026786c12dbc8a763591ddd2"}]}
