)]}'
{"nova/volume/encryptors/__init__.py":[{"author":{"_account_id":7764,"name":"Peter Hamilton","email":"peter.hamilton@jhuapl.edu","username":"Peter"},"change_message_id":"24f7fe923f6ca294dd3f2835b841ed0be2f9553d","unresolved":false,"context_lines":[{"line_number":48,"context_line":"    :param: the connection information used to attach the volume"},{"line_number":49,"context_line":"    :returns VolumeEncryptor: the VolumeEncryptor for the volume"},{"line_number":50,"context_line":"    \"\"\""},{"line_number":51,"context_line":"    encryptor \u003d nop.NoOpEncryptor(connection_info, **kwargs)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    location \u003d kwargs.get(\u0027control_location\u0027, None)"},{"line_number":54,"context_line":"    if location and location.lower() \u003d\u003d \u0027front-end\u0027:  # case insensitive"}],"source_content_type":"text/x-python","patch_set":1,"id":"dfeb2761_040c0beb","line":51,"range":{"start_line":51,"start_character":4,"end_line":51,"end_character":60},"updated":"2017-04-04 17:12:17.000000000","message":"This seems dangerous. While it resolves the NameError bug, would it be better to raise an explicit exception stating that the encryptor could not be instantiated?\n\nIf we do move forward with this approach, we should at least log a warning if the NoOPEncryptor is actually returned.","commit_id":"3db2cf94df82c02479ffd0bc607713fe5b50fa3e"},{"author":{"_account_id":7764,"name":"Peter Hamilton","email":"peter.hamilton@jhuapl.edu","username":"Peter"},"change_message_id":"452694a9dd749c9d2f4b05ca0b9f60b831d91085","unresolved":false,"context_lines":[{"line_number":48,"context_line":"    :param: the connection information used to attach the volume"},{"line_number":49,"context_line":"    :returns VolumeEncryptor: the VolumeEncryptor for the volume"},{"line_number":50,"context_line":"    \"\"\""},{"line_number":51,"context_line":"    encryptor \u003d nop.NoOpEncryptor(connection_info, **kwargs)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    location \u003d kwargs.get(\u0027control_location\u0027, None)"},{"line_number":54,"context_line":"    if location and location.lower() \u003d\u003d \u0027front-end\u0027:  # case insensitive"}],"source_content_type":"text/x-python","patch_set":1,"id":"bff0334d_7b9b5f17","line":51,"range":{"start_line":51,"start_character":4,"end_line":51,"end_character":60},"in_reply_to":"bff0334d_52e400e0","updated":"2017-04-10 19:01:00.000000000","message":"Ok, after reading through this function a bit more I think I\u0027m fine with this. I was locked in only the front-end case and hadn\u0027t considered the default for non-front-end usage.","commit_id":"3db2cf94df82c02479ffd0bc607713fe5b50fa3e"},{"author":{"_account_id":8623,"name":"Kaitlin Farr","email":"kaitlin.farr@jhuapl.edu","username":"kaitlin.farr"},"change_message_id":"6a75bc251be9ebf41a7b4bd90d38e2250b6f578b","unresolved":false,"context_lines":[{"line_number":48,"context_line":"    :param: the connection information used to attach the volume"},{"line_number":49,"context_line":"    :returns VolumeEncryptor: the VolumeEncryptor for the volume"},{"line_number":50,"context_line":"    \"\"\""},{"line_number":51,"context_line":"    encryptor \u003d nop.NoOpEncryptor(connection_info, **kwargs)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    location \u003d kwargs.get(\u0027control_location\u0027, None)"},{"line_number":54,"context_line":"    if location and location.lower() \u003d\u003d \u0027front-end\u0027:  # case insensitive"}],"source_content_type":"text/x-python","patch_set":1,"id":"bff0334d_52e400e0","line":51,"range":{"start_line":51,"start_character":4,"end_line":51,"end_character":60},"in_reply_to":"bff0334d_b7a468a7","updated":"2017-04-10 17:30:32.000000000","message":"At first glance, I agreed with Peter that this seemed dangerous, but after taking a closer look at the below logic, this seems fine.  Lee is changing this back to the original behavior, and it was changed in the patch Lee noted in the commit message.","commit_id":"3db2cf94df82c02479ffd0bc607713fe5b50fa3e"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"413eb95f9021aca902019c77faf33bcdb940e285","unresolved":false,"context_lines":[{"line_number":48,"context_line":"    :param: the connection information used to attach the volume"},{"line_number":49,"context_line":"    :returns VolumeEncryptor: the VolumeEncryptor for the volume"},{"line_number":50,"context_line":"    \"\"\""},{"line_number":51,"context_line":"    encryptor \u003d nop.NoOpEncryptor(connection_info, **kwargs)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    location \u003d kwargs.get(\u0027control_location\u0027, None)"},{"line_number":54,"context_line":"    if location and location.lower() \u003d\u003d \u0027front-end\u0027:  # case insensitive"}],"source_content_type":"text/x-python","patch_set":1,"id":"bff0334d_b7a468a7","line":51,"range":{"start_line":51,"start_character":4,"end_line":51,"end_character":60},"in_reply_to":"dfeb2761_040c0beb","updated":"2017-04-10 12:41:21.000000000","message":"I don\u0027t see how this behaviour could be considered dangerous, would you care to elaborate?","commit_id":"3db2cf94df82c02479ffd0bc607713fe5b50fa3e"},{"author":{"_account_id":8623,"name":"Kaitlin Farr","email":"kaitlin.farr@jhuapl.edu","username":"kaitlin.farr"},"change_message_id":"6a75bc251be9ebf41a7b4bd90d38e2250b6f578b","unresolved":false,"context_lines":[{"line_number":78,"context_line":"        except Exception as e:"},{"line_number":79,"context_line":"            LOG.error(_LE(\"Error instantiating %(provider)s: %(exception)s\"),"},{"line_number":80,"context_line":"                      {\u0027provider\u0027: provider, \u0027exception\u0027: e})"},{"line_number":81,"context_line":"            raise"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"    msg \u003d (\"Using volume encryptor \u0027%(encryptor)s\u0027 for connection: \""},{"line_number":84,"context_line":"           \"%(connection_info)s\" %"}],"source_content_type":"text/x-python","patch_set":1,"id":"bff0334d_720ca4a4","line":81,"updated":"2017-04-10 17:30:32.000000000","message":"If someone had specified \u0027front-end\u0027 and had a typo or otherwise misconfigured the provider, an exception would be raised here.","commit_id":"3db2cf94df82c02479ffd0bc607713fe5b50fa3e"},{"author":{"_account_id":8623,"name":"Kaitlin Farr","email":"kaitlin.farr@jhuapl.edu","username":"kaitlin.farr"},"change_message_id":"6a75bc251be9ebf41a7b4bd90d38e2250b6f578b","unresolved":false,"context_lines":[{"line_number":82,"context_line":""},{"line_number":83,"context_line":"    msg \u003d (\"Using volume encryptor \u0027%(encryptor)s\u0027 for connection: \""},{"line_number":84,"context_line":"           \"%(connection_info)s\" %"},{"line_number":85,"context_line":"           {\u0027encryptor\u0027: encryptor, \u0027connection_info\u0027: connection_info})"},{"line_number":86,"context_line":"    LOG.debug(strutils.mask_password(msg))"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    return encryptor"}],"source_content_type":"text/x-python","patch_set":1,"id":"bff0334d_d245b0b5","line":85,"updated":"2017-04-10 17:30:32.000000000","message":"If we\u0027re here and had specified \u0027front-end\u0027, encryptor is a valid value or an exception would have been raised (would not have defaulted to NoOpt).\n\nIf we\u0027re here and had specified \u0027back-end\u0027, encryptor would not have been defined (and would raise the NameError), but now it is the default of NoOpt, which is the desired behavior.","commit_id":"3db2cf94df82c02479ffd0bc607713fe5b50fa3e"}]}
