)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},"change_message_id":"1be2ed1a8e231dfdcb678f2c3dabf4728c99afd4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"0428ef78_af13e3de","updated":"2024-01-25 11:26:11.000000000","message":"Require unit tests","commit_id":"9fd6c022414752cfeabdcf5871906ff256bba33b"},{"author":{"_account_id":9311,"name":"Tristan Cacqueray","email":"tdecacqu@redhat.com","username":"tristanC"},"change_message_id":"b0259435775d3df3e2252cbfb5b520d2d8a8443c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"44decd6d_d589cba4","updated":"2024-01-25 13:50:41.000000000","message":"LGTM, I left a minor nit to prevent issues in merge_dicts.","commit_id":"e2004d31636647a2499a67883fba4c6ef33f4729"}],"logscraper/logscraper.py":[{"author":{"_account_id":9311,"name":"Tristan Cacqueray","email":"tdecacqu@redhat.com","username":"tristanC"},"change_message_id":"b0259435775d3df3e2252cbfb5b520d2d8a8443c","unresolved":true,"context_lines":[{"line_number":508,"context_line":"            elif isinstance(merged[k], dict) and isinstance(v, dict):"},{"line_number":509,"context_line":"                merged[k] \u003d merge_dicts(merged[k], v)"},{"line_number":510,"context_line":"            else:"},{"line_number":511,"context_line":"                merged[k] \u003d [merged[k], v]"},{"line_number":512,"context_line":"        else:"},{"line_number":513,"context_line":"            merged[k] \u003d v"},{"line_number":514,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"093195b9_6c601e41","line":511,"updated":"2024-01-25 13:50:41.000000000","message":"Shouldn\u0027t that be an error, e.g. `\"Trying to merge incompatible types\", type(merged[k]), type(v)`","commit_id":"e2004d31636647a2499a67883fba4c6ef33f4729"},{"author":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},"change_message_id":"da03b0b63574cb45134b92f47adbd0dfc908aab9","unresolved":false,"context_lines":[{"line_number":508,"context_line":"            elif isinstance(merged[k], dict) and isinstance(v, dict):"},{"line_number":509,"context_line":"                merged[k] \u003d merge_dicts(merged[k], v)"},{"line_number":510,"context_line":"            else:"},{"line_number":511,"context_line":"                merged[k] \u003d [merged[k], v]"},{"line_number":512,"context_line":"        else:"},{"line_number":513,"context_line":"            merged[k] \u003d v"},{"line_number":514,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"1658ce33_8758b478","line":511,"in_reply_to":"093195b9_6c601e41","updated":"2024-01-26 06:46:05.000000000","message":"good idea!","commit_id":"e2004d31636647a2499a67883fba4c6ef33f4729"},{"author":{"_account_id":9311,"name":"Tristan Cacqueray","email":"tdecacqu@redhat.com","username":"tristanC"},"change_message_id":"b0259435775d3df3e2252cbfb5b520d2d8a8443c","unresolved":true,"context_lines":[{"line_number":517,"context_line":""},{"line_number":518,"context_line":"def load_config(config_path):"},{"line_number":519,"context_line":"    try:"},{"line_number":520,"context_line":"        if isinstance(config_path, list):"},{"line_number":521,"context_line":"            merged_config \u003d {}"},{"line_number":522,"context_line":"            for yaml_file in config_path:"},{"line_number":523,"context_line":"                with open(yaml_file) as f:"}],"source_content_type":"text/x-python","patch_set":4,"id":"84580dcf_d4e7fcef","line":520,"updated":"2024-01-25 13:50:41.000000000","message":"Since the argument action is now append, then the value will always be a list, you can drop that test and the else branch.","commit_id":"e2004d31636647a2499a67883fba4c6ef33f4729"},{"author":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},"change_message_id":"da03b0b63574cb45134b92f47adbd0dfc908aab9","unresolved":false,"context_lines":[{"line_number":517,"context_line":""},{"line_number":518,"context_line":"def load_config(config_path):"},{"line_number":519,"context_line":"    try:"},{"line_number":520,"context_line":"        if isinstance(config_path, list):"},{"line_number":521,"context_line":"            merged_config \u003d {}"},{"line_number":522,"context_line":"            for yaml_file in config_path:"},{"line_number":523,"context_line":"                with open(yaml_file) as f:"}],"source_content_type":"text/x-python","patch_set":4,"id":"1e0442d4_d8b3046a","line":520,"in_reply_to":"84580dcf_d4e7fcef","updated":"2024-01-26 06:46:05.000000000","message":"Done","commit_id":"e2004d31636647a2499a67883fba4c6ef33f4729"},{"author":{"_account_id":9311,"name":"Tristan Cacqueray","email":"tdecacqu@redhat.com","username":"tristanC"},"change_message_id":"b0259435775d3df3e2252cbfb5b520d2d8a8443c","unresolved":true,"context_lines":[{"line_number":521,"context_line":"            merged_config \u003d {}"},{"line_number":522,"context_line":"            for yaml_file in config_path:"},{"line_number":523,"context_line":"                with open(yaml_file) as f:"},{"line_number":524,"context_line":"                    yaml_data \u003d yaml.safe_load(f)"},{"line_number":525,"context_line":"                merged_config \u003d merge_dicts(merged_config, yaml_data)"},{"line_number":526,"context_line":"            return merged_config"},{"line_number":527,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":4,"id":"567e0e9f_6e0c867d","line":524,"updated":"2024-01-25 13:50:41.000000000","message":"nit: you could avoid binding the results to `yaml_data` and call merge_dicts directly here.","commit_id":"e2004d31636647a2499a67883fba4c6ef33f4729"},{"author":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},"change_message_id":"da03b0b63574cb45134b92f47adbd0dfc908aab9","unresolved":false,"context_lines":[{"line_number":521,"context_line":"            merged_config \u003d {}"},{"line_number":522,"context_line":"            for yaml_file in config_path:"},{"line_number":523,"context_line":"                with open(yaml_file) as f:"},{"line_number":524,"context_line":"                    yaml_data \u003d yaml.safe_load(f)"},{"line_number":525,"context_line":"                merged_config \u003d merge_dicts(merged_config, yaml_data)"},{"line_number":526,"context_line":"            return merged_config"},{"line_number":527,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":4,"id":"f20f6f7c_8e213aeb","line":524,"in_reply_to":"567e0e9f_6e0c867d","updated":"2024-01-26 06:46:05.000000000","message":"Done","commit_id":"e2004d31636647a2499a67883fba4c6ef33f4729"}]}
