)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":6914,"name":"Tatiana Ovchinnikova","email":"t.v.ovtchinnikova@gmail.com","username":"tmazur"},"change_message_id":"eafeb1c935d765e69724ebd92527863ed771af72","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"45a5c202_e3789b0f","updated":"2025-05-30 18:39:18.000000000","message":"@openstack@dopieralski.pl @jjasek@redhat.com Please take a look at the dependencies. If you\u0027re good with that, I\u0027ll submit a patch to global requirements (to add qrcode, they do have Pillow already).","commit_id":"d02ab0c36d15e4b1304171294d918b7f0d75fd33"},{"author":{"_account_id":6914,"name":"Tatiana Ovchinnikova","email":"t.v.ovtchinnikova@gmail.com","username":"tmazur"},"change_message_id":"8aeeea38f2523163b9beee14bb9c077a4f3f3e88","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"76d889f9_8ea87718","updated":"2025-06-02 17:42:06.000000000","message":"Submitted a patch to global requirements:","commit_id":"a3061ad53805a214849a75214b5ae933e1026bd4"},{"author":{"_account_id":6914,"name":"Tatiana Ovchinnikova","email":"t.v.ovtchinnikova@gmail.com","username":"tmazur"},"change_message_id":"1e8951a7b292f1c6c23dea460db84cab23530491","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"bf2640c9_5bb6d99f","updated":"2025-06-02 17:42:27.000000000","message":"https://review.opendev.org/c/openstack/requirements/+/951580","commit_id":"a3061ad53805a214849a75214b5ae933e1026bd4"},{"author":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"change_message_id":"0d7fbbd7e3040190a04704d561f182723f815025","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"086ef8e5_2e677cbe","updated":"2025-06-23 18:56:41.000000000","message":"recheck","commit_id":"a3061ad53805a214849a75214b5ae933e1026bd4"},{"author":{"_account_id":6914,"name":"Tatiana Ovchinnikova","email":"t.v.ovtchinnikova@gmail.com","username":"tmazur"},"change_message_id":"59d4e31226ba2e839e5caae58a78e79bbb7c7ad1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"02dca6a9_f743980a","updated":"2025-06-23 17:27:06.000000000","message":"recheck, the requirements patch has been merged: \n951580: Add qrcode | https://review.opendev.org/c/openstack/requirements/+/951580","commit_id":"a3061ad53805a214849a75214b5ae933e1026bd4"}],"openstack_dashboard/dashboards/identity/credentials/templates/credentials/_detail_overview.html":[{"author":{"_account_id":8648,"name":"Radomir Dopieralski","email":"openstack@dopieralski.pl","username":"thesheep"},"change_message_id":"6ad0ccbd639a0940799659c0c6fe280cde212e15","unresolved":true,"context_lines":[{"line_number":17,"context_line":"    \u003cdt\u003e{% trans \"Data\" %}\u003c/dt\u003e"},{"line_number":18,"context_line":"    \u003cdd\u003e{{ credential.blob }}\u003c/dd\u003e"},{"line_number":19,"context_line":"    {% if qrcode_uri %}"},{"line_number":20,"context_line":"      \u003cimg alt\u003d{{ qrcode_uri }} src\u003d\"data:image/png;base64,{{ qrcode_uri }}\" style\u003d\"width:200pt;height:200pt\" /\u003e"},{"line_number":21,"context_line":"    {% endif %}"},{"line_number":22,"context_line":"  \u003c/dl\u003e"},{"line_number":23,"context_line":"\u003c/div\u003e"}],"source_content_type":"text/html","patch_set":1,"id":"47e6bd57_850ddbc5","line":20,"updated":"2025-06-02 08:24:42.000000000","message":"you need to quote the alt","commit_id":"d02ab0c36d15e4b1304171294d918b7f0d75fd33"},{"author":{"_account_id":6914,"name":"Tatiana Ovchinnikova","email":"t.v.ovtchinnikova@gmail.com","username":"tmazur"},"change_message_id":"ba9a6ea02e71fbdeda0e25fc0991da83f5440358","unresolved":false,"context_lines":[{"line_number":17,"context_line":"    \u003cdt\u003e{% trans \"Data\" %}\u003c/dt\u003e"},{"line_number":18,"context_line":"    \u003cdd\u003e{{ credential.blob }}\u003c/dd\u003e"},{"line_number":19,"context_line":"    {% if qrcode_uri %}"},{"line_number":20,"context_line":"      \u003cimg alt\u003d{{ qrcode_uri }} src\u003d\"data:image/png;base64,{{ qrcode_uri }}\" style\u003d\"width:200pt;height:200pt\" /\u003e"},{"line_number":21,"context_line":"    {% endif %}"},{"line_number":22,"context_line":"  \u003c/dl\u003e"},{"line_number":23,"context_line":"\u003c/div\u003e"}],"source_content_type":"text/html","patch_set":1,"id":"c6ee1853_ac382932","line":20,"in_reply_to":"47e6bd57_850ddbc5","updated":"2025-06-02 16:19:37.000000000","message":"Done","commit_id":"d02ab0c36d15e4b1304171294d918b7f0d75fd33"}],"openstack_dashboard/dashboards/identity/credentials/views.py":[{"author":{"_account_id":8648,"name":"Radomir Dopieralski","email":"openstack@dopieralski.pl","username":"thesheep"},"change_message_id":"6ad0ccbd639a0940799659c0c6fe280cde212e15","unresolved":true,"context_lines":[{"line_number":152,"context_line":"            # Generating a qr code from TOTP credential blob"},{"line_number":153,"context_line":"            secret \u003d credential.blob"},{"line_number":154,"context_line":"            account_name \u003d credential.user_name"},{"line_number":155,"context_line":"            uri \u003d \u0027otpauth://totp/{name}?secret\u003d{secret}\u0026issuer\u003d{issuer}\u0027.\\"},{"line_number":156,"context_line":"                format(name\u003daccount_name, secret\u003dsecret, issuer\u003d\u0027Keystone\u0027)"},{"line_number":157,"context_line":"            img \u003d qrcode.make(uri)"},{"line_number":158,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"8bfa5157_55d5d9b5","line":155,"updated":"2025-06-02 08:24:42.000000000","message":"please avoid backslashes","commit_id":"d02ab0c36d15e4b1304171294d918b7f0d75fd33"},{"author":{"_account_id":6914,"name":"Tatiana Ovchinnikova","email":"t.v.ovtchinnikova@gmail.com","username":"tmazur"},"change_message_id":"ba9a6ea02e71fbdeda0e25fc0991da83f5440358","unresolved":false,"context_lines":[{"line_number":152,"context_line":"            # Generating a qr code from TOTP credential blob"},{"line_number":153,"context_line":"            secret \u003d credential.blob"},{"line_number":154,"context_line":"            account_name \u003d credential.user_name"},{"line_number":155,"context_line":"            uri \u003d \u0027otpauth://totp/{name}?secret\u003d{secret}\u0026issuer\u003d{issuer}\u0027.\\"},{"line_number":156,"context_line":"                format(name\u003daccount_name, secret\u003dsecret, issuer\u003d\u0027Keystone\u0027)"},{"line_number":157,"context_line":"            img \u003d qrcode.make(uri)"},{"line_number":158,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"13809d7b_f05e721a","line":155,"in_reply_to":"8bfa5157_55d5d9b5","updated":"2025-06-02 16:19:37.000000000","message":"Done","commit_id":"d02ab0c36d15e4b1304171294d918b7f0d75fd33"}],"requirements.txt":[{"author":{"_account_id":8648,"name":"Radomir Dopieralski","email":"openstack@dopieralski.pl","username":"thesheep"},"change_message_id":"6ad0ccbd639a0940799659c0c6fe280cde212e15","unresolved":true,"context_lines":[{"line_number":21,"context_line":"oslo.utils\u003e\u003d7.0.0 # Apache-2.0"},{"line_number":22,"context_line":"osprofiler\u003e\u003d3.4.2 # Apache-2.0"},{"line_number":23,"context_line":"libsass\u003e\u003d0.23.0 # MIT"},{"line_number":24,"context_line":"Pillow # PIL License"},{"line_number":25,"context_line":"python-cinderclient\u003e\u003d8.0.0 # Apache-2.0"},{"line_number":26,"context_line":"python-glanceclient\u003e\u003d2.8.0 # Apache-2.0"},{"line_number":27,"context_line":"python-keystoneclient\u003e\u003d3.22.0 # Apache-2.0"}],"source_content_type":"text/plain","patch_set":1,"id":"0108908e_d4caf47b","line":24,"updated":"2025-06-02 08:24:42.000000000","message":"do we want to pin version?","commit_id":"d02ab0c36d15e4b1304171294d918b7f0d75fd33"},{"author":{"_account_id":6914,"name":"Tatiana Ovchinnikova","email":"t.v.ovtchinnikova@gmail.com","username":"tmazur"},"change_message_id":"ba9a6ea02e71fbdeda0e25fc0991da83f5440358","unresolved":false,"context_lines":[{"line_number":21,"context_line":"oslo.utils\u003e\u003d7.0.0 # Apache-2.0"},{"line_number":22,"context_line":"osprofiler\u003e\u003d3.4.2 # Apache-2.0"},{"line_number":23,"context_line":"libsass\u003e\u003d0.23.0 # MIT"},{"line_number":24,"context_line":"Pillow # PIL License"},{"line_number":25,"context_line":"python-cinderclient\u003e\u003d8.0.0 # Apache-2.0"},{"line_number":26,"context_line":"python-glanceclient\u003e\u003d2.8.0 # Apache-2.0"},{"line_number":27,"context_line":"python-keystoneclient\u003e\u003d3.22.0 # Apache-2.0"}],"source_content_type":"text/plain","patch_set":1,"id":"b94f7db6_8ee1555c","line":24,"in_reply_to":"0108908e_d4caf47b","updated":"2025-06-02 16:19:37.000000000","message":"Pinned it to qrcode min requirements","commit_id":"d02ab0c36d15e4b1304171294d918b7f0d75fd33"}]}
