)]}'
{"blazarclient/osc/plugin.py":[{"author":{"_account_id":29100,"name":"Jason Anderson","email":"jasonanderson@uchicago.edu","username":"jasonanderson"},"change_message_id":"a455b2fc18e75faa3ffd4b34aee86329a3f2a1e4","unresolved":true,"context_lines":[{"line_number":14,"context_line":"from osc_lib import utils"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"LOG \u003d logging.getLogger(__name__)  # Get the logger of this module"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"DEFAULT_API_VERSION \u003d \u00271\u0027"},{"line_number":20,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"50fd4c70_3255528a","line":17,"updated":"2021-06-14 19:57:05.000000000","message":"nit: I don\u0027t think such a comment is necessary","commit_id":"4948343a1f136e4ceef0b492dfb8f10f2a64b9ac"},{"author":{"_account_id":33582,"name":"Mark Powers","email":"markpowers@uchicago.edu","username":"markpowers"},"change_message_id":"98b6bdbfe34d04b722ba6cb9323df98cbeb4097c","unresolved":false,"context_lines":[{"line_number":14,"context_line":"from osc_lib import utils"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"LOG \u003d logging.getLogger(__name__)  # Get the logger of this module"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"DEFAULT_API_VERSION \u003d \u00271\u0027"},{"line_number":20,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"cb00e9f5_67b13221","line":17,"in_reply_to":"50fd4c70_3255528a","updated":"2021-06-16 22:30:22.000000000","message":"Removed","commit_id":"4948343a1f136e4ceef0b492dfb8f10f2a64b9ac"},{"author":{"_account_id":29100,"name":"Jason Anderson","email":"jasonanderson@uchicago.edu","username":"jasonanderson"},"change_message_id":"a455b2fc18e75faa3ffd4b34aee86329a3f2a1e4","unresolved":true,"context_lines":[{"line_number":40,"context_line":"        session\u003dinstance.session,"},{"line_number":41,"context_line":"        interface\u003dinstance.interface,"},{"line_number":42,"context_line":"        region_name\u003dinstance._region_name,"},{"line_number":43,"context_line":"        endpoint_override\u003dinstance.get_endpoint_for_service_type("},{"line_number":44,"context_line":"            API_NAME,"},{"line_number":45,"context_line":"            interface\u003dinstance.interface,"},{"line_number":46,"context_line":"            region_name\u003dinstance._region_name)"}],"source_content_type":"text/x-python","patch_set":5,"id":"648bec6c_94855308","line":43,"updated":"2021-06-14 19:57:05.000000000","message":"I am not sure if interface/region_name are needed on the client constructor, if endpoint_override is also used. But, it would not surprise me if there was some weird place where the override was ignored and the interface/region_name were used. Just wondering, did you find an invocation like this in another existing client?","commit_id":"4948343a1f136e4ceef0b492dfb8f10f2a64b9ac"},{"author":{"_account_id":33582,"name":"Mark Powers","email":"markpowers@uchicago.edu","username":"markpowers"},"change_message_id":"98b6bdbfe34d04b722ba6cb9323df98cbeb4097c","unresolved":true,"context_lines":[{"line_number":40,"context_line":"        session\u003dinstance.session,"},{"line_number":41,"context_line":"        interface\u003dinstance.interface,"},{"line_number":42,"context_line":"        region_name\u003dinstance._region_name,"},{"line_number":43,"context_line":"        endpoint_override\u003dinstance.get_endpoint_for_service_type("},{"line_number":44,"context_line":"            API_NAME,"},{"line_number":45,"context_line":"            interface\u003dinstance.interface,"},{"line_number":46,"context_line":"            region_name\u003dinstance._region_name)"}],"source_content_type":"text/x-python","patch_set":5,"id":"4b28141d_338a138a","line":43,"in_reply_to":"648bec6c_94855308","updated":"2021-06-16 22:30:22.000000000","message":"I found this invocation in ironicclient: https://opendev.org/openstack/python-ironicclient/src/branch/master/ironicclient/osc/plugin.py#L70\n\nI tried removing interface and region_name, and I haven\u0027t found any error yet, so it doesn\u0027t seem to be required.","commit_id":"4948343a1f136e4ceef0b492dfb8f10f2a64b9ac"},{"author":{"_account_id":29100,"name":"Jason Anderson","email":"jasonanderson@uchicago.edu","username":"jasonanderson"},"change_message_id":"a455b2fc18e75faa3ffd4b34aee86329a3f2a1e4","unresolved":true,"context_lines":[{"line_number":60,"context_line":"    parser.add_argument("},{"line_number":61,"context_line":"        \"--os-reservation-api-version\","},{"line_number":62,"context_line":"        metavar\u003d\"\u003creservation-api-version\u003e\","},{"line_number":63,"context_line":"        help\u003d\"Reservation API version, default\u003d\" +"},{"line_number":64,"context_line":"        DEFAULT_API_VERSION +"},{"line_number":65,"context_line":"        \" (Env: OS_OSCPLUGIN_API_VERSION)\","},{"line_number":66,"context_line":"    )"}],"source_content_type":"text/x-python","patch_set":5,"id":"30e9c018_18670637","line":63,"updated":"2021-06-14 19:57:05.000000000","message":"I personally find this way of doing multiline strings easier to follow:\n\n  help\u003d(\"Reservation API version, default\u003d%s\".format(DEFAULT_API_VERSION)\n        \" (Env: OS_OSCPLUGIN_API_VERSION\")\n\nI haven\u0027t seen much else in blazarclient to know what is in use. I don\u0027t mind the +\u0027s, just pointing out the syntax. The downside is you have to do the .format part I think, I\u0027m not sure Python is OK w/ having one line be a variable.","commit_id":"4948343a1f136e4ceef0b492dfb8f10f2a64b9ac"},{"author":{"_account_id":33582,"name":"Mark Powers","email":"markpowers@uchicago.edu","username":"markpowers"},"change_message_id":"98b6bdbfe34d04b722ba6cb9323df98cbeb4097c","unresolved":false,"context_lines":[{"line_number":60,"context_line":"    parser.add_argument("},{"line_number":61,"context_line":"        \"--os-reservation-api-version\","},{"line_number":62,"context_line":"        metavar\u003d\"\u003creservation-api-version\u003e\","},{"line_number":63,"context_line":"        help\u003d\"Reservation API version, default\u003d\" +"},{"line_number":64,"context_line":"        DEFAULT_API_VERSION +"},{"line_number":65,"context_line":"        \" (Env: OS_OSCPLUGIN_API_VERSION)\","},{"line_number":66,"context_line":"    )"}],"source_content_type":"text/x-python","patch_set":5,"id":"46e94444_fa48a1f8","line":63,"in_reply_to":"30e9c018_18670637","updated":"2021-06-16 22:30:22.000000000","message":"Updated","commit_id":"4948343a1f136e4ceef0b492dfb8f10f2a64b9ac"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"6190aa3b0a01abe410e9a488ffe501fa0c1f94c7","unresolved":true,"context_lines":[{"line_number":10,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":11,"context_line":"# limitations under the License."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"import logging"},{"line_number":14,"context_line":"from osc_lib import utils"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"LOG \u003d logging.getLogger(__name__)"}],"source_content_type":"text/x-python","patch_set":8,"id":"03bcc921_b91c3423","line":14,"range":{"start_line":13,"start_character":0,"end_line":14,"end_character":25},"updated":"2021-07-29 15:26:06.000000000","message":"You should include an empty line between these two imports.","commit_id":"6826bafbf0a344d5dfc4b38a653759fa113cc02e"}],"blazarclient/tests/test_command.py":[{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"6190aa3b0a01abe410e9a488ffe501fa0c1f94c7","unresolved":true,"context_lines":[{"line_number":61,"context_line":""},{"line_number":62,"context_line":"    def test_get_client(self):"},{"line_number":63,"context_line":"        # Test that either client_manager.reservation or client is used,"},{"line_number":64,"context_line":"        # which ever exists"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"        client_manager \u003d self.app.client_manager"},{"line_number":67,"context_line":"        del self.app.client_manager"}],"source_content_type":"text/x-python","patch_set":8,"id":"62083a42_87b1ebb9","line":64,"range":{"start_line":64,"start_character":10,"end_line":64,"end_character":20},"updated":"2021-07-29 15:26:06.000000000","message":"whichever","commit_id":"6826bafbf0a344d5dfc4b38a653759fa113cc02e"}],"blazarclient/tests/test_plugin.py":[{"author":{"_account_id":29100,"name":"Jason Anderson","email":"jasonanderson@uchicago.edu","username":"jasonanderson"},"change_message_id":"a455b2fc18e75faa3ffd4b34aee86329a3f2a1e4","unresolved":true,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"        plugin.make_client(instance)"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"        instance.get_endpoint_for_service_type.assert_called_with("},{"line_number":35,"context_line":"            plugin.API_NAME,"},{"line_number":36,"context_line":"            interface\u003dinstance.interface,"},{"line_number":37,"context_line":"            region_name\u003dinstance._region_name"}],"source_content_type":"text/x-python","patch_set":5,"id":"cd07b973_b1372205","line":34,"updated":"2021-06-14 19:57:05.000000000","message":"I don\u0027t think this assertion is particularly useful. The main thing you are already testing is, does the endpoint make it on the client constructor kwargs. I think that\u0027s the highest value thing to test... the mechanism of _how_ it gets there is less important. Keep in mind that if the endpoint was ever generated or retrieved via a different mechanism, we would have to update this test to match the new behavior. This feels a bit like the test knows too much 😊 -- the assertion on the mock client constructor is probably enough!","commit_id":"4948343a1f136e4ceef0b492dfb8f10f2a64b9ac"}],"setup.cfg":[{"author":{"_account_id":29100,"name":"Jason Anderson","email":"jasonanderson@uchicago.edu","username":"jasonanderson"},"change_message_id":"a455b2fc18e75faa3ffd4b34aee86329a3f2a1e4","unresolved":true,"context_lines":[{"line_number":44,"context_line":"    allocatable_host_list \u003d blazarclient.v1.shell_commands.hosts:ListHosts"},{"line_number":45,"context_line":"    allocatable_host_show \u003d blazarclient.v1.shell_commands.hosts:ShowHost"},{"line_number":46,"context_line":"    allocatable_host_update \u003d blazarclient.v1.shell_commands.hosts:UpdateHost"},{"line_number":47,"context_line":"    reservation_lease_create \u003d blazarclient.v1.shell_commands.leases:CreateLease"},{"line_number":48,"context_line":"    reservation_lease_delete \u003d blazarclient.v1.shell_commands.leases:DeleteLease"},{"line_number":49,"context_line":"    reservation_lease_list \u003d blazarclient.v1.shell_commands.leases:ListLeases"},{"line_number":50,"context_line":"    reservation_lease_show \u003d blazarclient.v1.shell_commands.leases:ShowLease"}],"source_content_type":"text/x-ttcn-cfg","patch_set":5,"id":"4a5cee75_a5f66745","line":47,"updated":"2021-06-14 19:57:05.000000000","message":"I was thinking about this again, having it like `openstack reservation lease create --reservation\u003d...` is a bit clunky, perhaps. What about just `openstack lease create`?\n\nThe other verbs I think are good. I think I was wrong to suggest \"allocatable\" as the adjective; that\u0027s sort of Chameleon\u0027s terminology and I think \"reservable\" might make more sense to the end user given that Blazar\u0027s already the \"reservation service\".","commit_id":"4948343a1f136e4ceef0b492dfb8f10f2a64b9ac"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"6190aa3b0a01abe410e9a488ffe501fa0c1f94c7","unresolved":true,"context_lines":[{"line_number":42,"context_line":"    reservation_host_create \u003d blazarclient.v1.shell_commands.hosts:CreateHost"},{"line_number":43,"context_line":"    reservation_host_delete \u003d blazarclient.v1.shell_commands.hosts:DeleteHost"},{"line_number":44,"context_line":"    reservation_host_list \u003d blazarclient.v1.shell_commands.hosts:ListHosts"},{"line_number":45,"context_line":"    reservation_host_show \u003d blazarclient.v1.shell_commands.hosts:ShowHost"},{"line_number":46,"context_line":"    reservation_host_set \u003d blazarclient.v1.shell_commands.hosts:UpdateHost"},{"line_number":47,"context_line":"    reservation_lease_create \u003d blazarclient.v1.shell_commands.leases:CreateLeaseBase"},{"line_number":48,"context_line":"    reservation_lease_delete \u003d blazarclient.v1.shell_commands.leases:DeleteLease"},{"line_number":49,"context_line":"    reservation_lease_list \u003d blazarclient.v1.shell_commands.leases:ListLeases"}],"source_content_type":"text/x-ttcn-cfg","patch_set":8,"id":"67e35bd5_11aff4c7","line":46,"range":{"start_line":45,"start_character":0,"end_line":46,"end_character":74},"updated":"2021-07-29 15:26:06.000000000","message":"Nit: order alphabetically","commit_id":"6826bafbf0a344d5dfc4b38a653759fa113cc02e"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"6190aa3b0a01abe410e9a488ffe501fa0c1f94c7","unresolved":true,"context_lines":[{"line_number":47,"context_line":"    reservation_lease_create \u003d blazarclient.v1.shell_commands.leases:CreateLeaseBase"},{"line_number":48,"context_line":"    reservation_lease_delete \u003d blazarclient.v1.shell_commands.leases:DeleteLease"},{"line_number":49,"context_line":"    reservation_lease_list \u003d blazarclient.v1.shell_commands.leases:ListLeases"},{"line_number":50,"context_line":"    reservation_lease_show \u003d blazarclient.v1.shell_commands.leases:ShowLease"},{"line_number":51,"context_line":"    reservation_lease_set \u003d blazarclient.v1.shell_commands.leases:UpdateLease"},{"line_number":52,"context_line":""}],"source_content_type":"text/x-ttcn-cfg","patch_set":8,"id":"dd974f8f_eaed8ee3","line":51,"range":{"start_line":50,"start_character":0,"end_line":51,"end_character":77},"updated":"2021-07-29 15:26:06.000000000","message":"Nit: order alphabetically","commit_id":"6826bafbf0a344d5dfc4b38a653759fa113cc02e"}],"test-requirements.txt":[{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"6190aa3b0a01abe410e9a488ffe501fa0c1f94c7","unresolved":true,"context_lines":[{"line_number":12,"context_line":"testrepository\u003e\u003d0.0.18 # Apache-2.0/BSD"},{"line_number":13,"context_line":"testtools\u003e\u003d2.2.0 # MIT"},{"line_number":14,"context_line":"coverage!\u003d4.4,\u003e\u003d4.0 # Apache-2.0"},{"line_number":15,"context_line":"osc-lib\u003e\u003d1.3.0 # Apache-2.0"}],"source_content_type":"text/plain","patch_set":8,"id":"37b10658_f863077e","line":15,"range":{"start_line":15,"start_character":0,"end_line":15,"end_character":27},"updated":"2021-07-29 15:26:06.000000000","message":"Most other clients put this in requirements.txt.","commit_id":"6826bafbf0a344d5dfc4b38a653759fa113cc02e"}]}
