)]}'
{"ironic/conductor/utils.py":[{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"93705ca712d6886971651da9e616ef18234951e1","unresolved":true,"context_lines":[{"line_number":1374,"context_line":"        if not vendor:"},{"line_number":1375,"context_line":"            return"},{"line_number":1376,"context_line":""},{"line_number":1377,"context_line":"        # This function may be called without an exclusive lock, so get one"},{"line_number":1378,"context_line":"        task.upgrade_lock(purpose\u003d\u0027caching node vendor\u0027)"},{"line_number":1379,"context_line":"    except exception.UnsupportedDriverExtension:"},{"line_number":1380,"context_line":"        return"},{"line_number":1381,"context_line":"    except Exception as exc:"}],"source_content_type":"text/x-python","patch_set":3,"id":"428ddb1a_a6795456","line":1378,"range":{"start_line":1377,"start_character":8,"end_line":1378,"end_character":56},"updated":"2021-01-29 07:05:56.000000000","message":"nit: May be this can be moved at L1388 for readability.","commit_id":"121b3348c813eb075ca38bd264a9315ee3acc2fe"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"65b848cfff834bee209470a239c2cf7455cade7a","unresolved":true,"context_lines":[{"line_number":1374,"context_line":"        if not vendor:"},{"line_number":1375,"context_line":"            return"},{"line_number":1376,"context_line":""},{"line_number":1377,"context_line":"        # This function may be called without an exclusive lock, so get one"},{"line_number":1378,"context_line":"        task.upgrade_lock(purpose\u003d\u0027caching node vendor\u0027)"},{"line_number":1379,"context_line":"    except exception.UnsupportedDriverExtension:"},{"line_number":1380,"context_line":"        return"},{"line_number":1381,"context_line":"    except Exception as exc:"}],"source_content_type":"text/x-python","patch_set":3,"id":"c8f71fbd_aad0ad6d","line":1378,"range":{"start_line":1377,"start_character":8,"end_line":1378,"end_character":56},"in_reply_to":"34aa9bae_3700958d","updated":"2021-01-29 15:35:35.000000000","message":"I\u0027d like to be able to catch NodeLocked here to prevent it from blowing up the calling code.","commit_id":"121b3348c813eb075ca38bd264a9315ee3acc2fe"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"72ad757f6263d3a5a422c76d8f4b9d2cf09b8fa2","unresolved":true,"context_lines":[{"line_number":1374,"context_line":"        if not vendor:"},{"line_number":1375,"context_line":"            return"},{"line_number":1376,"context_line":""},{"line_number":1377,"context_line":"        # This function may be called without an exclusive lock, so get one"},{"line_number":1378,"context_line":"        task.upgrade_lock(purpose\u003d\u0027caching node vendor\u0027)"},{"line_number":1379,"context_line":"    except exception.UnsupportedDriverExtension:"},{"line_number":1380,"context_line":"        return"},{"line_number":1381,"context_line":"    except Exception as exc:"}],"source_content_type":"text/x-python","patch_set":3,"id":"34aa9bae_3700958d","line":1378,"range":{"start_line":1377,"start_character":8,"end_line":1378,"end_character":56},"in_reply_to":"428ddb1a_a6795456","updated":"2021-01-29 14:12:03.000000000","message":"UnsupportedDriverExtension could be a thing still.","commit_id":"121b3348c813eb075ca38bd264a9315ee3acc2fe"}],"ironic/drivers/modules/ipmitool.py":[{"author":{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"},"change_message_id":"65b910b5fa27b6c64b534d158df82bcdd0ef0aba","unresolved":true,"context_lines":[{"line_number":1225,"context_line":""},{"line_number":1226,"context_line":"    @METRICS.timer(\u0027IPMIManagement.detect_vendor\u0027)"},{"line_number":1227,"context_line":"    def detect_vendor(self, task):"},{"line_number":1228,"context_line":"        \"\"\"Detects, stores, and returns the hardware vendor."},{"line_number":1229,"context_line":""},{"line_number":1230,"context_line":"        If the Node object ``properties`` field does not already contain"},{"line_number":1231,"context_line":"        a ``vendor`` field, then this method is intended to query"}],"source_content_type":"text/x-python","patch_set":1,"id":"576fa018_47ca3b1c","line":1228,"range":{"start_line":1228,"start_character":20,"end_line":1228,"end_character":26},"updated":"2021-01-27 23:00:02.000000000","message":"It looks like the storing is done by node_cache_vendor, so it would be good do fix this whole docstring to clarify that it just returns the vendor, no storing, and no checking Node.properties.\n\nOther changes which implement detect_vendor need their docstrings fixed too.","commit_id":"f729c8bcf9213d5c47f8721ab49a098828686035"}]}
