)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"58dfe2dbc45bee8c243d53f76b278f9923bcb88e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"6108c1e6_43109c59","updated":"2023-12-20 22:54:00.000000000","message":"@stephenfin: glad https://review.opendev.org/c/openstack/requirements/+/878690 got merged so the requirements change wouldn\u0027t break cinder!  I see you have a patch up to remove mypy from upper-constraints ... you may also want to revert 878690 after your blacklist patch merges.\n\nThis change makes sense to me, thanks for submitting it!","commit_id":"e162a95d6520c0555265c0b4aaf44c3e85f53011"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"5768911df79fc8b4c076bc74ea3e1c0f7b81b192","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"3a0c0d40_e143f8b1","in_reply_to":"6108c1e6_43109c59","updated":"2023-12-21 10:41:58.000000000","message":"\u003e  I see you have a patch up to remove mypy from upper-constraints ... you may also want to revert 878690 after your blacklist patch merges.\n\nGood point. I\u0027ve merged a revert into that change so that we can merge that without necessarily relying on this.","commit_id":"e162a95d6520c0555265c0b4aaf44c3e85f53011"}],"cinder/volume/volume_utils.py":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"58dfe2dbc45bee8c243d53f76b278f9923bcb88e","unresolved":true,"context_lines":[{"line_number":886,"context_line":"                 for (key, multiplier) in zip(sort_keys, sort_dirs)]"},{"line_number":887,"context_line":""},{"line_number":888,"context_line":"    def comparer(left, right) -\u003e int:"},{"line_number":889,"context_line":"        fn: Callable"},{"line_number":890,"context_line":"        for fn, d in comparers:"},{"line_number":891,"context_line":"            left_val \u003d fn(left)"},{"line_number":892,"context_line":"            right_val \u003d fn(right)"}],"source_content_type":"text/x-python","patch_set":1,"id":"abd53c17_83e8f080","side":"PARENT","line":889,"updated":"2023-12-20 22:54:00.000000000","message":"if you change this to\n\n    fn: operator.itemgetter[str]\n\nmypy 1.7.1 is happy ... but, if you look at line 885, it\u0027s pretty obvious that this is the type of fn (both to humans and to the improved type inference algorithm introduced in mypy 1.7).  So it makes sense to simply remove line 889.","commit_id":"e9f94157895516c1c75052f6c982d9cb4aaeaa2b"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"5768911df79fc8b4c076bc74ea3e1c0f7b81b192","unresolved":false,"context_lines":[{"line_number":886,"context_line":"                 for (key, multiplier) in zip(sort_keys, sort_dirs)]"},{"line_number":887,"context_line":""},{"line_number":888,"context_line":"    def comparer(left, right) -\u003e int:"},{"line_number":889,"context_line":"        fn: Callable"},{"line_number":890,"context_line":"        for fn, d in comparers:"},{"line_number":891,"context_line":"            left_val \u003d fn(left)"},{"line_number":892,"context_line":"            right_val \u003d fn(right)"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf07530d_c0981f73","side":"PARENT","line":889,"in_reply_to":"abd53c17_83e8f080","updated":"2023-12-21 10:41:58.000000000","message":"Yeah, I initially marked the variable up and then realised it was wholly unnecessary as the type is obvious.","commit_id":"e9f94157895516c1c75052f6c982d9cb4aaeaa2b"}]}
