)]}'
{"doc/notification_samples/instance-create-end.json":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"2044e15bb2c23d1434142abaa2f8113268af20a0","unresolved":false,"context_lines":[{"line_number":7,"context_line":"            \"created_at\":\"2012-10-29T13:42:11Z\","},{"line_number":8,"context_line":"            \"deleted_at\":null,"},{"line_number":9,"context_line":"            \"display_name\":\"some-server\","},{"line_number":10,"context_line":"            \"display_description\":\"some-server\","},{"line_number":11,"context_line":"            \"fault\":null,"},{"line_number":12,"context_line":"            \"host\":\"compute\","},{"line_number":13,"context_line":"            \"host_name\":\"some-server\","}],"source_content_type":"application/json","patch_set":13,"id":"ba5201f7_d6cd665e","line":10,"range":{"start_line":10,"start_character":13,"end_line":10,"end_character":32},"updated":"2017-01-04 12:01:52.000000000","message":"We call this description in the API, but this matches display_name, so that makes sense.","commit_id":"5c796cbfba625ed4c1f14ac1ad78ad85816330c1"}],"nova/notifications/objects/instance.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"ac6feb10a7a4a72aa4184643cf1725e6fe66dd3c","unresolved":false,"context_lines":[{"line_number":85,"context_line":"        \u0027ip_addresses\u0027: fields.ListOfObjectsField(\u0027IpPayload\u0027),"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"        \u0027metadata\u0027: fields.DictOfStringsField(),"},{"line_number":88,"context_line":"        \u0027locked\u0027: fields.BooleanField(default\u003dFalse),"},{"line_number":89,"context_line":"    }"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    def __init__(self, instance, **kwargs):"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a6eadb0_1478c429","line":88,"range":{"start_line":88,"start_character":38,"end_line":88,"end_character":51},"updated":"2016-12-14 14:37:09.000000000","message":"As we always copy the value from instance.locked to this field (as defined in the SCHEMA) the definition of a default value has no real meaning.","commit_id":"b9b1a5f5021808e0a90300d97824ddcc39ea45eb"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"05c249680b418ff66f05719ded0f37cdaf1e2b14","unresolved":false,"context_lines":[{"line_number":85,"context_line":"        \u0027ip_addresses\u0027: fields.ListOfObjectsField(\u0027IpPayload\u0027),"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"        \u0027metadata\u0027: fields.DictOfStringsField(),"},{"line_number":88,"context_line":"        \u0027locked\u0027: fields.BooleanField(),"},{"line_number":89,"context_line":"    }"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    def __init__(self, instance, **kwargs):"}],"source_content_type":"text/x-python","patch_set":11,"id":"da4df55a_3c7c85b4","line":88,"updated":"2016-12-28 21:30:54.000000000","message":"locked is deprecated in the Instance object code, to be replaced by the locked_by field. However, locked is what\u0027s returned from the REST API when getting server details and it\u0027s a boolean based on whether or not locked_by is set, so since the versioned notifications are trying to mimic the REST API I suppose it makes sense to do the same here.","commit_id":"42118302b08088b28a51cf648a771696a3b36f79"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"05c249680b418ff66f05719ded0f37cdaf1e2b14","unresolved":false,"context_lines":[{"line_number":97,"context_line":"class InstanceActionPayload(InstancePayload):"},{"line_number":98,"context_line":"    # No SCHEMA as all the additional fields are calculated"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"    # Version 1.1: add locked and display_description field"},{"line_number":101,"context_line":"    VERSION \u003d \u00271.1\u0027"},{"line_number":102,"context_line":"    fields \u003d {"},{"line_number":103,"context_line":"        \u0027fault\u0027: fields.ObjectField(\u0027ExceptionPayload\u0027, nullable\u003dTrue),"}],"source_content_type":"text/x-python","patch_set":11,"id":"da4df55a_bc46b578","line":100,"range":{"start_line":100,"start_character":19,"end_line":100,"end_character":59},"updated":"2016-12-28 21:30:54.000000000","message":"This is confusing since those fields aren\u0027t added to this object directly, they are inherited from InstancePayload.\n\nSo maybe we re-phrase this as \"locked and display_description fields added to InstancePayload.\"","commit_id":"42118302b08088b28a51cf648a771696a3b36f79"},{"author":{"_account_id":20217,"name":"Anusha Unnam","email":"anusha.unnam25@gmail.com","username":"aunnam"},"change_message_id":"7a5674b5373c9e414a2bf59f470bc9993c8cb0a1","unresolved":false,"context_lines":[{"line_number":97,"context_line":"class InstanceActionPayload(InstancePayload):"},{"line_number":98,"context_line":"    # No SCHEMA as all the additional fields are calculated"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"    # Version 1.1: add locked and display_description field"},{"line_number":101,"context_line":"    VERSION \u003d \u00271.1\u0027"},{"line_number":102,"context_line":"    fields \u003d {"},{"line_number":103,"context_line":"        \u0027fault\u0027: fields.ObjectField(\u0027ExceptionPayload\u0027, nullable\u003dTrue),"}],"source_content_type":"text/x-python","patch_set":11,"id":"da4df55a_1fe5f3a6","line":100,"range":{"start_line":100,"start_character":19,"end_line":100,"end_character":59},"in_reply_to":"da4df55a_bc46b578","updated":"2016-12-28 22:49:21.000000000","message":"Agree.","commit_id":"42118302b08088b28a51cf648a771696a3b36f79"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"05c249680b418ff66f05719ded0f37cdaf1e2b14","unresolved":false,"context_lines":[{"line_number":116,"context_line":"class InstanceActionVolumeSwapPayload(InstanceActionPayload):"},{"line_number":117,"context_line":"    # No SCHEMA as all the additional fields are calculated"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"    # Version 1.1: add locked and display_description field"},{"line_number":120,"context_line":"    VERSION \u003d \u00271.1\u0027"},{"line_number":121,"context_line":"    fields \u003d {"},{"line_number":122,"context_line":"        \u0027old_volume_id\u0027: fields.UUIDField(),"}],"source_content_type":"text/x-python","patch_set":11,"id":"da4df55a_dc61b906","line":119,"range":{"start_line":119,"start_character":19,"end_line":119,"end_character":59},"updated":"2016-12-28 21:30:54.000000000","message":"Same as above.","commit_id":"42118302b08088b28a51cf648a771696a3b36f79"},{"author":{"_account_id":20217,"name":"Anusha Unnam","email":"anusha.unnam25@gmail.com","username":"aunnam"},"change_message_id":"7a5674b5373c9e414a2bf59f470bc9993c8cb0a1","unresolved":false,"context_lines":[{"line_number":116,"context_line":"class InstanceActionVolumeSwapPayload(InstanceActionPayload):"},{"line_number":117,"context_line":"    # No SCHEMA as all the additional fields are calculated"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"    # Version 1.1: add locked and display_description field"},{"line_number":120,"context_line":"    VERSION \u003d \u00271.1\u0027"},{"line_number":121,"context_line":"    fields \u003d {"},{"line_number":122,"context_line":"        \u0027old_volume_id\u0027: fields.UUIDField(),"}],"source_content_type":"text/x-python","patch_set":11,"id":"da4df55a_5ff13b6a","line":119,"range":{"start_line":119,"start_character":19,"end_line":119,"end_character":59},"in_reply_to":"da4df55a_dc61b906","updated":"2016-12-28 22:49:21.000000000","message":"Done","commit_id":"42118302b08088b28a51cf648a771696a3b36f79"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"05c249680b418ff66f05719ded0f37cdaf1e2b14","unresolved":false,"context_lines":[{"line_number":137,"context_line":"@nova_base.NovaObjectRegistry.register_notification"},{"line_number":138,"context_line":"class InstanceUpdatePayload(InstancePayload):"},{"line_number":139,"context_line":"    # Version 1.0: Initial version"},{"line_number":140,"context_line":"    # Version 1.1: add locked and display_description field"},{"line_number":141,"context_line":"    VERSION \u003d \u00271.1\u0027"},{"line_number":142,"context_line":"    fields \u003d {"},{"line_number":143,"context_line":"        \u0027state_update\u0027: fields.ObjectField(\u0027InstanceStateUpdatePayload\u0027),"}],"source_content_type":"text/x-python","patch_set":11,"id":"da4df55a_fc5cbd4c","line":140,"range":{"start_line":140,"start_character":19,"end_line":140,"end_character":59},"updated":"2016-12-28 21:30:54.000000000","message":"Same as above.","commit_id":"42118302b08088b28a51cf648a771696a3b36f79"},{"author":{"_account_id":20217,"name":"Anusha Unnam","email":"anusha.unnam25@gmail.com","username":"aunnam"},"change_message_id":"7a5674b5373c9e414a2bf59f470bc9993c8cb0a1","unresolved":false,"context_lines":[{"line_number":137,"context_line":"@nova_base.NovaObjectRegistry.register_notification"},{"line_number":138,"context_line":"class InstanceUpdatePayload(InstancePayload):"},{"line_number":139,"context_line":"    # Version 1.0: Initial version"},{"line_number":140,"context_line":"    # Version 1.1: add locked and display_description field"},{"line_number":141,"context_line":"    VERSION \u003d \u00271.1\u0027"},{"line_number":142,"context_line":"    fields \u003d {"},{"line_number":143,"context_line":"        \u0027state_update\u0027: fields.ObjectField(\u0027InstanceStateUpdatePayload\u0027),"}],"source_content_type":"text/x-python","patch_set":11,"id":"da4df55a_7ff43f5a","line":140,"range":{"start_line":140,"start_character":19,"end_line":140,"end_character":59},"in_reply_to":"da4df55a_fc5cbd4c","updated":"2016-12-28 22:49:21.000000000","message":"Done","commit_id":"42118302b08088b28a51cf648a771696a3b36f79"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"ffe5cbabeb1124e2451da5498e488b32b1708378","unresolved":false,"context_lines":[{"line_number":98,"context_line":"    # No SCHEMA as all the additional fields are calculated"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"    # Version 1.1: locked and display_description fields added to"},{"line_number":101,"context_line":"    # InstancePayload"},{"line_number":102,"context_line":"    VERSION \u003d \u00271.1\u0027"},{"line_number":103,"context_line":"    fields \u003d {"},{"line_number":104,"context_line":"        \u0027fault\u0027: fields.ObjectField(\u0027ExceptionPayload\u0027, nullable\u003dTrue),"}],"source_content_type":"text/x-python","patch_set":12,"id":"da4df55a_6d98151d","line":101,"updated":"2016-12-29 01:42:41.000000000","message":"nit: align this with \u0027locked\u0027 above.","commit_id":"43921ca49243558fbe273abeceea39cf7fe71c52"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"ffe5cbabeb1124e2451da5498e488b32b1708378","unresolved":false,"context_lines":[{"line_number":118,"context_line":"    # No SCHEMA as all the additional fields are calculated"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"    # Version 1.1: locked and display_description fields added to"},{"line_number":121,"context_line":"    # InstancePayload"},{"line_number":122,"context_line":"    VERSION \u003d \u00271.1\u0027"},{"line_number":123,"context_line":"    fields \u003d {"},{"line_number":124,"context_line":"        \u0027old_volume_id\u0027: fields.UUIDField(),"}],"source_content_type":"text/x-python","patch_set":12,"id":"da4df55a_8d9b7917","line":121,"updated":"2016-12-29 01:42:41.000000000","message":"same","commit_id":"43921ca49243558fbe273abeceea39cf7fe71c52"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"ffe5cbabeb1124e2451da5498e488b32b1708378","unresolved":false,"context_lines":[{"line_number":140,"context_line":"class InstanceUpdatePayload(InstancePayload):"},{"line_number":141,"context_line":"    # Version 1.0: Initial version"},{"line_number":142,"context_line":"    # Version 1.1: locked and display_description fields added to"},{"line_number":143,"context_line":"    # InstancePayload"},{"line_number":144,"context_line":"    VERSION \u003d \u00271.1\u0027"},{"line_number":145,"context_line":"    fields \u003d {"},{"line_number":146,"context_line":"        \u0027state_update\u0027: fields.ObjectField(\u0027InstanceStateUpdatePayload\u0027),"}],"source_content_type":"text/x-python","patch_set":12,"id":"da4df55a_cda10148","line":143,"updated":"2016-12-29 01:42:41.000000000","message":"and here","commit_id":"43921ca49243558fbe273abeceea39cf7fe71c52"}],"nova/tests/unit/notifications/objects/test_notification.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"19f129e4cdf2fee1328337258e9f01ffc23f074d","unresolved":false,"context_lines":[{"line_number":264,"context_line":"    \u0027ExceptionPayload\u0027: \u00271.0-27db46ee34cd97e39f2643ed92ad0cc5\u0027,"},{"line_number":265,"context_line":"    \u0027FlavorPayload\u0027: \u00271.0-89b17e778291bba22025b5956e072b66\u0027,"},{"line_number":266,"context_line":"    \u0027InstanceActionNotification\u0027: \u00271.0-a73147b93b520ff0061865849d3dfa56\u0027,"},{"line_number":267,"context_line":"    \u0027InstanceActionPayload\u0027: \u00271.0-8d12efc3251c606b61b3d479a9da51be\u0027,"},{"line_number":268,"context_line":"    \u0027InstanceActionVolumeSwapNotification\u0027:"},{"line_number":269,"context_line":"    \u00271.0-a73147b93b520ff0061865849d3dfa56\u0027,"},{"line_number":270,"context_line":"    \u0027InstanceActionVolumeSwapPayload\u0027: \u00271.0-fbb6618f652a7f88742495ea3185582c\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"1a6eadb0_ba5b77f5","line":267,"updated":"2016-12-20 19:30:25.000000000","message":"We have to bump the version to 1.1 as content and the hash of the object changed because the content of the parent object changed.","commit_id":"777d9c7d18f8bb89a35551227db048e43d85f40e"},{"author":{"_account_id":20217,"name":"Anusha Unnam","email":"anusha.unnam25@gmail.com","username":"aunnam"},"change_message_id":"fc1f298c3516eb80f6bda5bf2cd8392664b13243","unresolved":false,"context_lines":[{"line_number":264,"context_line":"    \u0027ExceptionPayload\u0027: \u00271.0-27db46ee34cd97e39f2643ed92ad0cc5\u0027,"},{"line_number":265,"context_line":"    \u0027FlavorPayload\u0027: \u00271.0-89b17e778291bba22025b5956e072b66\u0027,"},{"line_number":266,"context_line":"    \u0027InstanceActionNotification\u0027: \u00271.0-a73147b93b520ff0061865849d3dfa56\u0027,"},{"line_number":267,"context_line":"    \u0027InstanceActionPayload\u0027: \u00271.0-8d12efc3251c606b61b3d479a9da51be\u0027,"},{"line_number":268,"context_line":"    \u0027InstanceActionVolumeSwapNotification\u0027:"},{"line_number":269,"context_line":"    \u00271.0-a73147b93b520ff0061865849d3dfa56\u0027,"},{"line_number":270,"context_line":"    \u0027InstanceActionVolumeSwapPayload\u0027: \u00271.0-fbb6618f652a7f88742495ea3185582c\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"fa48f94a_521ad418","line":267,"in_reply_to":"1a6eadb0_ba5b77f5","updated":"2016-12-21 17:15:30.000000000","message":"Yes, you are right. I thought this in wrong direction, now I understood.\nWill update it accordingly.\nThanks.","commit_id":"777d9c7d18f8bb89a35551227db048e43d85f40e"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"19f129e4cdf2fee1328337258e9f01ffc23f074d","unresolved":false,"context_lines":[{"line_number":267,"context_line":"    \u0027InstanceActionPayload\u0027: \u00271.0-8d12efc3251c606b61b3d479a9da51be\u0027,"},{"line_number":268,"context_line":"    \u0027InstanceActionVolumeSwapNotification\u0027:"},{"line_number":269,"context_line":"    \u00271.0-a73147b93b520ff0061865849d3dfa56\u0027,"},{"line_number":270,"context_line":"    \u0027InstanceActionVolumeSwapPayload\u0027: \u00271.0-fbb6618f652a7f88742495ea3185582c\u0027,"},{"line_number":271,"context_line":"    \u0027InstancePayload\u0027: \u00271.1-5b9e3a4bb805d9fed20063bc237e4913\u0027,"},{"line_number":272,"context_line":"    \u0027InstanceStateUpdatePayload\u0027: \u00271.0-07e111c0fa0f6db0f79b0726d593e3da\u0027,"},{"line_number":273,"context_line":"    \u0027InstanceUpdateNotification\u0027: \u00271.0-a73147b93b520ff0061865849d3dfa56\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"1a6eadb0_3a684787","line":270,"updated":"2016-12-20 19:30:25.000000000","message":"ditto","commit_id":"777d9c7d18f8bb89a35551227db048e43d85f40e"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"19f129e4cdf2fee1328337258e9f01ffc23f074d","unresolved":false,"context_lines":[{"line_number":271,"context_line":"    \u0027InstancePayload\u0027: \u00271.1-5b9e3a4bb805d9fed20063bc237e4913\u0027,"},{"line_number":272,"context_line":"    \u0027InstanceStateUpdatePayload\u0027: \u00271.0-07e111c0fa0f6db0f79b0726d593e3da\u0027,"},{"line_number":273,"context_line":"    \u0027InstanceUpdateNotification\u0027: \u00271.0-a73147b93b520ff0061865849d3dfa56\u0027,"},{"line_number":274,"context_line":"    \u0027InstanceUpdatePayload\u0027: \u00271.0-12955de638c3a4bcd734601711214d39\u0027,"},{"line_number":275,"context_line":"    \u0027IpPayload\u0027: \u00271.0-8ecf567a99e516d4af094439a7632d34\u0027,"},{"line_number":276,"context_line":"    \u0027NotificationPublisher\u0027: \u00271.0-bbbc1402fb0e443a3eb227cc52b61545\u0027,"},{"line_number":277,"context_line":"    \u0027ServiceStatusNotification\u0027: \u00271.0-a73147b93b520ff0061865849d3dfa56\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"1a6eadb0_5a0503c0","line":274,"updated":"2016-12-20 19:30:25.000000000","message":"ditto","commit_id":"777d9c7d18f8bb89a35551227db048e43d85f40e"}]}
