)]}'
{"rally/common/yamlutils.py":[{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"446103c730cecf823cead405ad2b456610a3e41f","unresolved":false,"context_lines":[{"line_number":18,"context_line":"from yaml import nodes"},{"line_number":19,"context_line":"from yaml import resolver"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"def _construct_mapping_wrapper(deprecate_duplicate_key\u003dTrue, order_key\u003dFalse):"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    def construct_mapping(loader, node, deep\u003dFalse):"}],"source_content_type":"text/x-python","patch_set":8,"id":"3a461143_cc035672","line":21,"updated":"2017-01-26 13:39:42.000000000","message":"let\u0027s add here a symlink for error class, it will help to reduce redundant imports:\n\n ParserError \u003d yaml.parser.ParserError","commit_id":"1913bfc0f813d46578e6b7940caa0f13e8c0b601"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"446103c730cecf823cead405ad2b456610a3e41f","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    pass"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"def safe_load(stream, deprecate_duplicate_key\u003dFalse, order_key\u003dFalse):"},{"line_number":49,"context_line":"    \"\"\"Load stream to create python object"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    :param stream: json/yaml stream."}],"source_content_type":"text/x-python","patch_set":8,"id":"3a461143_8c7eaee2","line":48,"range":{"start_line":48,"start_character":21,"end_line":48,"end_character":53},"updated":"2017-01-26 13:39:42.000000000","message":"not sure that we need to make it configurable. I could not imagine the case when it can allow key duplication","commit_id":"1913bfc0f813d46578e6b7940caa0f13e8c0b601"},{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"9a71cf58af513cb3bd9540f43d8a11568e4044a0","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    pass"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"def safe_load(stream, deprecate_duplicate_key\u003dFalse, order_key\u003dFalse):"},{"line_number":49,"context_line":"    \"\"\"Load stream to create python object"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    :param stream: json/yaml stream."}],"source_content_type":"text/x-python","patch_set":8,"id":"3a461143_ae6d109a","line":48,"range":{"start_line":48,"start_character":21,"end_line":48,"end_character":53},"in_reply_to":"3a461143_8c7eaee2","updated":"2017-01-26 18:28:17.000000000","message":"agree. lets remove these options.","commit_id":"1913bfc0f813d46578e6b7940caa0f13e8c0b601"},{"author":{"_account_id":13404,"name":"Alberto Planas","email":"aplanas@gmail.com","username":"aplanas"},"change_message_id":"db27c6cdd0cb3030cc51bd183600da686406d81c","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"import collections"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"import yaml"},{"line_number":16,"context_line":"from yaml import constructor"},{"line_number":17,"context_line":"from yaml import loader"},{"line_number":18,"context_line":"from yaml import nodes"}],"source_content_type":"text/x-python","patch_set":11,"id":"1a430d35_b98e7225","line":15,"updated":"2017-02-03 09:27:12.000000000","message":"this is only used for `load()`. I wonder if makes more sense in a style pov to drop this and add the `from yaml import load`","commit_id":"029d1e78de39ce8ae37922f4aeacdbc87c4b4302"},{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"21337aa04f122a15917ce01ae87f2935c6e456bb","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"import collections"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"import yaml"},{"line_number":16,"context_line":"from yaml import constructor"},{"line_number":17,"context_line":"from yaml import loader"},{"line_number":18,"context_line":"from yaml import nodes"}],"source_content_type":"text/x-python","patch_set":11,"id":"1a430d35_dde88919","line":15,"in_reply_to":"1a430d35_b98e7225","updated":"2017-02-03 09:45:00.000000000","message":"Hi @Alberto, here i prefer to use \u0027from yaml import load\u0027 too, however,pep8 forbids this style, we should import a file level.","commit_id":"029d1e78de39ce8ae37922f4aeacdbc87c4b4302"},{"author":{"_account_id":13404,"name":"Alberto Planas","email":"aplanas@gmail.com","username":"aplanas"},"change_message_id":"db27c6cdd0cb3030cc51bd183600da686406d81c","unresolved":false,"context_lines":[{"line_number":45,"context_line":""},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"class _SafeLoader(loader.SafeLoader):"},{"line_number":48,"context_line":"    pass"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"def safe_load(stream, order_key\u003dFalse):"}],"source_content_type":"text/x-python","patch_set":11,"id":"1a430d35_d9089e94","line":48,"updated":"2017-02-03 09:27:12.000000000","message":"If is empty now, why to use it later? In preparation for some future work?","commit_id":"029d1e78de39ce8ae37922f4aeacdbc87c4b4302"},{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"21337aa04f122a15917ce01ae87f2935c6e456bb","unresolved":false,"context_lines":[{"line_number":45,"context_line":""},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"class _SafeLoader(loader.SafeLoader):"},{"line_number":48,"context_line":"    pass"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"def safe_load(stream, order_key\u003dFalse):"}],"source_content_type":"text/x-python","patch_set":11,"id":"1a430d35_dd36c9b3","line":48,"in_reply_to":"1a430d35_d9089e94","updated":"2017-02-03 09:45:00.000000000","message":"hm.... maybe, it is better that we move it into safe_load body.","commit_id":"029d1e78de39ce8ae37922f4aeacdbc87c4b4302"},{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"1ed95732f34a6e4401f6866109df1ab546bb5497","unresolved":false,"context_lines":[{"line_number":48,"context_line":"    pass"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"def safe_load(stream, order_key\u003dFalse):"},{"line_number":52,"context_line":"    \"\"\"Load stream to create python object"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    :param stream: json/yaml stream."}],"source_content_type":"text/x-python","patch_set":11,"id":"1a430d35_1d83f1cd","line":51,"range":{"start_line":51,"start_character":22,"end_line":51,"end_character":37},"updated":"2017-02-03 10:00:20.000000000","message":"let\u0027s remove this and always use OrderedDict","commit_id":"029d1e78de39ce8ae37922f4aeacdbc87c4b4302"},{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"c73af91b5ecf93e4d3c2747b7ad8740c099c7948","unresolved":false,"context_lines":[{"line_number":48,"context_line":"    pass"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"def safe_load(stream, order_key\u003dFalse):"},{"line_number":52,"context_line":"    \"\"\"Load stream to create python object"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    :param stream: json/yaml stream."}],"source_content_type":"text/x-python","patch_set":11,"id":"1a430d35_012610ce","line":51,"range":{"start_line":51,"start_character":22,"end_line":51,"end_character":37},"in_reply_to":"1a430d35_1d83f1cd","updated":"2017-02-04 00:49:20.000000000","message":"Is it really necessary? In most of the cases we do not need to keep the keys order.","commit_id":"029d1e78de39ce8ae37922f4aeacdbc87c4b4302"}],"tests/unit/common/test_yamlutils.py":[{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"89fc03df94455c48eeafa9728498952e483f553a","unresolved":false,"context_lines":[{"line_number":19,"context_line":"class YamlTestcase(test.TestCase):"},{"line_number":20,"context_line":"    \"\"\"Test yaml loading method.\"\"\""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    def setUp(self):"},{"line_number":23,"context_line":"        super(YamlTestcase, self).setUp()"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    def test_safe_load(self):"},{"line_number":26,"context_line":"        stream \u003d \"{\u0027a\u0027: 1, \u0027b\u0027: {\u0027a\u0027: 2}}\""}],"source_content_type":"text/x-python","patch_set":12,"id":"1a430d35_b0efbbe7","line":23,"range":{"start_line":22,"start_character":4,"end_line":23,"end_character":41},"updated":"2017-02-08 09:29:32.000000000","message":"is redundant","commit_id":"5d4eade920f5562f84001a066b4e3c836165cf6b"}]}
