)]}'
{"contrib/rackspace/rackspace/resources/cloud_loadbalancer.py":[{"author":{"_account_id":7404,"name":"Ethan Lynn","email":"xuanlangjian@gmail.com","username":"GaryLynn"},"change_message_id":"3f6597bee1f62250cd9e02603a585805c184be8a","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"def lb_immutable(exc):"},{"line_number":45,"context_line":"    if \u0027immutable\u0027 in str(exc):"},{"line_number":46,"context_line":"        return True"},{"line_number":47,"context_line":"    return False"},{"line_number":48,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"9aa7fdbe_7c1fa008","line":45,"updated":"2014-10-23 15:54:56.000000000","message":"Is it better to use six.text_type?","commit_id":"3a2c6c9b2f74cfcf252f477f359a139adf320ef3"},{"author":{"_account_id":7253,"name":"Jason Dunsmore","email":"jasondunsmore@gmail.com","username":"jbd"},"change_message_id":"ca91ea6aa9e6abf336581a10cd41fcf94e43dd64","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"def lb_immutable(exc):"},{"line_number":45,"context_line":"    if \u0027immutable\u0027 in str(exc):"},{"line_number":46,"context_line":"        return True"},{"line_number":47,"context_line":"    return False"},{"line_number":48,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"9aa7fdbe_d24f9569","line":45,"in_reply_to":"9aa7fdbe_7c1fa008","updated":"2014-10-23 16:06:52.000000000","message":"Done","commit_id":"3a2c6c9b2f74cfcf252f477f359a139adf320ef3"},{"author":{"_account_id":7404,"name":"Ethan Lynn","email":"xuanlangjian@gmail.com","username":"GaryLynn"},"change_message_id":"3f6597bee1f62250cd9e02603a585805c184be8a","unresolved":false,"context_lines":[{"line_number":86,"context_line":"        \u0027contentCaching\u0027, \u0027healthMonitor\u0027, \u0027sslTermination\u0027, \u0027errorPage\u0027,"},{"line_number":87,"context_line":"    )"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    LB_UPDATE_PROPS \u003d (NAME, ALGORITHM, PROTOCOL, HALF_CLOSED, PORT, TIMEOUT)"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    _NODE_KEYS \u003d ("},{"line_number":92,"context_line":"        NODE_ADDRESSES, NODE_PORT, NODE_CONDITION, NODE_TYPE,"}],"source_content_type":"text/x-python","patch_set":3,"id":"9aa7fdbe_37e1b3fe","line":89,"updated":"2014-10-23 15:54:56.000000000","message":"How about to get updatable properties like https://github.com/openstack/heat/blob/master/heat/engine/resources/neutron/neutron.py#L96","commit_id":"3a2c6c9b2f74cfcf252f477f359a139adf320ef3"},{"author":{"_account_id":7253,"name":"Jason Dunsmore","email":"jasondunsmore@gmail.com","username":"jbd"},"change_message_id":"ca91ea6aa9e6abf336581a10cd41fcf94e43dd64","unresolved":false,"context_lines":[{"line_number":86,"context_line":"        \u0027contentCaching\u0027, \u0027healthMonitor\u0027, \u0027sslTermination\u0027, \u0027errorPage\u0027,"},{"line_number":87,"context_line":"    )"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    LB_UPDATE_PROPS \u003d (NAME, ALGORITHM, PROTOCOL, HALF_CLOSED, PORT, TIMEOUT)"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    _NODE_KEYS \u003d ("},{"line_number":92,"context_line":"        NODE_ADDRESSES, NODE_PORT, NODE_CONDITION, NODE_TYPE,"}],"source_content_type":"text/x-python","patch_set":3,"id":"9aa7fdbe_32a9c1df","line":89,"in_reply_to":"9aa7fdbe_37e1b3fe","updated":"2014-10-23 16:06:52.000000000","message":"The properties that can be updated with loadbalancer.update() are a subset of all update_allowed properties.","commit_id":"3a2c6c9b2f74cfcf252f477f359a139adf320ef3"}]}
