)]}'
{"nova/network/neutronv2/api.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"690a59e58cd83cf85985d55e9e41c58a406de145","unresolved":false,"context_lines":[{"line_number":1552,"context_line":"        if vnic_type in network_model.VNIC_TYPES_SRIOV:"},{"line_number":1553,"context_line":"            net_id \u003d port[NETWORK_ID]"},{"line_number":1554,"context_line":"            phynet_name \u003d self._get_phynet_info(context, neutron, net_id)"},{"line_number":1555,"context_line":"        return vnic_type, phynet_name, port.get(BINDING_PROFILE)"},{"line_number":1556,"context_line":""},{"line_number":1557,"context_line":"    def create_pci_requests_for_sriov_ports(self, context, pci_requests,"},{"line_number":1558,"context_line":"                                            requested_networks):"}],"source_content_type":"text/x-python","patch_set":5,"id":"5f93b717_f9f27c9a","line":1555,"range":{"start_line":1555,"start_character":39,"end_line":1555,"end_character":64},"updated":"2018-01-25 11:45:02.000000000","message":"It\u0027s OK for this to return None, I assume?","commit_id":"5aaaa0a1d02ae89c68fb79091ae05c700e8193dc"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"e08a8c923ad6cca673d6dc2cd304147b93f5f13f","unresolved":false,"context_lines":[{"line_number":1552,"context_line":"        if vnic_type in network_model.VNIC_TYPES_SRIOV:"},{"line_number":1553,"context_line":"            net_id \u003d port[NETWORK_ID]"},{"line_number":1554,"context_line":"            phynet_name \u003d self._get_phynet_info(context, neutron, net_id)"},{"line_number":1555,"context_line":"        return vnic_type, phynet_name, port.get(BINDING_PROFILE)"},{"line_number":1556,"context_line":""},{"line_number":1557,"context_line":"    def create_pci_requests_for_sriov_ports(self, context, pci_requests,"},{"line_number":1558,"context_line":"                                            requested_networks):"}],"source_content_type":"text/x-python","patch_set":5,"id":"5f93b717_47c94676","line":1555,"range":{"start_line":1555,"start_character":39,"end_line":1555,"end_character":64},"in_reply_to":"5f93b717_f9f27c9a","updated":"2018-01-25 13:29:46.000000000","message":"well it dose not break the tests :), but ya on the neutron side i believe this will always be set to at lease an empty dictionary i could default it to one if you prefer but we do a check before using below.","commit_id":"5aaaa0a1d02ae89c68fb79091ae05c700e8193dc"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"690a59e58cd83cf85985d55e9e41c58a406de145","unresolved":false,"context_lines":[{"line_number":1585,"context_line":"                dev_type \u003d pci_request.DEVICE_TYPE_FOR_VNIC_TYPE.get(vnic_type)"},{"line_number":1586,"context_line":"                if dev_type:"},{"line_number":1587,"context_line":"                    spec[pci_request.PCI_DEVICE_TYPE_TAG] \u003d dev_type"},{"line_number":1588,"context_line":"                if binding_profile and binding_profile.get(PORT_CAPABILITIES):"},{"line_number":1589,"context_line":"                    spec[pci_request.PCI_NET_CAPABILITIES] \u003d ("},{"line_number":1590,"context_line":"                        binding_profile.get(PORT_CAPABILITIES))"},{"line_number":1591,"context_line":"                request \u003d objects.InstancePCIRequest("}],"source_content_type":"text/x-python","patch_set":5,"id":"5f93b717_b92ab4e4","line":1588,"range":{"start_line":1588,"start_character":16,"end_line":1588,"end_character":38},"updated":"2018-01-25 11:45:02.000000000","message":"Actually, we test for this. Cool!","commit_id":"5aaaa0a1d02ae89c68fb79091ae05c700e8193dc"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"e08a8c923ad6cca673d6dc2cd304147b93f5f13f","unresolved":false,"context_lines":[{"line_number":1585,"context_line":"                dev_type \u003d pci_request.DEVICE_TYPE_FOR_VNIC_TYPE.get(vnic_type)"},{"line_number":1586,"context_line":"                if dev_type:"},{"line_number":1587,"context_line":"                    spec[pci_request.PCI_DEVICE_TYPE_TAG] \u003d dev_type"},{"line_number":1588,"context_line":"                if binding_profile and binding_profile.get(PORT_CAPABILITIES):"},{"line_number":1589,"context_line":"                    spec[pci_request.PCI_NET_CAPABILITIES] \u003d ("},{"line_number":1590,"context_line":"                        binding_profile.get(PORT_CAPABILITIES))"},{"line_number":1591,"context_line":"                request \u003d objects.InstancePCIRequest("}],"source_content_type":"text/x-python","patch_set":5,"id":"5f93b717_67748236","line":1588,"range":{"start_line":1588,"start_character":16,"end_line":1588,"end_character":38},"in_reply_to":"5f93b717_b92ab4e4","updated":"2018-01-25 13:29:46.000000000","message":"yes we do though as i said above i think it would be {} not none so we are safe in either case.","commit_id":"5aaaa0a1d02ae89c68fb79091ae05c700e8193dc"}],"nova/tests/unit/network/test_neutronv2.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"690a59e58cd83cf85985d55e9e41c58a406de145","unresolved":false,"context_lines":[{"line_number":3280,"context_line":"            ])"},{"line_number":3281,"context_line":"        pci_requests \u003d objects.InstancePCIRequests(requests\u003d[])"},{"line_number":3282,"context_line":"        bprofile1 \u003d {\u0027capabilities\u0027: [\u0027cap1\u0027, \u0027cap2\u0027, \u0027cap5\u0027]}"},{"line_number":3283,"context_line":"        # NOTE(ralonsoh): \u0027wrong_key\u0027 should not be present in the binding"},{"line_number":3284,"context_line":"        #                  profile dictionary and it\u0027s not parsed."},{"line_number":3285,"context_line":"        bprofile2 \u003d {\u0027wrong_key\u0027: [\u0027cap1\u0027, \u0027cap2\u0027, \u0027cap5\u0027]}"},{"line_number":3286,"context_line":"        mock_get_port_vnic_info.side_effect \u003d ["},{"line_number":3287,"context_line":"                (model.VNIC_TYPE_DIRECT, \u0027phynet1\u0027, {}),"}],"source_content_type":"text/x-python","patch_set":5,"id":"5f93b717_991258b1","line":3284,"range":{"start_line":3283,"start_character":0,"end_line":3284,"end_character":66},"updated":"2018-01-25 11:45:02.000000000","message":"Was going to note that this isn\u0027t necessary, given that we hardcode the key. However, we hardcode key referring to this dictionary - not the keys in the dictionary itself.","commit_id":"5aaaa0a1d02ae89c68fb79091ae05c700e8193dc"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"e08a8c923ad6cca673d6dc2cd304147b93f5f13f","unresolved":false,"context_lines":[{"line_number":3280,"context_line":"            ])"},{"line_number":3281,"context_line":"        pci_requests \u003d objects.InstancePCIRequests(requests\u003d[])"},{"line_number":3282,"context_line":"        bprofile1 \u003d {\u0027capabilities\u0027: [\u0027cap1\u0027, \u0027cap2\u0027, \u0027cap5\u0027]}"},{"line_number":3283,"context_line":"        # NOTE(ralonsoh): \u0027wrong_key\u0027 should not be present in the binding"},{"line_number":3284,"context_line":"        #                  profile dictionary and it\u0027s not parsed."},{"line_number":3285,"context_line":"        bprofile2 \u003d {\u0027wrong_key\u0027: [\u0027cap1\u0027, \u0027cap2\u0027, \u0027cap5\u0027]}"},{"line_number":3286,"context_line":"        mock_get_port_vnic_info.side_effect \u003d ["},{"line_number":3287,"context_line":"                (model.VNIC_TYPE_DIRECT, \u0027phynet1\u0027, {}),"}],"source_content_type":"text/x-python","patch_set":5,"id":"5f93b717_2730ba56","line":3284,"range":{"start_line":3283,"start_character":0,"end_line":3284,"end_character":66},"in_reply_to":"5f93b717_991258b1","updated":"2018-01-25 13:29:46.000000000","message":"correct the neutron binding profile is defiend as a user setable unversion dictionary of strings in the neutron api.\nso \u0027wrong_key\u0027 can be there but ya this validate that we discard it.","commit_id":"5aaaa0a1d02ae89c68fb79091ae05c700e8193dc"}]}
