)]}'
{"os_brick/initiator/connector.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"4a90540288c5c3fb420d903b52bdf4685b20e6fe","unresolved":false,"context_lines":[{"line_number":196,"context_line":"# point to the correct location"},{"line_number":197,"context_line":"for item in connector_list:"},{"line_number":198,"context_line":"    _name \u003d item.split(\u0027.\u0027)[-1]"},{"line_number":199,"context_line":"    conn_class \u003d importutils.import_class(item)"},{"line_number":200,"context_line":"    globals()[_name] \u003d conn_class"},{"line_number":201,"context_line":"    if _name in connector_alias:"},{"line_number":202,"context_line":"        globals()[connector_alias[_name]] \u003d conn_class"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fdfeff1_9cc27284","line":199,"updated":"2019-02-15 15:46:57.000000000","message":"I\u0027m having a hard time following why all this is needed. Isn\u0027t it sufficient to just have the protocol check on line 297?\n\nThis whole global name workaround was added for when we completely refactored all of the connectors and should have actually been removed by now.","commit_id":"cd16b7f9cc53b4babe2d8fc24d3c567b95789ade"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"cc379f8f12cd1b160de01c0855661c0500977bd7","unresolved":false,"context_lines":[{"line_number":196,"context_line":"# point to the correct location"},{"line_number":197,"context_line":"for item in connector_list:"},{"line_number":198,"context_line":"    _name \u003d item.split(\u0027.\u0027)[-1]"},{"line_number":199,"context_line":"    conn_class \u003d importutils.import_class(item)"},{"line_number":200,"context_line":"    globals()[_name] \u003d conn_class"},{"line_number":201,"context_line":"    if _name in connector_alias:"},{"line_number":202,"context_line":"        globals()[connector_alias[_name]] \u003d conn_class"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fdfeff1_cc5a354f","line":199,"in_reply_to":"9fdfeff1_578aa563","updated":"2019-02-20 16:25:48.000000000","message":"I think I agree with Sean.\nWhere are we using those \"old\" import paths?","commit_id":"cd16b7f9cc53b4babe2d8fc24d3c567b95789ade"},{"author":{"_account_id":29675,"name":"Yury Kulazhenkov","email":"kulazhenkov@gmail.com","username":"yury-kulaz"},"change_message_id":"822496cb8681a64ffa46f102afe1efcedf1c6e8d","unresolved":false,"context_lines":[{"line_number":196,"context_line":"# point to the correct location"},{"line_number":197,"context_line":"for item in connector_list:"},{"line_number":198,"context_line":"    _name \u003d item.split(\u0027.\u0027)[-1]"},{"line_number":199,"context_line":"    conn_class \u003d importutils.import_class(item)"},{"line_number":200,"context_line":"    globals()[_name] \u003d conn_class"},{"line_number":201,"context_line":"    if _name in connector_alias:"},{"line_number":202,"context_line":"        globals()[connector_alias[_name]] \u003d conn_class"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fdfeff1_578aa563","line":199,"in_reply_to":"9fdfeff1_9cc27284","updated":"2019-02-15 16:13:55.000000000","message":"Yes, I add this code just to support old path workaround with global names (to support \"old\" import paths, like: connector.ScaleIOConnector).\nFor other use cases dict with Class aliases (line 297) not required.\nIf you think that now is good time to drop support for old import paths, then I can submit a new patch.\nShould I?","commit_id":"cd16b7f9cc53b4babe2d8fc24d3c567b95789ade"},{"author":{"_account_id":29675,"name":"Yury Kulazhenkov","email":"kulazhenkov@gmail.com","username":"yury-kulaz"},"change_message_id":"4c64ed9527754de87a23cfe434f836d5be60cd12","unresolved":false,"context_lines":[{"line_number":196,"context_line":"# point to the correct location"},{"line_number":197,"context_line":"for item in connector_list:"},{"line_number":198,"context_line":"    _name \u003d item.split(\u0027.\u0027)[-1]"},{"line_number":199,"context_line":"    conn_class \u003d importutils.import_class(item)"},{"line_number":200,"context_line":"    globals()[_name] \u003d conn_class"},{"line_number":201,"context_line":"    if _name in connector_alias:"},{"line_number":202,"context_line":"        globals()[connector_alias[_name]] \u003d conn_class"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fdfeff1_57c9c022","line":199,"in_reply_to":"9fdfeff1_cc5a354f","updated":"2019-02-22 15:11:46.000000000","message":"I can find only one use of such style imports LibvirtScaleIOVolumeDriverTestCase. I already submitted patch to remove this usage. Please, review https://review.openstack.org/#/c/638592/","commit_id":"cd16b7f9cc53b4babe2d8fc24d3c567b95789ade"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"cc379f8f12cd1b160de01c0855661c0500977bd7","unresolved":false,"context_lines":[{"line_number":297,"context_line":"        if protocol in protocol_mapping:"},{"line_number":298,"context_line":"            _protocol \u003d protocol"},{"line_number":299,"context_line":"            protocol \u003d protocol_mapping[_protocol]"},{"line_number":300,"context_line":"            LOG.warning(\"Deprecated: %(old_name)s protocol is deprecated and \""},{"line_number":301,"context_line":"                        \"will be removed in future release, \""},{"line_number":302,"context_line":"                        \"use %(new_name)s protocol instead\","},{"line_number":303,"context_line":"                        {\u0027old_name\u0027: _protocol,"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fdfeff1_8c43cdaf","line":300,"updated":"2019-02-20 16:25:48.000000000","message":"nit: 2 deprecated in the same sentence.  Could be replaced with:\n\n  Protocol %(old_name)s is deprecated and","commit_id":"cd16b7f9cc53b4babe2d8fc24d3c567b95789ade"},{"author":{"_account_id":29675,"name":"Yury Kulazhenkov","email":"kulazhenkov@gmail.com","username":"yury-kulaz"},"change_message_id":"4c64ed9527754de87a23cfe434f836d5be60cd12","unresolved":false,"context_lines":[{"line_number":297,"context_line":"        if protocol in protocol_mapping:"},{"line_number":298,"context_line":"            _protocol \u003d protocol"},{"line_number":299,"context_line":"            protocol \u003d protocol_mapping[_protocol]"},{"line_number":300,"context_line":"            LOG.warning(\"Deprecated: %(old_name)s protocol is deprecated and \""},{"line_number":301,"context_line":"                        \"will be removed in future release, \""},{"line_number":302,"context_line":"                        \"use %(new_name)s protocol instead\","},{"line_number":303,"context_line":"                        {\u0027old_name\u0027: _protocol,"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fdfeff1_17d338d7","line":300,"in_reply_to":"9fdfeff1_8c43cdaf","updated":"2019-02-22 15:11:46.000000000","message":"Done","commit_id":"cd16b7f9cc53b4babe2d8fc24d3c567b95789ade"}],"os_brick/initiator/connectors/vxflexos.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"7b5a792287ee27dc4abd984f8e6d9cdd3a73a4b1","unresolved":false,"context_lines":[{"line_number":541,"context_line":"            return None"},{"line_number":542,"context_line":""},{"line_number":543,"context_line":""},{"line_number":544,"context_line":"class ScaleIOConnector(VxFlexOsConnector):"},{"line_number":545,"context_line":"    \"\"\"Class implements the connector driver for ScaleIO."},{"line_number":546,"context_line":""},{"line_number":547,"context_line":"    This connector left here for backward"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_135e0712","line":544,"updated":"2019-02-07 16:27:24.000000000","message":"Is this actually needed for backwards compatibility?","commit_id":"0118f9bed8ce49ec8804e3a638b70a88920c22e1"},{"author":{"_account_id":29675,"name":"Yury Kulazhenkov","email":"kulazhenkov@gmail.com","username":"yury-kulaz"},"change_message_id":"f8431d166d722334a80f42b2a35d2d4566490870","unresolved":false,"context_lines":[{"line_number":541,"context_line":"            return None"},{"line_number":542,"context_line":""},{"line_number":543,"context_line":""},{"line_number":544,"context_line":"class ScaleIOConnector(VxFlexOsConnector):"},{"line_number":545,"context_line":"    \"\"\"Class implements the connector driver for ScaleIO."},{"line_number":546,"context_line":""},{"line_number":547,"context_line":"    This connector left here for backward"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_c87c4122","line":544,"in_reply_to":"9fdfeff1_135e0712","updated":"2019-02-08 06:15:21.000000000","message":"I think, yes. \nI want print deprecation warning every time somebody call connector by old name and to support backward compatibility at least for two use cases:\n1.connector.InitiatorConnector.factory(initiator.SCALEIO,...)\n2.connector.ScaleIOConnector\n\nI didn\u0027t find better solution to achieve this goals.\nThere are some alternatives, but they are quite dirty and require changes to common code to handle this specific case.","commit_id":"0118f9bed8ce49ec8804e3a638b70a88920c22e1"},{"author":{"_account_id":29675,"name":"Yury Kulazhenkov","email":"kulazhenkov@gmail.com","username":"yury-kulaz"},"change_message_id":"b328ad1e8946ad9e653a76af73b9610da0bd7180","unresolved":false,"context_lines":[{"line_number":541,"context_line":"            return None"},{"line_number":542,"context_line":""},{"line_number":543,"context_line":""},{"line_number":544,"context_line":"class ScaleIOConnector(VxFlexOsConnector):"},{"line_number":545,"context_line":"    \"\"\"Class implements the connector driver for ScaleIO."},{"line_number":546,"context_line":""},{"line_number":547,"context_line":"    This connector left here for backward"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_37de4e11","line":544,"in_reply_to":"9fdfeff1_76ef2f87","updated":"2019-02-12 16:46:15.000000000","message":"Done","commit_id":"0118f9bed8ce49ec8804e3a638b70a88920c22e1"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"e40da1c0b5103bc80bcbda13cf1555088804e901","unresolved":false,"context_lines":[{"line_number":541,"context_line":"            return None"},{"line_number":542,"context_line":""},{"line_number":543,"context_line":""},{"line_number":544,"context_line":"class ScaleIOConnector(VxFlexOsConnector):"},{"line_number":545,"context_line":"    \"\"\"Class implements the connector driver for ScaleIO."},{"line_number":546,"context_line":""},{"line_number":547,"context_line":"    This connector left here for backward"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_76ef2f87","line":544,"in_reply_to":"9fdfeff1_c87c4122","updated":"2019-02-08 15:22:22.000000000","message":"I think the better thing to do would be to add a check in get_connector_mapping() that recognizes a request for the old connector that will log a deprecation warning but return the new connector.\n\nSee https://github.com/openstack/cinder/blob/3902a2bf2869c4d44592a64ac1b8a57c2381bc4c/cinder/volume/manager.py#L175 for an example of how this could be cleanly done.","commit_id":"0118f9bed8ce49ec8804e3a638b70a88920c22e1"}],"releasenotes/notes/scaleio-vxflexos-rebrand-08241197f7bfa284.yaml":[{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"6059f105a43b5032d50ae143b57cfb0360117060","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"upgrade:"},{"line_number":4,"context_line":"  - |"},{"line_number":5,"context_line":"    Dell EMC ScaleIO has been rebranded to VxFlex OS."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9fdfeff1_62b696df","line":2,"updated":"2019-02-21 19:51:44.000000000","message":"This should also have a deprecations section.","commit_id":"cd16b7f9cc53b4babe2d8fc24d3c567b95789ade"},{"author":{"_account_id":29675,"name":"Yury Kulazhenkov","email":"kulazhenkov@gmail.com","username":"yury-kulaz"},"change_message_id":"4c64ed9527754de87a23cfe434f836d5be60cd12","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"upgrade:"},{"line_number":4,"context_line":"  - |"},{"line_number":5,"context_line":"    Dell EMC ScaleIO has been rebranded to VxFlex OS."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9fdfeff1_d7d4d0bd","line":2,"in_reply_to":"9fdfeff1_62b696df","updated":"2019-02-22 15:11:46.000000000","message":"Done","commit_id":"cd16b7f9cc53b4babe2d8fc24d3c567b95789ade"}]}
