)]}'
{"nova/compute/utils.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"79e14c6e470e5480baf6cb95f3a8bbb96e6b0666","unresolved":false,"context_lines":[{"line_number":460,"context_line":"    notifier.info(context, \u0027HostAPI.%s\u0027 % event_suffix, host_payload)"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":""},{"line_number":463,"context_line":"def get_nw_info_for_instance(instance):"},{"line_number":464,"context_line":"    return objects.Instance.get_nw_info_for_instance(instance)"},{"line_number":465,"context_line":""},{"line_number":466,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ffe62b97_fd7be724","line":463,"updated":"2017-03-28 13:47:09.000000000","message":"its tempting to delete this too, although I guess thats a massive change?","commit_id":"913195e726e36769b56a2ede1f3c5afb4838180b"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"c07fdb45952301cf667e2fbf7cd8ba8775691f99","unresolved":false,"context_lines":[{"line_number":460,"context_line":"    notifier.info(context, \u0027HostAPI.%s\u0027 % event_suffix, host_payload)"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":""},{"line_number":463,"context_line":"def get_nw_info_for_instance(instance):"},{"line_number":464,"context_line":"    return objects.Instance.get_nw_info_for_instance(instance)"},{"line_number":465,"context_line":""},{"line_number":466,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"dfeb2761_f1b71486","line":463,"in_reply_to":"dfeb2761_5eb6dbdb","updated":"2017-03-31 14:38:28.000000000","message":"Oh, no, I wasn\u0027t going that far, and I\u0027m okay with this change set; I just wanted to make sure it was taken into consideration.  I appreciate the discussion here, and I recognize it\u0027s a sticky problem to solve.  It would be neat if there was a way to mark internal-only APIs as such, but that\u0027s always too much trouble.","commit_id":"913195e726e36769b56a2ede1f3c5afb4838180b"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"61dd7ba847a81a7d8bfd9d93f7fc1acf378ef86f","unresolved":false,"context_lines":[{"line_number":460,"context_line":"    notifier.info(context, \u0027HostAPI.%s\u0027 % event_suffix, host_payload)"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":""},{"line_number":463,"context_line":"def get_nw_info_for_instance(instance):"},{"line_number":464,"context_line":"    return objects.Instance.get_nw_info_for_instance(instance)"},{"line_number":465,"context_line":""},{"line_number":466,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ffe62b97_7f0d1de7","line":463,"in_reply_to":"ffe62b97_05cdb7b5","updated":"2017-03-30 15:42:51.000000000","message":"This patch shouldn\u0027t break \u0027em - but if you remove this method in a subsequent change...\n\nAnd if they don\u0027t have CI, or if their CI doesn\u0027t cover, they find out the hard way.  Such is the lot of the OOT driver, I suppose.  We\u0027ve dealt with similar situations many times.","commit_id":"913195e726e36769b56a2ede1f3c5afb4838180b"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"db0e194b64ca470d15e16f8de6a6d655b9e81fce","unresolved":false,"context_lines":[{"line_number":460,"context_line":"    notifier.info(context, \u0027HostAPI.%s\u0027 % event_suffix, host_payload)"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":""},{"line_number":463,"context_line":"def get_nw_info_for_instance(instance):"},{"line_number":464,"context_line":"    return objects.Instance.get_nw_info_for_instance(instance)"},{"line_number":465,"context_line":""},{"line_number":466,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ffe62b97_05cdb7b5","line":463,"in_reply_to":"ffe62b97_37dda3df","updated":"2017-03-30 07:25:13.000000000","message":"Ohh I see your point about out of tree virt drivers. I guess if they have third party CI then we can see if it breaks this patch breaks that at least.","commit_id":"913195e726e36769b56a2ede1f3c5afb4838180b"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"afae91a679a97561d19c03dcc1bf66afa0df274f","unresolved":false,"context_lines":[{"line_number":460,"context_line":"    notifier.info(context, \u0027HostAPI.%s\u0027 % event_suffix, host_payload)"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":""},{"line_number":463,"context_line":"def get_nw_info_for_instance(instance):"},{"line_number":464,"context_line":"    return objects.Instance.get_nw_info_for_instance(instance)"},{"line_number":465,"context_line":""},{"line_number":466,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ffe62b97_a2fce56f","line":463,"in_reply_to":"ffe62b97_7e432343","updated":"2017-03-29 13:11:22.000000000","message":"Couldn\u0027t downstream consumers be using it, though?  Shouldn\u0027t it go through a deprecation cycle first?","commit_id":"913195e726e36769b56a2ede1f3c5afb4838180b"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"6fcc3778d1b8909492c464b7e51c3d9e17aeae33","unresolved":false,"context_lines":[{"line_number":460,"context_line":"    notifier.info(context, \u0027HostAPI.%s\u0027 % event_suffix, host_payload)"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":""},{"line_number":463,"context_line":"def get_nw_info_for_instance(instance):"},{"line_number":464,"context_line":"    return objects.Instance.get_nw_info_for_instance(instance)"},{"line_number":465,"context_line":""},{"line_number":466,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"dfeb2761_5eb6dbdb","line":463,"in_reply_to":"ffe62b97_7f0d1de7","updated":"2017-03-31 07:12:18.000000000","message":"I have no good answer for this. If I were an owner of an OOT then I would push for a CI that covers this and I would use the CI as an entry point to propose my drive to the nova tree. As far as I know today there is no process for deprecation period before this kind code removals. If you feel this is needed the I suggest propose that on the ML / weekly meeting.","commit_id":"913195e726e36769b56a2ede1f3c5afb4838180b"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"45033ee1858fd609d6c80da907911556514b7b27","unresolved":false,"context_lines":[{"line_number":460,"context_line":"    notifier.info(context, \u0027HostAPI.%s\u0027 % event_suffix, host_payload)"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":""},{"line_number":463,"context_line":"def get_nw_info_for_instance(instance):"},{"line_number":464,"context_line":"    return objects.Instance.get_nw_info_for_instance(instance)"},{"line_number":465,"context_line":""},{"line_number":466,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ffe62b97_37dda3df","line":463,"in_reply_to":"ffe62b97_9a20219d","updated":"2017-03-29 20:09:11.000000000","message":"Okey dokey.  I checked nova-powervm and it\u0027s not using get_nw_info_for_instance specifically, so I\u0027m not making a big deal of it.  But the nova-powervm compute driver *does* import this module and uses other pieces of it, which makes me question whether other downstream nova consumers would really consider it internal-only.","commit_id":"913195e726e36769b56a2ede1f3c5afb4838180b"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"3c97891b5f7fc973159124affd7ffa3552842994","unresolved":false,"context_lines":[{"line_number":460,"context_line":"    notifier.info(context, \u0027HostAPI.%s\u0027 % event_suffix, host_payload)"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":""},{"line_number":463,"context_line":"def get_nw_info_for_instance(instance):"},{"line_number":464,"context_line":"    return objects.Instance.get_nw_info_for_instance(instance)"},{"line_number":465,"context_line":""},{"line_number":466,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ffe62b97_9a20219d","line":463,"in_reply_to":"ffe62b97_a2fce56f","updated":"2017-03-29 16:25:49.000000000","message":"As far as I understand this is totally nova internal so we are free to remove.","commit_id":"913195e726e36769b56a2ede1f3c5afb4838180b"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"d113d679c2d528ac2ab475fdd618e4ede526a7bc","unresolved":false,"context_lines":[{"line_number":460,"context_line":"    notifier.info(context, \u0027HostAPI.%s\u0027 % event_suffix, host_payload)"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":""},{"line_number":463,"context_line":"def get_nw_info_for_instance(instance):"},{"line_number":464,"context_line":"    return objects.Instance.get_nw_info_for_instance(instance)"},{"line_number":465,"context_line":""},{"line_number":466,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ffe62b97_7e432343","line":463,"in_reply_to":"ffe62b97_fd7be724","updated":"2017-03-29 12:57:00.000000000","message":"my grep found 36 places referring to this function name. This doesn\u0027t sound impossible so I replaced them in a subsequent patch. I can squash these two commits together if needed.","commit_id":"913195e726e36769b56a2ede1f3c5afb4838180b"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"8df95fa820e062a767d70a39443151c979a1cb51","unresolved":false,"context_lines":[{"line_number":490,"context_line":"    notifier.info(context, \u0027HostAPI.%s\u0027 % event_suffix, host_payload)"},{"line_number":491,"context_line":""},{"line_number":492,"context_line":""},{"line_number":493,"context_line":"def get_nw_info_for_instance(instance):"},{"line_number":494,"context_line":"    return instance.get_network_info()"},{"line_number":495,"context_line":""},{"line_number":496,"context_line":""},{"line_number":497,"context_line":"def refresh_info_cache_for_instance(context, instance):"}],"source_content_type":"text/x-python","patch_set":6,"id":"bf091321_59d02d51","line":494,"range":{"start_line":493,"start_character":0,"end_line":494,"end_character":38},"updated":"2017-06-08 08:53:09.000000000","message":"Couldn\u0027t we just remove this one-liner now?","commit_id":"ec8722ab108ea9657518d9814217ab9beecec0d9"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"8862d557afed188d37fc8b8429ff93eff7e1ed43","unresolved":false,"context_lines":[{"line_number":490,"context_line":"    notifier.info(context, \u0027HostAPI.%s\u0027 % event_suffix, host_payload)"},{"line_number":491,"context_line":""},{"line_number":492,"context_line":""},{"line_number":493,"context_line":"def get_nw_info_for_instance(instance):"},{"line_number":494,"context_line":"    return instance.get_network_info()"},{"line_number":495,"context_line":""},{"line_number":496,"context_line":""},{"line_number":497,"context_line":"def refresh_info_cache_for_instance(context, instance):"}],"source_content_type":"text/x-python","patch_set":6,"id":"bf091321_f9bee1fd","line":494,"range":{"start_line":493,"start_character":0,"end_line":494,"end_character":38},"in_reply_to":"bf091321_59d02d51","updated":"2017-06-08 08:53:25.000000000","message":"Wait - I see it\u0027s done in the next change :)","commit_id":"ec8722ab108ea9657518d9814217ab9beecec0d9"}],"nova/notifications/objects/instance.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"423548baf0581ddeb2270465df1dc3ab27179316","unresolved":false,"context_lines":[{"line_number":93,"context_line":"    def __init__(self, instance, **kwargs):"},{"line_number":94,"context_line":"        super(InstancePayload, self).__init__(**kwargs)"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"        network_info \u003d objects.Instance.get_nw_info_for_instance(instance)"},{"line_number":97,"context_line":"        ips \u003d IpPayload.from_network_info(network_info)"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"        flavor \u003d flavor_payload.FlavorPayload(flavor\u003dinstance.flavor)"}],"source_content_type":"text/x-python","patch_set":1,"id":"ffe62b97_9da29bad","line":96,"range":{"start_line":96,"start_character":65,"end_line":96,"end_character":73},"updated":"2017-03-28 13:46:05.000000000","message":"Looking at this, why not go for instance.get_nw_info()?","commit_id":"913195e726e36769b56a2ede1f3c5afb4838180b"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"d113d679c2d528ac2ab475fdd618e4ede526a7bc","unresolved":false,"context_lines":[{"line_number":93,"context_line":"    def __init__(self, instance, **kwargs):"},{"line_number":94,"context_line":"        super(InstancePayload, self).__init__(**kwargs)"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"        network_info \u003d objects.Instance.get_nw_info_for_instance(instance)"},{"line_number":97,"context_line":"        ips \u003d IpPayload.from_network_info(network_info)"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"        flavor \u003d flavor_payload.FlavorPayload(flavor\u003dinstance.flavor)"}],"source_content_type":"text/x-python","patch_set":1,"id":"ffe62b97_1b53093b","line":96,"range":{"start_line":96,"start_character":65,"end_line":96,"end_character":73},"in_reply_to":"ffe62b97_9da29bad","updated":"2017-03-29 12:57:00.000000000","message":"Done","commit_id":"913195e726e36769b56a2ede1f3c5afb4838180b"}]}
