)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7872,"name":"Marc Koderer","email":"marc@koderer.com","username":"mkoderer"},"change_message_id":"a5c020abc62b29adbd6880a010c9bb9df24570db","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     melissaml \u003cma.lei@99cloud.net\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-11-14 14:29:05 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Replaces uuid.uuid4 with uuidutils.generate_uuid()"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Openstack common has a wrapper for generating uuids."},{"line_number":10,"context_line":"We should only use that function when generating uuids for consistency."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"9a629dbe_0a9e3e07","line":7,"range":{"start_line":7,"start_character":9,"end_line":7,"end_character":19},"updated":"2016-11-14 08:13:39.000000000","message":"Just to highlight (since it confused me during review):\nThis patch will not change uuid.uuid1 calls. So we will still have imports of uuid in some files.","commit_id":"40cd2043df8f89d9980caaeecb3f0fe01dfd9705"}],"manila/tests/share/drivers/netapp/dataontap/cluster_mode/test_lib_base.py":[{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"ca6e6c883c18e01b1ab80fe406dc9ddeb1a35d3f","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"@ddt.ddt"},{"line_number":54,"context_line":"class NetAppFileStorageLibraryTestCase(test.TestCase):"},{"line_number":55,"context_line":"    def setUp(self):"},{"line_number":56,"context_line":"        super(NetAppFileStorageLibraryTestCase, self).setUp()"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"        self.mock_object(na_utils, \u0027validate_driver_instantiation\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a629dbe_ffb55cec","line":55,"range":{"start_line":54,"start_character":0,"end_line":55,"end_character":20},"updated":"2016-11-12 12:38:46.000000000","message":"removing the blank line should not be part of this change set.","commit_id":"47207f76cad941032f46440004ff53038d1aacdf"}],"manila/tests/share/test_api.py":[{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"72b1e58588df7c46f794292f80f133038a90fdee","unresolved":false,"context_lines":[{"line_number":1204,"context_line":"    @ddt.data(constants.STATUS_MANAGING, constants.STATUS_ERROR_DELETING,"},{"line_number":1205,"context_line":"              constants.STATUS_CREATING, constants.STATUS_AVAILABLE)"},{"line_number":1206,"context_line":"    def test_delete_snapshot_force_delete(self, status):"},{"line_number":1207,"context_line":"        share \u003d fakes.fake_share(id\u003duuidutils.generate_uuid(), "},{"line_number":1208,"context_line":"                                 has_replicas\u003dFalse)"},{"line_number":1209,"context_line":"        snapshot \u003d fakes.fake_snapshot(aggregate_status\u003dstatus, share\u003dshare)"},{"line_number":1210,"context_line":"        snapshot_instance \u003d fakes.fake_snapshot_instance("}],"source_content_type":"text/x-python","patch_set":3,"id":"9a629dbe_1f0f7037","line":1207,"range":{"start_line":1207,"start_character":62,"end_line":1207,"end_character":63},"updated":"2016-11-12 13:56:49.000000000","message":"pep8 is compalining about this trailing whitespace.","commit_id":"b06c46ce9c630f1740bcb569482e7a961082ad5c"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"a8b07ee05148a2bc187892741fc6a4990b9b83e3","unresolved":false,"context_lines":[{"line_number":1873,"context_line":""},{"line_number":1874,"context_line":"    def test_share_metadata_get(self):"},{"line_number":1875,"context_line":"        metadata \u003d {\u0027a\u0027: \u0027b\u0027, \u0027c\u0027: \u0027d\u0027}"},{"line_number":1876,"context_line":"        share_id \u003d str(uuidutils.generate_uuid())"},{"line_number":1877,"context_line":"        db_api.share_create(self.context,"},{"line_number":1878,"context_line":"                            {\u0027id\u0027: share_id, \u0027metadata\u0027: metadata})"},{"line_number":1879,"context_line":"        self.assertEqual(metadata,"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a629dbe_c3ec3995","line":1876,"range":{"start_line":1876,"start_character":19,"end_line":1876,"end_character":22},"updated":"2016-11-14 03:48:54.000000000","message":"no need to convert to str again, cause the convert is done in generate_uuid.","commit_id":"59088059903af06b3f610f26bc9e189ca8a8f3a4"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"a8b07ee05148a2bc187892741fc6a4990b9b83e3","unresolved":false,"context_lines":[{"line_number":1883,"context_line":"        metadata1 \u003d {\u0027a\u0027: \u00271\u0027, \u0027c\u0027: \u00272\u0027}"},{"line_number":1884,"context_line":"        metadata2 \u003d {\u0027a\u0027: \u00273\u0027, \u0027d\u0027: \u00275\u0027}"},{"line_number":1885,"context_line":"        should_be \u003d {\u0027a\u0027: \u00273\u0027, \u0027c\u0027: \u00272\u0027, \u0027d\u0027: \u00275\u0027}"},{"line_number":1886,"context_line":"        share_id \u003d str(uuidutils.generate_uuid())"},{"line_number":1887,"context_line":"        db_api.share_create(self.context,"},{"line_number":1888,"context_line":"                            {\u0027id\u0027: share_id, \u0027metadata\u0027: metadata1})"},{"line_number":1889,"context_line":"        db_api.share_metadata_update(self.context, share_id, metadata2, False)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a629dbe_e3f13d6c","line":1886,"range":{"start_line":1886,"start_character":19,"end_line":1886,"end_character":22},"updated":"2016-11-14 03:48:54.000000000","message":"ditto","commit_id":"59088059903af06b3f610f26bc9e189ca8a8f3a4"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"a8b07ee05148a2bc187892741fc6a4990b9b83e3","unresolved":false,"context_lines":[{"line_number":1894,"context_line":"        metadata1 \u003d {\u0027a\u0027: \u00271\u0027, \u0027c\u0027: \u00272\u0027}"},{"line_number":1895,"context_line":"        metadata2 \u003d {\u0027a\u0027: \u00273\u0027, \u0027d\u0027: \u00274\u0027}"},{"line_number":1896,"context_line":"        should_be \u003d metadata2"},{"line_number":1897,"context_line":"        share_id \u003d str(uuidutils.generate_uuid())"},{"line_number":1898,"context_line":"        db_api.share_create(self.context,"},{"line_number":1899,"context_line":"                            {\u0027id\u0027: share_id, \u0027metadata\u0027: metadata1})"},{"line_number":1900,"context_line":"        db_api.share_metadata_update(self.context, share_id, metadata2, True)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a629dbe_03e711ad","line":1897,"range":{"start_line":1897,"start_character":19,"end_line":1897,"end_character":22},"updated":"2016-11-14 03:48:54.000000000","message":"ditto","commit_id":"59088059903af06b3f610f26bc9e189ca8a8f3a4"}]}
