)]}'
{"tempest/cmd/cleanup.py":[{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"eba35747cdda71d458368b03dd12cb4c14ae5cf9","unresolved":false,"context_lines":[{"line_number":106,"context_line":""},{"line_number":107,"context_line":"        if is_dry_run:"},{"line_number":108,"context_line":"            self.dry_run_data[\"_tenants_to_clean\"] \u003d {}"},{"line_number":109,"context_line":"            f \u003d open(DRY_RUN_JSON, \u0027w+\u0027)"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"        admin_mgr \u003d self.admin_mgr"},{"line_number":112,"context_line":"        # Always cleanup tempest and alt tempest tenants unless"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a8ffd7b_b3b88976","side":"PARENT","line":109,"updated":"2015-12-02 18:00:56.000000000","message":"Why did you remove the line ? I think it has a purpose.","commit_id":"e219927802f865bc1a3c89a096d3adacecbcf785"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"3d8337d00c396d239a81617108806d579c97d95f","unresolved":false,"context_lines":[{"line_number":106,"context_line":""},{"line_number":107,"context_line":"        if is_dry_run:"},{"line_number":108,"context_line":"            self.dry_run_data[\"_tenants_to_clean\"] \u003d {}"},{"line_number":109,"context_line":"            f \u003d open(DRY_RUN_JSON, \u0027w+\u0027)"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"        admin_mgr \u003d self.admin_mgr"},{"line_number":112,"context_line":"        # Always cleanup tempest and alt tempest tenants unless"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a68dd71_7bc6074b","side":"PARENT","line":109,"in_reply_to":"7a740942_e5abd11b","updated":"2016-01-26 08:54:56.000000000","message":"yeah, it seems there is no code which using \u0027f\u0027 until there. I agree with lei here.","commit_id":"e219927802f865bc1a3c89a096d3adacecbcf785"},{"author":{"_account_id":16523,"name":"ZhangLei","display_name":"ZhangLei","email":"zhang.lei@99cloud.net","username":"zhang.lei"},"change_message_id":"94027a0282f36b2c266b94e8251df0ec9cfd990d","unresolved":false,"context_lines":[{"line_number":106,"context_line":""},{"line_number":107,"context_line":"        if is_dry_run:"},{"line_number":108,"context_line":"            self.dry_run_data[\"_tenants_to_clean\"] \u003d {}"},{"line_number":109,"context_line":"            f \u003d open(DRY_RUN_JSON, \u0027w+\u0027)"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"        admin_mgr \u003d self.admin_mgr"},{"line_number":112,"context_line":"        # Always cleanup tempest and alt tempest tenants unless"}],"source_content_type":"text/x-python","patch_set":2,"id":"7a740942_e5abd11b","side":"PARENT","line":109,"in_reply_to":"9a8ffd7b_b3b88976","updated":"2015-12-07 01:58:22.000000000","message":"This line is moved to the L137","commit_id":"e219927802f865bc1a3c89a096d3adacecbcf785"}],"tempest/cmd/verify_tempest_config.py":[{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"78ed2f5e1dfa3c2da2267685436bb177b9661fad","unresolved":false,"context_lines":[{"line_number":46,"context_line":"    conf_file \u003d os.environ.get(\u0027TEMPEST_CONFIG\u0027, default_config_file)"},{"line_number":47,"context_line":"    path \u003d os.path.join(conf_dir, conf_file)"},{"line_number":48,"context_line":"    with open(path, \u0027rw\u0027) as fd:"},{"line_number":49,"context_line":"        return fd"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"def change_option(option, group, value):"}],"source_content_type":"text/x-python","patch_set":4,"id":"9aed3d3a_796d3dcb","line":49,"updated":"2016-03-01 08:17:35.000000000","message":"Does this work well for a caller? I suppose \u0027fd\u0027 is closed after the return. And a caller L.356 expects \u0027opened\u0027 fd not \u0027closed\u0027.","commit_id":"0c4215ee4426e9604f67d9c67d9eda9fe27caff1"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"15822de23b4122b63b85cabbb739440d285a24f6","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":"    conf_dir \u003d os.environ.get(\u0027TEMPEST_CONFIG_DIR\u0027, default_config_dir)"},{"line_number":46,"context_line":"    conf_file \u003d os.environ.get(\u0027TEMPEST_CONFIG\u0027, default_config_file)"},{"line_number":47,"context_line":"    path \u003d os.path.join(conf_dir, conf_file)"},{"line_number":48,"context_line":"    fd \u003d open(path, \u0027rw\u0027)"},{"line_number":49,"context_line":"    return fd"},{"line_number":50,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9aed3d3a_48b221e6","line":47,"updated":"2016-03-01 10:05:21.000000000","message":"I\u0027d prefer to put a NOTE or FIXME comment if you leave here.\nOr I feel it would be good to mention about it in your commit message.","commit_id":"736b8ae7adb4cea53163a2974b7114251403618f"}],"tempest/lib/cmd/skip_tracker.py":[{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"baab0bb3d703f3c523954c8a2a878b5700f7b17e","unresolved":false,"context_lines":[{"line_number":81,"context_line":"    DEF_RE \u003d re.compile(r\u0027\\s*def (\\w+)\\(\u0027)"},{"line_number":82,"context_line":"    bug_found \u003d False"},{"line_number":83,"context_line":"    results \u003d []"},{"line_number":84,"context_line":"    with open(path, \u0027rb\u0027).readlines() as lines:"},{"line_number":85,"context_line":"        for x, line in enumerate(lines):"},{"line_number":86,"context_line":"            if not bug_found:"},{"line_number":87,"context_line":"                res \u003d BUG_RE.match(line)"}],"source_content_type":"text/x-python","patch_set":5,"id":"5aef4532_d68e2acf","line":84,"updated":"2016-03-09 10:24:16.000000000","message":"This doesn\u0027t work:\n\n Traceback (most recent call last):\n  File \"./skip_tracker.py\", line 163, in \u003cmodule\u003e\n    main()\n  File \"./skip_tracker.py\", line 115, in main\n    results \u003d find_skips(parser.test_path)\n  File \"./skip_tracker.py\", line 64, in find_skips\n    temp_result \u003d find_skips_in_file(path)\n  File \"./skip_tracker.py\", line 84, in find_skips_in_file\n    with open(path, \u0027rb\u0027).readlines() as lines:\nAttributeError: __exit__","commit_id":"736b8ae7adb4cea53163a2974b7114251403618f"}]}
