)]}'
{"id":"openstack%2Fironic-python-agent~87147","triplet_id":"openstack%2Fironic-python-agent~master~I1b33bb7519588cdcb79c6f4d2b10c1e5e8c0cca3","project":"openstack/ironic-python-agent","branch":"master","topic":"sync_command_decorator","hashtags":[],"change_id":"I1b33bb7519588cdcb79c6f4d2b10c1e5e8c0cca3","subject":"Decorated commands no longer take command_name","status":"MERGED","created":"2014-04-14 00:50:45.000000000","updated":"2014-04-15 17:51:39.000000000","submitted":"2014-04-15 17:51:39.000000000","submitter":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"total_comment_count":4,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"bd3ad4ba0ca1acb416bc30fd7ea7d332605419e6","_number":87147,"virtual_id_number":87147,"owner":{"_account_id":10626,"name":"Russell Haering","email":"russellhaering@gmail.com","username":"russell_h"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"all":[{"value":0,"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},{"value":0,"_account_id":10626,"name":"Russell Haering","email":"russellhaering@gmail.com","username":"russell_h"},{"value":0,"_account_id":8003,"name":"Aleksandr Gordeev","email":"agordeev@mirantis.com","username":"agordeev"},{"value":2,"date":"2014-04-15 17:51:39.000000000","_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},{"value":0,"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},{"value":0,"_account_id":10380,"name":"Josh Gachnang","email":"josh@pcsforeducation.com","username":"JoshNang"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"all":[{"value":0,"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},{"value":0,"_account_id":10626,"name":"Russell Haering","email":"russellhaering@gmail.com","username":"russell_h"},{"value":0,"_account_id":8003,"name":"Aleksandr Gordeev","email":"agordeev@mirantis.com","username":"agordeev"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":2,"date":"2014-04-15 17:50:12.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},{"value":0,"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},{"value":2,"date":"2014-04-15 17:30:50.000000000","_account_id":10380,"name":"Josh Gachnang","email":"josh@pcsforeducation.com","username":"JoshNang"}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"all":[{"value":0,"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},{"value":0,"_account_id":10626,"name":"Russell Haering","email":"russellhaering@gmail.com","username":"russell_h"},{"value":0,"_account_id":8003,"name":"Aleksandr Gordeev","email":"agordeev@mirantis.com","username":"agordeev"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":1,"date":"2014-04-15 17:50:12.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},{"value":0,"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},{"value":0,"date":"2014-04-15 17:30:50.000000000","_account_id":10380,"name":"Josh Gachnang","email":"josh@pcsforeducation.com","username":"JoshNang"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Backport-Candidate":{"all":[{"value":0,"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},{"value":0,"_account_id":10626,"name":"Russell Haering","email":"russellhaering@gmail.com","username":"russell_h"},{"value":0,"_account_id":8003,"name":"Aleksandr Gordeev","email":"agordeev@mirantis.com","username":"agordeev"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},{"value":0,"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},{"value":0,"_account_id":10380,"name":"Josh Gachnang","email":"josh@pcsforeducation.com","username":"JoshNang"}],"values":{"-1":"Do Not Backport"," 0":"Backport Review Needed","+1":"Should Backport"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":3,"name":"Jenkins","username":"jenkins"},{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},{"_account_id":8003,"name":"Aleksandr Gordeev","email":"agordeev@mirantis.com","username":"agordeev"},{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},{"_account_id":10380,"name":"Josh Gachnang","email":"josh@pcsforeducation.com","username":"JoshNang"},{"_account_id":10626,"name":"Russell Haering","email":"russellhaering@gmail.com","username":"russell_h"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2014-04-14 12:08:50.000000000","updated_by":{"_account_id":8003,"name":"Aleksandr Gordeev","email":"agordeev@mirantis.com","username":"agordeev"},"reviewer":{"_account_id":8003,"name":"Aleksandr Gordeev","email":"agordeev@mirantis.com","username":"agordeev"},"state":"REVIEWER"},{"updated":"2014-04-14 14:10:41.000000000","updated_by":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"reviewer":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"state":"REVIEWER"},{"updated":"2014-04-15 17:28:24.000000000","updated_by":{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},"reviewer":{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},"state":"REVIEWER"},{"updated":"2014-04-15 17:30:50.000000000","updated_by":{"_account_id":10380,"name":"Josh Gachnang","email":"josh@pcsforeducation.com","username":"JoshNang"},"reviewer":{"_account_id":10380,"name":"Josh Gachnang","email":"josh@pcsforeducation.com","username":"JoshNang"},"state":"REVIEWER"},{"updated":"2014-04-15 17:50:12.000000000","updated_by":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"reviewer":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"state":"REVIEWER"},{"updated":"2014-04-15 17:51:39.000000000","updated_by":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"reviewer":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"state":"REVIEWER"}],"messages":[{"id":"4769dc1f4b0949be50109c177ff52c91da8936be","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2014-04-14 00:50:45.000000000","message":"Patch Set 1:\n\nStarting check jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":1},{"id":"104601d6d0a820eb09de3d3c448af9f27e997c81","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2014-04-14 00:51:42.000000000","message":"Patch Set 1: Works for me\n\nBuild succeeded.\n\n- gate-ironic-python-agent-pep8 http://logs.openstack.org/47/87147/1/check/gate-ironic-python-agent-pep8/ae1f4d9 : SUCCESS in 47s\n- gate-ironic-python-agent-python26 http://logs.openstack.org/47/87147/1/check/gate-ironic-python-agent-python26/b7fbb71 : SUCCESS in 55s\n- gate-ironic-python-agent-python27 http://logs.openstack.org/47/87147/1/check/gate-ironic-python-agent-python27/be5387d : SUCCESS in 34s\n","accounts_in_message":[],"_revision_number":1},{"id":"f991aaded7db0d9112fc938291b3f2461a305427","author":{"_account_id":8003,"name":"Aleksandr Gordeev","email":"agordeev@mirantis.com","username":"agordeev"},"date":"2014-04-14 12:08:50.000000000","message":"Patch Set 1: Looks good to me, but someone else must approve\n\n","accounts_in_message":[],"_revision_number":1},{"id":"7d0d6ca7dba1f5ea2c406627380b4b8f95e93fd8","author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"date":"2014-04-14 14:10:41.000000000","message":"Patch Set 1: Looks good to me (core reviewer)\n\n","accounts_in_message":[],"_revision_number":1},{"id":"1468744cdef7e773bc2d5a6dd4240b87864524df","author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"date":"2014-04-14 18:11:23.000000000","message":"Patch Set 1: Looks good to me (core reviewer); Approved\n\n","accounts_in_message":[],"_revision_number":1},{"id":"e68e45ae7bf2020a5898cb7a0a5474737010346f","author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"date":"2014-04-14 18:11:48.000000000","message":"Patch Set 1: No score\n\n","accounts_in_message":[],"_revision_number":1},{"id":"d22dd7ffe2cc7c132b23d9d0bcaaffe312463f35","author":{"_account_id":10380,"name":"Josh Gachnang","email":"josh@pcsforeducation.com","username":"JoshNang"},"date":"2014-04-14 18:11:50.000000000","message":"Patch Set 1: Looks good to me (core reviewer); Approved\n\n","accounts_in_message":[],"_revision_number":1},{"id":"cd4a13fc9db63dd497e51346d0fcf95ec5124794","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2014-04-14 18:15:35.000000000","message":"Patch Set 1: No score\n\nStarting gate jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":1},{"id":"531c080c21256c6575d24bc9af22fc3dce55b57c","author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"date":"2014-04-14 18:15:45.000000000","message":"Patch Set 1: Approved\n\n","accounts_in_message":[],"_revision_number":1},{"id":"3514f6923374621f0995bf14b905e3bbd2272a87","author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"date":"2014-04-15 00:39:18.000000000","message":"Patch Set 1: I would prefer that you didn\u0027t merge this; No score\n\nI think this needs to be rebased since the one it depended on needed a rebase, too.","accounts_in_message":[],"_revision_number":1},{"id":"c94d67fc1e8b71e96e06215cedd03bdd1e2bcd92","author":{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},"date":"2014-04-15 13:32:19.000000000","message":"Patch Set 1: I would prefer that you didn\u0027t merge this\n\n(1 inline comment)\n\n1) Async/sync decorators change extension method signatures which is really bad.\n2) I\u0027d prefer to avoid using command_name argument at all, even in extension execute method. I mean this line self.command_map[command_name](command_name, **kwargs)) looks a bit cluttering.\n3) Why can\u0027t we use func.__name__ attribute to get it\u0027s name?","accounts_in_message":[],"_revision_number":1},{"id":"3a0510f93a45b9cc62984a71bb02a69169986857","author":{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},"date":"2014-04-15 13:34:18.000000000","message":"Patch Set 1: (1 inline comment)\n\n","accounts_in_message":[],"_revision_number":1},{"id":"e91e610e144bf635f6766c564fc458279b577abc","author":{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},"date":"2014-04-15 13:40:56.000000000","message":"Patch Set 1:\n\nPlease add the following line into commit message\nCloses-Bug: #1308021","accounts_in_message":[],"_revision_number":1},{"id":"116093c58d2319c8fe92684f835989bec8ad8cd2","author":{"_account_id":10626,"name":"Russell Haering","email":"russellhaering@gmail.com","username":"russell_h"},"date":"2014-04-15 15:18:14.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"1d469ad926a1f512499e249511dc6bccbf1413df","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2014-04-15 15:18:16.000000000","message":"Patch Set 2:\n\nStarting check jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":2},{"id":"5eb654a58b86232515613b8101b37f8644c0b8c4","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2014-04-15 15:38:15.000000000","message":"Patch Set 2: Works for me\n\nBuild succeeded.\n\n- gate-ironic-python-agent-pep8 http://logs.openstack.org/47/87147/2/check/gate-ironic-python-agent-pep8/94cc86f : SUCCESS in 1m 07s\n- gate-ironic-python-agent-python26 http://logs.openstack.org/47/87147/2/check/gate-ironic-python-agent-python26/bd936ad : SUCCESS in 1m 19s\n- gate-ironic-python-agent-python27 http://logs.openstack.org/47/87147/2/check/gate-ironic-python-agent-python27/6398387 : SUCCESS in 34s\n","accounts_in_message":[],"_revision_number":2},{"id":"3fb744c0a9bd29120ac9b8a6dd09c966f1c2f5bb","author":{"_account_id":10380,"name":"Josh Gachnang","email":"josh@pcsforeducation.com","username":"JoshNang"},"date":"2014-04-15 16:37:46.000000000","message":"Patch Set 2: Looks good to me (core reviewer)\n\n","accounts_in_message":[],"_revision_number":2},{"id":"b9c9611ed0942c24d4aa7a4b2fe5674bd4dae202","author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"date":"2014-04-15 16:40:49.000000000","message":"Patch Set 1: (2 inline comments)\n\n","accounts_in_message":[],"_revision_number":1},{"id":"fe8122efdd5c09ef91bb99ac803f4e73c2cb36ad","author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"date":"2014-04-15 16:41:12.000000000","message":"Patch Set 2: Looks good to me (core reviewer)\n\nI will wait to approve until Vladmir gets a chance to respond.","accounts_in_message":[],"_revision_number":2},{"id":"c454a072bc7050d05a85cf0fec7a14b749fb5be5","author":{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},"date":"2014-04-15 17:28:24.000000000","message":"Patch Set 2: Looks good to me, but someone else must approve\n\nEverything is ok, except some stuff which is unrelated to this commit. Will create separate bug. And please add a link to bug  https://bugs.launchpad.net/ironic/+bug/1308021 to commit message \u0027Closes-Bug: #1308021\u0027.","accounts_in_message":[],"_revision_number":2},{"id":"63471c0ebea32d50583c837ddb6d53dbb91e7dc9","author":{"_account_id":10626,"name":"Russell Haering","email":"russellhaering@gmail.com","username":"russell_h"},"date":"2014-04-15 17:30:19.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"afcb0b796c0c4c558b571c661e0be9c979a697d1","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2014-04-15 17:30:20.000000000","message":"Patch Set 3:\n\nStarting check jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":3},{"id":"992f7160de577c1bc8dc44973092b67599a5ee70","author":{"_account_id":5494,"name":"Trivial Rebase","email":"trivial-rebase@review.openstack.org","username":"trivial-rebase"},"date":"2014-04-15 17:30:28.000000000","message":"Patch Set 3:\n\nNew patchset patch-id matches previous patchset, but commit message has changed.","accounts_in_message":[],"_revision_number":3},{"id":"886432717d09fadcf4f67952de0cdb143c059fb0","author":{"_account_id":10380,"name":"Josh Gachnang","email":"josh@pcsforeducation.com","username":"JoshNang"},"date":"2014-04-15 17:30:50.000000000","message":"Patch Set 3: Looks good to me (core reviewer)\n\n","accounts_in_message":[],"_revision_number":3},{"id":"c861b61df966798cd5c1a5c3025656a7c56ea7cc","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2014-04-15 17:39:24.000000000","message":"Patch Set 3: Works for me\n\nBuild succeeded.\n\n- gate-ironic-python-agent-pep8 http://logs.openstack.org/47/87147/3/check/gate-ironic-python-agent-pep8/75b468a : SUCCESS in 50s\n- gate-ironic-python-agent-python26 http://logs.openstack.org/47/87147/3/check/gate-ironic-python-agent-python26/a909fad : SUCCESS in 58s\n- gate-ironic-python-agent-python27 http://logs.openstack.org/47/87147/3/check/gate-ironic-python-agent-python27/798d89e : SUCCESS in 53s\n","accounts_in_message":[],"_revision_number":3},{"id":"13aff10edd40b49e2819ac4f790c52cfea9c2261","author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"date":"2014-04-15 17:50:12.000000000","message":"Patch Set 3: Looks good to me (core reviewer); Approved\n\n","accounts_in_message":[],"_revision_number":3},{"id":"53b8d7ec361e85f5f721df40513d5f760c93063e","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2014-04-15 17:50:13.000000000","message":"Patch Set 3: No score\n\nStarting gate jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":3},{"id":"33e2054eb68fa9582fb5ca875c3865ef46979ddb","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2014-04-15 17:51:39.000000000","message":"Patch Set 3: Verified\n\nBuild succeeded.\n\n- gate-ironic-python-agent-pep8 http://logs.openstack.org/47/87147/3/gate/gate-ironic-python-agent-pep8/7a16437 : SUCCESS in 49s\n- gate-ironic-python-agent-python26 http://logs.openstack.org/47/87147/3/gate/gate-ironic-python-agent-python26/c8a3d14 : SUCCESS in 1m 02s\n- gate-ironic-python-agent-python27 http://logs.openstack.org/47/87147/3/gate/gate-ironic-python-agent-python27/118f4b3 : SUCCESS in 50s\n","accounts_in_message":[],"_revision_number":3},{"id":"d4536bf7692b33acc0aea7004f2f9ca442a9cf93","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2014-04-15 17:51:39.000000000","message":"Change has been successfully merged into the git repository.","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"bf746732268c073b4749df1a1e35a762d9f8a816","revisions":{"07715e9d99df88dd413b40f034e93b6b3bfb1d88":{"kind":"REWORK","_number":1,"created":"2014-04-14 00:50:45.000000000","uploader":{"_account_id":10626,"name":"Russell Haering","email":"russellhaering@gmail.com","username":"russell_h"},"ref":"refs/changes/47/87147/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ironic-python-agent","ref":"refs/changes/47/87147/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/47/87147/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/47/87147/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/47/87147/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ironic-python-agent refs/changes/47/87147/1"}}},"commit":{"parents":[{"commit":"e6ee97b328e3d17155e75c6883f958316c92d3d4","subject":"Add a @sync_command() decorator","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/e6ee97b328e3d17155e75c6883f958316c92d3d4"}]}],"author":{"name":"Russell Haering","email":"russellhaering@gmail.com","date":"2014-04-14 00:45:18.000000000","tz":-420},"committer":{"name":"Russell Haering","email":"russellhaering@gmail.com","date":"2014-04-14 00:45:18.000000000","tz":-420},"subject":"Decorated commands no longer take command_name","message":"Decorated commands no longer take command_name\n\nPrior to the (sync|async)_command decorators, extension methods had to\nconstruct command results themselves, which required that they have\nthe name of the command being executed.\n\nWhen the async_command decorator was introduced, we wanted to maintain\nthe current command interface, so that a command could be made\nasynchronous simply by adding the decorator.\n\nThe introduction of the sync_command decorator allows us to satisfy\nthis objective, without requiring decorated methods to accept a\ncommand_name. This patch modifies both decorators to no longer pass\nthe command_name argument, and modifies existing command methods not\nto expect one.\n\nChange-Id: I1b33bb7519588cdcb79c6f4d2b10c1e5e8c0cca3\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/07715e9d99df88dd413b40f034e93b6b3bfb1d88"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/07715e9d99df88dd413b40f034e93b6b3bfb1d88"}]},"branch":"refs/heads/master"},"4167fadbe7f881d996699d7f085c066c0f1f6bfb":{"kind":"REWORK","_number":2,"created":"2014-04-15 15:18:14.000000000","uploader":{"_account_id":10626,"name":"Russell Haering","email":"russellhaering@gmail.com","username":"russell_h"},"ref":"refs/changes/47/87147/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ironic-python-agent","ref":"refs/changes/47/87147/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/47/87147/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/47/87147/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/47/87147/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ironic-python-agent refs/changes/47/87147/2"}}},"commit":{"parents":[{"commit":"dcd6e3e0dcadda84dcbf478c71460e4287e01c7b","subject":"Add a @sync_command() decorator","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/dcd6e3e0dcadda84dcbf478c71460e4287e01c7b"}]}],"author":{"name":"Russell Haering","email":"russellhaering@gmail.com","date":"2014-04-14 00:45:18.000000000","tz":-420},"committer":{"name":"Russell Haering","email":"russellhaering@gmail.com","date":"2014-04-15 15:18:07.000000000","tz":-420},"subject":"Decorated commands no longer take command_name","message":"Decorated commands no longer take command_name\n\nPrior to the (sync|async)_command decorators, extension methods had to\nconstruct command results themselves, which required that they have\nthe name of the command being executed.\n\nWhen the async_command decorator was introduced, we wanted to maintain\nthe current command interface, so that a command could be made\nasynchronous simply by adding the decorator.\n\nThe introduction of the sync_command decorator allows us to satisfy\nthis objective, without requiring decorated methods to accept a\ncommand_name. This patch modifies both decorators to no longer pass\nthe command_name argument, and modifies existing command methods not\nto expect one.\n\nChange-Id: I1b33bb7519588cdcb79c6f4d2b10c1e5e8c0cca3\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/4167fadbe7f881d996699d7f085c066c0f1f6bfb"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/4167fadbe7f881d996699d7f085c066c0f1f6bfb"}]},"branch":"refs/heads/master"},"bf746732268c073b4749df1a1e35a762d9f8a816":{"kind":"NO_CODE_CHANGE","_number":3,"created":"2014-04-15 17:30:19.000000000","uploader":{"_account_id":10626,"name":"Russell Haering","email":"russellhaering@gmail.com","username":"russell_h"},"ref":"refs/changes/47/87147/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ironic-python-agent","ref":"refs/changes/47/87147/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/47/87147/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/47/87147/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/47/87147/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ironic-python-agent refs/changes/47/87147/3"}}},"commit":{"parents":[{"commit":"dcd6e3e0dcadda84dcbf478c71460e4287e01c7b","subject":"Add a @sync_command() decorator","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/dcd6e3e0dcadda84dcbf478c71460e4287e01c7b"}]}],"author":{"name":"Russell Haering","email":"russellhaering@gmail.com","date":"2014-04-14 00:45:18.000000000","tz":-420},"committer":{"name":"Russell Haering","email":"russellhaering@gmail.com","date":"2014-04-15 17:25:12.000000000","tz":-420},"subject":"Decorated commands no longer take command_name","message":"Decorated commands no longer take command_name\n\nPrior to the (sync|async)_command decorators, extension methods had to\nconstruct command results themselves, which required that they have\nthe name of the command being executed.\n\nWhen the async_command decorator was introduced, we wanted to maintain\nthe current command interface, so that a command could be made\nasynchronous simply by adding the decorator.\n\nThe introduction of the sync_command decorator allows us to satisfy\nthis objective, without requiring decorated methods to accept a\ncommand_name. This patch modifies both decorators to no longer pass\nthe command_name argument, and modifies existing command methods not\nto expect one.\n\nCloses-Bug: #1308021\nChange-Id: I1b33bb7519588cdcb79c6f4d2b10c1e5e8c0cca3\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/bf746732268c073b4749df1a1e35a762d9f8a816"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/bf746732268c073b4749df1a1e35a762d9f8a816"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
