)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"c7160bc346b1ca0fe56658e7a7ae949d4eafb527","unresolved":false,"context_lines":[{"line_number":12,"context_line":"will add a test to verify that all methods handling GET requests have"},{"line_number":13,"context_line":"schemas present."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"This patch might look huge but every one of these schemas is effectively"},{"line_number":16,"context_line":"a no-op since they\u0027re empty and have \u0027additionalProperties \u003d True\u0027. This"},{"line_number":17,"context_line":"means there are lots of TODOs left in here which would be nice to tackle"},{"line_number":18,"context_line":"in a future API microversion."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"08de820f_5e2815b2","line":15,"updated":"2024-07-05 10:17:02.000000000","message":"Emphasis on this! This should be a super dull but super easy review.","commit_id":"41b436bff7023dd23d18b6648420fb70117151ca"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"93423bfeb2066ae62e0ac0ead8904ea54a9b47b2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"07cd39b2_b1f83c7c","updated":"2024-07-20 07:09:46.000000000","message":"a couple of nits but im fine with this as is so lets adress those later as required","commit_id":"41b436bff7023dd23d18b6648420fb70117151ca"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"c0a2b5040b1a4a900d8b6a90ba30853ffcfdafbb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"1d07e5ab_bb103f09","updated":"2024-07-20 00:47:37.000000000","message":"lgtm, now. I missed to check the empty schema in my initial read.","commit_id":"41b436bff7023dd23d18b6648420fb70117151ca"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"8a41323326e10fc821196ff733591911525eb1cf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"6ce478d4_47dc5003","updated":"2024-07-19 00:02:09.000000000","message":"lgtm. one comment on Action APIs which are GET http method","commit_id":"41b436bff7023dd23d18b6648420fb70117151ca"}],"nova/api/openstack/compute/hosts.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"8a41323326e10fc821196ff733591911525eb1cf","unresolved":true,"context_lines":[{"line_number":182,"context_line":""},{"line_number":183,"context_line":"    @wsgi.Controller.api_version(\"2.1\", \"2.42\")"},{"line_number":184,"context_line":"    @wsgi.expected_errors((400, 404, 501))"},{"line_number":185,"context_line":"    @validation.query_schema(hosts.startup_query)"},{"line_number":186,"context_line":"    def startup(self, req, id):"},{"line_number":187,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"},{"line_number":188,"context_line":"        context.can(hosts_policies.POLICY_NAME % \u0027start\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"c90021f1_fc2330d8","line":185,"range":{"start_line":185,"start_character":0,"end_line":185,"end_character":49},"updated":"2024-07-19 00:02:09.000000000","message":"these are our weird action API but with GET http method. I think we should not add query schema here instead if needed for openapi doc we can add request body action API schema.","commit_id":"41b436bff7023dd23d18b6648420fb70117151ca"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"c0a2b5040b1a4a900d8b6a90ba30853ffcfdafbb","unresolved":false,"context_lines":[{"line_number":182,"context_line":""},{"line_number":183,"context_line":"    @wsgi.Controller.api_version(\"2.1\", \"2.42\")"},{"line_number":184,"context_line":"    @wsgi.expected_errors((400, 404, 501))"},{"line_number":185,"context_line":"    @validation.query_schema(hosts.startup_query)"},{"line_number":186,"context_line":"    def startup(self, req, id):"},{"line_number":187,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"},{"line_number":188,"context_line":"        context.can(hosts_policies.POLICY_NAME % \u0027start\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"b9ea50b1_050d71e8","line":185,"range":{"start_line":185,"start_character":0,"end_line":185,"end_character":49},"in_reply_to":"aa31c08f_e1e130b6","updated":"2024-07-20 00:47:37.000000000","message":"My point is that these are Action APIs that perform the write operation. They are not the read operation queriable GET APIs. We used the GET HTTP method for these, which was the wrong thing we did in the beginning. So adding the query schema is not right one here. But I re-read their schema, which is empty schema and is not actually a query schema, so I am good here.\n\n- https://review.opendev.org/c/openstack/nova/+/915738/6/nova/api/openstack/compute/schemas/hosts.py","commit_id":"41b436bff7023dd23d18b6648420fb70117151ca"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"41e2a66cebd7c8b8548aafa03d25ac2d03ef2084","unresolved":true,"context_lines":[{"line_number":182,"context_line":""},{"line_number":183,"context_line":"    @wsgi.Controller.api_version(\"2.1\", \"2.42\")"},{"line_number":184,"context_line":"    @wsgi.expected_errors((400, 404, 501))"},{"line_number":185,"context_line":"    @validation.query_schema(hosts.startup_query)"},{"line_number":186,"context_line":"    def startup(self, req, id):"},{"line_number":187,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"},{"line_number":188,"context_line":"        context.can(hosts_policies.POLICY_NAME % \u0027start\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"ff8012c5_10b2a6f2","line":185,"range":{"start_line":185,"start_character":0,"end_line":185,"end_character":49},"in_reply_to":"c90021f1_fc2330d8","updated":"2024-07-19 11:55:43.000000000","message":"The rule I was insisting on is that all `GET` http method\u0027s have a query string schema, even if that schema is effectively a no-op (like pretty much all the schemas here). There\u0027s nothing to prevent people calling `GET /os-hosts/{host_name}/startup?foo\u003dbar`, right? If so, I\u0027m not sure why we\u0027d special case these particular APIs (at least purely from a schema perspective)?","commit_id":"41b436bff7023dd23d18b6648420fb70117151ca"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"2f316ca3a98fb70ec35bf5d5049e68d54b47b331","unresolved":true,"context_lines":[{"line_number":182,"context_line":""},{"line_number":183,"context_line":"    @wsgi.Controller.api_version(\"2.1\", \"2.42\")"},{"line_number":184,"context_line":"    @wsgi.expected_errors((400, 404, 501))"},{"line_number":185,"context_line":"    @validation.query_schema(hosts.startup_query)"},{"line_number":186,"context_line":"    def startup(self, req, id):"},{"line_number":187,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"},{"line_number":188,"context_line":"        context.can(hosts_policies.POLICY_NAME % \u0027start\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"aa31c08f_e1e130b6","line":185,"range":{"start_line":185,"start_character":0,"end_line":185,"end_character":49},"in_reply_to":"ff8012c5_10b2a6f2","updated":"2024-07-19 12:50:31.000000000","message":"so the host api was depercated and i think this call was even removed when xen? was \n\nhttps://docs.openstack.org/api-ref/compute/#start-host\nso given thise are effectivly remvoed api since  i think we remvoed the only virt driver that supported them\ndose this realy matter one way or the other.\n\nwe saidl we were not gong to focus much on the removed/deprecated apis.","commit_id":"41b436bff7023dd23d18b6648420fb70117151ca"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"8a41323326e10fc821196ff733591911525eb1cf","unresolved":true,"context_lines":[{"line_number":191,"context_line":""},{"line_number":192,"context_line":"    @wsgi.Controller.api_version(\"2.1\", \"2.42\")"},{"line_number":193,"context_line":"    @wsgi.expected_errors((400, 404, 501))"},{"line_number":194,"context_line":"    @validation.query_schema(hosts.shutdown_query)"},{"line_number":195,"context_line":"    def shutdown(self, req, id):"},{"line_number":196,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"},{"line_number":197,"context_line":"        context.can(hosts_policies.POLICY_NAME % \u0027shutdown\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"f90c14c3_39e4fce2","line":194,"range":{"start_line":194,"start_character":4,"end_line":194,"end_character":50},"updated":"2024-07-19 00:02:09.000000000","message":"ditto","commit_id":"41b436bff7023dd23d18b6648420fb70117151ca"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"c0a2b5040b1a4a900d8b6a90ba30853ffcfdafbb","unresolved":false,"context_lines":[{"line_number":191,"context_line":""},{"line_number":192,"context_line":"    @wsgi.Controller.api_version(\"2.1\", \"2.42\")"},{"line_number":193,"context_line":"    @wsgi.expected_errors((400, 404, 501))"},{"line_number":194,"context_line":"    @validation.query_schema(hosts.shutdown_query)"},{"line_number":195,"context_line":"    def shutdown(self, req, id):"},{"line_number":196,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"},{"line_number":197,"context_line":"        context.can(hosts_policies.POLICY_NAME % \u0027shutdown\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"9cb792f8_66cf6277","line":194,"range":{"start_line":194,"start_character":4,"end_line":194,"end_character":50},"in_reply_to":"f90c14c3_39e4fce2","updated":"2024-07-20 00:47:37.000000000","message":"Acknowledged","commit_id":"41b436bff7023dd23d18b6648420fb70117151ca"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"8a41323326e10fc821196ff733591911525eb1cf","unresolved":true,"context_lines":[{"line_number":200,"context_line":""},{"line_number":201,"context_line":"    @wsgi.Controller.api_version(\"2.1\", \"2.42\")"},{"line_number":202,"context_line":"    @wsgi.expected_errors((400, 404, 501))"},{"line_number":203,"context_line":"    @validation.query_schema(hosts.reboot_query)"},{"line_number":204,"context_line":"    def reboot(self, req, id):"},{"line_number":205,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"},{"line_number":206,"context_line":"        context.can(hosts_policies.POLICY_NAME % \u0027reboot\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"7c1f0bfe_72194a83","line":203,"range":{"start_line":203,"start_character":38,"end_line":203,"end_character":48},"updated":"2024-07-19 00:02:09.000000000","message":"reboot","commit_id":"41b436bff7023dd23d18b6648420fb70117151ca"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"c0a2b5040b1a4a900d8b6a90ba30853ffcfdafbb","unresolved":false,"context_lines":[{"line_number":200,"context_line":""},{"line_number":201,"context_line":"    @wsgi.Controller.api_version(\"2.1\", \"2.42\")"},{"line_number":202,"context_line":"    @wsgi.expected_errors((400, 404, 501))"},{"line_number":203,"context_line":"    @validation.query_schema(hosts.reboot_query)"},{"line_number":204,"context_line":"    def reboot(self, req, id):"},{"line_number":205,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"},{"line_number":206,"context_line":"        context.can(hosts_policies.POLICY_NAME % \u0027reboot\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"ceb313f4_f0784c0d","line":203,"range":{"start_line":203,"start_character":38,"end_line":203,"end_character":48},"in_reply_to":"7c1f0bfe_72194a83","updated":"2024-07-20 00:47:37.000000000","message":"Acknowledged","commit_id":"41b436bff7023dd23d18b6648420fb70117151ca"}],"nova/api/openstack/compute/quota_sets.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"93423bfeb2066ae62e0ac0ead8904ea54a9b47b2","unresolved":true,"context_lines":[{"line_number":120,"context_line":"    @wsgi.Controller.api_version(\u00272.57\u0027)  # noqa"},{"line_number":121,"context_line":"    @wsgi.expected_errors(400)"},{"line_number":122,"context_line":"    @validation.query_schema(quota_sets.show_query, \u00272.0\u0027, \u00272.74\u0027)"},{"line_number":123,"context_line":"    @validation.query_schema(quota_sets.show_query_v275, \u00272.75\u0027)"},{"line_number":124,"context_line":"    def show(self, req, id):  # noqa"},{"line_number":125,"context_line":"        return self._show(req, id, FILTERED_QUOTAS_2_57)"},{"line_number":126,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"04d718fb_de8822f5","line":123,"updated":"2024-07-20 07:09:46.000000000","message":"the ordering here dose not matter as its just going to apply one of these but ill just note that you are reordering thme in the patch and that probly not needed","commit_id":"41b436bff7023dd23d18b6648420fb70117151ca"}],"nova/api/openstack/compute/schemas/availability_zone.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"93423bfeb2066ae62e0ac0ead8904ea54a9b47b2","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright 2014 IBM Corporation.  All rights reserved."},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"#    not use this file except in compliance with the License. You may obtain"},{"line_number":5,"context_line":"#    a copy of the License at"}],"source_content_type":"text/x-python","patch_set":6,"id":"926ebafd_568cda83","line":2,"updated":"2024-07-20 07:09:46.000000000","message":"nit: why that copyright\n\ni would prefer to just have the license unless you care copying this file from somewhere with that notice","commit_id":"41b436bff7023dd23d18b6648420fb70117151ca"}]}
