)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"d3f40aad1f420a13bc24312ac843904f03819eee","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"a696d015_658d4535","updated":"2024-11-22 16:00:42.000000000","message":"thanks for checking, I have to come back to the test failures","commit_id":"7ca0f1daebe81a284bc398a651b800c768e595d5"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"26afca9a2a2a125b0a1ee4fb6d25af7411a5448f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"9d186581_0e70acf8","updated":"2024-12-03 20:00:34.000000000","message":"one test still fails locally, hope I can work on it in the next days","commit_id":"27e24378e703c70988f595c0702ae79a442868c3"},{"author":{"_account_id":35133,"name":"Jan Jasek","email":"jjasek@redhat.com","username":"janjasek"},"change_message_id":"7809ed6875c9f0fd0ad7bd64caf83b283d897821","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"1b73d74f_0827125b","updated":"2025-01-17 13:28:27.000000000","message":"LGTM, thanks!","commit_id":"75195cbae1b950b78224e226af62394917abe1fe"},{"author":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"change_message_id":"9d637c848fc65eb8ca3788559dac390eb17bc2f3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"4562ba85_0aafbe3f","updated":"2025-03-10 13:20:45.000000000","message":"recheck","commit_id":"75195cbae1b950b78224e226af62394917abe1fe"},{"author":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"change_message_id":"be38b353e6abc00d64a95f1d4d3cf6c961f4991f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"6baf0fa0_1bf64c7d","updated":"2025-03-10 16:37:49.000000000","message":"recheck","commit_id":"75195cbae1b950b78224e226af62394917abe1fe"},{"author":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"change_message_id":"11e11f8422811a2d9e6cd681e3dd9fb47067dc22","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"ca9f5221_82933432","updated":"2025-03-10 18:57:58.000000000","message":"recheck","commit_id":"75195cbae1b950b78224e226af62394917abe1fe"},{"author":{"_account_id":35133,"name":"Jan Jasek","email":"jjasek@redhat.com","username":"janjasek"},"change_message_id":"758d35dc77d7d2e47b4fa6d17bc2b11e9c8497d1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"4415c4cf_939de49c","updated":"2025-03-10 13:20:24.000000000","message":"recheck, random failure (volume stuck in reserved state)","commit_id":"75195cbae1b950b78224e226af62394917abe1fe"}],"openstack_dashboard/api/neutron.py":[{"author":{"_account_id":8648,"name":"Radomir Dopieralski","email":"openstack@dopieralski.pl","username":"thesheep"},"change_message_id":"fa59146282c235abcaa8c0a31419618c7b169fe5","unresolved":true,"context_lines":[{"line_number":2045,"context_line":"@profiler.trace"},{"line_number":2046,"context_line":"def tenant_quota_get(request, tenant_id):"},{"line_number":2047,"context_line":"    return base.QuotaSet("},{"line_number":2048,"context_line":"        networkclient(request).get_quota(tenant_id).to_dict().pop(\u0027location\u0027))"},{"line_number":2049,"context_line":""},{"line_number":2050,"context_line":""},{"line_number":2051,"context_line":"@profiler.trace"}],"source_content_type":"text/x-python","patch_set":1,"id":"6d53ecb4_d7ddd984","line":2048,"updated":"2024-11-22 12:21:23.000000000","message":"why pop() and not [\u0027location\u0027]? we don\u0027t need to modify it in place?","commit_id":"7ca0f1daebe81a284bc398a651b800c768e595d5"},{"author":{"_account_id":8648,"name":"Radomir Dopieralski","email":"openstack@dopieralski.pl","username":"thesheep"},"change_message_id":"8812cf148c23a25da0b3984701c8198e847a4d47","unresolved":true,"context_lines":[{"line_number":2045,"context_line":"@profiler.trace"},{"line_number":2046,"context_line":"def tenant_quota_get(request, tenant_id):"},{"line_number":2047,"context_line":"    return base.QuotaSet("},{"line_number":2048,"context_line":"        networkclient(request).get_quota(tenant_id).to_dict().pop(\u0027location\u0027))"},{"line_number":2049,"context_line":""},{"line_number":2050,"context_line":""},{"line_number":2051,"context_line":"@profiler.trace"}],"source_content_type":"text/x-python","patch_set":1,"id":"95c8a134_071a591b","line":2048,"in_reply_to":"63572d9e_e1397e58","updated":"2024-12-09 09:51:24.000000000","message":"but pop returns the thing it removed, not the removed dict...","commit_id":"7ca0f1daebe81a284bc398a651b800c768e595d5"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"189700e05a4168b355aaca15d0a706253c42540b","unresolved":true,"context_lines":[{"line_number":2045,"context_line":"@profiler.trace"},{"line_number":2046,"context_line":"def tenant_quota_get(request, tenant_id):"},{"line_number":2047,"context_line":"    return base.QuotaSet("},{"line_number":2048,"context_line":"        networkclient(request).get_quota(tenant_id).to_dict().pop(\u0027location\u0027))"},{"line_number":2049,"context_line":""},{"line_number":2050,"context_line":""},{"line_number":2051,"context_line":"@profiler.trace"}],"source_content_type":"text/x-python","patch_set":1,"id":"63572d9e_e1397e58","line":2048,"in_reply_to":"6d53ecb4_d7ddd984","updated":"2024-12-03 12:09:51.000000000","message":"this location is actually contains the Much and such things, and at the moment not used by Horizon, i.e.:\nopenstack.network.v2.router.Router(id\u003d1253..... revision\u003d4, project_id\u003db......, location\u003dMunch({\u0027cloud\u0027: \u0027w.x.y.z\u0027, \u0027region_name\u0027: \u0027RegionOne\u0027, \u0027zone\u0027: None, \u0027project\u0027: Munch({\u0027id\u0027: \u0027....\u0027, \u0027name\u0027: None, \u0027domain_id\u0027: None, \u0027domain_name\u0027: None})}))","commit_id":"7ca0f1daebe81a284bc398a651b800c768e595d5"},{"author":{"_account_id":8648,"name":"Radomir Dopieralski","email":"openstack@dopieralski.pl","username":"thesheep"},"change_message_id":"fa59146282c235abcaa8c0a31419618c7b169fe5","unresolved":true,"context_lines":[{"line_number":2064,"context_line":"def default_quota_get(request, tenant_id\u003dNone):"},{"line_number":2065,"context_line":"    tenant_id \u003d tenant_id or request.user.tenant_id"},{"line_number":2066,"context_line":"    response \u003d networkclient(request).get_quota_default(tenant_id).to_dict()"},{"line_number":2067,"context_line":"    return base.QuotaSet(response.pop(\u0027location\u0027))"},{"line_number":2068,"context_line":""},{"line_number":2069,"context_line":""},{"line_number":2070,"context_line":"@profiler.trace"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a397b73_00e687c3","line":2067,"updated":"2024-11-22 12:21:23.000000000","message":"ditto","commit_id":"7ca0f1daebe81a284bc398a651b800c768e595d5"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"2161d94649eebbfa6a09d87236f7ec8e1e9f35ec","unresolved":true,"context_lines":[{"line_number":2074,"context_line":"    # not handled by Horizon:"},{"line_number":2075,"context_line":"    # https://opendev.org/openstack/openstacksdk/src/branch/"},{"line_number":2076,"context_line":"    # master/openstack/network/v2/quota.py"},{"line_number":2077,"context_line":"    pop_items \u003d (\u0027check_limit\u0027, \u0027health_monitors\u0027, \u0027listeners\u0027,"},{"line_number":2078,"context_line":"                 \u0027load_balancers\u0027, \u0027l7_policies\u0027, \u0027pools\u0027, \u0027project_id\u0027,"},{"line_number":2079,"context_line":"                 \u0027id\u0027, \u0027name\u0027, \u0027location\u0027)"},{"line_number":2080,"context_line":"    tenant_id \u003d tenant_id or request.user.tenant_id"},{"line_number":2081,"context_line":"    response \u003d networkclient(request).get_quota_default(tenant_id).to_dict()"},{"line_number":2082,"context_line":"    for pop_item in pop_items:"}],"source_content_type":"text/x-python","patch_set":4,"id":"230acee3_e85f8695","line":2079,"range":{"start_line":2077,"start_character":0,"end_line":2079,"end_character":42},"updated":"2024-12-11 09:01:08.000000000","message":"these should be moved to some common place....","commit_id":"c3d318ce55d79cca382dac648e9e9fcd0118fc26"}],"openstack_dashboard/dashboards/identity/projects/tests.py":[{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"28fc76b7ea4f52c6b116747d740923330922d6de","unresolved":true,"context_lines":[{"line_number":1067,"context_line":""},{"line_number":1068,"context_line":"        self.assertNoFormErrors(res)"},{"line_number":1069,"context_line":"        self.assertMessageCount(error\u003d0, warning\u003d0)"},{"line_number":1070,"context_line":"        self.assertRedirectsNoFollow(res, INDEX_URL)"},{"line_number":1071,"context_line":""},{"line_number":1072,"context_line":"        self.mock_get_disabled_quotas.assert_called_once_with("},{"line_number":1073,"context_line":"            test.IsHttpRequest())"}],"source_content_type":"text/x-python","patch_set":5,"id":"e818f774_a40dfe31","line":1070,"updated":"2024-12-13 17:22:47.000000000","message":"The issue for me is here, the \"res\" doesn\u0027t have location and none of the *_tenant_quota_update methods are called.\nI suppose self.client.post is the magic but can\u0027t figure out where the call chain goes wrong to call the tenant_quota_update methods.","commit_id":"b08acddcc4ce4696a188060730b501fd4d178067"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"fcbdeeae4e027dc44300a9af7fa37a38cd686a07","unresolved":true,"context_lines":[{"line_number":1067,"context_line":""},{"line_number":1068,"context_line":"        self.assertNoFormErrors(res)"},{"line_number":1069,"context_line":"        self.assertMessageCount(error\u003d0, warning\u003d0)"},{"line_number":1070,"context_line":"        self.assertRedirectsNoFollow(res, INDEX_URL)"},{"line_number":1071,"context_line":""},{"line_number":1072,"context_line":"        self.mock_get_disabled_quotas.assert_called_once_with("},{"line_number":1073,"context_line":"            test.IsHttpRequest())"}],"source_content_type":"text/x-python","patch_set":5,"id":"30ed075e_32f7a0db","line":1070,"in_reply_to":"adcbd9b8_0f72eef5","updated":"2025-01-03 11:06:12.000000000","message":"I simplified the patch by removing the quota related things","commit_id":"b08acddcc4ce4696a188060730b501fd4d178067"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"06de3b929e6df5c9b77497e11326ff0f54e196b9","unresolved":true,"context_lines":[{"line_number":1067,"context_line":""},{"line_number":1068,"context_line":"        self.assertNoFormErrors(res)"},{"line_number":1069,"context_line":"        self.assertMessageCount(error\u003d0, warning\u003d0)"},{"line_number":1070,"context_line":"        self.assertRedirectsNoFollow(res, INDEX_URL)"},{"line_number":1071,"context_line":""},{"line_number":1072,"context_line":"        self.mock_get_disabled_quotas.assert_called_once_with("},{"line_number":1073,"context_line":"            test.IsHttpRequest())"}],"source_content_type":"text/x-python","patch_set":5,"id":"adcbd9b8_0f72eef5","line":1070,"in_reply_to":"e5751fd3_086bfc12","updated":"2024-12-18 09:02:18.000000000","message":"thanks, I will check it","commit_id":"b08acddcc4ce4696a188060730b501fd4d178067"},{"author":{"_account_id":8648,"name":"Radomir Dopieralski","email":"openstack@dopieralski.pl","username":"thesheep"},"change_message_id":"6b780376f94df0cc68b7436bfa4ec13f73464d34","unresolved":true,"context_lines":[{"line_number":1067,"context_line":""},{"line_number":1068,"context_line":"        self.assertNoFormErrors(res)"},{"line_number":1069,"context_line":"        self.assertMessageCount(error\u003d0, warning\u003d0)"},{"line_number":1070,"context_line":"        self.assertRedirectsNoFollow(res, INDEX_URL)"},{"line_number":1071,"context_line":""},{"line_number":1072,"context_line":"        self.mock_get_disabled_quotas.assert_called_once_with("},{"line_number":1073,"context_line":"            test.IsHttpRequest())"}],"source_content_type":"text/x-python","patch_set":5,"id":"e5751fd3_086bfc12","line":1070,"in_reply_to":"e818f774_a40dfe31","updated":"2024-12-16 17:02:08.000000000","message":"I would guess that\u0027s because there is an error processing the form, and it redisplays it with the error, instead of redirecting?","commit_id":"b08acddcc4ce4696a188060730b501fd4d178067"}]}
