)]}'
{"id":"openstack%2Fpython-tackerclient~803540","triplet_id":"openstack%2Fpython-tackerclient~master~I57be2d06efe8913805069150bd3f884322a78a42","project":"openstack/python-tackerclient","branch":"master","hashtags":[],"change_id":"I57be2d06efe8913805069150bd3f884322a78a42","subject":"Remove use of testtools.helpers.safe_hasattr","status":"MERGED","created":"2021-08-05 07:42:03.000000000","updated":"2021-08-24 02:48:59.000000000","submitted":"2021-08-24 02:47:41.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":"803540","meta_rev_id":"f38616eb8a30af15206750f4d424f187bb7fc017","_number":803540,"virtual_id_number":803540,"owner":{"_account_id":13294,"name":"Javier Peña","email":"jpena@redhat.com","username":"jpena"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:gate","value":2,"date":"2021-08-24 02:47:40.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":32238,"name":"wdd","email":"wangzihao@yovole.com","username":"wangzihao"},{"value":0,"_account_id":25701,"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","username":"yasufum"},{"value":0,"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},{"value":0,"_account_id":17255,"name":"Toshiaki Takahashi","email":"ts-takahashi@nec.com","username":"takahashi_ts"}],"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":25701,"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","username":"yasufum"},"recommended":{"_account_id":32238,"name":"wdd","email":"wangzihao@yovole.com","username":"wangzihao"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":1,"date":"2021-08-17 08:09:17.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":32238,"name":"wdd","email":"wangzihao@yovole.com","username":"wangzihao"},{"value":2,"date":"2021-08-17 08:05:23.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":25701,"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","username":"yasufum"},{"value":1,"date":"2021-08-09 05:54:28.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},{"value":2,"date":"2021-08-24 02:32:01.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":17255,"name":"Toshiaki Takahashi","email":"ts-takahashi@nec.com","username":"takahashi_ts"}],"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":"","value":1,"default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":17255,"name":"Toshiaki Takahashi","email":"ts-takahashi@nec.com","username":"takahashi_ts"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":32238,"name":"wdd","email":"wangzihao@yovole.com","username":"wangzihao"},{"value":0,"_account_id":25701,"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","username":"yasufum"},{"value":0,"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},{"value":1,"date":"2021-08-24 02:32:01.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":17255,"name":"Toshiaki Takahashi","email":"ts-takahashi@nec.com","username":"takahashi_ts"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":17255,"name":"Toshiaki Takahashi","email":"ts-takahashi@nec.com","username":"takahashi_ts"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":25701,"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","username":"yasufum"},{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},{"_account_id":32238,"name":"wdd","email":"wangzihao@yovole.com","username":"wangzihao"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2021-08-05 07:58:28.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"},{"updated":"2021-08-09 05:54:28.000000000","updated_by":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"reviewer":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"state":"REVIEWER"},{"updated":"2021-08-10 08:18:25.000000000","updated_by":{"_account_id":13294,"name":"Javier Peña","email":"jpena@redhat.com","username":"jpena"},"reviewer":{"_account_id":17255,"name":"Toshiaki Takahashi","email":"ts-takahashi@nec.com","username":"takahashi_ts"},"state":"REVIEWER"},{"updated":"2021-08-10 08:18:25.000000000","updated_by":{"_account_id":13294,"name":"Javier Peña","email":"jpena@redhat.com","username":"jpena"},"reviewer":{"_account_id":25701,"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","username":"yasufum"},"state":"REVIEWER"},{"updated":"2021-08-17 08:09:17.000000000","updated_by":{"_account_id":32238,"name":"wdd","email":"wangzihao@yovole.com","username":"wangzihao"},"reviewer":{"_account_id":32238,"name":"wdd","email":"wangzihao@yovole.com","username":"wangzihao"},"state":"REVIEWER"}],"messages":[{"id":"c208f886212f1b58105a6afce4819f0f4cd0c7d7","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":13294,"name":"Javier Peña","email":"jpena@redhat.com","username":"jpena"},"date":"2021-08-05 07:42:03.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"1fe70d4d075b82d580843ad58f870a34bb34f609","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-08-05 07:58:28.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/3b5d89ba743a4eea8c350c311db9ed97 : SUCCESS in 4m 56s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/c2fc504c748d4b959cea9fe9297290c0 : SUCCESS in 3m 42s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/d7778ab1bbe948ce8a6ea8c0393f002c : SUCCESS in 4m 32s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/9b602cf62d944b9e91435361240374d4 : SUCCESS in 4m 39s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/eb8246ee0a5a4a8b8efdc0a9868b1191 : SUCCESS in 4m 31s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/a1bd3745e3d04ad49a54e13d2346676d : SUCCESS in 4m 23s","accounts_in_message":[],"_revision_number":1},{"id":"2903316238dca2f231b4199c773ff28e3fbd364f","author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"date":"2021-08-09 05:54:28.000000000","message":"Patch Set 1: Code-Review+1\n\nLGTM.","accounts_in_message":[],"_revision_number":1},{"id":"12c123796aef7c878d423776532024e8f0611b09","author":{"_account_id":25701,"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","username":"yasufum"},"date":"2021-08-17 08:05:23.000000000","message":"Patch Set 1: Code-Review+2\n\nLGTM, thanks!","accounts_in_message":[],"_revision_number":1},{"id":"8c455c2bbc3420bbcc22c2d6e09a4456840a9668","author":{"_account_id":32238,"name":"wdd","email":"wangzihao@yovole.com","username":"wangzihao"},"date":"2021-08-17 08:09:17.000000000","message":"Patch Set 1: Code-Review+1","accounts_in_message":[],"_revision_number":1},{"id":"1eabbb186e20ea4b8e6dc9e257be6596625583b0","author":{"_account_id":17255,"name":"Toshiaki Takahashi","email":"ts-takahashi@nec.com","username":"takahashi_ts"},"date":"2021-08-24 02:32:01.000000000","message":"Patch Set 1: Code-Review+2 Workflow+1\n\nThanks!","accounts_in_message":[],"_revision_number":1},{"id":"eb47f1cb63545e9261bbded4ff6dff70d4785e11","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-08-24 02:32:23.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"a7b855b5287b27af71b35fe949744d520b5dd0cc","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-08-24 02:47:40.000000000","message":"Patch Set 1: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/5cb1b7cbdbe34be7b5e388f6955c82b3 : SUCCESS in 4m 29s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/48d80977582d41e3876da82428f62247 : SUCCESS in 6m 54s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/de27d3fa05264b0bb71f77b0cc9b3a85 : SUCCESS in 8m 50s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/f32b1a60331c4a90a1cf21170d0fd32f : SUCCESS in 4m 04s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/3890c8a011e04ad9a95c482587304890 : SUCCESS in 3m 56s","accounts_in_message":[],"_revision_number":1},{"id":"9853588def113d91ed93d7de657aa7d66f73b768","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-08-24 02:47:41.000000000","message":"Change has been successfully merged by Zuul","accounts_in_message":[],"_revision_number":1},{"id":"f38616eb8a30af15206750f4d424f187bb7fc017","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-08-24 02:48:59.000000000","message":"Patch Set 1:\n\nBuild succeeded (promote pipeline).\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/f540b86682c444a98dd17ab6916dec34 : SUCCESS in 58s","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"6325127c03fd1b2748411b1e4e787d4f8bcba060","revisions":{"6325127c03fd1b2748411b1e4e787d4f8bcba060":{"kind":"REWORK","_number":1,"created":"2021-08-05 07:42:03.000000000","uploader":{"_account_id":13294,"name":"Javier Peña","email":"jpena@redhat.com","username":"jpena"},"ref":"refs/changes/40/803540/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-tackerclient","ref":"refs/changes/40/803540/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-tackerclient refs/changes/40/803540/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-tackerclient refs/changes/40/803540/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-tackerclient refs/changes/40/803540/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-tackerclient refs/changes/40/803540/1"}}},"commit":{"parents":[{"commit":"771973a3f66f08fa05b3d0702a81df9ec0b35219","subject":"Merge \"Remove broken link from Python-TackerClient guide\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-tackerclient/commit/771973a3f66f08fa05b3d0702a81df9ec0b35219"}]}],"author":{"name":"Javier Pena","email":"jpena@redhat.com","date":"2021-08-05 07:40:19.000000000","tz":120},"committer":{"name":"Javier Pena","email":"jpena@redhat.com","date":"2021-08-05 07:42:01.000000000","tz":120},"subject":"Remove use of testtools.helpers.safe_hasattr","message":"Remove use of testtools.helpers.safe_hasattr\n\nThe testtools package removed safe_hasattr in version 2.5.0 [1].\nSince it is only used in two unit tests, let\u0027s replace it with the\nbuilt-in hasattr.\n\n[1] - https://github.com/testing-cabal/testtools/blob/2.5.0/NEWS#L31-L34\n\nChange-Id: I57be2d06efe8913805069150bd3f884322a78a42\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-tackerclient/commit/6325127c03fd1b2748411b1e4e787d4f8bcba060"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-tackerclient/commit/6325127c03fd1b2748411b1e4e787d4f8bcba060"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"status":"CLOSED","labels":[{"label":"Verified","status":"OK","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"OK","applied_by":{"_account_id":17255,"name":"Toshiaki Takahashi","email":"ts-takahashi@nec.com","username":"takahashi_ts"}},{"label":"Workflow","status":"OK","applied_by":{"_account_id":17255,"name":"Toshiaki Takahashi","email":"ts-takahashi@nec.com","username":"takahashi_ts"}}]}],"submit_requirements":[{"name":"Verified","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Verified\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dCustom-Rule"],"failing_atoms":[],"atom_explanations":{}}},{"name":"Workflow","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Workflow\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dCustom-Rule"],"failing_atoms":[],"atom_explanations":{}}},{"name":"Code-Review","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Code-Review\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dCustom-Rule"],"failing_atoms":[],"atom_explanations":{}}}]}
