)]}'
{"openstack/baremetal/v1/_proxy.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"bc56e3a7aae979e0aecc6877f9cfd69e2562fcf5","unresolved":false,"context_lines":[{"line_number":302,"context_line":"            :class:`~openstack.baremetal.v1.node.Node` instance."},{"line_number":303,"context_line":"        :param patch: JSON patch to apply."},{"line_number":304,"context_line":"        :param bool reset_interfaces: whether to reset the node hardware"},{"line_number":305,"context_line":"            interfaces to their defaults."},{"line_number":306,"context_line":"        :param bool retry_on_conflict: Whether to retry HTTP CONFLICT error."},{"line_number":307,"context_line":"            Most of the time it can be retried, since it is caused by the node"},{"line_number":308,"context_line":"            being locked. However, when setting ``instance_id``, this is"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_bc4e2794","line":305,"updated":"2019-10-18 11:06:02.000000000","message":"nit: mention that it only works when changing drivers?","commit_id":"a28b1ce7226a4b353379c52c695e2eaeb889c012"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"eedf02b1176e1a929d1160dd258831ab5b37907e","unresolved":false,"context_lines":[{"line_number":302,"context_line":"            :class:`~openstack.baremetal.v1.node.Node` instance."},{"line_number":303,"context_line":"        :param patch: JSON patch to apply."},{"line_number":304,"context_line":"        :param bool reset_interfaces: whether to reset the node hardware"},{"line_number":305,"context_line":"            interfaces to their defaults."},{"line_number":306,"context_line":"        :param bool retry_on_conflict: Whether to retry HTTP CONFLICT error."},{"line_number":307,"context_line":"            Most of the time it can be retried, since it is caused by the node"},{"line_number":308,"context_line":"            being locked. However, when setting ``instance_id``, this is"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_ff533138","line":305,"in_reply_to":"3fa7e38b_bc4e2794","updated":"2019-10-18 12:39:09.000000000","message":"will do","commit_id":"a28b1ce7226a4b353379c52c695e2eaeb889c012"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"bc56e3a7aae979e0aecc6877f9cfd69e2562fcf5","unresolved":false,"context_lines":[{"line_number":317,"context_line":"        \"\"\""},{"line_number":318,"context_line":"        res \u003d self._get_resource(_node.Node, node)"},{"line_number":319,"context_line":"        return res.patch(self, patch, retry_on_conflict\u003dretry_on_conflict,"},{"line_number":320,"context_line":"                         reset_interfaces\u003dreset_interfaces)"},{"line_number":321,"context_line":""},{"line_number":322,"context_line":"    def set_node_provision_state(self, node, target, config_drive\u003dNone,"},{"line_number":323,"context_line":"                                 clean_steps\u003dNone, rescue_password\u003dNone,"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_5c43736d","line":320,"updated":"2019-10-18 11:06:02.000000000","message":"We need some microversioning magic here, or rather inside Node.patch. reset_interfaces was introduced in some non-base microversion, we need to handle it.","commit_id":"a28b1ce7226a4b353379c52c695e2eaeb889c012"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"eedf02b1176e1a929d1160dd258831ab5b37907e","unresolved":false,"context_lines":[{"line_number":317,"context_line":"        \"\"\""},{"line_number":318,"context_line":"        res \u003d self._get_resource(_node.Node, node)"},{"line_number":319,"context_line":"        return res.patch(self, patch, retry_on_conflict\u003dretry_on_conflict,"},{"line_number":320,"context_line":"                         reset_interfaces\u003dreset_interfaces)"},{"line_number":321,"context_line":""},{"line_number":322,"context_line":"    def set_node_provision_state(self, node, target, config_drive\u003dNone,"},{"line_number":323,"context_line":"                                 clean_steps\u003dNone, rescue_password\u003dNone,"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_6a2461b0","line":320,"in_reply_to":"3fa7e38b_5c43736d","updated":"2019-10-18 12:39:09.000000000","message":"Oh yeah, I think it was in Rocky, to double-check the exact version.\nOk for Node.patch\nSince this is going straight to res.patch, I guess we\u0027ll have to create a patch method inside Node and from there go to resource instead ?\nOr maybe go to a reset_interfaces method in Node if the kwarg is not None ?","commit_id":"a28b1ce7226a4b353379c52c695e2eaeb889c012"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a471907085a0d60c4e9afb2733ea1ccc5527e290","unresolved":false,"context_lines":[{"line_number":276,"context_line":"        \"\"\""},{"line_number":277,"context_line":"        return self._get_with_fields(_node.Node, node, fields\u003dfields)"},{"line_number":278,"context_line":""},{"line_number":279,"context_line":"    def update_node(self, node, retry_on_conflict\u003dTrue, **attrs):"},{"line_number":280,"context_line":"        \"\"\"Update a node."},{"line_number":281,"context_line":""},{"line_number":282,"context_line":"        :param node: The value can be the name or ID of a node or a"}],"source_content_type":"text/x-python","patch_set":10,"id":"3fa7e38b_fa25ff5b","line":279,"updated":"2020-01-02 10:42:04.000000000","message":"Ideally, we should support reset_interfaces here as well.","commit_id":"790b49d2e70f005c38ac7262a5abeae054b9c6c2"}],"openstack/baremetal/v1/node.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"889cfdacd9ca870fa44c69b84db6d12fb5497f43","unresolved":false,"context_lines":[{"line_number":836,"context_line":"        if reset_interfaces is not None:"},{"line_number":837,"context_line":"            if not utils.supports_microversion(session, \u00271.45\u0027):"},{"line_number":838,"context_line":"                message \u003d (\"API version 1.45 is required to use \""},{"line_number":839,"context_line":"                           \"\u0027reset_interfaces\u0027\")"},{"line_number":840,"context_line":"                raise exceptions.NotSupported(message)"},{"line_number":841,"context_line":""},{"line_number":842,"context_line":"        return super(Node, self).patch(session, patch\u003dpatch,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_65ca3d6f","line":839,"updated":"2019-10-21 14:08:51.000000000","message":"You have to set the correct version, not require it. See other methods here for examples.","commit_id":"1f71b95af75c8072799608b266ac6197ca7da499"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"ec5c8ffa4e424fa04f560fc9b8ebe26fb1563100","unresolved":false,"context_lines":[{"line_number":836,"context_line":"        if reset_interfaces is not None:"},{"line_number":837,"context_line":"            if not utils.supports_microversion(session, \u00271.45\u0027):"},{"line_number":838,"context_line":"                message \u003d (\"API version 1.45 is required to use \""},{"line_number":839,"context_line":"                           \"\u0027reset_interfaces\u0027\")"},{"line_number":840,"context_line":"                raise exceptions.NotSupported(message)"},{"line_number":841,"context_line":""},{"line_number":842,"context_line":"        return super(Node, self).patch(session, patch\u003dpatch,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_8baf382a","line":839,"in_reply_to":"3fa7e38b_55e23da2","updated":"2019-10-22 14:13:38.000000000","message":"yeah, that was my fear, I guess it doesn\u0027t make sense to change the patch method in resource.py then, and we probably need to completely bypass that here if reset_interfaces is defined\ntoo bad :/","commit_id":"1f71b95af75c8072799608b266ac6197ca7da499"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"e9a3a90f2b7fffe374b6a21e766e499894660642","unresolved":false,"context_lines":[{"line_number":836,"context_line":"        if reset_interfaces is not None:"},{"line_number":837,"context_line":"            if not utils.supports_microversion(session, \u00271.45\u0027):"},{"line_number":838,"context_line":"                message \u003d (\"API version 1.45 is required to use \""},{"line_number":839,"context_line":"                           \"\u0027reset_interfaces\u0027\")"},{"line_number":840,"context_line":"                raise exceptions.NotSupported(message)"},{"line_number":841,"context_line":""},{"line_number":842,"context_line":"        return super(Node, self).patch(session, patch\u003dpatch,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_d7e715ac","line":839,"in_reply_to":"3fa7e38b_65ca3d6f","updated":"2019-10-22 10:26:57.000000000","message":"can\u0027t we just set the version session here using pick_microversion and then return the new version ?","commit_id":"1f71b95af75c8072799608b266ac6197ca7da499"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"abe53dabe4dc6171b62e547aecbba4150f6a8f36","unresolved":false,"context_lines":[{"line_number":836,"context_line":"        if reset_interfaces is not None:"},{"line_number":837,"context_line":"            if not utils.supports_microversion(session, \u00271.45\u0027):"},{"line_number":838,"context_line":"                message \u003d (\"API version 1.45 is required to use \""},{"line_number":839,"context_line":"                           \"\u0027reset_interfaces\u0027\")"},{"line_number":840,"context_line":"                raise exceptions.NotSupported(message)"},{"line_number":841,"context_line":""},{"line_number":842,"context_line":"        return super(Node, self).patch(session, patch\u003dpatch,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_55e23da2","line":839,"in_reply_to":"3fa7e38b_d7e715ac","updated":"2019-10-22 12:20:47.000000000","message":"I don\u0027t think we should modify the session object, otherwise you\u0027re correct. This may prevent us from using super() below.","commit_id":"1f71b95af75c8072799608b266ac6197ca7da499"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"889cfdacd9ca870fa44c69b84db6d12fb5497f43","unresolved":false,"context_lines":[{"line_number":841,"context_line":""},{"line_number":842,"context_line":"        return super(Node, self).patch(session, patch\u003dpatch,"},{"line_number":843,"context_line":"                                       retry_on_conflict\u003dretry_on_conflict,"},{"line_number":844,"context_line":"                                       reset_interfaces\u003dreset_interfaces)"},{"line_number":845,"context_line":""},{"line_number":846,"context_line":""},{"line_number":847,"context_line":"NodeDetail \u003d Node"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_05c7c966","line":844,"updated":"2019-10-21 14:08:51.000000000","message":"May not work so trivially because of the above note.","commit_id":"1f71b95af75c8072799608b266ac6197ca7da499"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a471907085a0d60c4e9afb2733ea1ccc5527e290","unresolved":false,"context_lines":[{"line_number":833,"context_line":"    def patch(self, session, patch\u003dNone, prepend_key\u003dTrue, has_body\u003dTrue,"},{"line_number":834,"context_line":"              retry_on_conflict\u003dNone, base_path\u003dNone, reset_interfaces\u003dNone):"},{"line_number":835,"context_line":""},{"line_number":836,"context_line":"        if reset_interfaces is not None:"},{"line_number":837,"context_line":"            # The id cannot be dirty for an commit"},{"line_number":838,"context_line":"            self._body._dirty.discard(\"id\")"},{"line_number":839,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"3fa7e38b_3a30779e","line":836,"updated":"2020-01-02 10:42:04.000000000","message":"A task for a follow-up: avoid copy-pasting of this code from the base class","commit_id":"790b49d2e70f005c38ac7262a5abeae054b9c6c2"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a471907085a0d60c4e9afb2733ea1ccc5527e290","unresolved":false,"context_lines":[{"line_number":842,"context_line":"                return self"},{"line_number":843,"context_line":""},{"line_number":844,"context_line":"            if not self.allow_patch:"},{"line_number":845,"context_line":"                raise exceptions.MethodNotSupported(self, \"patch\")"},{"line_number":846,"context_line":""},{"line_number":847,"context_line":"            session \u003d self._get_session(session)"},{"line_number":848,"context_line":"            microversion \u003d utils.pick_microversion(session, \u00271.45\u0027)"}],"source_content_type":"text/x-python","patch_set":10,"id":"3fa7e38b_da20434e","line":845,"updated":"2020-01-02 10:42:04.000000000","message":"This is not needed in the custom code copy","commit_id":"790b49d2e70f005c38ac7262a5abeae054b9c6c2"}],"openstack/cloud/_baremetal.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"bc56e3a7aae979e0aecc6877f9cfd69e2562fcf5","unresolved":false,"context_lines":[{"line_number":408,"context_line":""},{"line_number":409,"context_line":"        :param string name_or_id: A machine name or UUID to be updated."},{"line_number":410,"context_line":"        :param patch:"},{"line_number":411,"context_line":"           The JSON Patch document is a list of dictionary objects"},{"line_number":412,"context_line":"           that comply with RFC 6902 which can be found at"},{"line_number":413,"context_line":"           https://tools.ietf.org/html/rfc6902."},{"line_number":414,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_7c48af86","line":411,"updated":"2019-10-18 11:06:02.000000000","message":"nit: unrelated change","commit_id":"a28b1ce7226a4b353379c52c695e2eaeb889c012"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"eedf02b1176e1a929d1160dd258831ab5b37907e","unresolved":false,"context_lines":[{"line_number":408,"context_line":""},{"line_number":409,"context_line":"        :param string name_or_id: A machine name or UUID to be updated."},{"line_number":410,"context_line":"        :param patch:"},{"line_number":411,"context_line":"           The JSON Patch document is a list of dictionary objects"},{"line_number":412,"context_line":"           that comply with RFC 6902 which can be found at"},{"line_number":413,"context_line":"           https://tools.ietf.org/html/rfc6902."},{"line_number":414,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_ca60f5d2","line":411,"in_reply_to":"3fa7e38b_7c48af86","updated":"2019-10-18 12:39:09.000000000","message":"I\u0027ll remove it, I actually spot some more typos so maybe I\u0027ll put all them together in a different patch.","commit_id":"a28b1ce7226a4b353379c52c695e2eaeb889c012"}],"openstack/resource.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"bc56e3a7aae979e0aecc6877f9cfd69e2562fcf5","unresolved":false,"context_lines":[{"line_number":1498,"context_line":"            request.body +\u003d self._convert_patch(patch)"},{"line_number":1499,"context_line":""},{"line_number":1500,"context_line":"        if kwargs.get(\u0027reset_interfaces\u0027):"},{"line_number":1501,"context_line":"            request.url +\u003d \u0027?reset_interfaces\u003dTrue\u0027"},{"line_number":1502,"context_line":""},{"line_number":1503,"context_line":"        return self._commit(session, request, \u0027PATCH\u0027, microversion,"},{"line_number":1504,"context_line":"                            has_body\u003dhas_body,"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_1c5dfb47","line":1501,"updated":"2019-10-18 11:06:02.000000000","message":"This has to be made generic and probably moved to _prepare_request (if possible)","commit_id":"a28b1ce7226a4b353379c52c695e2eaeb889c012"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"eedf02b1176e1a929d1160dd258831ab5b37907e","unresolved":false,"context_lines":[{"line_number":1498,"context_line":"            request.body +\u003d self._convert_patch(patch)"},{"line_number":1499,"context_line":""},{"line_number":1500,"context_line":"        if kwargs.get(\u0027reset_interfaces\u0027):"},{"line_number":1501,"context_line":"            request.url +\u003d \u0027?reset_interfaces\u003dTrue\u0027"},{"line_number":1502,"context_line":""},{"line_number":1503,"context_line":"        return self._commit(session, request, \u0027PATCH\u0027, microversion,"},{"line_number":1504,"context_line":"                            has_body\u003dhas_body,"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_2aa989dc","line":1501,"in_reply_to":"3fa7e38b_1c5dfb47","updated":"2019-10-18 12:39:09.000000000","message":"generic as in assign the value of reset_interfaces to the parameter?\nI\u0027ll check _prepare_request","commit_id":"a28b1ce7226a4b353379c52c695e2eaeb889c012"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"889cfdacd9ca870fa44c69b84db6d12fb5497f43","unresolved":false,"context_lines":[{"line_number":1053,"context_line":"        return body"},{"line_number":1054,"context_line":""},{"line_number":1055,"context_line":"    def _prepare_request(self, requires_id\u003dNone, prepend_key\u003dFalse,"},{"line_number":1056,"context_line":"                         patch\u003dFalse, base_path\u003dNone, **kwargs):"},{"line_number":1057,"context_line":"        \"\"\"Prepare a request to be sent to the server"},{"line_number":1058,"context_line":""},{"line_number":1059,"context_line":"        Create operations don\u0027t require an ID, but all others do,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_25c4455f","line":1056,"updated":"2019-10-21 14:08:51.000000000","message":"I suggest renaming it to params and NOT making it a kwargs argument here (imagine some service has a param called \"patch\").","commit_id":"1f71b95af75c8072799608b266ac6197ca7da499"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"e9a3a90f2b7fffe374b6a21e766e499894660642","unresolved":false,"context_lines":[{"line_number":1053,"context_line":"        return body"},{"line_number":1054,"context_line":""},{"line_number":1055,"context_line":"    def _prepare_request(self, requires_id\u003dNone, prepend_key\u003dFalse,"},{"line_number":1056,"context_line":"                         patch\u003dFalse, base_path\u003dNone, **kwargs):"},{"line_number":1057,"context_line":"        \"\"\"Prepare a request to be sent to the server"},{"line_number":1058,"context_line":""},{"line_number":1059,"context_line":"        Create operations don\u0027t require an ID, but all others do,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_f7ec9190","line":1056,"in_reply_to":"3fa7e38b_25c4455f","updated":"2019-10-22 10:26:57.000000000","message":"true, ok","commit_id":"1f71b95af75c8072799608b266ac6197ca7da499"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"889cfdacd9ca870fa44c69b84db6d12fb5497f43","unresolved":false,"context_lines":[{"line_number":1092,"context_line":"            uri \u003d utils.urljoin(uri, self.id)"},{"line_number":1093,"context_line":""},{"line_number":1094,"context_line":"        if kwargs.get(\u0027reset_interfaces\u0027):"},{"line_number":1095,"context_line":"            uri +\u003d \u0027?reset_interfaces\u003d%s\u0027, kwargs[\u0027reset_interfaces\u0027]"},{"line_number":1096,"context_line":""},{"line_number":1097,"context_line":"        return _Request(uri, body, headers)"},{"line_number":1098,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_c59e9168","line":1095,"updated":"2019-10-21 14:08:51.000000000","message":"reset_interfaces is ironic-specific, you\u0027re adding it to the generic code. I think you should support any kwargs.","commit_id":"1f71b95af75c8072799608b266ac6197ca7da499"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"e9a3a90f2b7fffe374b6a21e766e499894660642","unresolved":false,"context_lines":[{"line_number":1092,"context_line":"            uri \u003d utils.urljoin(uri, self.id)"},{"line_number":1093,"context_line":""},{"line_number":1094,"context_line":"        if kwargs.get(\u0027reset_interfaces\u0027):"},{"line_number":1095,"context_line":"            uri +\u003d \u0027?reset_interfaces\u003d%s\u0027, kwargs[\u0027reset_interfaces\u0027]"},{"line_number":1096,"context_line":""},{"line_number":1097,"context_line":"        return _Request(uri, body, headers)"},{"line_number":1098,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_b78379a9","line":1095,"in_reply_to":"3fa7e38b_c59e9168","updated":"2019-10-22 10:26:57.000000000","message":"yeah, you\u0027re right\nthinking to use urlencode to build the uri","commit_id":"1f71b95af75c8072799608b266ac6197ca7da499"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"889cfdacd9ca870fa44c69b84db6d12fb5497f43","unresolved":false,"context_lines":[{"line_number":1495,"context_line":"            raise exceptions.MethodNotSupported(self, \"patch\")"},{"line_number":1496,"context_line":""},{"line_number":1497,"context_line":"        request \u003d self._prepare_request(prepend_key\u003dprepend_key,"},{"line_number":1498,"context_line":"                                        base_path\u003dbase_path, patch\u003dTrue)"},{"line_number":1499,"context_line":"        microversion \u003d self._get_microversion_for(session, \u0027patch\u0027)"},{"line_number":1500,"context_line":"        if patch:"},{"line_number":1501,"context_line":"            request.body +\u003d self._convert_patch(patch)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_e5a38db0","line":1498,"updated":"2019-10-21 14:08:51.000000000","message":"you need to pass kwargs here, otherwise it\u0027s not wired in. Which reminds me: please add unit and functional tests.","commit_id":"1f71b95af75c8072799608b266ac6197ca7da499"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"e9a3a90f2b7fffe374b6a21e766e499894660642","unresolved":false,"context_lines":[{"line_number":1495,"context_line":"            raise exceptions.MethodNotSupported(self, \"patch\")"},{"line_number":1496,"context_line":""},{"line_number":1497,"context_line":"        request \u003d self._prepare_request(prepend_key\u003dprepend_key,"},{"line_number":1498,"context_line":"                                        base_path\u003dbase_path, patch\u003dTrue)"},{"line_number":1499,"context_line":"        microversion \u003d self._get_microversion_for(session, \u0027patch\u0027)"},{"line_number":1500,"context_line":"        if patch:"},{"line_number":1501,"context_line":"            request.body +\u003d self._convert_patch(patch)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_778d01d2","line":1498,"in_reply_to":"3fa7e38b_e5a38db0","updated":"2019-10-22 10:26:57.000000000","message":"absolutely, will add them","commit_id":"1f71b95af75c8072799608b266ac6197ca7da499"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a471907085a0d60c4e9afb2733ea1ccc5527e290","unresolved":false,"context_lines":[{"line_number":1066,"context_line":""},{"line_number":1067,"context_line":"        Return a _Request object that contains the constructed URI"},{"line_number":1068,"context_line":"        as well a body and headers that are ready to send."},{"line_number":1069,"context_line":"        Only dirty body and header contents will be returned."},{"line_number":1070,"context_line":"        \"\"\""},{"line_number":1071,"context_line":"        if requires_id is None:"},{"line_number":1072,"context_line":"            requires_id \u003d self.requires_id"}],"source_content_type":"text/x-python","patch_set":10,"id":"3fa7e38b_9a1e4b0b","line":1069,"updated":"2020-01-02 10:42:04.000000000","message":"Let\u0027s document params","commit_id":"790b49d2e70f005c38ac7262a5abeae054b9c6c2"}]}
