)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8449,"name":"Marios Andreou","email":"marios.andreou@gmail.com","username":"marios"},"change_message_id":"ca5bc05d7fbff337a7755af29838d43b0eae7895","unresolved":false,"context_lines":[{"line_number":9,"context_line":"-flavors defined in roles are now written into parameters that"},{"line_number":10,"context_line":" are fed to heat"},{"line_number":11,"context_line":"-association for image name and flavor param are stored in"},{"line_number":12,"context_line":" template tools by hard, for Icehouse"},{"line_number":13,"context_line":"-exceptions for processing stack erros set to 400"},{"line_number":14,"context_line":"-fixed docs of the helper functions"},{"line_number":15,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"AAAAVn%2F%2F75k%3D","line":12,"updated":"2014-03-03 10:06:34.000000000","message":"right now we aren\u0027t actually using the flavor params right? I mean we don\u0027t pass them to Heat, we just use whatever we have defined as \u0027flavor\u0027 in ROLES for each role","commit_id":"c11064cf4d251db2d5d06916cb2284ed98083a83"},{"author":{"_account_id":7585,"name":"Ladislav Smola","email":"lsmola@redhat.com","username":"lsmola"},"change_message_id":"8e6bac84557f2226c6fbd9c2e6a077874698e321","unresolved":false,"context_lines":[{"line_number":9,"context_line":"-flavors defined in roles are now written into parameters that"},{"line_number":10,"context_line":" are fed to heat"},{"line_number":11,"context_line":"-association for image name and flavor param are stored in"},{"line_number":12,"context_line":" template tools by hard, for Icehouse"},{"line_number":13,"context_line":"-exceptions for processing stack erros set to 400"},{"line_number":14,"context_line":"-fixed docs of the helper functions"},{"line_number":15,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"AAAAVn%2F%2Fw8s%3D","line":12,"in_reply_to":"AAAAVn%2F%2F75k%3D","updated":"2014-03-04 08:12:36.000000000","message":"the params are still the only way how to talk to heat\n\nSo we are passing what is in Roles into params.","commit_id":"c11064cf4d251db2d5d06916cb2284ed98083a83"}],"tuskar/api/controllers/v1/overcloud.py":[{"author":{"_account_id":9712,"name":"Dougal Matthews","email":"dougal.matthews@canonical.com","username":"dougal"},"change_message_id":"7931710b83388b2b4b79df83622507d54086de77","unresolved":false,"context_lines":[{"line_number":111,"context_line":"        role \u003d template_tools.ROLES.get(image_name, None)"},{"line_number":112,"context_line":"        if role:"},{"line_number":113,"context_line":"            flavor_param \u003d role[\u0027flavor_param\u0027]"},{"line_number":114,"context_line":"            attributes[flavor_param] \u003d flavor_id"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"def process_stack(attributes, counts, overcloud_roles\u003dNone, create\u003dFalse):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAVn%2F%2F7Yw%3D","line":114,"updated":"2014-03-03 11:07:11.000000000","message":"I would prefer to see this method return a new object, or maybe return the mutated object. I find methods that mutate the arguments rather than return something have a very non-obvious behavior.","commit_id":"c11064cf4d251db2d5d06916cb2284ed98083a83"},{"author":{"_account_id":7585,"name":"Ladislav Smola","email":"lsmola@redhat.com","username":"lsmola"},"change_message_id":"8e6bac84557f2226c6fbd9c2e6a077874698e321","unresolved":false,"context_lines":[{"line_number":111,"context_line":"        role \u003d template_tools.ROLES.get(image_name, None)"},{"line_number":112,"context_line":"        if role:"},{"line_number":113,"context_line":"            flavor_param \u003d role[\u0027flavor_param\u0027]"},{"line_number":114,"context_line":"            attributes[flavor_param] \u003d flavor_id"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"def process_stack(attributes, counts, overcloud_roles\u003dNone, create\u003dFalse):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAVn%2F%2Fw64%3D","line":114,"in_reply_to":"AAAAVn%2F%2F7Yw%3D","updated":"2014-03-04 08:12:36.000000000","message":"I don\u0027t have strong opinion about this.\n\nFelt weird to me to copy the dict when i don\u0027t need to.\n\nAlso i think it should not return anything, when it just changes the dict, that seems to be the rule. E.g. like .append()","commit_id":"c11064cf4d251db2d5d06916cb2284ed98083a83"},{"author":{"_account_id":7585,"name":"Ladislav Smola","email":"lsmola@redhat.com","username":"lsmola"},"change_message_id":"563fee2b647e2c048ec92c76c5c696f1232d30d7","unresolved":false,"context_lines":[{"line_number":111,"context_line":"        role \u003d template_tools.ROLES.get(image_name, None)"},{"line_number":112,"context_line":"        if role:"},{"line_number":113,"context_line":"            flavor_param \u003d role[\u0027flavor_param\u0027]"},{"line_number":114,"context_line":"            attributes[flavor_param] \u003d flavor_id"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"def process_stack(attributes, counts, overcloud_roles\u003dNone, create\u003dFalse):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAVn%2F%2Fijs%3D","line":114,"in_reply_to":"AAAAVn%2F%2FjZs%3D","updated":"2014-03-05 14:35:23.000000000","message":"Well it seems weird to copy the dictionary I just wish to change.\n\nThis is just helper function for doing instead of doing it inline. Maybe I should just do it inline.\n\nBut as you wish, lets waste some memory.","commit_id":"c11064cf4d251db2d5d06916cb2284ed98083a83"},{"author":{"_account_id":8042,"name":"Jiří Stránský","email":"jistr@redhat.com","username":"jistr"},"change_message_id":"392bc49edb434141f9a3ff6bbb227b97ea659190","unresolved":false,"context_lines":[{"line_number":111,"context_line":"        role \u003d template_tools.ROLES.get(image_name, None)"},{"line_number":112,"context_line":"        if role:"},{"line_number":113,"context_line":"            flavor_param \u003d role[\u0027flavor_param\u0027]"},{"line_number":114,"context_line":"            attributes[flavor_param] \u003d flavor_id"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"def process_stack(attributes, counts, overcloud_roles\u003dNone, create\u003dFalse):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAVn%2F%2FjZs%3D","line":114,"in_reply_to":"AAAAVn%2F%2Fw64%3D","updated":"2014-03-05 13:06:49.000000000","message":"I tend to agree with Dougal on this. There are cases where it makes sense to do argument mutation, but this function could process one dict into another dict, so seems to be no need for argument mutation.\n\nThe .append() method (e.g. on list) is a bit different case because it modifies the object it was called on, not the argument that you pass to it.","commit_id":"c11064cf4d251db2d5d06916cb2284ed98083a83"}],"tuskar/common/exception.py":[{"author":{"_account_id":8399,"name":"Jay Dobies","email":"jason.dobies@redhat.com","username":"jdob"},"change_message_id":"587d924ec9c2c8f55a3bc2a2a260f38f12d0b821","unresolved":false,"context_lines":[{"line_number":188,"context_line":""},{"line_number":189,"context_line":""},{"line_number":190,"context_line":"class ParseCountsAndFlavorsFailed(DuplicateEntry):"},{"line_number":191,"context_line":"    message \u003d _(\"Parsing of couns and flavors from roles failed.\")"},{"line_number":192,"context_line":""},{"line_number":193,"context_line":""},{"line_number":194,"context_line":"class HeatTemplateCreateFailed(Invalid):"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAVn%2F%2B5IM%3D","line":191,"updated":"2014-03-11 14:05:08.000000000","message":"Typo in \"counts\".","commit_id":"84f9f77632848743d403157fdbe4d098b6037bcc"},{"author":{"_account_id":8399,"name":"Jay Dobies","email":"jason.dobies@redhat.com","username":"jdob"},"change_message_id":"4a08cbeae5eec0ebf4d4282cc335cdf0ec250afd","unresolved":false,"context_lines":[{"line_number":200,"context_line":""},{"line_number":201,"context_line":""},{"line_number":202,"context_line":"class HeatStackProcessingAttributesFailed(Invalid):"},{"line_number":203,"context_line":"    message \u003d _(\"Processing of Heat stack attributes failed\")"},{"line_number":204,"context_line":""},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"class HeatStackUpdateFailed(Invalid):"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAAWH%2F%2F774%3D","line":203,"updated":"2014-03-12 20:18:31.000000000","message":"For what it\u0027s worth, all of the other messages end with a period besides this one.","commit_id":"0d31548886d82f6cba674836cdf34deb1d9e3eab"}]}
