)]}'
{"id":"openstack%2Fkeystone~956613","triplet_id":"openstack%2Fkeystone~master~I4429188d7ffc7a13e1f6a81c0a3fcd7753be0456","project":"openstack/keystone","branch":"master","topic":"bug/2119346","hashtags":[],"change_id":"I4429188d7ffc7a13e1f6a81c0a3fcd7753be0456","subject":"Fix Python 3.13 str/bytes concat in SAML signing error path","status":"ABANDONED","created":"2025-08-05 23:17:33.000000000","updated":"2025-11-28 23:44:38.000000000","total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"8843fa12a9dbde277b2d2eb8352e8691dc3bc4ba","_number":956613,"virtual_id_number":956613,"owner":{"_account_id":36966,"name":"Myles Penner","display_name":"Myles Penner","email":"mj.penner@live.ca","username":"mylesjp"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"_account_id":36966,"name":"Myles Penner","display_name":"Myles Penner","email":"mj.penner@live.ca","username":"mylesjp"},{"tag":"autogenerated:zuul:check","value":1,"date":"2025-08-06 00:34:36.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":"","value":1,"default_value":0,"optional":true},"Code-Review":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":36966,"name":"Myles Penner","display_name":"Myles Penner","email":"mj.penner@live.ca","username":"mylesjp"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_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":{"all":[{"value":0,"date":"2025-08-07 20:39:35.000000000","permitted_voting_range":{"min":-1,"max":0},"_account_id":36966,"name":"Myles Penner","display_name":"Myles Penner","email":"mj.penner@live.ca","username":"mylesjp"},{"_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}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":36966,"name":"Myles Penner","display_name":"Myles Penner","email":"mj.penner@live.ca","username":"mylesjp"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2025-08-06 00:00:29.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":"CC"},{"updated":"2025-08-06 00:34:36.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":"ecc8824d0c0e5f5e8e91ae1dd8512e4ba455a03d","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":36966,"name":"Myles Penner","display_name":"Myles Penner","email":"mj.penner@live.ca","username":"mylesjp"},"date":"2025-08-05 23:17:33.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"52fe8d9f65bfaf002b1ccbad55ca8b8e77966363","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-08-06 00:00:29.000000000","message":"Patch Set 1:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/0b5536e997a64b2eac3506f150892eab\n\n- openstack-tox-py310-arm64 https://zuul.opendev.org/t/openstack/build/555c547ec04e4c8c835bc3da84f9158e : SUCCESS in 41m 21s (non-voting)\n- openstack-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/3788285cec7648439c34b5a2cd5cfe0f : SUCCESS in 39m 50s (non-voting)\n- openstack-tox-py313-arm64 https://zuul.opendev.org/t/openstack/build/4892b7c59bb54f1b9979c4b1ab7d057d : SUCCESS in 38m 48s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"0b1fe3a0865af536dfc48b0c795c7cead611e10a","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-08-06 00:34:36.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/c0e2449f7a014ab5952aa20f6707f324\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/2b0a862303f7496787b3bf85e50e9437 : SUCCESS in 15m 51s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/126fcaa5aa544735a356c7676592302d : SUCCESS in 6m 23s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/1c4e9be2d07a4f15833e36e4572572ab : SUCCESS in 9m 20s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/892f7b86a3bd47498d05a6f2e62f8503 : SUCCESS in 12m 43s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/3cab7b48b23d45679ce5397aead5ad00 : SUCCESS in 15m 09s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/3687ae0c3c7342ce898a9ae68c98031e : SUCCESS in 11m 23s\n- grenade https://zuul.opendev.org/t/openstack/build/f31efd404013441d9a90b266a3939ddd : SUCCESS in 36m 10s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/e8dda9891e4b413fb5262204db218012 : SUCCESS in 1h 15m 29s\n- keystoneclient-devstack-functional https://zuul.opendev.org/t/openstack/build/8ed205ececd4458baf984bde58cec193 : SUCCESS in 15m 39s (non-voting)\n- keystone-tempest https://zuul.opendev.org/t/openstack/build/caa02e34a31f4159a7b5c2e0aa532855 : SUCCESS in 29m 15s\n- keystone-tempest-fips https://zuul.opendev.org/t/openstack/build/bff06efa61d54a4f989a335ce273d0f2 : FAILURE in 21m 29s (non-voting)\n- keystone-tempest-federation https://zuul.opendev.org/t/openstack/build/850d08fcd488474e9d8d17158db1fbef : FAILURE in 29m 58s (non-voting)\n- keystone-tempest-federation-k2k https://zuul.opendev.org/t/openstack/build/e23badca83b5492b96fcaa9bf723068d : SUCCESS in 18m 42s\n- keystone-tempest-oidc-federation https://zuul.opendev.org/t/openstack/build/84f4083e062045598e3b9011d497af4b : SUCCESS in 29m 05s\n- keystone-tempest-ldap-domain-specific-driver https://zuul.opendev.org/t/openstack/build/715b5d1b40954cf991fc40948fa8ef69 : FAILURE in 16m 47s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/40f54424a67e45acbc88c5b755d92ee8 : SUCCESS in 57m 46s\n- keystone-protection-functional https://zuul.opendev.org/t/openstack/build/ceaf6b79871f43f998f660afd9223ab3 : FAILURE in 27m 44s (non-voting)\n- codegenerator-openapi-identity-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/1ad3322f80894a16bfe3eea5b559ed31 : SUCCESS in 4m 35s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"db5d8af4ab6856e6efbc046d4a08082e76c95f20","author":{"_account_id":36966,"name":"Myles Penner","display_name":"Myles Penner","email":"mj.penner@live.ca","username":"mylesjp"},"date":"2025-08-06 18:21:29.000000000","message":"Patch Set 1: Workflow-1","accounts_in_message":[],"_revision_number":1},{"id":"40868ef14e5da65aea4e7fce49ea91fe17af4bf0","author":{"_account_id":36966,"name":"Myles Penner","display_name":"Myles Penner","email":"mj.penner@live.ca","username":"mylesjp"},"date":"2025-08-07 20:39:35.000000000","message":"Patch Set 1: -Workflow","accounts_in_message":[],"_revision_number":1},{"id":"8843fa12a9dbde277b2d2eb8352e8691dc3bc4ba","tag":"autogenerated:gerrit:abandon","author":{"_account_id":36966,"name":"Myles Penner","display_name":"Myles Penner","email":"mj.penner@live.ca","username":"mylesjp"},"date":"2025-11-28 23:44:38.000000000","message":"Abandoned","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"74173256304dea098b42ede75279a67ce32fdcee","revisions":{"74173256304dea098b42ede75279a67ce32fdcee":{"kind":"REWORK","_number":1,"created":"2025-08-05 23:17:33.000000000","uploader":{"_account_id":36966,"name":"Myles Penner","display_name":"Myles Penner","email":"mj.penner@live.ca","username":"mylesjp"},"ref":"refs/changes/13/956613/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/keystone","ref":"refs/changes/13/956613/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/keystone refs/changes/13/956613/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/keystone refs/changes/13/956613/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/keystone refs/changes/13/956613/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/keystone refs/changes/13/956613/1"}}},"commit":{"parents":[{"commit":"e066e18abf5dc9a061fe2fc479a851aa0b65c794","subject":"Merge \"Remove the password element from the generated dict in update_user\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/e066e18abf5dc9a061fe2fc479a851aa0b65c794"}]}],"author":{"name":"Myles Penner","email":"myles.penner@canonical.com","date":"2025-08-05 21:00:53.000000000","tz":-420},"committer":{"name":"Myles Penner","email":"myles.penner@canonical.com","date":"2025-08-05 23:17:31.000000000","tz":-420},"subject":"Fix Python 3.13 str/bytes concat in SAML signing error path","message":"Fix Python 3.13 str/bytes concat in SAML signing error path\n\nUnder Python 3.13 the CalledProcessError.output format is\nbytes when text mode is not specified. This previously\nresulted in a concatenation TypeError. This change specifies\ntext mode, forces a known encoding and handles undecodable\nbytes.\n\nTwo unit tests are included that ensure SAMLSigningError is\nraised when xmlsec1 fails and that the signing call uses text\nmode, preventing regression.\n\nCloses-Bug: #2119346\nChange-Id: I4429188d7ffc7a13e1f6a81c0a3fcd7753be0456\nSigned-off-by: Myles Penner \u003cmyles.penner@canonical.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/74173256304dea098b42ede75279a67ce32fdcee"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/74173256304dea098b42ede75279a67ce32fdcee"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Verified\u003dMAX","label:Verified\u003dMIN"],"atom_explanations":{}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Code-Review\u003dMAX","label:Code-Review\u003dMIN"],"atom_explanations":{}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Workflow\u003dMAX","label:Workflow\u003dMIN"],"atom_explanations":{}}}]}
