)]}'
{"id":"openstack%2Foslo.versionedobjects~979075","triplet_id":"openstack%2Foslo.versionedobjects~master~I8e710cb0cc1276b0ec65200a1707f53c400d333c","project":"openstack/oslo.versionedobjects","branch":"master","topic":"typing","attention_set":{},"removed_from_attention_set":{"15334":{"account":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"last_update":"2026-03-19 11:46:39.000000000","reason":"\u003cGERRIT_ACCOUNT_15334\u003e replied on the change","reason_account":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"}},"9816":{"account":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"last_update":"2026-03-19 06:54:18.000000000","reason":"\u003cGERRIT_ACCOUNT_9816\u003e replied on the change","reason_account":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"}}},"hashtags":[],"change_id":"I8e710cb0cc1276b0ec65200a1707f53c400d333c","subject":"base: Deprecate remotable_classmethod","status":"MERGED","created":"2026-03-05 20:24:49.000000000","updated":"2026-03-19 14:04:27.000000000","submitted":"2026-03-19 14:02:02.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":5,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"979075-typing","meta_rev_id":"441308b12a135b45ab1e88f61064fabd9ffc7c18","_number":979075,"virtual_id_number":979075,"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":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":0,"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-03-19 14:02:02.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"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":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"all":[{"value":0,"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":2,"date":"2026-03-19 06:54:18.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"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":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"all":[{"value":1,"date":"2026-03-19 11:46:39.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":0,"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Backport-Candidate":{"all":[{"value":0,"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":0,"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do Not Backport","-1":"Not A Backport Candidate"," 0":"Backport Review Needed","+1":"Proposed Backport","+2":"Should Backport"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-03-05 22:19:18.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":"2026-03-07 07:22:17.000000000","updated_by":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"reviewer":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"state":"REVIEWER"}],"messages":[{"id":"b3743489405ae2885a4b311684b4a4786756d19d","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-05 20:24:49.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"1ec5e40dce9901171750f36dbf39ea68d2d99f91","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-05 20:43:46.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"d6a36c526a4ec15f51823f71a8672cdcb6db3243","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-05 22:19:18.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/de3f035c2cf04f7a8652563778c25d0a\n\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/f3f5c80eeaaf44c5b000b0651401d0f3 : SUCCESS in 1h 16m 27s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/35149e5323514804926ee352f3f5deaf : SUCCESS in 3m 38s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/d03f378bf96d45a8bf79f993e957eebf : SUCCESS in 4m 02s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/7090b9bdcd3d40498c3955c4e0e9321b : SUCCESS in 3m 12s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/667113abfe394ce7a3133cc91b153c29 : SUCCESS in 4m 27s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/bc29106a8dae460eb9d9ec66b527f717 : SUCCESS in 4m 24s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/cfa66b0a9b144c2fa67ff00318e89d7a : SUCCESS in 4m 16s\n- oslo.versionedobjects-src-grenade-multinode https://zuul.opendev.org/t/openstack/build/b04c8c2a10184921a04886019e948833 : SUCCESS in 1h 14m 15s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"20999da297ab7ec160b6d14c7a437c841e96497a","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-06 13:41:43.000000000","message":"Uploaded patch set 3: New patch set was added with same tree, parent tree, and commit message as Patch Set 2.\n\nOutdated Votes:\n* Verified+1\n","accounts_in_message":[],"_revision_number":3},{"id":"5da0054c41de46ed8892cb9c813bd17eab3d19fe","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-06 16:11:23.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/a7fa437cbc564a58912f8372aa807470\n\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/25099228e6de4ba9a30a63456724586c : SUCCESS in 2h 21m 15s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/1c48576b9f184327a0b315563bb112cc : SUCCESS in 3m 03s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/1049f9e0cac54b428a154986d5b5e4bd : SUCCESS in 3m 28s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/8930cffbad78456fb4169d9dfce679cd : SUCCESS in 3m 12s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/0cd0fcb9225340609d031d2dc28f84d8 : SUCCESS in 6m 09s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/5b89f0579ff5494dbd655c13ba87331d : SUCCESS in 3m 48s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/f50e0f7558e749a68ed2a1534ab7912e : SUCCESS in 3m 37s\n- oslo.versionedobjects-src-grenade-multinode https://zuul.opendev.org/t/openstack/build/ffab9723d7df47ea8e607789e05d8dc3 : SUCCESS in 1h 14m 48s (non-voting)","accounts_in_message":[],"_revision_number":3},{"id":"2848e4032976357c311314cbb1cac9907d8b0445","author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"date":"2026-03-07 07:22:17.000000000","message":"Patch Set 3: Code-Review+1\n\n(2 comments)","accounts_in_message":[],"_revision_number":3},{"id":"4e96049174680a20305fb0905d14ebb137cb60f6","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-09 14:04:36.000000000","message":"Patch Set 3:\n\n(2 comments)","accounts_in_message":[],"_revision_number":3},{"id":"10b232abf4d68a1ebfab747426d152f6fa534c1a","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-09 14:04:46.000000000","message":"Uploaded patch set 4: Patch Set 3 was rebased.\n\nCopied Votes:\n* Code-Review+1 (copy condition: \"**changekind:TRIVIAL_REBASE** OR is:MIN\")\n\nOutdated Votes:\n* Verified+1\n","accounts_in_message":[],"_revision_number":4},{"id":"216d3353f73444ed8f2d10747f799ac80aeef829","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-09 15:30:03.000000000","message":"Patch Set 4: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/fe9168f0d75f4cb89bdbac28bb72251b\n\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/3a15ceb7a34a4b8a9df63ada580c0486 : SUCCESS in 54m 45s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/1a4f89ab62bf4393af7b79e66e91f433 : SUCCESS in 3m 15s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/49d4950754a14f398b8df02b55563fbb : SUCCESS in 3m 30s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/231f4d3e3fbd483d8e447c5337ab0be4 : SUCCESS in 3m 28s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/87c5ad39911e4d39aeaa235a10634b85 : SUCCESS in 6m 17s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/872723ce3b064f7fb517bdf7e7b73990 : SUCCESS in 2m 24s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/b17206fee92c4d3bba549ee409909ed8 : SUCCESS in 4m 07s\n- oslo.versionedobjects-src-grenade-multinode https://zuul.opendev.org/t/openstack/build/0b5e7e302a50432db69cfdfe0547e40c : SUCCESS in 1h 12m 32s (non-voting)","accounts_in_message":[],"_revision_number":4},{"id":"37953d43de5c38cec9eb8857ff0643405f92f523","author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"date":"2026-03-19 06:54:18.000000000","message":"Patch Set 4: Code-Review+2","accounts_in_message":[],"_revision_number":4},{"id":"62090b905a5bcc5ab418ac15a1dec1b687388df1","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-19 11:46:39.000000000","message":"Patch Set 4: Workflow+1","accounts_in_message":[],"_revision_number":4},{"id":"c2684e081d570039486154f7748a9c8d3f381b28","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-19 11:47:09.000000000","message":"Patch Set 4: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":4},{"id":"f174eb320fce0e7ffb8113c0ee013bd563859dc6","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-19 11:53:38.000000000","message":"Patch Set 4:\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"a66c99d570ab50b6c88880a57137b9daeeb7385a","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-19 14:02:02.000000000","message":"Patch Set 4: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/06ec17b161854ed38282e3bd0378028b\n\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/98c378525acf4d57804bc0e3d21109e5 : SUCCESS in 1h 54m 00s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/54f13e90cf5347f395c2ce5ea17fdbb4 : SUCCESS in 3m 13s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/6e5592b3573743028c5d3b9e020359d5 : SUCCESS in 5m 13s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/632fae62dd044c19a34274a9e008c966 : SUCCESS in 2m 33s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/c27a68a4143945358f50dc5f735e120b : SUCCESS in 3m 26s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/d7bdabe06d4948139be64741793b0c93 : SUCCESS in 4m 57s","accounts_in_message":[],"_revision_number":4},{"id":"296eb594f6f9b6e606970754c27700724344b75f","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-19 14:02:02.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":4},{"id":"441308b12a135b45ab1e88f61064fabd9ffc7c18","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-19 14:04:27.000000000","message":"Patch Set 4:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/642b854fbc83490398ef9f25bca43b89\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/cb6cb034bbdb45c5a768c26ce2108781 : SUCCESS in 47s\n- promote-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/da7a93e9da1241c59fe3d8b3a29d23df : SUCCESS in 39s","accounts_in_message":[],"_revision_number":4}],"current_revision_number":4,"current_revision":"a652c72394ba6696e114426a619dde81cf07e21d","revisions":{"345625a8fe24333b8cc0e1f752f4a9b95807a71f":{"kind":"REWORK","_number":1,"created":"2026-03-05 20:24:49.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/75/979075/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.versionedobjects","ref":"refs/changes/75/979075/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/75/979075/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/75/979075/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/75/979075/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/75/979075/1"}}},"commit":{"parents":[{"commit":"5620ba7a1f736df81d6671e745326f65dfd49e5e","subject":"base: Swap location of remoteable decorators","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/5620ba7a1f736df81d6671e745326f65dfd49e5e"}]}],"author":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-05 20:09:33.000000000","tz":0},"committer":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-05 20:13:54.000000000","tz":0},"subject":"base: Deprecate remotable_classmethod","message":"base: Deprecate remotable_classmethod\n\nRather than providing a single decorator that handles both making the\nmethod remoteable *and* a classmethod, rework the remoteable decorator\nso that it can handle both class and instance methods. This mirrors what\nwas done in the `abc` stdlib library, where `abc.abstractclassmethod`\nwas deprecated in favour of the `abc.abstractmethod` / `classmethod`\ndecorator combo [1].\n\n[1] https://docs.python.org/3/library/abc.html#abc.abstractclassmethod\n\nChange-Id: I8e710cb0cc1276b0ec65200a1707f53c400d333c\nSigned-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/345625a8fe24333b8cc0e1f752f4a9b95807a71f"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/345625a8fe24333b8cc0e1f752f4a9b95807a71f"}]},"branch":"refs/heads/master"},"13eed415e25a17911180bb569049e0edc26760f5":{"kind":"REWORK","_number":2,"created":"2026-03-05 20:43:46.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/75/979075/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.versionedobjects","ref":"refs/changes/75/979075/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/75/979075/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/75/979075/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/75/979075/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/75/979075/2"}}},"commit":{"parents":[{"commit":"5620ba7a1f736df81d6671e745326f65dfd49e5e","subject":"base: Swap location of remoteable decorators","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/5620ba7a1f736df81d6671e745326f65dfd49e5e"}]}],"author":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-05 20:09:33.000000000","tz":0},"committer":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-05 20:42:43.000000000","tz":0},"subject":"base: Deprecate remotable_classmethod","message":"base: Deprecate remotable_classmethod\n\nRather than providing a single decorator that handles both making the\nmethod remoteable *and* a classmethod, rework the remoteable decorator\nso that it can handle both class and instance methods. This mirrors what\nwas done in the `abc` stdlib library, where `abc.abstractclassmethod`\nwas deprecated in favour of the `abc.abstractmethod` / `classmethod`\ndecorator combo [1].\n\n[1] https://docs.python.org/3/library/abc.html#abc.abstractclassmethod\n\nChange-Id: I8e710cb0cc1276b0ec65200a1707f53c400d333c\nSigned-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/13eed415e25a17911180bb569049e0edc26760f5"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/13eed415e25a17911180bb569049e0edc26760f5"}]},"branch":"refs/heads/master"},"cfeecb19cd2ff281da03b18fd01f5fcea60e54a2":{"kind":"NO_CHANGE","_number":3,"created":"2026-03-06 13:41:43.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/75/979075/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.versionedobjects","ref":"refs/changes/75/979075/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/75/979075/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/75/979075/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/75/979075/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/75/979075/3"}}},"commit":{"parents":[{"commit":"78941326c5c5508af787a37f53364357f30d35f7","subject":"base: Swap location of remoteable decorators","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/78941326c5c5508af787a37f53364357f30d35f7"}]}],"author":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-05 20:09:33.000000000","tz":0},"committer":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-06 13:40:57.000000000","tz":0},"subject":"base: Deprecate remotable_classmethod","message":"base: Deprecate remotable_classmethod\n\nRather than providing a single decorator that handles both making the\nmethod remoteable *and* a classmethod, rework the remoteable decorator\nso that it can handle both class and instance methods. This mirrors what\nwas done in the `abc` stdlib library, where `abc.abstractclassmethod`\nwas deprecated in favour of the `abc.abstractmethod` / `classmethod`\ndecorator combo [1].\n\n[1] https://docs.python.org/3/library/abc.html#abc.abstractclassmethod\n\nChange-Id: I8e710cb0cc1276b0ec65200a1707f53c400d333c\nSigned-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/cfeecb19cd2ff281da03b18fd01f5fcea60e54a2"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/cfeecb19cd2ff281da03b18fd01f5fcea60e54a2"}]},"branch":"refs/heads/master"},"a652c72394ba6696e114426a619dde81cf07e21d":{"kind":"TRIVIAL_REBASE","_number":4,"created":"2026-03-09 14:04:46.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/75/979075/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.versionedobjects","ref":"refs/changes/75/979075/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/75/979075/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/75/979075/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/75/979075/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/75/979075/4"}}},"commit":{"parents":[{"commit":"1a683cc908eaeeda591a4c7b67fb77316b8eec1d","subject":"base: Swap location of remoteable decorators","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/1a683cc908eaeeda591a4c7b67fb77316b8eec1d"}]}],"author":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-05 20:09:33.000000000","tz":0},"committer":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-09 14:02:21.000000000","tz":0},"subject":"base: Deprecate remotable_classmethod","message":"base: Deprecate remotable_classmethod\n\nRather than providing a single decorator that handles both making the\nmethod remoteable *and* a classmethod, rework the remoteable decorator\nso that it can handle both class and instance methods. This mirrors what\nwas done in the `abc` stdlib library, where `abc.abstractclassmethod`\nwas deprecated in favour of the `abc.abstractmethod` / `classmethod`\ndecorator combo [1].\n\n[1] https://docs.python.org/3/library/abc.html#abc.abstractclassmethod\n\nChange-Id: I8e710cb0cc1276b0ec65200a1707f53c400d333c\nSigned-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/a652c72394ba6696e114426a619dde81cf07e21d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/a652c72394ba6696e114426a619dde81cf07e21d"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"CLOSED","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY","applied_by":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"}},{"label":"Backport-Candidate","status":"MAY"}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dMAX"],"failing_atoms":["label:Verified\u003dMIN"],"atom_explanations":{}}},{"name":"Backport-Candidate","description":"Backport candidate status","status":"NOT_APPLICABLE","is_legacy":false,"applicability_expression_result":{"fulfilled":false,"status":"FAIL"},"submittability_expression_result":{"expression":"is:true","fulfilled":true,"status":"NOT_EVALUATED","passing_atoms":[],"failing_atoms":[],"atom_explanations":{}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dMAX"],"failing_atoms":["label:Code-Review\u003dMIN"],"atom_explanations":{}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dMAX"],"failing_atoms":["label:Workflow\u003dMIN"],"atom_explanations":{}}}]}
