)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"9a5f72b1516fc035f9e2f3aab2c6e9073ab59117","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"trivial: Remove log translations"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"We neither need nor want these translated. Remove these translations."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: I4573a7c5f3a7b5716a15fbd15ad9336807843a03"},{"line_number":12,"context_line":"Signed-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"ff570b3c_41b1e4e0","line":9,"range":{"start_line":9,"start_character":0,"end_line":9,"end_character":69},"updated":"2020-05-19 16:52:06.000000000","message":"Can you explain the criteria here?\n\nLOG.* lines aren\u0027t being translated anymore right but exceptions are correct?","commit_id":"7f8521e2819e9d131eda32e292d3ed6385ebc7f6"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"4b1ea3684e032dbb1f87c04d05509d8d5f894f72","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"trivial: Remove log translations"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"We neither need nor want these translated. Remove these translations."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: I4573a7c5f3a7b5716a15fbd15ad9336807843a03"},{"line_number":12,"context_line":"Signed-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"ff570b3c_d13f6a84","line":9,"range":{"start_line":9,"start_character":0,"end_line":9,"end_character":69},"in_reply_to":"ff570b3c_41b1e4e0","updated":"2020-05-20 16:22:08.000000000","message":"Correct. The docs [1] say:\n\n  Anytime that the message is passed outside of the current context\n  (for example as part of an exception) the _() marker function\n  must be used instead.\n\nNow whether this is actually good advice or not is debatable. I don\u0027t personally get what translated exceptions get us and arguably the same complaints against translating logs (they kill Google\u0027ability) also apply here. However, I\u0027m not paid enough to think about these things so... :)\n\n[1] https://docs.openstack.org/oslo.i18n/latest/user/guidelines.html#log-translation","commit_id":"7f8521e2819e9d131eda32e292d3ed6385ebc7f6"}],"nova/scheduler/request_filter.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"13deb5144f7fb6fa46c8711db9be913f8ea95e4d","unresolved":false,"context_lines":[{"line_number":181,"context_line":"    disk_format \u003d request_spec.image.disk_format"},{"line_number":182,"context_line":"    trait_name \u003d \u0027COMPUTE_IMAGE_TYPE_%s\u0027 % disk_format.upper()"},{"line_number":183,"context_line":"    if not hasattr(os_traits, trait_name):"},{"line_number":184,"context_line":"        LOG.error("},{"line_number":185,"context_line":"            \u0027Computed trait name %r is not valid; is os-traits up to date?\u0027,"},{"line_number":186,"context_line":"            trait_name)"},{"line_number":187,"context_line":"        return False"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_295ff641","line":184,"updated":"2020-05-27 08:33:45.000000000","message":"seems unrelated as _() was not called here","commit_id":"13f94204e5b99471b948a1b52d25007b4b7b9c48"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"aec87a946476c49b5bcb216c0b7d975b8411577f","unresolved":false,"context_lines":[{"line_number":181,"context_line":"    disk_format \u003d request_spec.image.disk_format"},{"line_number":182,"context_line":"    trait_name \u003d \u0027COMPUTE_IMAGE_TYPE_%s\u0027 % disk_format.upper()"},{"line_number":183,"context_line":"    if not hasattr(os_traits, trait_name):"},{"line_number":184,"context_line":"        LOG.error("},{"line_number":185,"context_line":"            \u0027Computed trait name %r is not valid; is os-traits up to date?\u0027,"},{"line_number":186,"context_line":"            trait_name)"},{"line_number":187,"context_line":"        return False"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_a2131bb8","line":184,"in_reply_to":"ff570b3c_295ff641","updated":"2020-05-27 14:22:56.000000000","message":"technically this ti correct but the extra perens are not needed\n\nthey could easily be mis read as a tuple so i think this improves the readability. it could be called out in the commit message","commit_id":"13f94204e5b99471b948a1b52d25007b4b7b9c48"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"13deb5144f7fb6fa46c8711db9be913f8ea95e4d","unresolved":false,"context_lines":[{"line_number":219,"context_line":"                \u0027-\u0027, \u0027_\u0027).upper()"},{"line_number":220,"context_line":"            trait_name \u003d f\u0027{prefix}_{value}\u0027"},{"line_number":221,"context_line":"            if not hasattr(os_traits, trait_name):"},{"line_number":222,"context_line":"                LOG.error(\u0027Computed trait name %r is not valid; \u0027"},{"line_number":223,"context_line":"                          \u0027is os-traits up to date?\u0027, trait_name)"},{"line_number":224,"context_line":"                return False"},{"line_number":225,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_095af24e","line":222,"updated":"2020-05-27 08:33:45.000000000","message":"ditto","commit_id":"13f94204e5b99471b948a1b52d25007b4b7b9c48"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"aec87a946476c49b5bcb216c0b7d975b8411577f","unresolved":false,"context_lines":[{"line_number":219,"context_line":"                \u0027-\u0027, \u0027_\u0027).upper()"},{"line_number":220,"context_line":"            trait_name \u003d f\u0027{prefix}_{value}\u0027"},{"line_number":221,"context_line":"            if not hasattr(os_traits, trait_name):"},{"line_number":222,"context_line":"                LOG.error(\u0027Computed trait name %r is not valid; \u0027"},{"line_number":223,"context_line":"                          \u0027is os-traits up to date?\u0027, trait_name)"},{"line_number":224,"context_line":"                return False"},{"line_number":225,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_c2856fd1","line":222,"in_reply_to":"ff570b3c_095af24e","updated":"2020-05-27 14:22:56.000000000","message":"yes but again it removes the confusing () which server no actual function in this case. they are not needed to split the string over 2 lines and can easily be misread as a tuple","commit_id":"13f94204e5b99471b948a1b52d25007b4b7b9c48"}],"nova/virt/libvirt/driver.py":[{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"cef1117ffd560b3e9782c2e44c2ba0efbb486d61","unresolved":false,"context_lines":[{"line_number":1797,"context_line":"        except libvirt.libvirtError as ex:"},{"line_number":1798,"context_line":"            with excutils.save_and_reraise_exception():"},{"line_number":1799,"context_line":"                if \u0027Incorrect number of padding bytes\u0027 in six.text_type(ex):"},{"line_number":1800,"context_line":"                    LOG.warning(_(\u0027Failed to attach encrypted volume due to a \u0027"},{"line_number":1801,"context_line":"                                  \u0027known Libvirt issue, see the following bug \u0027"},{"line_number":1802,"context_line":"                                  \u0027for details: \u0027"},{"line_number":1803,"context_line":"                                  \u0027https://bugzilla.redhat.com/1447297\u0027))"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff570b3c_fe89c4c9","line":1800,"range":{"start_line":1800,"start_character":32,"end_line":1800,"end_character":34},"updated":"2020-05-19 09:25:19.000000000","message":"It should be fixed.","commit_id":"7f8521e2819e9d131eda32e292d3ed6385ebc7f6"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"c209f234d149589e89813baa855b31f5b663939c","unresolved":false,"context_lines":[{"line_number":1797,"context_line":"        except libvirt.libvirtError as ex:"},{"line_number":1798,"context_line":"            with excutils.save_and_reraise_exception():"},{"line_number":1799,"context_line":"                if \u0027Incorrect number of padding bytes\u0027 in six.text_type(ex):"},{"line_number":1800,"context_line":"                    LOG.warning(_(\u0027Failed to attach encrypted volume due to a \u0027"},{"line_number":1801,"context_line":"                                  \u0027known Libvirt issue, see the following bug \u0027"},{"line_number":1802,"context_line":"                                  \u0027for details: \u0027"},{"line_number":1803,"context_line":"                                  \u0027https://bugzilla.redhat.com/1447297\u0027))"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff570b3c_9107b2ca","line":1800,"range":{"start_line":1800,"start_character":32,"end_line":1800,"end_character":34},"in_reply_to":"ff570b3c_a1bf20a8","updated":"2020-05-21 09:06:57.000000000","message":"Done.\n\nAlso, I realized this can go now so I\u0027ll do just that (separately)","commit_id":"7f8521e2819e9d131eda32e292d3ed6385ebc7f6"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"fb71adbc212713b7e9e22777090651f12b9ee964","unresolved":false,"context_lines":[{"line_number":1797,"context_line":"        except libvirt.libvirtError as ex:"},{"line_number":1798,"context_line":"            with excutils.save_and_reraise_exception():"},{"line_number":1799,"context_line":"                if \u0027Incorrect number of padding bytes\u0027 in six.text_type(ex):"},{"line_number":1800,"context_line":"                    LOG.warning(_(\u0027Failed to attach encrypted volume due to a \u0027"},{"line_number":1801,"context_line":"                                  \u0027known Libvirt issue, see the following bug \u0027"},{"line_number":1802,"context_line":"                                  \u0027for details: \u0027"},{"line_number":1803,"context_line":"                                  \u0027https://bugzilla.redhat.com/1447297\u0027))"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff570b3c_a1bf20a8","line":1800,"range":{"start_line":1800,"start_character":32,"end_line":1800,"end_character":34},"in_reply_to":"ff570b3c_fe89c4c9","updated":"2020-05-19 16:52:09.000000000","message":"Hmm, I wonder how this passed the hacking check :-\\","commit_id":"7f8521e2819e9d131eda32e292d3ed6385ebc7f6"}],"nova/virt/libvirt/host.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"13deb5144f7fb6fa46c8711db9be913f8ea95e4d","unresolved":false,"context_lines":[{"line_number":504,"context_line":"            conn \u003d self._get_connection()"},{"line_number":505,"context_line":"        except libvirt.libvirtError as ex:"},{"line_number":506,"context_line":"            LOG.exception(\"Connection to libvirt failed: %s\", ex)"},{"line_number":507,"context_line":"            payload \u003d {\u0027ip\u0027: CONF.my_ip, \u0027method\u0027: \u0027_connect\u0027, \u0027reason\u0027: ex}"},{"line_number":508,"context_line":"            ctxt \u003d nova_context.get_admin_context()"},{"line_number":509,"context_line":"            rpc.get_notifier(\u0027compute\u0027).error(ctxt,"},{"line_number":510,"context_line":"                                              \u0027compute.libvirt.error\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_290d363e","line":507,"updated":"2020-05-27 08:33:45.000000000","message":"this seems unrelated","commit_id":"13f94204e5b99471b948a1b52d25007b4b7b9c48"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"aec87a946476c49b5bcb216c0b7d975b8411577f","unresolved":false,"context_lines":[{"line_number":504,"context_line":"            conn \u003d self._get_connection()"},{"line_number":505,"context_line":"        except libvirt.libvirtError as ex:"},{"line_number":506,"context_line":"            LOG.exception(\"Connection to libvirt failed: %s\", ex)"},{"line_number":507,"context_line":"            payload \u003d {\u0027ip\u0027: CONF.my_ip, \u0027method\u0027: \u0027_connect\u0027, \u0027reason\u0027: ex}"},{"line_number":508,"context_line":"            ctxt \u003d nova_context.get_admin_context()"},{"line_number":509,"context_line":"            rpc.get_notifier(\u0027compute\u0027).error(ctxt,"},{"line_number":510,"context_line":"                                              \u0027compute.libvirt.error\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_e25b5384","line":507,"in_reply_to":"ff570b3c_290d363e","updated":"2020-05-27 14:22:56.000000000","message":"ya it is this is a vaild clean up but its not related to translation.","commit_id":"13f94204e5b99471b948a1b52d25007b4b7b9c48"}],"nova/virt/xenapi/vm_utils.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"13deb5144f7fb6fa46c8711db9be913f8ea95e4d","unresolved":false,"context_lines":[{"line_number":1629,"context_line":"                    # This is not an attached volume"},{"line_number":1630,"context_line":"                    vdi_refs.append(vdi_ref)"},{"line_number":1631,"context_line":"            except session.XenAPI.Failure:"},{"line_number":1632,"context_line":"                LOG.exception(_(\u0027\"Look for the VDIs failed\u0027))"},{"line_number":1633,"context_line":"    return vdi_refs"},{"line_number":1634,"context_line":""},{"line_number":1635,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_ec56ac06","side":"PARENT","line":1632,"range":{"start_line":1632,"start_character":33,"end_line":1632,"end_character":34},"updated":"2020-05-27 08:33:45.000000000","message":":)","commit_id":"d565e7a09281b803c47bc8eec3bac9c4959b4987"}],"nova/virt/xenapi/vmops.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"13deb5144f7fb6fa46c8711db9be913f8ea95e4d","unresolved":false,"context_lines":[{"line_number":1318,"context_line":"                self._restore_orig_vm_and_cleanup_orphan(instance)"},{"line_number":1319,"context_line":"                # TODO(johngarbutt) should also cleanup VHDs at destination"},{"line_number":1320,"context_line":"            except Exception as rollback_error:"},{"line_number":1321,"context_line":"                LOG.warning("},{"line_number":1322,"context_line":"                    \"_migrate_disk_resizing_up failed to rollback: %s\","},{"line_number":1323,"context_line":"                    rollback_error, instance\u003dinstance)"},{"line_number":1324,"context_line":"            raise exception.InstanceFaultRollback(error)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_cc72c8ad","line":1321,"updated":"2020-05-27 08:33:45.000000000","message":"seem unrelated","commit_id":"13f94204e5b99471b948a1b52d25007b4b7b9c48"}],"nova/volume/cinder.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"13deb5144f7fb6fa46c8711db9be913f8ea95e4d","unresolved":false,"context_lines":[{"line_number":800,"context_line":"                # NOTE: It is unnecessary to output BadRequest(400) error log,"},{"line_number":801,"context_line":"                # because operators don\u0027t need to debug such cases."},{"line_number":802,"context_line":"                if getattr(ex, \u0027code\u0027, None) !\u003d 400:"},{"line_number":803,"context_line":"                    LOG.error(\u0027Create attachment failed for volume \u0027"},{"line_number":804,"context_line":"                              \u0027%(volume_id)s. Error: %(msg)s Code: %(code)s\u0027,"},{"line_number":805,"context_line":"                              {\u0027volume_id\u0027: volume_id,"},{"line_number":806,"context_line":"                               \u0027msg\u0027: six.text_type(ex),"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_ec7d0c6f","line":803,"updated":"2020-05-27 08:33:45.000000000","message":"seems unrelated","commit_id":"13f94204e5b99471b948a1b52d25007b4b7b9c48"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"13deb5144f7fb6fa46c8711db9be913f8ea95e4d","unresolved":false,"context_lines":[{"line_number":826,"context_line":"            return translated_attach_ref"},{"line_number":827,"context_line":"        except cinder_exception.ClientException as ex:"},{"line_number":828,"context_line":"            with excutils.save_and_reraise_exception():"},{"line_number":829,"context_line":"                LOG.error(\u0027Show attachment failed for attachment \u0027"},{"line_number":830,"context_line":"                          \u0027%(id)s. Error: %(msg)s Code: %(code)s\u0027,"},{"line_number":831,"context_line":"                          {\u0027id\u0027: attachment_id,"},{"line_number":832,"context_line":"                           \u0027msg\u0027: six.text_type(ex),"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_2c970493","line":829,"updated":"2020-05-27 08:33:45.000000000","message":"ditto","commit_id":"13f94204e5b99471b948a1b52d25007b4b7b9c48"}]}
