)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"c6f2cdee63d054e0e6a56e579687ed227a744837","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"95a7abbb_674bb13b","updated":"2024-10-26 16:25:04.000000000","message":"The overall direction looks good. A few suggestions inline.","commit_id":"c5c3eba686f816b9a1e32a6c5f7201967ae95be0"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"a3c987b0f46797fd2fa04e96457e886967dd969a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"21982bbf_9618201a","in_reply_to":"95a7abbb_674bb13b","updated":"2024-10-28 13:09:31.000000000","message":"Comments addressed, thanks for your previous suggestions.","commit_id":"c5c3eba686f816b9a1e32a6c5f7201967ae95be0"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"e9dc8eb45e37ed436e3b5f73832adb4513c94817","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"61f0bb37_1e209f0a","updated":"2024-10-29 13:13:39.000000000","message":"The failure in unit tests looks legit.","commit_id":"6bb3acd9cfdeae1b0ef9701868207a8c76dff41b"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"54b7e0e885ef011e60f4d1a09abb57e89ed74d72","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"b35656cf_8ff419dc","updated":"2024-10-28 15:16:06.000000000","message":"recheck","commit_id":"6bb3acd9cfdeae1b0ef9701868207a8c76dff41b"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"649418ccd3d71c06670360a134c5e870455c469a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"8b199129_917fda64","updated":"2024-10-30 10:55:32.000000000","message":"One other aspect that I wonder about, is, if the mechanism I proposed to deprecate (the eventlet executor) superseed at run the executor parameter from the `get_rpc_server` method.\n\nTakashi suggested to deprecate this parameter in the neutron patch linked below, and I agree with him:\nhttps://review.opendev.org/c/openstack/neutron-lib/+/930716\n\nBut I don\u0027t know if both mechanisms are interdependent or not. The one I deprecated here is based on a check of the environment (is the env monkey patched or not?), where the method (`get_rpc_server`) parameter ones apparently search to force the executor, so, I\u0027d argue that the ones deprecated here overseed the passed arguments.\n\nI\u0027ll investigate more deeply this point, because if the method parameter is ignored that mean that services should explicitly stop monkey patching their env to be sure that the eventlet executor is not used in their RPC context.\n\nI\u0027m gonna go to propose a follow up patch to deprecate the executor parameter from the rpc methods. In all the case it cannot hurt.","commit_id":"5cd72c206940e5f88f95212f62b588eecfc2990e"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"76c0df743bba53e1ae70155269074c860ab04a1a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"d8a336f2_fee8c6f1","updated":"2024-12-09 13:18:35.000000000","message":"recheck","commit_id":"5cd72c206940e5f88f95212f62b588eecfc2990e"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"5ad91949a307cd55e51921f1697c5630b83f92c0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"20dc16e9_798ab5cd","in_reply_to":"14521d97_88d580dc","updated":"2024-10-30 13:04:35.000000000","message":"I mentionned this thread on the neutron side https://review.opendev.org/c/openstack/neutron-lib/+/930716/comments/97b270b8_9e25d077","commit_id":"5cd72c206940e5f88f95212f62b588eecfc2990e"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"fe1e391e265cf1d0a2a1936949fa740ee7b9b2fa","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"9806c224_d65e1398","in_reply_to":"8b199129_917fda64","updated":"2024-10-30 11:01:12.000000000","message":"In other words, I want to understand is both mechanisms are exclusive or inclusive","commit_id":"5cd72c206940e5f88f95212f62b588eecfc2990e"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"cf5838238d2927b95872263b060e9a8ac203f8ce","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"14521d97_88d580dc","in_reply_to":"9806c224_d65e1398","updated":"2024-10-30 11:18:10.000000000","message":"So, I think I now have my answer...\n\nUnfortunatelly if the executor is set to None (the default value and also the new situation in Neutron), then, the `utils.get_executor_with_context` is called, so, if neutron monkey patch their env, then the RPC server will be based on an Eventlet executor:\n\n- https://opendev.org/openstack/oslo.messaging/src/branch/master/oslo_messaging/rpc/server.py#L142\n- https://opendev.org/openstack/oslo.messaging/src/branch/master/oslo_messaging/server.py#L333\n- https://opendev.org/openstack/oslo.messaging/src/branch/master/oslo_messaging/_utils.py#L88\n\nSo now, my new concerns is that if we force the threading executor in a monkey patched env, then, we will have have a kind of mixed environment with greenthread and native threads, which is the recipe for inconsitent behaviours (see the `heartbeat_in_pthread` story). Leading us to greenlet errors like `greenlet.error: cannot switch to a different thread`... https://greenlet.readthedocs.io/en/stable/python_threads.html","commit_id":"5cd72c206940e5f88f95212f62b588eecfc2990e"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"eda3359eda2fc1308134b8943f66c7099e332c74","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"c541faa7_fc8afdc0","updated":"2024-12-09 14:14:24.000000000","message":"I fixed the test error and I squashed the follow up patch with this one.","commit_id":"4f4aa9d186a9ef74355a2ec9aa330e2924d41f2a"},{"author":{"_account_id":31245,"name":"Daniel Bengtsson","email":"dbengt@redhat.com","username":"damani42"},"change_message_id":"9048581ad16a6cb520b348d6aea9d66e738bfce4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"04f5e9da_7012c0bf","updated":"2024-12-19 14:06:21.000000000","message":"Looks good to merge.","commit_id":"8f043cd3bea082d131eaad0c25b4c6fa8ef70d6c"}],"oslo_messaging/server.py":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"c6f2cdee63d054e0e6a56e579687ed227a744837","unresolved":true,"context_lines":[{"line_number":347,"context_line":"                what\u003d\"the \u0027oslo.messaging eventlet executor\u0027\")"},{"line_number":348,"context_line":""},{"line_number":349,"context_line":"            debtcollector.deprecate("},{"line_number":350,"context_line":"                \"\"\""},{"line_number":351,"context_line":"                Eventlet usages are deprecated and the removal"},{"line_number":352,"context_line":"                of Eventlet from OpenStack is planned, for this reason"},{"line_number":353,"context_line":"                the Eventlet executor is deprecated."},{"line_number":354,"context_line":"                Start migrating your stack to the"},{"line_number":355,"context_line":"                threading executor. Please also start considering"},{"line_number":356,"context_line":"                removing your internal Eventlet usages."},{"line_number":357,"context_line":"                \"\"\","},{"line_number":358,"context_line":"                version\u003d\"epoxy\", removal_version\u003d\"G\","},{"line_number":359,"context_line":"                category\u003dFutureWarning"}],"source_content_type":"text/x-python","patch_set":2,"id":"99ede9bc_c907a4a7","line":356,"range":{"start_line":350,"start_character":19,"end_line":356,"end_character":55},"updated":"2024-10-26 16:25:04.000000000","message":"Using heredoc is a bad idea here, especially because this appears as multi-line strings in logs which can\u0027t be easily parsed by software. Let\u0027s avoid using heredoc but use plain string.","commit_id":"c5c3eba686f816b9a1e32a6c5f7201967ae95be0"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"e619a49293d49f1f2977a900eb82e085e7b59d43","unresolved":false,"context_lines":[{"line_number":347,"context_line":"                what\u003d\"the \u0027oslo.messaging eventlet executor\u0027\")"},{"line_number":348,"context_line":""},{"line_number":349,"context_line":"            debtcollector.deprecate("},{"line_number":350,"context_line":"                \"\"\""},{"line_number":351,"context_line":"                Eventlet usages are deprecated and the removal"},{"line_number":352,"context_line":"                of Eventlet from OpenStack is planned, for this reason"},{"line_number":353,"context_line":"                the Eventlet executor is deprecated."},{"line_number":354,"context_line":"                Start migrating your stack to the"},{"line_number":355,"context_line":"                threading executor. Please also start considering"},{"line_number":356,"context_line":"                removing your internal Eventlet usages."},{"line_number":357,"context_line":"                \"\"\","},{"line_number":358,"context_line":"                version\u003d\"epoxy\", removal_version\u003d\"G\","},{"line_number":359,"context_line":"                category\u003dFutureWarning"}],"source_content_type":"text/x-python","patch_set":2,"id":"c68f2353_8b3d820c","line":356,"range":{"start_line":350,"start_character":19,"end_line":356,"end_character":55},"in_reply_to":"30b604a6_777b2bed","updated":"2024-10-28 13:50:36.000000000","message":"Done","commit_id":"c5c3eba686f816b9a1e32a6c5f7201967ae95be0"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"977529eb08e747924fe4f6e33bab4b9b0728113a","unresolved":true,"context_lines":[{"line_number":347,"context_line":"                what\u003d\"the \u0027oslo.messaging eventlet executor\u0027\")"},{"line_number":348,"context_line":""},{"line_number":349,"context_line":"            debtcollector.deprecate("},{"line_number":350,"context_line":"                \"\"\""},{"line_number":351,"context_line":"                Eventlet usages are deprecated and the removal"},{"line_number":352,"context_line":"                of Eventlet from OpenStack is planned, for this reason"},{"line_number":353,"context_line":"                the Eventlet executor is deprecated."},{"line_number":354,"context_line":"                Start migrating your stack to the"},{"line_number":355,"context_line":"                threading executor. Please also start considering"},{"line_number":356,"context_line":"                removing your internal Eventlet usages."},{"line_number":357,"context_line":"                \"\"\","},{"line_number":358,"context_line":"                version\u003d\"epoxy\", removal_version\u003d\"G\","},{"line_number":359,"context_line":"                category\u003dFutureWarning"}],"source_content_type":"text/x-python","patch_set":2,"id":"30b604a6_777b2bed","line":356,"range":{"start_line":350,"start_character":19,"end_line":356,"end_character":55},"in_reply_to":"99ede9bc_c907a4a7","updated":"2024-10-28 12:56:35.000000000","message":"Ok, will use plain string.","commit_id":"c5c3eba686f816b9a1e32a6c5f7201967ae95be0"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"c6f2cdee63d054e0e6a56e579687ed227a744837","unresolved":true,"context_lines":[{"line_number":356,"context_line":"                removing your internal Eventlet usages."},{"line_number":357,"context_line":"                \"\"\","},{"line_number":358,"context_line":"                version\u003d\"epoxy\", removal_version\u003d\"G\","},{"line_number":359,"context_line":"                category\u003dFutureWarning"},{"line_number":360,"context_line":"            )"},{"line_number":361,"context_line":""},{"line_number":362,"context_line":"        self.listener \u003d None"}],"source_content_type":"text/x-python","patch_set":2,"id":"aa3f1b7a_78a39f52","line":359,"range":{"start_line":359,"start_character":25,"end_line":359,"end_character":38},"updated":"2024-10-26 16:25:04.000000000","message":"I think DeprecationWarning is more aligned with the intention.","commit_id":"c5c3eba686f816b9a1e32a6c5f7201967ae95be0"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"e619a49293d49f1f2977a900eb82e085e7b59d43","unresolved":false,"context_lines":[{"line_number":356,"context_line":"                removing your internal Eventlet usages."},{"line_number":357,"context_line":"                \"\"\","},{"line_number":358,"context_line":"                version\u003d\"epoxy\", removal_version\u003d\"G\","},{"line_number":359,"context_line":"                category\u003dFutureWarning"},{"line_number":360,"context_line":"            )"},{"line_number":361,"context_line":""},{"line_number":362,"context_line":"        self.listener \u003d None"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a4965d4_1b87e901","line":359,"range":{"start_line":359,"start_character":25,"end_line":359,"end_character":38},"in_reply_to":"0f36a123_6e75d3f4","updated":"2024-10-28 13:50:36.000000000","message":"Done","commit_id":"c5c3eba686f816b9a1e32a6c5f7201967ae95be0"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"977529eb08e747924fe4f6e33bab4b9b0728113a","unresolved":true,"context_lines":[{"line_number":356,"context_line":"                removing your internal Eventlet usages."},{"line_number":357,"context_line":"                \"\"\","},{"line_number":358,"context_line":"                version\u003d\"epoxy\", removal_version\u003d\"G\","},{"line_number":359,"context_line":"                category\u003dFutureWarning"},{"line_number":360,"context_line":"            )"},{"line_number":361,"context_line":""},{"line_number":362,"context_line":"        self.listener \u003d None"}],"source_content_type":"text/x-python","patch_set":2,"id":"0f36a123_6e75d3f4","line":359,"range":{"start_line":359,"start_character":25,"end_line":359,"end_character":38},"in_reply_to":"aa3f1b7a_78a39f52","updated":"2024-10-28 12:56:35.000000000","message":"I copied the way we deprecated the blocking executor (now removed), people used the futurwarning, but I\u0027m not against using the \"deprecationwarning\"","commit_id":"c5c3eba686f816b9a1e32a6c5f7201967ae95be0"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"e9dc8eb45e37ed436e3b5f73832adb4513c94817","unresolved":true,"context_lines":[{"line_number":353,"context_line":"                \u0027Start migrating your stack to the \u0027"},{"line_number":354,"context_line":"                \u0027threading executor. Please also start considering \u0027"},{"line_number":355,"context_line":"                \u0027removing your internal Eventlet usages.\u0027,"},{"line_number":356,"context_line":"                version\u003d\"epoxy\", removal_version\u003d\"G\","},{"line_number":357,"context_line":"                category\u003dDeprecationWarning"},{"line_number":358,"context_line":"            )"},{"line_number":359,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3202e8c5_c77ba213","line":356,"range":{"start_line":356,"start_character":16,"end_line":356,"end_character":53},"updated":"2024-10-29 13:13:39.000000000","message":"These two are causing additional message. Probably we should drop these.\n\n```\nreference \u003d [call(\u0027Eventlet usages are deprecated and the removal of Eventlet from OpenStack is planned, for this reason the Eventlet executor is deprecated. Start migrating your stack to the threading executor. Please also start considering removing your internal Eventlet usages.\u0027, category\u003d\u003cclass \u0027DeprecationWarning\u0027\u003e, stacklevel\u003d3)]\nactual    \u003d [call(\"Eventlet usages are deprecated and the removal of Eventlet from OpenStack is planned, for this reason the Eventlet executor is deprecated. Start migrating your stack to the threading executor. Please also start considering removing your internal Eventlet usages. in version \u0027epoxy\u0027 and will be removed in version \u0027G\u0027\", category\u003d\u003cclass \u0027DeprecationWarning\u0027\u003e, stacklevel\u003d3)]\n```","commit_id":"6bb3acd9cfdeae1b0ef9701868207a8c76dff41b"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"dfcd3d3825bad40c9e43df612df00caf25b4358e","unresolved":true,"context_lines":[{"line_number":353,"context_line":"                \u0027Start migrating your stack to the \u0027"},{"line_number":354,"context_line":"                \u0027threading executor. Please also start considering \u0027"},{"line_number":355,"context_line":"                \u0027removing your internal Eventlet usages.\u0027,"},{"line_number":356,"context_line":"                version\u003d\"epoxy\", removal_version\u003d\"G\","},{"line_number":357,"context_line":"                category\u003dDeprecationWarning"},{"line_number":358,"context_line":"            )"},{"line_number":359,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"f210fd7e_2e5d274f","line":356,"range":{"start_line":356,"start_character":16,"end_line":356,"end_character":53},"in_reply_to":"3202e8c5_c77ba213","updated":"2024-10-30 09:31:07.000000000","message":"indeed, lets try first with the replacement of futurwarning by deprecationwarning in tests, and if the error continue, I think I\u0027ll simply check for the presence of a couple of keywords in the assertion.","commit_id":"6bb3acd9cfdeae1b0ef9701868207a8c76dff41b"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"f4a6aeff3c698f0a1c5f1abe1de85fed64b0d2e0","unresolved":true,"context_lines":[{"line_number":358,"context_line":"                \u0027Start migrating your stack to the \u0027"},{"line_number":359,"context_line":"                \u0027threading executor. Please also start considering \u0027"},{"line_number":360,"context_line":"                \u0027removing your internal Eventlet usages.\u0027,"},{"line_number":361,"context_line":"                version\u003d\"epoxy\", removal_version\u003d\"G\","},{"line_number":362,"context_line":"                category\u003dDeprecationWarning"},{"line_number":363,"context_line":"            )"},{"line_number":364,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"952a314f_2e9b43df","line":361,"range":{"start_line":361,"start_character":25,"end_line":361,"end_character":30},"updated":"2024-12-19 15:38:34.000000000","message":"(probably nit) I wonder if we should use the official release name such as 2025.1 here. This allows us to use consistent format for removal_version (2026.1).","commit_id":"8f043cd3bea082d131eaad0c25b4c6fa8ef70d6c"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"2eeb5de04abc9ad6102baeda3bd6a7a24da11db3","unresolved":false,"context_lines":[{"line_number":358,"context_line":"                \u0027Start migrating your stack to the \u0027"},{"line_number":359,"context_line":"                \u0027threading executor. Please also start considering \u0027"},{"line_number":360,"context_line":"                \u0027removing your internal Eventlet usages.\u0027,"},{"line_number":361,"context_line":"                version\u003d\"epoxy\", removal_version\u003d\"G\","},{"line_number":362,"context_line":"                category\u003dDeprecationWarning"},{"line_number":363,"context_line":"            )"},{"line_number":364,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"82e9bddb_27a2b9f4","line":361,"range":{"start_line":361,"start_character":25,"end_line":361,"end_character":30},"in_reply_to":"952a314f_2e9b43df","updated":"2024-12-19 16:02:59.000000000","message":"Good question, lets use 2025.1","commit_id":"8f043cd3bea082d131eaad0c25b4c6fa8ef70d6c"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"2eeb5de04abc9ad6102baeda3bd6a7a24da11db3","unresolved":true,"context_lines":[{"line_number":358,"context_line":"                \u0027Start migrating your stack to the \u0027"},{"line_number":359,"context_line":"                \u0027threading executor. Please also start considering \u0027"},{"line_number":360,"context_line":"                \u0027removing your internal Eventlet usages.\u0027,"},{"line_number":361,"context_line":"                version\u003d\"2025.1\", removal_version\u003d\"2026.1\","},{"line_number":362,"context_line":"                category\u003dDeprecationWarning"},{"line_number":363,"context_line":"            )"},{"line_number":364,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"c5c0bb51_6fbcb084","line":361,"range":{"start_line":361,"start_character":51,"end_line":361,"end_character":57},"updated":"2024-12-19 16:02:59.000000000","message":"The unit test should be also updated","commit_id":"f05075c7e295ebbe5b159f963a7c8243b3dcdf96"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"ccc74e3c20c9208332c4311e757feb0da650b455","unresolved":false,"context_lines":[{"line_number":358,"context_line":"                \u0027Start migrating your stack to the \u0027"},{"line_number":359,"context_line":"                \u0027threading executor. Please also start considering \u0027"},{"line_number":360,"context_line":"                \u0027removing your internal Eventlet usages.\u0027,"},{"line_number":361,"context_line":"                version\u003d\"2025.1\", removal_version\u003d\"2026.1\","},{"line_number":362,"context_line":"                category\u003dDeprecationWarning"},{"line_number":363,"context_line":"            )"},{"line_number":364,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"67722f7b_fe74ebde","line":361,"range":{"start_line":361,"start_character":51,"end_line":361,"end_character":57},"in_reply_to":"c5c0bb51_6fbcb084","updated":"2024-12-19 16:04:04.000000000","message":"Done","commit_id":"f05075c7e295ebbe5b159f963a7c8243b3dcdf96"}],"oslo_messaging/tests/rpc/test_server.py":[{"author":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"change_message_id":"f1fe0ed0f41cf02f72beb1ed2274c8f626c3e91c","unresolved":true,"context_lines":[{"line_number":149,"context_line":"        serializer \u003d object()"},{"line_number":150,"context_line":"        access_policy \u003d dispatcher.DefaultRPCAccessPolicy"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"        warnings.simplefilter(\"always\", FutureWarning)"},{"line_number":153,"context_line":"        server \u003d oslo_messaging.get_rpc_server(transport,"},{"line_number":154,"context_line":"                                               target,"},{"line_number":155,"context_line":"                                               endpoints,"}],"source_content_type":"text/x-python","patch_set":3,"id":"06c6f6f8_a7a79232","line":152,"updated":"2024-10-29 13:57:30.000000000","message":"missed here?","commit_id":"6bb3acd9cfdeae1b0ef9701868207a8c76dff41b"},{"author":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"change_message_id":"e0a917506c4c168679c4c29aef8953ed05655478","unresolved":true,"context_lines":[{"line_number":149,"context_line":"        serializer \u003d object()"},{"line_number":150,"context_line":"        access_policy \u003d dispatcher.DefaultRPCAccessPolicy"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"        warnings.simplefilter(\"always\", FutureWarning)"},{"line_number":153,"context_line":"        server \u003d oslo_messaging.get_rpc_server(transport,"},{"line_number":154,"context_line":"                                               target,"},{"line_number":155,"context_line":"                                               endpoints,"}],"source_content_type":"text/x-python","patch_set":3,"id":"ac0683f0_1f6a7cbf","line":152,"in_reply_to":"06c6f6f8_a7a79232","updated":"2024-10-29 13:57:53.000000000","message":"L152 still says FutureWarning","commit_id":"6bb3acd9cfdeae1b0ef9701868207a8c76dff41b"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"dfcd3d3825bad40c9e43df612df00caf25b4358e","unresolved":true,"context_lines":[{"line_number":149,"context_line":"        serializer \u003d object()"},{"line_number":150,"context_line":"        access_policy \u003d dispatcher.DefaultRPCAccessPolicy"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"        warnings.simplefilter(\"always\", FutureWarning)"},{"line_number":153,"context_line":"        server \u003d oslo_messaging.get_rpc_server(transport,"},{"line_number":154,"context_line":"                                               target,"},{"line_number":155,"context_line":"                                               endpoints,"}],"source_content_type":"text/x-python","patch_set":3,"id":"d84cb27f_a9d53904","line":152,"in_reply_to":"ac0683f0_1f6a7cbf","updated":"2024-10-30 09:31:07.000000000","message":"Good catch, thanks","commit_id":"6bb3acd9cfdeae1b0ef9701868207a8c76dff41b"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"2eeb5de04abc9ad6102baeda3bd6a7a24da11db3","unresolved":false,"context_lines":[{"line_number":149,"context_line":"        serializer \u003d object()"},{"line_number":150,"context_line":"        access_policy \u003d dispatcher.DefaultRPCAccessPolicy"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"        warnings.simplefilter(\"always\", FutureWarning)"},{"line_number":153,"context_line":"        server \u003d oslo_messaging.get_rpc_server(transport,"},{"line_number":154,"context_line":"                                               target,"},{"line_number":155,"context_line":"                                               endpoints,"}],"source_content_type":"text/x-python","patch_set":3,"id":"14748484_4103a663","line":152,"in_reply_to":"d84cb27f_a9d53904","updated":"2024-12-19 16:02:59.000000000","message":"Done","commit_id":"6bb3acd9cfdeae1b0ef9701868207a8c76dff41b"}]}
