)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"dafe0d7ee1f220094c4d7c03b0807e2461dcc3ae","unresolved":false,"context_lines":[{"line_number":10,"context_line":"a function instead of a value. To retain compatibility with existing code,"},{"line_number":11,"context_line":"this does not attempt to make handling of default\u003d magical to determine"},{"line_number":12,"context_line":"if the default is callable. Because classes are callable, this also allows"},{"line_number":13,"context_line":"for defaulting a value to a class, including another object."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: Ie2c20c73cb90ac24877c44ae8c9bb60fa9b5085b"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3fa7e38b_e6150c96","line":13,"updated":"2020-01-10 12:23:56.000000000","message":"Another benefit of default_fn is that the default value will  be generated when the defaulted field does not get a value through __init__() so if the default value happen to be an expensive one then it can be created at the last possible time.","commit_id":"2c22318911e5aee4134846d4db36d32427ab8671"}],"oslo_versionedobjects/fields.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"dafe0d7ee1f220094c4d7c03b0807e2461dcc3ae","unresolved":false,"context_lines":[{"line_number":180,"context_line":"            # Default behavior is: run the supplied function"},{"line_number":181,"context_line":"            self._default_fn \u003d default_fn"},{"line_number":182,"context_line":"        elif default is UnspecifiedDefault:"},{"line_number":183,"context_line":"            # Default behavior is return the sentinal class"},{"line_number":184,"context_line":"            self._default_fn \u003d lambda: default"},{"line_number":185,"context_line":"        else:"},{"line_number":186,"context_line":"            # Default behavior is a static value. Copy it each time"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_815d22ed","line":183,"range":{"start_line":183,"start_character":45,"end_line":183,"end_character":53},"updated":"2020-01-10 12:23:56.000000000","message":"sentinel","commit_id":"2c22318911e5aee4134846d4db36d32427ab8671"}]}
