)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"9bfdda99e3be076e963bb29ad2a39cbe7af2ae75","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"843c3d75_018e98ad","updated":"2023-01-20 02:41:14.000000000","message":"Fascinating. The original layout makes way more sense to me, and the new code looks obfuscated. But I\u0027m quite intrigued by how you see the program in your mind, so that the new formatting is not an impediment to reading.","commit_id":"26f458b08dc1391e360fc79f0fbaaf4d33b0d899"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"ae1db72d81bed901d98fc89caa0db7d0170e1d8b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"1fbf7ec7_7c7f6362","updated":"2023-01-20 14:04:53.000000000","message":"i think pete\u0027s right it\u0027s six one way, half a dozen the other - but I\u0027m ok to maintain this.","commit_id":"26f458b08dc1391e360fc79f0fbaaf4d33b0d899"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"7abd5b198fd54aec3ca8c0d8d0447958176b0f24","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"a1d5b4c2_44585ec7","in_reply_to":"843c3d75_018e98ad","updated":"2023-03-02 05:45:36.000000000","message":"So it started off with me noticing a smell from code like\n\n else:\n     if ...:\n         ...\n\nand just kinda proceeded algebraically from there. In the end, I view it as Clay said: if (some series of early-return conditions), else (go to memcache).","commit_id":"26f458b08dc1391e360fc79f0fbaaf4d33b0d899"}],"swift/proxy/controllers/obj.py":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"ae1db72d81bed901d98fc89caa0db7d0170e1d8b","unresolved":true,"context_lines":[{"line_number":304,"context_line":"                    except MemcacheConnectionError:"},{"line_number":305,"context_line":"                        cache_state \u003d \u0027error\u0027"},{"line_number":306,"context_line":"            else:"},{"line_number":307,"context_line":"                cache_state \u003d \u0027disabled\u0027"},{"line_number":308,"context_line":"        cached_ranges \u003d cached_ranges or []"},{"line_number":309,"context_line":"        return cached_ranges, cache_state"},{"line_number":310,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"d227ff99_460af8ff","side":"PARENT","line":307,"updated":"2023-01-20 14:04:53.000000000","message":"i think the cyclomatic complexity here is high - a try/except in an if/else, in an if/else, in an if/else - kudos on the rewrite.","commit_id":"95c353d29dc120d817471970267f98d725d52077"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"7abd5b198fd54aec3ca8c0d8d0447958176b0f24","unresolved":true,"context_lines":[{"line_number":304,"context_line":"                    except MemcacheConnectionError:"},{"line_number":305,"context_line":"                        cache_state \u003d \u0027error\u0027"},{"line_number":306,"context_line":"            else:"},{"line_number":307,"context_line":"                cache_state \u003d \u0027disabled\u0027"},{"line_number":308,"context_line":"        cached_ranges \u003d cached_ranges or []"},{"line_number":309,"context_line":"        return cached_ranges, cache_state"},{"line_number":310,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7482a949_0363dee2","side":"PARENT","line":307,"in_reply_to":"d227ff99_460af8ff","updated":"2023-03-02 05:45:36.000000000","message":"That\u0027s exactly what I wanted to reduce, yeah.","commit_id":"95c353d29dc120d817471970267f98d725d52077"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"ae1db72d81bed901d98fc89caa0db7d0170e1d8b","unresolved":true,"context_lines":[{"line_number":300,"context_line":"                cached_ranges \u003d memcache.get(cache_key, raise_on_error\u003dTrue)"},{"line_number":301,"context_line":"                cache_state \u003d \u0027hit\u0027 if cached_ranges else \u0027miss\u0027"},{"line_number":302,"context_line":"            except MemcacheConnectionError:"},{"line_number":303,"context_line":"                cache_state \u003d \u0027error\u0027"},{"line_number":304,"context_line":"        cached_ranges \u003d cached_ranges or []"},{"line_number":305,"context_line":"        return cached_ranges, cache_state"},{"line_number":306,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"652dfa7d_78d51910","line":303,"updated":"2023-01-20 14:04:53.000000000","message":"at first it wasn\u0027t even obvious to me this code was equivilant - but now I see it as \"if ... any condition where we\u0027re not going to memcache ... else go to memcache\"\n\n... which wasn\u0027t as obvious to me reading the original","commit_id":"26f458b08dc1391e360fc79f0fbaaf4d33b0d899"}]}
