)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11803,"name":"Ryan Rossiter","email":"rlrossit@us.ibm.com","username":"rlrossiter"},"change_message_id":"7b770c4b7d083b71ac3cb8cab363587e2aff1605","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Dan Smith \u003cdansmith@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-07-23 08:28:41 -0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Implement multi-version object backport method"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: I071c20b65d12df893c367d417ab6be09626a9955"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"3a50d1a3_ae1e955c","line":7,"updated":"2015-07-23 16:39:10.000000000","message":"Looks like it isn\u0027t a WIP anymore, so now you have no excuse for an empty summary :)","commit_id":"aa700de0e2a445915fb5630e072bda24be948980"}],"oslo_versionedobjects/base.py":[{"author":{"_account_id":11803,"name":"Ryan Rossiter","email":"rlrossit@us.ibm.com","username":"rlrossiter"},"change_message_id":"0fa2f8a14d0e23ff3549b9ad928b925dd304c027","unresolved":false,"context_lines":[{"line_number":804,"context_line":"        try:"},{"line_number":805,"context_line":"            return indirection_api.object_backport_versions("},{"line_number":806,"context_line":"                context, objprim, obj_versions)"},{"line_number":807,"context_line":"        except NotImplementedError:"},{"line_number":808,"context_line":"            # FIXME(danms): Maybe start to warn here about deprecation?"},{"line_number":809,"context_line":"            return indirection_api.object_backport(context, objprim,"},{"line_number":810,"context_line":"                                                   objclass.VERSION)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_3d1992d7","line":807,"updated":"2015-07-22 20:22:16.000000000","message":"So, while you\u0027re adding object_backport_versions() to VersionedObjectIndirectionAPI, the nova conductor API doesn\u0027t inherit from VersionedObjectIndirectionAPI, so conductor will blow up when it hits this point.","commit_id":"e30796842c606b1d9bf0f627b8260b72ede32677"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"5fddef6ff0d9e0c7ef4cc41ba778a555bf36aafd","unresolved":false,"context_lines":[{"line_number":804,"context_line":"        try:"},{"line_number":805,"context_line":"            return indirection_api.object_backport_versions("},{"line_number":806,"context_line":"                context, objprim, obj_versions)"},{"line_number":807,"context_line":"        except NotImplementedError:"},{"line_number":808,"context_line":"            # FIXME(danms): Maybe start to warn here about deprecation?"},{"line_number":809,"context_line":"            return indirection_api.object_backport(context, objprim,"},{"line_number":810,"context_line":"                                                   objclass.VERSION)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_3de63d44","line":807,"in_reply_to":"3a50d1a3_3d1992d7","updated":"2015-07-23 15:09:07.000000000","message":"Yep, but as you say, that\u0027s Nova\u0027s fault at the moment. So, we need to land a patch to implement this method to fail as not implemented first. But, we just need to do that before we release o.vo with this. I don\u0027t want to merge the thing into nova until we land this and declare that this is the interface we settled on.","commit_id":"e30796842c606b1d9bf0f627b8260b72ede32677"},{"author":{"_account_id":11803,"name":"Ryan Rossiter","email":"rlrossit@us.ibm.com","username":"rlrossiter"},"change_message_id":"7b770c4b7d083b71ac3cb8cab363587e2aff1605","unresolved":false,"context_lines":[{"line_number":805,"context_line":"            return indirection_api.object_backport_versions("},{"line_number":806,"context_line":"                context, objprim, obj_versions)"},{"line_number":807,"context_line":"        except NotImplementedError:"},{"line_number":808,"context_line":"            # FIXME(danms): Maybe start to warn here about deprecation?"},{"line_number":809,"context_line":"            return indirection_api.object_backport(context, objprim,"},{"line_number":810,"context_line":"                                                   objclass.VERSION)"},{"line_number":811,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3a50d1a3_d4ffee63","line":808,"updated":"2015-07-23 16:39:10.000000000","message":"I think there should be a warning for deprecation here. As we\u0027ve found out, doing backports this old way can go wrong in a lot of inexplicable ways, so people should get off the old way of doing things. Seeing as the indirection api is implemented outside of o.vo, we need to make sure the API users know that there is a better way out there.\n\nThat being said, whether you want to put the warning in this patch is up to you I guess. Leaving it for cleanup later would be good for someone to come pick up an easy patch some other time :)","commit_id":"aa700de0e2a445915fb5630e072bda24be948980"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"5c45ff235dc099f9012d319e898ac105a07883cd","unresolved":false,"context_lines":[{"line_number":805,"context_line":"            return indirection_api.object_backport_versions("},{"line_number":806,"context_line":"                context, objprim, obj_versions)"},{"line_number":807,"context_line":"        except NotImplementedError:"},{"line_number":808,"context_line":"            # FIXME(danms): Maybe start to warn here about deprecation?"},{"line_number":809,"context_line":"            return indirection_api.object_backport(context, objprim,"},{"line_number":810,"context_line":"                                                   objclass.VERSION)"},{"line_number":811,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3a50d1a3_e3a2614b","line":808,"in_reply_to":"3a50d1a3_d4ffee63","updated":"2015-07-23 23:19:23.000000000","message":"Yeah, but I don\u0027t want to warn on every call I think, so I left it as a fixme to figure out what the current python warnings library usage preference is (I think there is an oslo thing now).","commit_id":"aa700de0e2a445915fb5630e072bda24be948980"}],"oslo_versionedobjects/tests/test_objects.py":[{"author":{"_account_id":11803,"name":"Ryan Rossiter","email":"rlrossit@us.ibm.com","username":"rlrossiter"},"change_message_id":"0fa2f8a14d0e23ff3549b9ad928b925dd304c027","unresolved":false,"context_lines":[{"line_number":1545,"context_line":"                    self.context, prim, \u00271.1\u0027)"},{"line_number":1546,"context_line":""},{"line_number":1547,"context_line":"    def test_nested_backport_old_method(self):"},{"line_number":1548,"context_line":"        self.test_nested_backport(old\u003dTrue)"},{"line_number":1549,"context_line":""},{"line_number":1550,"context_line":"    def test_object_serialization(self):"},{"line_number":1551,"context_line":"        ser \u003d base.VersionedObjectSerializer()"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_9db22693","line":1548,"updated":"2015-07-22 20:22:16.000000000","message":"So, totally an opinion here, but I don\u0027t think calling another test from within a test is very straightforward. I think the code above should be moved to a helper method, and then you can do test_nested_backport() calls the helper with old\u003dFalse, and then test_nested_backport_old_method() will call the helper with old\u003dTrue.","commit_id":"e30796842c606b1d9bf0f627b8260b72ede32677"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"5fddef6ff0d9e0c7ef4cc41ba778a555bf36aafd","unresolved":false,"context_lines":[{"line_number":1545,"context_line":"                    self.context, prim, \u00271.1\u0027)"},{"line_number":1546,"context_line":""},{"line_number":1547,"context_line":"    def test_nested_backport_old_method(self):"},{"line_number":1548,"context_line":"        self.test_nested_backport(old\u003dTrue)"},{"line_number":1549,"context_line":""},{"line_number":1550,"context_line":"    def test_object_serialization(self):"},{"line_number":1551,"context_line":"        ser \u003d base.VersionedObjectSerializer()"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_1d0b41d7","line":1548,"in_reply_to":"3a50d1a3_9db22693","updated":"2015-07-23 15:09:07.000000000","message":"Well, this is not that uncommon of a thing but... FINE ;)","commit_id":"e30796842c606b1d9bf0f627b8260b72ede32677"},{"author":{"_account_id":11803,"name":"Ryan Rossiter","email":"rlrossit@us.ibm.com","username":"rlrossiter"},"change_message_id":"7b770c4b7d083b71ac3cb8cab363587e2aff1605","unresolved":false,"context_lines":[{"line_number":1506,"context_line":"        # .0 of the object."},{"line_number":1507,"context_line":"        self.assertEqual(\u00271.6\u0027, obj.VERSION)"},{"line_number":1508,"context_line":""},{"line_number":1509,"context_line":"    def _test_nested_backport(self, old):"},{"line_number":1510,"context_line":"        @base.VersionedObjectRegistry.register"},{"line_number":1511,"context_line":"        class Parent(base.VersionedObject):"},{"line_number":1512,"context_line":"            VERSION \u003d \u00271.0\u0027"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a50d1a3_a3230ebc","line":1509,"updated":"2015-07-23 16:39:10.000000000","message":"I\u0027m all warm and fuzzy inside now :)","commit_id":"aa700de0e2a445915fb5630e072bda24be948980"}]}
