)]}'
{"id":"openstack%2Fcliff~761421","triplet_id":"openstack%2Fcliff~master~I4b96475ca6a689f4055dc5ea34b82b3867a65555","project":"openstack/cliff","branch":"master","topic":"story/2008320","hashtags":[],"change_id":"I4b96475ca6a689f4055dc5ea34b82b3867a65555","subject":"columns: Make \u0027FormattableColumn\u0027 comparable","status":"MERGED","created":"2020-11-04 14:53:54.000000000","updated":"2020-11-06 08:07:37.000000000","submitted":"2020-11-06 08:05:57.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"761421-1604649957919-bdd4afc4","meta_rev_id":"3d43ec4e698ce42dc4d1602a7132f518726b6482","_number":761421,"virtual_id_number":761421,"owner":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},{"value":0,"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2020-11-06 08:05:57.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"}],"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":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"all":[{"value":2,"date":"2020-11-06 06:49:16.000000000","_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},{"value":2,"date":"2020-11-05 10:54:05.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"}],"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":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"all":[{"value":1,"date":"2020-11-06 06:49:16.000000000","_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},{"value":0,"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"date":"2020-11-04 15:44:38.000000000","permitted_voting_range":{"min":0,"max":1},"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2020-11-04 15:44:38.000000000","updated_by":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"reviewer":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"state":"REVIEWER"},{"updated":"2020-11-05 10:54:05.000000000","updated_by":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"reviewer":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"state":"REVIEWER"},{"updated":"2020-11-06 06:49:16.000000000","updated_by":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"reviewer":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"state":"REVIEWER"},{"updated":"2020-11-06 08:05:57.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"}],"messages":[{"id":"8d5a7000d8213d5d2d90ce3eaba2080e28df04b2","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2020-11-04 14:53:54.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"a9981452e1c3c2d0c6f2c78722378f0c194091c9","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2020-11-04 15:18:05.000000000","message":"Uploaded patch set 2: Commit message was updated.","accounts_in_message":[],"_revision_number":2},{"id":"dc09600aeab7919411b91da47e1a2d433abdc94e","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-11-04 16:37:19.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\n\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/c3b8a38631984a8ab9ad356b8e29e26f : SUCCESS in 1h 14m 37s\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/228dbe9176884e71a7adf8d3a42bddb3 : SUCCESS in 4m 30s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/4b21b608a6d34dbbbf87256712d14044 : SUCCESS in 2m 43s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/df47be2ecba2482f85459a6bd5fc0ce1 : SUCCESS in 3m 21s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/1652209c13784b3e893acfc28603e761 : SUCCESS in 3m 35s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/bb26816b54ea468dba332b2b81d8b80b : SUCCESS in 3m 39s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/95d2edada5654ad5a5bdbc88be00d488 : SUCCESS in 3m 23s\n- cliff-tox-py37-neutronclient-tip https://zuul.opendev.org/t/openstack/build/9ef6f7d6fa604cbcbf1e9fd318d59d53 : SUCCESS in 3m 47s\n- osc-tox-py36-tips https://zuul.opendev.org/t/openstack/build/cacd5f55e5c74b388dd6ee69f731384c : SUCCESS in 4m 53s","accounts_in_message":[],"_revision_number":2},{"id":"52b9f3056aad7237b9fa14a3b7dc43a6ef6f5ed8","author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"date":"2020-11-05 10:54:05.000000000","message":"Patch Set 2: Code-Review+2","accounts_in_message":[],"_revision_number":2},{"id":"7c7d42b0420d12cfde669a58fd76a09cee35d408","author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"date":"2020-11-06 06:49:16.000000000","message":"Patch Set 2: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":2},{"id":"f03e3d2b05d01143375e0e1f8003a72a408e0bd4","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-11-06 06:49:34.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":2},{"id":"71567ccc101cd8bed8a492512991e221c01c9226","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-11-06 08:05:57.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/dc450660497341c5a55f62cc741d7fff : SUCCESS in 1h 13m 26s\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/52188e9c9c554169896f59e60fb41ee8 : SUCCESS in 3m 52s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/f1e02acfd80a49d0adcaacb42486dc70 : SUCCESS in 3m 15s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/32a9c1a852d646d48bd7c2e5bdab70ad : SUCCESS in 5m 16s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/8cea75e3efb843fb93e8ff8d7f387df9 : SUCCESS in 3m 02s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/22e4489e3102498daf75cdaa6b9d086b : SUCCESS in 3m 04s\n- cliff-tox-py37-neutronclient-tip https://zuul.opendev.org/t/openstack/build/6db8638b6ced41fea4aece26a306add9 : SUCCESS in 8m 13s\n- osc-tox-py36-tips https://zuul.opendev.org/t/openstack/build/ab5c6157a402488197f908b09e65b074 : SUCCESS in 7m 10s","accounts_in_message":[],"_revision_number":2},{"id":"80b30b78d199ff5ee5d199ed4951609b1eac6740","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-11-06 08:05:57.000000000","message":"Change has been successfully merged by Zuul","accounts_in_message":[],"_revision_number":2},{"id":"46add2387a681a273234aac568750b200f1196dc","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-11-06 08:07:37.000000000","message":"Patch Set 2:\n\nBuild succeeded (promote pipeline).\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/ad076dce9e3c44caa837a872520d6712 : SUCCESS in 1m 13s","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"997e05fce6cf2267099f3d5f91116ba491495d7e","revisions":{"2741d2e9df9c5e056bec89e91c1cb44eb628bd92":{"kind":"REWORK","_number":1,"created":"2020-11-04 14:53:54.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/21/761421/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cliff","ref":"refs/changes/21/761421/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cliff refs/changes/21/761421/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cliff refs/changes/21/761421/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cliff refs/changes/21/761421/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cliff refs/changes/21/761421/1"}}},"commit":{"parents":[{"commit":"def32ec54cbec667bb5733b14c8404c72d3547d0","subject":"Merge \"Update requirements\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cliff/commit/def32ec54cbec667bb5733b14c8404c72d3547d0"}]}],"author":{"name":"Stephen Finucane","email":"sfinucan@redhat.com","date":"2020-11-04 14:38:54.000000000","tz":0},"committer":{"name":"Stephen Finucane","email":"sfinucan@redhat.com","date":"2020-11-04 14:51:43.000000000","tz":0},"subject":"columns: Make \u0027FormattableColumn\u0027 comparable","message":"columns: Make \u0027FormattableColumn\u0027 comparable\n\nCurrently, comparing instances of this fails:\n\n  \u003e\u003e\u003e from cliff.columns import FormattableColumn\n  \u003e\u003e\u003e class Test(FormattableColumn):\n  ...     def human_readable(self):\n  ...         return str(self._data)\n  ...\n  \u003e\u003e\u003e data \u003d {\u0027x\u0027: \u0027y\u0027}\n  \u003e\u003e\u003e x \u003d Test(data)\n  \u003e\u003e\u003e y \u003d Test(data)\n  \u003e\u003e\u003e x \u003d\u003d y\n  False\n\nClearly it should not. Resolve this by implementing a custom comparison.\n\nChange-Id: I4b96475ca6a689f4055dc5ea34b82b3867a65555\nSigned-off-by: Stephen Finucane \u003csfinucan@redhat.com\u003e\nStory: #2008320\nTask: #41217\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cliff/commit/2741d2e9df9c5e056bec89e91c1cb44eb628bd92"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cliff/commit/2741d2e9df9c5e056bec89e91c1cb44eb628bd92"}]},"branch":"refs/heads/master"},"997e05fce6cf2267099f3d5f91116ba491495d7e":{"kind":"NO_CODE_CHANGE","_number":2,"created":"2020-11-04 15:18:05.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/21/761421/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cliff","ref":"refs/changes/21/761421/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cliff refs/changes/21/761421/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cliff refs/changes/21/761421/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cliff refs/changes/21/761421/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cliff refs/changes/21/761421/2"}}},"commit":{"parents":[{"commit":"def32ec54cbec667bb5733b14c8404c72d3547d0","subject":"Merge \"Update requirements\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cliff/commit/def32ec54cbec667bb5733b14c8404c72d3547d0"}]}],"author":{"name":"Stephen Finucane","email":"sfinucan@redhat.com","date":"2020-11-04 14:38:54.000000000","tz":0},"committer":{"name":"Stephen Finucane","email":"sfinucan@redhat.com","date":"2020-11-04 15:17:41.000000000","tz":0},"subject":"columns: Make \u0027FormattableColumn\u0027 comparable","message":"columns: Make \u0027FormattableColumn\u0027 comparable\n\nCurrently, comparing instances of this fails:\n\n  \u003e\u003e\u003e from cliff.columns import FormattableColumn\n  \u003e\u003e\u003e class Test(FormattableColumn):\n  ...     def human_readable(self):\n  ...         return str(self._data)\n  ...\n  \u003e\u003e\u003e data \u003d {\u0027x\u0027: \u0027y\u0027}\n  \u003e\u003e\u003e x \u003d Test(data)\n  \u003e\u003e\u003e y \u003d Test(data)\n  \u003e\u003e\u003e x \u003d\u003d y\n  False\n\nClearly it should not. Resolve this by implementing a custom comparison.\n\nChange-Id: I4b96475ca6a689f4055dc5ea34b82b3867a65555\nSigned-off-by: Stephen Finucane \u003csfinucan@redhat.com\u003e\nStory: #2008320\nTask: #41218\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cliff/commit/997e05fce6cf2267099f3d5f91116ba491495d7e"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cliff/commit/997e05fce6cf2267099f3d5f91116ba491495d7e"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
