)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"92d17468fbc9f94c6b6ade1fa3fa0d3a07aa37d1","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Allow searching for hypervisors and getting back details"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The 2.53 microversion allows listing hypervisors with"},{"line_number":10,"context_line":"details and filtering on a hypervisor_hostname substring"},{"line_number":11,"context_line":"pattern match."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This makes the python API binding HypervisorManager.search"},{"line_number":14,"context_line":"method allow that as well by adding a new \u0027detailed\u0027 boolean"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"bfb3d3c7_329c3069","line":11,"range":{"start_line":9,"start_character":0,"end_line":11,"end_character":14},"updated":"2019-05-24 12:50:38.000000000","message":"why did you pick 2.53 in particular ? isn\u0027t 2.53 the version where id changed to uuid? I guess I am a bit confused since details and filtering were always there from the beginning.","commit_id":"0dc6b96ec83703a0607c4df16e43856632aecb61"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"6d46827b2b67983ed152792b9501d14a5b557150","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Allow searching for hypervisors and getting back details"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The 2.53 microversion allows listing hypervisors with"},{"line_number":10,"context_line":"details and filtering on a hypervisor_hostname substring"},{"line_number":11,"context_line":"pattern match."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This makes the python API binding HypervisorManager.search"},{"line_number":14,"context_line":"method allow that as well by adding a new \u0027detailed\u0027 boolean"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"bfb3d3c7_9f3f24b3","line":11,"range":{"start_line":9,"start_character":0,"end_line":11,"end_character":14},"in_reply_to":"bfb3d3c7_2d57f528","updated":"2019-05-24 13:53:49.000000000","message":"hmm, thanks for clarifying.","commit_id":"0dc6b96ec83703a0607c4df16e43856632aecb61"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0b2ab37a331168c2a8b70823dd8714a1dee6f011","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Allow searching for hypervisors and getting back details"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The 2.53 microversion allows listing hypervisors with"},{"line_number":10,"context_line":"details and filtering on a hypervisor_hostname substring"},{"line_number":11,"context_line":"pattern match."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This makes the python API binding HypervisorManager.search"},{"line_number":14,"context_line":"method allow that as well by adding a new \u0027detailed\u0027 boolean"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"bfb3d3c7_2d57f528","line":11,"range":{"start_line":9,"start_character":0,"end_line":11,"end_character":14},"in_reply_to":"bfb3d3c7_329c3069","updated":"2019-05-24 13:48:45.000000000","message":"Because 2.53 deprecated the GET /os-hypervisors/{hypervisor_hostname_pattern}/search route and added hypervisor_hostname_pattern to GET /os-hypervisors/detail. The old route didn\u0027t return details or servers information for the returned hypervisors. 2.53 allows all of that in a single API call.","commit_id":"0dc6b96ec83703a0607c4df16e43856632aecb61"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"92d17468fbc9f94c6b6ade1fa3fa0d3a07aa37d1","unresolved":false,"context_lines":[{"line_number":10,"context_line":"details and filtering on a hypervisor_hostname substring"},{"line_number":11,"context_line":"pattern match."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This makes the python API binding HypervisorManager.search"},{"line_number":14,"context_line":"method allow that as well by adding a new \u0027detailed\u0027 boolean"},{"line_number":15,"context_line":"kwarg which defaults to False for backward compatibility for"},{"line_number":16,"context_line":"the /search and /servers routes before 2.53, but allows"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"bfb3d3c7_61409ca6","line":13,"updated":"2019-05-24 12:50:38.000000000","message":"nit: I would have preferred adding a brief reasoning behind wanting this (if I had not known about the watcher use case I would have been puzzled since this patch comes a long time after 2.53).","commit_id":"0dc6b96ec83703a0607c4df16e43856632aecb61"}],"novaclient/tests/functional/v2/test_hypervisors.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"5d1b06a44406acb428b20dc487ce7d605cf1487f","unresolved":false,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":"    def test_search_with_details(self):"},{"line_number":31,"context_line":"        # First find a hypervisor from the list to search on."},{"line_number":32,"context_line":"        hypervisors \u003d self.test_list()"},{"line_number":33,"context_line":"        # Now search for that hypervisor with details."},{"line_number":34,"context_line":"        hypervisor \u003d hypervisors[0]"},{"line_number":35,"context_line":"        hypervisors \u003d self.client.hypervisors.search("}],"source_content_type":"text/x-python","patch_set":1,"id":"bfb3d3c7_ba2aa4e4","line":32,"range":{"start_line":32,"start_character":22,"end_line":32,"end_character":38},"updated":"2019-05-18 18:41:42.000000000","message":"I could just call self.client.hypervisors.list() here.","commit_id":"baff632360bec3d5b5cc4c223c4c0f5cbcea4e8f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"5d1b06a44406acb428b20dc487ce7d605cf1487f","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        hypervisor \u003d hypervisors[0]"},{"line_number":39,"context_line":"        # We know we got details if service is in the response."},{"line_number":40,"context_line":"        self.assertIsNotNone(hypervisor.service,"},{"line_number":41,"context_line":"                             \u0027Expected service in hypervisor: %s\u0027, hypervisor)"}],"source_content_type":"text/x-python","patch_set":1,"id":"bfb3d3c7_da2f58f4","line":41,"range":{"start_line":41,"start_character":64,"end_line":41,"end_character":66},"updated":"2019-05-18 18:41:42.000000000","message":"Oops this should be %:\n\nhttp://logs.openstack.org/86/659886/1/check/novaclient-dsvm-functional/77f6b5a/job-output.txt.gz#_2019-05-17_23_16_00_500068","commit_id":"baff632360bec3d5b5cc4c223c4c0f5cbcea4e8f"}],"novaclient/v2/hypervisors.py":[{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"92d17468fbc9f94c6b6ade1fa3fa0d3a07aa37d1","unresolved":false,"context_lines":[{"line_number":103,"context_line":"        else:"},{"line_number":104,"context_line":"            if detailed:"},{"line_number":105,"context_line":"                raise exceptions.UnsupportedVersion("},{"line_number":106,"context_line":"                    _(\u0027Parameter \"detailed\" requires API version 2.53 or \u0027"},{"line_number":107,"context_line":"                      \u0027greater.\u0027))"},{"line_number":108,"context_line":"            target \u003d \u0027servers\u0027 if servers else \u0027search\u0027"},{"line_number":109,"context_line":"            url \u003d (\u0027/os-hypervisors/%s/%s\u0027 %"}],"source_content_type":"text/x-python","patch_set":2,"id":"bfb3d3c7_219064ed","line":106,"updated":"2019-05-24 12:50:38.000000000","message":"you could also just pass the min version and parameter and it renders this automatically (https://github.com/openstack/python-novaclient/blob/bdc49fb62129190662603a22d9fd10a2beff7e5d/novaclient/exceptions.py#L49) for consistency","commit_id":"0dc6b96ec83703a0607c4df16e43856632aecb61"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0b2ab37a331168c2a8b70823dd8714a1dee6f011","unresolved":false,"context_lines":[{"line_number":103,"context_line":"        else:"},{"line_number":104,"context_line":"            if detailed:"},{"line_number":105,"context_line":"                raise exceptions.UnsupportedVersion("},{"line_number":106,"context_line":"                    _(\u0027Parameter \"detailed\" requires API version 2.53 or \u0027"},{"line_number":107,"context_line":"                      \u0027greater.\u0027))"},{"line_number":108,"context_line":"            target \u003d \u0027servers\u0027 if servers else \u0027search\u0027"},{"line_number":109,"context_line":"            url \u003d (\u0027/os-hypervisors/%s/%s\u0027 %"}],"source_content_type":"text/x-python","patch_set":2,"id":"bfb3d3c7_0d21d1b0","line":106,"in_reply_to":"bfb3d3c7_219064ed","updated":"2019-05-24 13:48:45.000000000","message":"True, I guess I didn\u0027t notice the exception took args.","commit_id":"0dc6b96ec83703a0607c4df16e43856632aecb61"}]}
