)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b3c99e640b275d23e8e6e9304ea9b61bcf80df7c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"35c0b5b3_d9d83b7b","updated":"2023-09-12 11:50:59.000000000","message":"So this breaks Keystone and maybe others. Fun. Guess we need to fix that first.","commit_id":"a416b66854f77b1bd52bb12c322c7e07e3a47c8b"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"7ba9bc8223b087a3c0e8728cbe14faff9c3b34fe","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"91ae6293_2e37fb0f","in_reply_to":"35c0b5b3_d9d83b7b","updated":"2023-09-12 11:51:36.000000000","message":"Or rather, the preceding patch does.","commit_id":"a416b66854f77b1bd52bb12c322c7e07e3a47c8b"}],"oslo_context/context.py":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"725c504b8af46f634d2eb1507c01ed8ae0380619","unresolved":true,"context_lines":[{"line_number":400,"context_line":"    def from_environ("},{"line_number":401,"context_line":"        cls, environ: ty.Dict[str, ty.Any], **kwargs: ty.Any,"},{"line_number":402,"context_line":"    ) -\u003e ty_ext.Self:"},{"line_number":403,"context_line":"        \"\"\"Construct a context object from a provided dictionary.\"\"\""},{"line_number":404,"context_line":"        \"\"\"Load a context object from a request environment."},{"line_number":405,"context_line":""},{"line_number":406,"context_line":"        If keyword arguments are provided then they override the values in the"}],"source_content_type":"text/x-python","patch_set":8,"id":"41113e7b_c5e90985","line":403,"range":{"start_line":403,"start_character":8,"end_line":403,"end_character":68},"updated":"2025-04-05 16:49:40.000000000","message":"I guess this is not intentional ?","commit_id":"ca414d605b1b33dd1af79a3193fe28e66545d10d"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"bb4c235ae743a4436bb788f88f2da4a12e42ce3e","unresolved":false,"context_lines":[{"line_number":400,"context_line":"    def from_environ("},{"line_number":401,"context_line":"        cls, environ: ty.Dict[str, ty.Any], **kwargs: ty.Any,"},{"line_number":402,"context_line":"    ) -\u003e ty_ext.Self:"},{"line_number":403,"context_line":"        \"\"\"Construct a context object from a provided dictionary.\"\"\""},{"line_number":404,"context_line":"        \"\"\"Load a context object from a request environment."},{"line_number":405,"context_line":""},{"line_number":406,"context_line":"        If keyword arguments are provided then they override the values in the"}],"source_content_type":"text/x-python","patch_set":8,"id":"f3215d65_2afb463f","line":403,"range":{"start_line":403,"start_character":8,"end_line":403,"end_character":68},"in_reply_to":"41113e7b_c5e90985","updated":"2025-04-07 10:02:46.000000000","message":"It was not, no","commit_id":"ca414d605b1b33dd1af79a3193fe28e66545d10d"}]}
