)]}'
{"placement/handlers/allocation_candidate.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"3c3312eabe087d971921f32181af1e2f95a688da","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"# The microversions at which the schema used to validate"},{"line_number":33,"context_line":"# query parameters to GET /allocation_candidates differs."},{"line_number":34,"context_line":"GET_SCHEMA_MICROVERSIONS \u003d ["},{"line_number":35,"context_line":"    (1, 36), (1, 35), (1, 33), (1, 31), (1, 25), (1, 21), (1, 17), (1, 16),"},{"line_number":36,"context_line":"]"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_43ca074e","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":24},"updated":"2019-07-16 16:59:13.000000000","message":"Let\u0027s make this private\n\n[later] Actually, almost prefer to fold it into _get_schema itself. If you make it a tuple, it\u0027s possible Python will still only create it once.","commit_id":"820d28cd5943014360742b2e065ef0fc02212921"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"1b088c4708c8c73e1d0a0e3008aebb1f38215b03","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"# The microversions at which the schema used to validate"},{"line_number":33,"context_line":"# query parameters to GET /allocation_candidates differs."},{"line_number":34,"context_line":"GET_SCHEMA_MICROVERSIONS \u003d ["},{"line_number":35,"context_line":"    (1, 36), (1, 35), (1, 33), (1, 31), (1, 25), (1, 21), (1, 17), (1, 16),"},{"line_number":36,"context_line":"]"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_58c42df5","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":24},"in_reply_to":"7faddb67_43ca074e","updated":"2019-07-17 09:23:26.000000000","message":"private\u0027s fine, but up here is better. It\u0027s a constant (until the next time we change it)","commit_id":"820d28cd5943014360742b2e065ef0fc02212921"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"3c3312eabe087d971921f32181af1e2f95a688da","unresolved":false,"context_lines":[{"line_number":32,"context_line":"# The microversions at which the schema used to validate"},{"line_number":33,"context_line":"# query parameters to GET /allocation_candidates differs."},{"line_number":34,"context_line":"GET_SCHEMA_MICROVERSIONS \u003d ["},{"line_number":35,"context_line":"    (1, 36), (1, 35), (1, 33), (1, 31), (1, 25), (1, 21), (1, 17), (1, 16),"},{"line_number":36,"context_line":"]"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_03ee4fb3","line":35,"range":{"start_line":35,"start_character":74,"end_line":35,"end_character":75},"updated":"2019-07-16 16:59:13.000000000","message":"this trailing comma isn\u0027t needed (even for the usual reasons)","commit_id":"820d28cd5943014360742b2e065ef0fc02212921"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"3c3312eabe087d971921f32181af1e2f95a688da","unresolved":false,"context_lines":[{"line_number":247,"context_line":"    \"\"\"Calculate the desired query parameter schema for"},{"line_number":248,"context_line":"    list_allocation_candidates."},{"line_number":249,"context_line":"    \"\"\""},{"line_number":250,"context_line":"    get_schema \u003d schema.GET_SCHEMA_1_10"},{"line_number":251,"context_line":""},{"line_number":252,"context_line":"    for major, minor in GET_SCHEMA_MICROVERSIONS:"},{"line_number":253,"context_line":"        if want_version.matches((major, minor)):"},{"line_number":254,"context_line":"            schema_string \u003d \u0027GET_SCHEMA_%d_%d\u0027 % (major, minor)"},{"line_number":255,"context_line":"            get_schema \u003d getattr(schema, schema_string)"},{"line_number":256,"context_line":"            break"},{"line_number":257,"context_line":""},{"line_number":258,"context_line":"    return get_schema"},{"line_number":259,"context_line":""},{"line_number":260,"context_line":""},{"line_number":261,"context_line":"@wsgi_wrapper.PlacementWsgify"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_03c08f29","line":258,"range":{"start_line":250,"start_character":0,"end_line":258,"end_character":21},"updated":"2019-07-16 16:59:13.000000000","message":"why not\n\n for maj, min in _GET_SCHEMA_MICROVERSIONS:\n     if want_version.matches((maj, min)):\n         return getattr(schema, \u0027GET_SCHEMA_%d_%d\u0027 % (maj, min))\n\n return schema.GET_SCHEMA_1_10","commit_id":"820d28cd5943014360742b2e065ef0fc02212921"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"1b088c4708c8c73e1d0a0e3008aebb1f38215b03","unresolved":false,"context_lines":[{"line_number":247,"context_line":"    \"\"\"Calculate the desired query parameter schema for"},{"line_number":248,"context_line":"    list_allocation_candidates."},{"line_number":249,"context_line":"    \"\"\""},{"line_number":250,"context_line":"    get_schema \u003d schema.GET_SCHEMA_1_10"},{"line_number":251,"context_line":""},{"line_number":252,"context_line":"    for major, minor in GET_SCHEMA_MICROVERSIONS:"},{"line_number":253,"context_line":"        if want_version.matches((major, minor)):"},{"line_number":254,"context_line":"            schema_string \u003d \u0027GET_SCHEMA_%d_%d\u0027 % (major, minor)"},{"line_number":255,"context_line":"            get_schema \u003d getattr(schema, schema_string)"},{"line_number":256,"context_line":"            break"},{"line_number":257,"context_line":""},{"line_number":258,"context_line":"    return get_schema"},{"line_number":259,"context_line":""},{"line_number":260,"context_line":""},{"line_number":261,"context_line":"@wsgi_wrapper.PlacementWsgify"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_d886ddb9","line":258,"range":{"start_line":250,"start_character":0,"end_line":258,"end_character":21},"in_reply_to":"7faddb67_03c08f29","updated":"2019-07-17 09:23:26.000000000","message":"mostly because I get hives from a return within a loop","commit_id":"820d28cd5943014360742b2e065ef0fc02212921"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"9abd5d08bd2a2840cec890f4103557e2a099ddb0","unresolved":false,"context_lines":[{"line_number":247,"context_line":"    \"\"\"Calculate the desired query parameter schema for"},{"line_number":248,"context_line":"    list_allocation_candidates."},{"line_number":249,"context_line":"    \"\"\""},{"line_number":250,"context_line":"    get_schema \u003d schema.GET_SCHEMA_1_10"},{"line_number":251,"context_line":""},{"line_number":252,"context_line":"    for major, minor in GET_SCHEMA_MICROVERSIONS:"},{"line_number":253,"context_line":"        if want_version.matches((major, minor)):"},{"line_number":254,"context_line":"            schema_string \u003d \u0027GET_SCHEMA_%d_%d\u0027 % (major, minor)"},{"line_number":255,"context_line":"            get_schema \u003d getattr(schema, schema_string)"},{"line_number":256,"context_line":"            break"},{"line_number":257,"context_line":""},{"line_number":258,"context_line":"    return get_schema"},{"line_number":259,"context_line":""},{"line_number":260,"context_line":""},{"line_number":261,"context_line":"@wsgi_wrapper.PlacementWsgify"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_f562b4ad","line":258,"range":{"start_line":250,"start_character":0,"end_line":258,"end_character":21},"in_reply_to":"7faddb67_d886ddb9","updated":"2019-07-17 22:03:07.000000000","message":"Benadryl. Especially for an algorithm this small and simple, it seems like you\u0027re sacrificing clarity for principle. But shrug.","commit_id":"820d28cd5943014360742b2e065ef0fc02212921"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"4fafef6ccbabe8f6ff03b9c9c647fcbf8acd233e","unresolved":false,"context_lines":[{"line_number":247,"context_line":"    \"\"\"Calculate the desired query parameter schema for"},{"line_number":248,"context_line":"    list_allocation_candidates."},{"line_number":249,"context_line":"    \"\"\""},{"line_number":250,"context_line":"    for maj, min in _GET_SCHEMA_MICROVERSIONS:"},{"line_number":251,"context_line":"        if want_version.matches((maj, min)):"},{"line_number":252,"context_line":"            return getattr(schema, \u0027GET_SCHEMA_%d_%d\u0027 % (maj, min))"},{"line_number":253,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"7faddb67_783eb0c1","line":250,"range":{"start_line":250,"start_character":13,"end_line":250,"end_character":16},"updated":"2019-07-18 13:41:28.000000000","message":"\u0027min\u0027 is a builtin (my bad) but this still works.","commit_id":"d76d6ab779e6de144ff7004f7e026e2dfec5d9ba"}]}
