)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"77a0465fd20f7f9a4412b5c9cd11b49f5409d5ba","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"8c5187c9_61ace58f","updated":"2025-12-16 10:43:21.000000000","message":"recheck","commit_id":"2761237562be8f0f7324ca99ff92c4b3e3b1d2b9"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"0da57ab3b3cdf5a399c4153ff43837ea4f936da7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"bed4e4f4_c473ace5","updated":"2025-12-09 15:31:15.000000000","message":"recheck","commit_id":"2761237562be8f0f7324ca99ff92c4b3e3b1d2b9"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"7796f50c8778f0f0de12c894cca09f6e9a1546d8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"d80070c6_adbfa70f","updated":"2026-02-03 06:31:22.000000000","message":"Thanks Kiran, please see comments inline, and also add a release note.","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"c3623670096c9b0bd8fcdb7931838948e7e7b950","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"cadf959c_125d6502","updated":"2026-01-19 12:23:08.000000000","message":"recheck","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"f07af021a8ba2d691e8b5fc1bd6de81353d964ef","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"d371b8bf_3657df91","updated":"2026-01-20 05:02:44.000000000","message":"recheck","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"6508d2250c05cd9510b8ca10e0d5bbc4358a6529","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":15,"id":"2c28b268_263ffffe","updated":"2026-02-24 19:12:48.000000000","message":"Adding my vote on the unresolved comment.. the test you removed seems useful","commit_id":"cc368a90cad618338f65191d0133cab54e461944"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"4fb421bb0cc03bb7305cff005bcb4467d570d253","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"c7fd08f0_ef4fc539","in_reply_to":"2c28b268_263ffffe","updated":"2026-02-25 06:50:50.000000000","message":"The deleted test and test above it does same thing. Anyways added back.","commit_id":"cc368a90cad618338f65191d0133cab54e461944"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"08e6354bf3d3226662eb4a87cf809a924ae525dc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"d4fdf72a_d4c698e1","updated":"2026-02-25 16:46:31.000000000","message":"Thanks for working on this change, Kiran! Shouldn\u0027t the share creation workflow now start taking the QoS type as an arg? - The -1 is mostly for this question, the comment inline should not hold this up","commit_id":"919a19e7cad8c17ee7c7127d8b0a715b795e56ed"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"08e6354bf3d3226662eb4a87cf809a924ae525dc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"765de9d9_f62b23d0","updated":"2026-02-25 16:46:31.000000000","message":"Thanks for working on this change, Kiran. So this change introduces","commit_id":"919a19e7cad8c17ee7c7127d8b0a715b795e56ed"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"c5e396929cbcbd720e1495e0275380293049919e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"21ed4bfa_5eb587b1","updated":"2026-02-25 07:13:16.000000000","message":"recheck","commit_id":"919a19e7cad8c17ee7c7127d8b0a715b795e56ed"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"1c6e851e52f1e9877b5816c212f488a237e71ad7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"f564385c_a3397f66","updated":"2026-02-25 07:54:28.000000000","message":"unrelated test failure \n\n  File \"/opt/stack/data/venv/lib/python3.12/site-packages/tox/tox_env/python/api.py\", line 218, in \u003cgenexpr\u003e\n    if getattr(spec_name, key) is not None\n       ^^^^^^^^^^^^^^^^^^^^^^^\nAttributeError: \u0027PythonSpec\u0027 object has no attribute \u0027machine\u0027","commit_id":"919a19e7cad8c17ee7c7127d8b0a715b795e56ed"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"d676f79cc4bb313f2d977beb2cec059b57c82997","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"336ed44f_eb450cc6","in_reply_to":"d4fdf72a_d4c698e1","updated":"2026-02-25 16:59:05.000000000","message":"No, the share type extra-specs has default_qos_type and share created from that share type will have qos_type_id automatically picked up. this is what defined and decided in spec as well.\nhttps://specs.openstack.org/openstack/manila-specs/specs/gazpacho/qos_types.html","commit_id":"919a19e7cad8c17ee7c7127d8b0a715b795e56ed"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a822d961e61b0d1664d19b4e140fa554f3889c02","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":16,"id":"d9a07f8d_8cab48db","in_reply_to":"f564385c_a3397f66","updated":"2026-02-25 19:18:26.000000000","message":"This was addressed with a requirements update, your next patch will pull in a newer version of virtualenv and pass..","commit_id":"919a19e7cad8c17ee7c7127d8b0a715b795e56ed"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"09a482c5e1bb19d9535014d9ef2d0d5f2b9c4e99","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":18,"id":"01565b6f_59ee55ef","updated":"2026-02-25 21:47:14.000000000","message":"I rebased this change and addressed my own comments; in the interest of time, i\u0027ll leave my +2 here as well so other folks can merge this if they find it\u0027s acceptable.","commit_id":"a29ecbe2b617afc1b2ba20887e6d4f0a9a5ba91a"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"d4c477c7ddff4b0a723daac069b1e17f1221d4b6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":18,"id":"3c4423c2_ba60bd81","updated":"2026-02-25 22:22:40.000000000","message":"LGTM, thanks! We can pull the trigger when the core change makes it","commit_id":"a29ecbe2b617afc1b2ba20887e6d4f0a9a5ba91a"}],"manilaclient/api_versions.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"574b4cdb341be1b6fdc48aefbc46a02d49ea5606","unresolved":true,"context_lines":[{"line_number":27,"context_line":""},{"line_number":28,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"MAX_VERSION \u003d \u00272.94\u0027"},{"line_number":31,"context_line":"MIN_VERSION \u003d \u00272.0\u0027"},{"line_number":32,"context_line":"DEPRECATED_VERSION \u003d \u00271.0\u0027"},{"line_number":33,"context_line":"_VERSIONED_METHOD_MAP \u003d {}"}],"source_content_type":"text/x-python","patch_set":17,"id":"68ddc864_45e5d23e","line":30,"updated":"2026-02-25 21:20:27.000000000","message":"You\u0027ll need to rebase on the ensure_shares change or it\u0027ll break things","commit_id":"3869d624b653a452a6e6703553f59257ac676a8d"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"09a482c5e1bb19d9535014d9ef2d0d5f2b9c4e99","unresolved":false,"context_lines":[{"line_number":27,"context_line":""},{"line_number":28,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"MAX_VERSION \u003d \u00272.94\u0027"},{"line_number":31,"context_line":"MIN_VERSION \u003d \u00272.0\u0027"},{"line_number":32,"context_line":"DEPRECATED_VERSION \u003d \u00271.0\u0027"},{"line_number":33,"context_line":"_VERSIONED_METHOD_MAP \u003d {}"}],"source_content_type":"text/x-python","patch_set":17,"id":"56c4f0bf_8e3ef4b7","line":30,"in_reply_to":"68ddc864_45e5d23e","updated":"2026-02-25 21:47:14.000000000","message":"Done, @kinpaa@gmail.com: please review and merge the ensure-shares filtering change prior to this one if it makes sense to you","commit_id":"3869d624b653a452a6e6703553f59257ac676a8d"}],"manilaclient/osc/v2/qos_types.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"7796f50c8778f0f0de12c894cca09f6e9a1546d8","unresolved":true,"context_lines":[{"line_number":62,"context_line":"            help\u003d_(\"QoS type description.\"),"},{"line_number":63,"context_line":"        )"},{"line_number":64,"context_line":"        parser.add_argument("},{"line_number":65,"context_line":"            \"--specs\","},{"line_number":66,"context_line":"            type\u003dstr,"},{"line_number":67,"context_line":"            nargs\u003d\u0027*\u0027,"},{"line_number":68,"context_line":"            metavar\u003d\u0027\u003ckey\u003dvalue\u003e\u0027,"},{"line_number":69,"context_line":"            default\u003dNone,"},{"line_number":70,"context_line":"            help\u003d_("}],"source_content_type":"text/x-python","patch_set":5,"id":"eacce442_5ef194ca","line":67,"range":{"start_line":65,"start_character":12,"end_line":67,"end_character":21},"updated":"2026-02-03 06:31:22.000000000","message":"this nargs\u003d\u0027*\u0027 approach is not very user friendly, when you have an option that can accept multiple values, The OpenStack CLI convention is to use action\u003d\u0027append\u0027 with a single option name that can be repeated.\n\n https://docs.openstack.org/python-openstackclient/latest/contributor/humaninterfaceguide.html#option-forms","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"4fb421bb0cc03bb7305cff005bcb4467d570d253","unresolved":false,"context_lines":[{"line_number":62,"context_line":"            help\u003d_(\"QoS type description.\"),"},{"line_number":63,"context_line":"        )"},{"line_number":64,"context_line":"        parser.add_argument("},{"line_number":65,"context_line":"            \"--specs\","},{"line_number":66,"context_line":"            type\u003dstr,"},{"line_number":67,"context_line":"            nargs\u003d\u0027*\u0027,"},{"line_number":68,"context_line":"            metavar\u003d\u0027\u003ckey\u003dvalue\u003e\u0027,"},{"line_number":69,"context_line":"            default\u003dNone,"},{"line_number":70,"context_line":"            help\u003d_("}],"source_content_type":"text/x-python","patch_set":5,"id":"01b73d99_e79871bc","line":67,"range":{"start_line":65,"start_character":12,"end_line":67,"end_character":21},"in_reply_to":"a20f7b95_d7444bd2","updated":"2026-02-25 06:50:50.000000000","message":"Done","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"0d148f394250b90b04f91331ffea8c9298c0d74e","unresolved":true,"context_lines":[{"line_number":62,"context_line":"            help\u003d_(\"QoS type description.\"),"},{"line_number":63,"context_line":"        )"},{"line_number":64,"context_line":"        parser.add_argument("},{"line_number":65,"context_line":"            \"--specs\","},{"line_number":66,"context_line":"            type\u003dstr,"},{"line_number":67,"context_line":"            nargs\u003d\u0027*\u0027,"},{"line_number":68,"context_line":"            metavar\u003d\u0027\u003ckey\u003dvalue\u003e\u0027,"},{"line_number":69,"context_line":"            default\u003dNone,"},{"line_number":70,"context_line":"            help\u003d_("}],"source_content_type":"text/x-python","patch_set":5,"id":"a20f7b95_d7444bd2","line":67,"range":{"start_line":65,"start_character":12,"end_line":67,"end_character":21},"in_reply_to":"c012c67e_6fb691c4","updated":"2026-02-23 21:05:37.000000000","message":"no, that\u0027s precisely the behavior we shouldn\u0027t implement, per the human interface guide. It\u0027s not as intuitive as you think, and works poorly with automation","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"cb86a218d868e2b254be8b76f975563ba5e60818","unresolved":true,"context_lines":[{"line_number":62,"context_line":"            help\u003d_(\"QoS type description.\"),"},{"line_number":63,"context_line":"        )"},{"line_number":64,"context_line":"        parser.add_argument("},{"line_number":65,"context_line":"            \"--specs\","},{"line_number":66,"context_line":"            type\u003dstr,"},{"line_number":67,"context_line":"            nargs\u003d\u0027*\u0027,"},{"line_number":68,"context_line":"            metavar\u003d\u0027\u003ckey\u003dvalue\u003e\u0027,"},{"line_number":69,"context_line":"            default\u003dNone,"},{"line_number":70,"context_line":"            help\u003d_("}],"source_content_type":"text/x-python","patch_set":5,"id":"f138c05f_ecb966a1","line":67,"range":{"start_line":65,"start_character":12,"end_line":67,"end_character":21},"in_reply_to":"eacce442_5ef194ca","updated":"2026-02-03 10:13:01.000000000","message":"I tried with append, but it works with list of string e.g. unset keys. but for create API or set keys API, where options are key\u003dvalue and then needs to parse for extract properties, we need *. so append added only for Unset.","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"929f2cd12879fbc5610aae3f5db8d850f1d11436","unresolved":true,"context_lines":[{"line_number":62,"context_line":"            help\u003d_(\"QoS type description.\"),"},{"line_number":63,"context_line":"        )"},{"line_number":64,"context_line":"        parser.add_argument("},{"line_number":65,"context_line":"            \"--specs\","},{"line_number":66,"context_line":"            type\u003dstr,"},{"line_number":67,"context_line":"            nargs\u003d\u0027*\u0027,"},{"line_number":68,"context_line":"            metavar\u003d\u0027\u003ckey\u003dvalue\u003e\u0027,"},{"line_number":69,"context_line":"            default\u003dNone,"},{"line_number":70,"context_line":"            help\u003d_("}],"source_content_type":"text/x-python","patch_set":5,"id":"c012c67e_6fb691c4","line":67,"range":{"start_line":65,"start_character":12,"end_line":67,"end_character":21},"in_reply_to":"f138c05f_ecb966a1","updated":"2026-02-03 13:46:15.000000000","message":"append needs to specify option every time e.g.\n--specs a\u003db --specs c\u003dd --specs e\u003df\nwhile nargs allow to specify them easily e.g.\n--specs a\u003db c\u003dd e\u003df","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"7796f50c8778f0f0de12c894cca09f6e9a1546d8","unresolved":true,"context_lines":[{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        if not parsed_args.name:"},{"line_number":82,"context_line":"            raise exceptions.CommandError("},{"line_number":83,"context_line":"                \"QoS type name is mandatory parameter for creating qos type.\""},{"line_number":84,"context_line":"            )"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"        kwargs \u003d {\u0027name\u0027: parsed_args.name}"}],"source_content_type":"text/x-python","patch_set":5,"id":"db78382b_67405f5f","line":83,"range":{"start_line":83,"start_character":34,"end_line":83,"end_character":43},"updated":"2026-02-03 06:31:22.000000000","message":"```suggestion\n                \"QoS type name is a mandatory parameter for creating qos type.\"\n```","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"cb86a218d868e2b254be8b76f975563ba5e60818","unresolved":false,"context_lines":[{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        if not parsed_args.name:"},{"line_number":82,"context_line":"            raise exceptions.CommandError("},{"line_number":83,"context_line":"                \"QoS type name is mandatory parameter for creating qos type.\""},{"line_number":84,"context_line":"            )"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"        kwargs \u003d {\u0027name\u0027: parsed_args.name}"}],"source_content_type":"text/x-python","patch_set":5,"id":"ef8d3fd6_ce02ae01","line":83,"range":{"start_line":83,"start_character":34,"end_line":83,"end_character":43},"in_reply_to":"db78382b_67405f5f","updated":"2026-02-03 10:13:01.000000000","message":"Done","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"7796f50c8778f0f0de12c894cca09f6e9a1546d8","unresolved":true,"context_lines":[{"line_number":163,"context_line":"            default\u003dNone,"},{"line_number":164,"context_line":"            help\u003d_("},{"line_number":165,"context_line":"                \"New description of qos type. \""},{"line_number":166,"context_line":"                \"Available only for microversion \u003e\u003d 2.50\""},{"line_number":167,"context_line":"            ),"},{"line_number":168,"context_line":"        )"},{"line_number":169,"context_line":"        parser.add_argument("}],"source_content_type":"text/x-python","patch_set":5,"id":"9cede1c5_947a643f","line":166,"range":{"start_line":166,"start_character":52,"end_line":166,"end_character":56},"updated":"2026-02-03 06:31:22.000000000","message":"2.92","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"cb86a218d868e2b254be8b76f975563ba5e60818","unresolved":false,"context_lines":[{"line_number":163,"context_line":"            default\u003dNone,"},{"line_number":164,"context_line":"            help\u003d_("},{"line_number":165,"context_line":"                \"New description of qos type. \""},{"line_number":166,"context_line":"                \"Available only for microversion \u003e\u003d 2.50\""},{"line_number":167,"context_line":"            ),"},{"line_number":168,"context_line":"        )"},{"line_number":169,"context_line":"        parser.add_argument("}],"source_content_type":"text/x-python","patch_set":5,"id":"455b2637_b8cc3fc2","line":166,"range":{"start_line":166,"start_character":52,"end_line":166,"end_character":56},"in_reply_to":"9cede1c5_947a643f","updated":"2026-02-03 10:13:01.000000000","message":"Done","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"7796f50c8778f0f0de12c894cca09f6e9a1546d8","unresolved":true,"context_lines":[{"line_number":169,"context_line":"        parser.add_argument("},{"line_number":170,"context_line":"            \"--specs\","},{"line_number":171,"context_line":"            type\u003dstr,"},{"line_number":172,"context_line":"            nargs\u003d\u0027*\u0027,"},{"line_number":173,"context_line":"            metavar\u003d\u0027\u003ckey\u003dvalue\u003e\u0027,"},{"line_number":174,"context_line":"            default\u003dNone,"},{"line_number":175,"context_line":"            help\u003d_("}],"source_content_type":"text/x-python","patch_set":5,"id":"da931ad8_5f44e278","line":172,"range":{"start_line":172,"start_character":12,"end_line":172,"end_character":22},"updated":"2026-02-03 06:31:22.000000000","message":"same comment as above","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"cb86a218d868e2b254be8b76f975563ba5e60818","unresolved":false,"context_lines":[{"line_number":169,"context_line":"        parser.add_argument("},{"line_number":170,"context_line":"            \"--specs\","},{"line_number":171,"context_line":"            type\u003dstr,"},{"line_number":172,"context_line":"            nargs\u003d\u0027*\u0027,"},{"line_number":173,"context_line":"            metavar\u003d\u0027\u003ckey\u003dvalue\u003e\u0027,"},{"line_number":174,"context_line":"            default\u003dNone,"},{"line_number":175,"context_line":"            help\u003d_("}],"source_content_type":"text/x-python","patch_set":5,"id":"ef01967b_68f0032a","line":172,"range":{"start_line":172,"start_character":12,"end_line":172,"end_character":22},"in_reply_to":"da931ad8_5f44e278","updated":"2026-02-03 10:13:01.000000000","message":"Done","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"7796f50c8778f0f0de12c894cca09f6e9a1546d8","unresolved":true,"context_lines":[{"line_number":174,"context_line":"            default\u003dNone,"},{"line_number":175,"context_line":"            help\u003d_("},{"line_number":176,"context_line":"                \"Specs key and value of qos type that will be\""},{"line_number":177,"context_line":"                \" used for QoS type creation. OPTIONAL: Default\u003dNone.\""},{"line_number":178,"context_line":"                \" example --specs qos_type\u003d\u0027fixed\u0027, peak_iops\u003d300.\""},{"line_number":179,"context_line":"            ),"},{"line_number":180,"context_line":"        )"}],"source_content_type":"text/x-python","patch_set":5,"id":"42beb0d6_2e59f9aa","line":177,"range":{"start_line":177,"start_character":36,"end_line":177,"end_character":44},"updated":"2026-02-03 06:31:22.000000000","message":"s/creation//","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"cb86a218d868e2b254be8b76f975563ba5e60818","unresolved":false,"context_lines":[{"line_number":174,"context_line":"            default\u003dNone,"},{"line_number":175,"context_line":"            help\u003d_("},{"line_number":176,"context_line":"                \"Specs key and value of qos type that will be\""},{"line_number":177,"context_line":"                \" used for QoS type creation. OPTIONAL: Default\u003dNone.\""},{"line_number":178,"context_line":"                \" example --specs qos_type\u003d\u0027fixed\u0027, peak_iops\u003d300.\""},{"line_number":179,"context_line":"            ),"},{"line_number":180,"context_line":"        )"}],"source_content_type":"text/x-python","patch_set":5,"id":"cd4c6115_482b35fe","line":177,"range":{"start_line":177,"start_character":36,"end_line":177,"end_character":44},"in_reply_to":"42beb0d6_2e59f9aa","updated":"2026-02-03 10:13:01.000000000","message":"Done","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"7796f50c8778f0f0de12c894cca09f6e9a1546d8","unresolved":true,"context_lines":[{"line_number":291,"context_line":"            type\u003dstr,"},{"line_number":292,"context_line":"            default\u003dNone,"},{"line_number":293,"context_line":"            help\u003d("},{"line_number":294,"context_line":"                f\u0027Key to be sorted, available keys are \u0027"},{"line_number":295,"context_line":"                f\u0027{constants.QOS_TYPE_SORT_KEY_VALUES}. Default\u003dNone.\u0027"},{"line_number":296,"context_line":"            ),"},{"line_number":297,"context_line":"        )"}],"source_content_type":"text/x-python","patch_set":5,"id":"88f737e3_6cf5b60c","line":294,"range":{"start_line":294,"start_character":28,"end_line":294,"end_character":34},"updated":"2026-02-03 06:31:22.000000000","message":"\"sorted with\"?","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"cb86a218d868e2b254be8b76f975563ba5e60818","unresolved":false,"context_lines":[{"line_number":291,"context_line":"            type\u003dstr,"},{"line_number":292,"context_line":"            default\u003dNone,"},{"line_number":293,"context_line":"            help\u003d("},{"line_number":294,"context_line":"                f\u0027Key to be sorted, available keys are \u0027"},{"line_number":295,"context_line":"                f\u0027{constants.QOS_TYPE_SORT_KEY_VALUES}. Default\u003dNone.\u0027"},{"line_number":296,"context_line":"            ),"},{"line_number":297,"context_line":"        )"}],"source_content_type":"text/x-python","patch_set":5,"id":"59507100_ff72b2cc","line":294,"range":{"start_line":294,"start_character":28,"end_line":294,"end_character":34},"in_reply_to":"88f737e3_6cf5b60c","updated":"2026-02-03 10:13:01.000000000","message":"Done","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"08e6354bf3d3226662eb4a87cf809a924ae525dc","unresolved":true,"context_lines":[{"line_number":70,"context_line":"            help\u003d_("},{"line_number":71,"context_line":"                \"Specs key and value of QoS type that will be\""},{"line_number":72,"context_line":"                \" used for QoS type creation. OPTIONAL: Default\u003dNone.\""},{"line_number":73,"context_line":"                \" example --specs qos_type\u003d\u0027fixed\u0027 --specs peak_iops\u003d300.\""},{"line_number":74,"context_line":"            ),"},{"line_number":75,"context_line":"        )"},{"line_number":76,"context_line":"        return parser"}],"source_content_type":"text/x-python","patch_set":16,"id":"89446cfb_3e0bac04","line":73,"range":{"start_line":73,"start_character":18,"end_line":73,"end_character":25},"updated":"2026-02-25 16:46:31.000000000","message":"```suggestion\n                \" Example: --specs qos_type\u003d\u0027fixed\u0027 --specs peak_iops\u003d300.\"\n```","commit_id":"919a19e7cad8c17ee7c7127d8b0a715b795e56ed"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"d676f79cc4bb313f2d977beb2cec059b57c82997","unresolved":false,"context_lines":[{"line_number":70,"context_line":"            help\u003d_("},{"line_number":71,"context_line":"                \"Specs key and value of QoS type that will be\""},{"line_number":72,"context_line":"                \" used for QoS type creation. OPTIONAL: Default\u003dNone.\""},{"line_number":73,"context_line":"                \" example --specs qos_type\u003d\u0027fixed\u0027 --specs peak_iops\u003d300.\""},{"line_number":74,"context_line":"            ),"},{"line_number":75,"context_line":"        )"},{"line_number":76,"context_line":"        return parser"}],"source_content_type":"text/x-python","patch_set":16,"id":"72a7fadd_becddd8e","line":73,"range":{"start_line":73,"start_character":18,"end_line":73,"end_character":25},"in_reply_to":"89446cfb_3e0bac04","updated":"2026-02-25 16:59:05.000000000","message":"Done","commit_id":"919a19e7cad8c17ee7c7127d8b0a715b795e56ed"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"574b4cdb341be1b6fdc48aefbc46a02d49ea5606","unresolved":true,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"ATTRIBUTES \u003d ["},{"line_number":30,"context_line":"    \u0027id\u0027,"},{"line_number":31,"context_line":"    \u0027name\u0027,"},{"line_number":32,"context_line":"    \u0027description\u0027,"}],"source_content_type":"text/x-python","patch_set":17,"id":"837e7aa9_16fed07a","line":29,"updated":"2026-02-25 21:20:27.000000000","message":"The ATTRIBUTES list doesn\u0027t include `created_at` or\n`updated_at`?","commit_id":"3869d624b653a452a6e6703553f59257ac676a8d"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"09a482c5e1bb19d9535014d9ef2d0d5f2b9c4e99","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"ATTRIBUTES \u003d ["},{"line_number":30,"context_line":"    \u0027id\u0027,"},{"line_number":31,"context_line":"    \u0027name\u0027,"},{"line_number":32,"context_line":"    \u0027description\u0027,"}],"source_content_type":"text/x-python","patch_set":17,"id":"aaa41eee_df7f097e","line":29,"in_reply_to":"837e7aa9_16fed07a","updated":"2026-02-25 21:47:14.000000000","message":"Done","commit_id":"3869d624b653a452a6e6703553f59257ac676a8d"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a822d961e61b0d1664d19b4e140fa554f3889c02","unresolved":true,"context_lines":[{"line_number":62,"context_line":"            help\u003d_(\"QoS type description.\"),"},{"line_number":63,"context_line":"        )"},{"line_number":64,"context_line":"        parser.add_argument("},{"line_number":65,"context_line":"            \"--specs\","},{"line_number":66,"context_line":"            type\u003dstr,"},{"line_number":67,"context_line":"            metavar\u003d\u0027\u003ckey\u003dvalue\u003e\u0027,"},{"line_number":68,"context_line":"            action\u003d\u0027append\u0027,"}],"source_content_type":"text/x-python","patch_set":17,"id":"c7e7d05a_c0d5b9b5","line":65,"range":{"start_line":65,"start_character":15,"end_line":65,"end_character":20},"updated":"2026-02-25 19:18:26.000000000","message":"singular please: spec","commit_id":"3869d624b653a452a6e6703553f59257ac676a8d"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"09a482c5e1bb19d9535014d9ef2d0d5f2b9c4e99","unresolved":false,"context_lines":[{"line_number":62,"context_line":"            help\u003d_(\"QoS type description.\"),"},{"line_number":63,"context_line":"        )"},{"line_number":64,"context_line":"        parser.add_argument("},{"line_number":65,"context_line":"            \"--specs\","},{"line_number":66,"context_line":"            type\u003dstr,"},{"line_number":67,"context_line":"            metavar\u003d\u0027\u003ckey\u003dvalue\u003e\u0027,"},{"line_number":68,"context_line":"            action\u003d\u0027append\u0027,"}],"source_content_type":"text/x-python","patch_set":17,"id":"3d2cd49c_294f73ee","line":65,"range":{"start_line":65,"start_character":15,"end_line":65,"end_character":20},"in_reply_to":"c7e7d05a_c0d5b9b5","updated":"2026-02-25 21:47:14.000000000","message":"Done","commit_id":"3869d624b653a452a6e6703553f59257ac676a8d"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"574b4cdb341be1b6fdc48aefbc46a02d49ea5606","unresolved":true,"context_lines":[{"line_number":78,"context_line":"    def take_action(self, parsed_args):"},{"line_number":79,"context_line":"        share_client \u003d self.app.client_manager.share"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        if not parsed_args.name:"},{"line_number":82,"context_line":"            raise exceptions.CommandError("},{"line_number":83,"context_line":"                \"QoS type name is a mandatory parameter for creating qos type.\""},{"line_number":84,"context_line":"            )"}],"source_content_type":"text/x-python","patch_set":17,"id":"a5c809c2_7ddf42f0","line":81,"updated":"2026-02-25 21:20:27.000000000","message":"This is a positional argument so already required — argparse will error\nbefore `take_action` is reached if it\u0027s missing.","commit_id":"3869d624b653a452a6e6703553f59257ac676a8d"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"09a482c5e1bb19d9535014d9ef2d0d5f2b9c4e99","unresolved":false,"context_lines":[{"line_number":78,"context_line":"    def take_action(self, parsed_args):"},{"line_number":79,"context_line":"        share_client \u003d self.app.client_manager.share"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        if not parsed_args.name:"},{"line_number":82,"context_line":"            raise exceptions.CommandError("},{"line_number":83,"context_line":"                \"QoS type name is a mandatory parameter for creating qos type.\""},{"line_number":84,"context_line":"            )"}],"source_content_type":"text/x-python","patch_set":17,"id":"8e6adb60_3aacb418","line":81,"in_reply_to":"a5c809c2_7ddf42f0","updated":"2026-02-25 21:47:14.000000000","message":"Done","commit_id":"3869d624b653a452a6e6703553f59257ac676a8d"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"574b4cdb341be1b6fdc48aefbc46a02d49ea5606","unresolved":true,"context_lines":[{"line_number":163,"context_line":"            default\u003dNone,"},{"line_number":164,"context_line":"            help\u003d_(\"New description of qos type.\"),"},{"line_number":165,"context_line":"        )"},{"line_number":166,"context_line":"        parser.add_argument("},{"line_number":167,"context_line":"            \"--specs\","},{"line_number":168,"context_line":"            type\u003dstr,"},{"line_number":169,"context_line":"            nargs\u003d\u0027*\u0027,"}],"source_content_type":"text/x-python","patch_set":17,"id":"c0d6b326_7bab3336","line":166,"updated":"2026-02-25 21:20:27.000000000","message":"Should avoid the `nargs\u003d\u0027*\u0027` here just like CreateQosType.","commit_id":"3869d624b653a452a6e6703553f59257ac676a8d"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"09a482c5e1bb19d9535014d9ef2d0d5f2b9c4e99","unresolved":false,"context_lines":[{"line_number":163,"context_line":"            default\u003dNone,"},{"line_number":164,"context_line":"            help\u003d_(\"New description of qos type.\"),"},{"line_number":165,"context_line":"        )"},{"line_number":166,"context_line":"        parser.add_argument("},{"line_number":167,"context_line":"            \"--specs\","},{"line_number":168,"context_line":"            type\u003dstr,"},{"line_number":169,"context_line":"            nargs\u003d\u0027*\u0027,"}],"source_content_type":"text/x-python","patch_set":17,"id":"6e979a06_83460b56","line":166,"in_reply_to":"c0d6b326_7bab3336","updated":"2026-02-25 21:47:14.000000000","message":"Done","commit_id":"3869d624b653a452a6e6703553f59257ac676a8d"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"574b4cdb341be1b6fdc48aefbc46a02d49ea5606","unresolved":true,"context_lines":[{"line_number":192,"context_line":"                qos_type.update(**kwargs)"},{"line_number":193,"context_line":"            except Exception:"},{"line_number":194,"context_line":"                raise exceptions.CommandError("},{"line_number":195,"context_line":"                    \"Failed to set qos type description: {e}\""},{"line_number":196,"context_line":"                )"},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"        # These are dict of key\u003dvalue to be added as qos type specs."}],"source_content_type":"text/x-python","patch_set":17,"id":"a89e9450_faff3279","line":195,"updated":"2026-02-25 21:20:27.000000000","message":"This is a plain string, not an f-string, so `{e}` renders\nliterally as the text \"{e}\"","commit_id":"3869d624b653a452a6e6703553f59257ac676a8d"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"09a482c5e1bb19d9535014d9ef2d0d5f2b9c4e99","unresolved":false,"context_lines":[{"line_number":192,"context_line":"                qos_type.update(**kwargs)"},{"line_number":193,"context_line":"            except Exception:"},{"line_number":194,"context_line":"                raise exceptions.CommandError("},{"line_number":195,"context_line":"                    \"Failed to set qos type description: {e}\""},{"line_number":196,"context_line":"                )"},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"        # These are dict of key\u003dvalue to be added as qos type specs."}],"source_content_type":"text/x-python","patch_set":17,"id":"36261b97_3c2b77bc","line":195,"in_reply_to":"a89e9450_faff3279","updated":"2026-02-25 21:47:14.000000000","message":"Done","commit_id":"3869d624b653a452a6e6703553f59257ac676a8d"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"574b4cdb341be1b6fdc48aefbc46a02d49ea5606","unresolved":true,"context_lines":[{"line_number":246,"context_line":"                qos_type.update(**kwargs)"},{"line_number":247,"context_line":"            except Exception:"},{"line_number":248,"context_line":"                raise exceptions.CommandError("},{"line_number":249,"context_line":"                    \"Failed to unset qos type description: {e}\""},{"line_number":250,"context_line":"                )"},{"line_number":251,"context_line":""},{"line_number":252,"context_line":"        # These are list of keys to be deleted from qos type specs."}],"source_content_type":"text/x-python","patch_set":17,"id":"b70694ff_8e749c11","line":249,"updated":"2026-02-25 21:20:27.000000000","message":"Same bug as `SetQosType` — plain string with `{e}`","commit_id":"3869d624b653a452a6e6703553f59257ac676a8d"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"09a482c5e1bb19d9535014d9ef2d0d5f2b9c4e99","unresolved":false,"context_lines":[{"line_number":246,"context_line":"                qos_type.update(**kwargs)"},{"line_number":247,"context_line":"            except Exception:"},{"line_number":248,"context_line":"                raise exceptions.CommandError("},{"line_number":249,"context_line":"                    \"Failed to unset qos type description: {e}\""},{"line_number":250,"context_line":"                )"},{"line_number":251,"context_line":""},{"line_number":252,"context_line":"        # These are list of keys to be deleted from qos type specs."}],"source_content_type":"text/x-python","patch_set":17,"id":"9822264d_35976433","line":249,"in_reply_to":"b70694ff_8e749c11","updated":"2026-02-25 21:47:14.000000000","message":"Done","commit_id":"3869d624b653a452a6e6703553f59257ac676a8d"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"c09c1d6dcaa86f2d3f0383bc80c6175d901061d4","unresolved":true,"context_lines":[{"line_number":31,"context_line":"    \u0027name\u0027,"},{"line_number":32,"context_line":"    \u0027description\u0027,"},{"line_number":33,"context_line":"    \u0027specs\u0027,"},{"line_number":34,"context_line":"    \u0027created_at\u0027,"},{"line_number":35,"context_line":"    \u0027updated_at\u0027,"},{"line_number":36,"context_line":"]"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":18,"id":"5fac403d_2af67fed","line":35,"range":{"start_line":34,"start_character":0,"end_line":35,"end_character":17},"updated":"2026-02-25 21:58:35.000000000","message":"I realize now that this wasn\u0027t added in the view builder. oops; it\u0027s worth fixing this up now rather than in a new API micro version","commit_id":"a29ecbe2b617afc1b2ba20887e6d4f0a9a5ba91a"}],"manilaclient/tests/unit/osc/v2/test_qos_types.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"7796f50c8778f0f0de12c894cca09f6e9a1546d8","unresolved":true,"context_lines":[{"line_number":91,"context_line":"        self.assertCountEqual(COLUMNS, columns)"},{"line_number":92,"context_line":"        self.assertCountEqual(self.data, data)"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"    def test_qos_type_create_json_fomrat(self):"},{"line_number":95,"context_line":"        \"\"\"Verifies --format json.\"\"\""},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"        arglist \u003d [self.new_qos_type.name, \u0027-f\u0027, \u0027json\u0027]"}],"source_content_type":"text/x-python","patch_set":5,"id":"d2a13bb8_85f4b609","line":94,"range":{"start_line":94,"start_character":34,"end_line":94,"end_character":40},"updated":"2026-02-03 06:31:22.000000000","message":"format","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"cb86a218d868e2b254be8b76f975563ba5e60818","unresolved":false,"context_lines":[{"line_number":91,"context_line":"        self.assertCountEqual(COLUMNS, columns)"},{"line_number":92,"context_line":"        self.assertCountEqual(self.data, data)"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"    def test_qos_type_create_json_fomrat(self):"},{"line_number":95,"context_line":"        \"\"\"Verifies --format json.\"\"\""},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"        arglist \u003d [self.new_qos_type.name, \u0027-f\u0027, \u0027json\u0027]"}],"source_content_type":"text/x-python","patch_set":5,"id":"967db04d_a81fd8b3","line":94,"range":{"start_line":94,"start_character":34,"end_line":94,"end_character":40},"in_reply_to":"d2a13bb8_85f4b609","updated":"2026-02-03 10:13:01.000000000","message":"Done","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"7796f50c8778f0f0de12c894cca09f6e9a1546d8","unresolved":true,"context_lines":[{"line_number":145,"context_line":"        )"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"        self.assertCountEqual(COLUMNS, columns)"},{"line_number":148,"context_line":"        self.assertCountEqual(self.data, data)"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"class TestQosTypeDelete(TestQosType):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7da60bf6_8b21df21","line":148,"range":{"start_line":148,"start_character":13,"end_line":148,"end_character":29},"updated":"2026-02-03 06:31:22.000000000","message":"assertEqual?","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"cb86a218d868e2b254be8b76f975563ba5e60818","unresolved":false,"context_lines":[{"line_number":145,"context_line":"        )"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"        self.assertCountEqual(COLUMNS, columns)"},{"line_number":148,"context_line":"        self.assertCountEqual(self.data, data)"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"class TestQosTypeDelete(TestQosType):"}],"source_content_type":"text/x-python","patch_set":5,"id":"d8e6650d_55abc36e","line":148,"range":{"start_line":148,"start_character":13,"end_line":148,"end_character":29},"in_reply_to":"7da60bf6_8b21df21","updated":"2026-02-03 10:13:01.000000000","message":"No, we compare data fields count.","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"}],"manilaclient/v2/client.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"574b4cdb341be1b6fdc48aefbc46a02d49ea5606","unresolved":true,"context_lines":[{"line_number":289,"context_line":"            self"},{"line_number":290,"context_line":"        )"},{"line_number":291,"context_line":"        self.share_backups \u003d share_backups.ShareBackupManager(self)"},{"line_number":292,"context_line":"        self.qos_types \u003d qos_types.QosTypeManager(self)"},{"line_number":293,"context_line":""},{"line_number":294,"context_line":"        self._load_extensions(extensions)"},{"line_number":295,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"005f0f6b_ef49ae47","line":292,"updated":"2026-02-25 21:20:27.000000000","message":"Alphabetical ordering please","commit_id":"3869d624b653a452a6e6703553f59257ac676a8d"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"09a482c5e1bb19d9535014d9ef2d0d5f2b9c4e99","unresolved":false,"context_lines":[{"line_number":289,"context_line":"            self"},{"line_number":290,"context_line":"        )"},{"line_number":291,"context_line":"        self.share_backups \u003d share_backups.ShareBackupManager(self)"},{"line_number":292,"context_line":"        self.qos_types \u003d qos_types.QosTypeManager(self)"},{"line_number":293,"context_line":""},{"line_number":294,"context_line":"        self._load_extensions(extensions)"},{"line_number":295,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"a1842d9b_324ee1e8","line":292,"in_reply_to":"005f0f6b_ef49ae47","updated":"2026-02-25 21:47:14.000000000","message":"Done","commit_id":"3869d624b653a452a6e6703553f59257ac676a8d"}],"manilaclient/v2/qos_types.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"7796f50c8778f0f0de12c894cca09f6e9a1546d8","unresolved":true,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"class QosType(base.Resource):"},{"line_number":27,"context_line":"    \"\"\"A Qos Type represent Quality of service of Manila resource.\"\"\""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"    def __init__(self, manager, info, loaded\u003dFalse):"},{"line_number":30,"context_line":"        super().__init__(manager, info, loaded)"}],"source_content_type":"text/x-python","patch_set":5,"id":"267e530c_04fad761","line":27,"range":{"start_line":27,"start_character":18,"end_line":27,"end_character":27},"updated":"2026-02-03 06:31:22.000000000","message":"represents","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"cb86a218d868e2b254be8b76f975563ba5e60818","unresolved":false,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"class QosType(base.Resource):"},{"line_number":27,"context_line":"    \"\"\"A Qos Type represent Quality of service of Manila resource.\"\"\""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"    def __init__(self, manager, info, loaded\u003dFalse):"},{"line_number":30,"context_line":"        super().__init__(manager, info, loaded)"}],"source_content_type":"text/x-python","patch_set":5,"id":"75a75ed5_1a616959","line":27,"range":{"start_line":27,"start_character":18,"end_line":27,"end_character":27},"in_reply_to":"267e530c_04fad761","updated":"2026-02-03 10:13:01.000000000","message":"Done","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"7796f50c8778f0f0de12c894cca09f6e9a1546d8","unresolved":true,"context_lines":[{"line_number":131,"context_line":"        query_string \u003d self._build_query_string(search_opts)"},{"line_number":132,"context_line":"        return self._list(f\"/qos-types{query_string}\", \"qos_types\")"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"    @api_versions.wraps(constants.QOS_TYPE_VERSION)"},{"line_number":135,"context_line":"    def show(self, qos_type):"},{"line_number":136,"context_line":"        \"\"\"Get a qos type."},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"        :param qos type: either qos type object or text with its ID."},{"line_number":139,"context_line":"        :rtype: :class:`QosType`"},{"line_number":140,"context_line":"        \"\"\""},{"line_number":141,"context_line":"        qos_type_id \u003d base.getid(qos_type)"},{"line_number":142,"context_line":"        return self._get(f\"/qos-types/{qos_type_id}\", \"qos_type\")"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"    @api_versions.wraps(constants.QOS_TYPE_VERSION)"},{"line_number":145,"context_line":"    def get(self, qos_type\u003d\"default\"):"},{"line_number":146,"context_line":"        \"\"\"Get a specific qos type."},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"        :param qos_type: The ID of the :class:`QosType` to get."},{"line_number":149,"context_line":"        :rtype: :class:`QosType`"},{"line_number":150,"context_line":"        \"\"\""},{"line_number":151,"context_line":"        qos_type_id \u003d base.getid(qos_type)"},{"line_number":152,"context_line":"        return self._get(f\"/qos-types/{qos_type_id}\", \"qos_type\")"},{"line_number":153,"context_line":""},{"line_number":154,"context_line":"    @api_versions.wraps(constants.QOS_TYPE_VERSION)"},{"line_number":155,"context_line":"    def delete(self, qos_type):"}],"source_content_type":"text/x-python","patch_set":5,"id":"5d2e2d25_429ce8c0","line":152,"range":{"start_line":134,"start_character":0,"end_line":152,"end_character":65},"updated":"2026-02-03 06:31:22.000000000","message":"aren\u0027t these two methods duplicates.. also we wouldn\u0027t have a \"default\" qos type","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"cb86a218d868e2b254be8b76f975563ba5e60818","unresolved":false,"context_lines":[{"line_number":131,"context_line":"        query_string \u003d self._build_query_string(search_opts)"},{"line_number":132,"context_line":"        return self._list(f\"/qos-types{query_string}\", \"qos_types\")"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"    @api_versions.wraps(constants.QOS_TYPE_VERSION)"},{"line_number":135,"context_line":"    def show(self, qos_type):"},{"line_number":136,"context_line":"        \"\"\"Get a qos type."},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"        :param qos type: either qos type object or text with its ID."},{"line_number":139,"context_line":"        :rtype: :class:`QosType`"},{"line_number":140,"context_line":"        \"\"\""},{"line_number":141,"context_line":"        qos_type_id \u003d base.getid(qos_type)"},{"line_number":142,"context_line":"        return self._get(f\"/qos-types/{qos_type_id}\", \"qos_type\")"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"    @api_versions.wraps(constants.QOS_TYPE_VERSION)"},{"line_number":145,"context_line":"    def get(self, qos_type\u003d\"default\"):"},{"line_number":146,"context_line":"        \"\"\"Get a specific qos type."},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"        :param qos_type: The ID of the :class:`QosType` to get."},{"line_number":149,"context_line":"        :rtype: :class:`QosType`"},{"line_number":150,"context_line":"        \"\"\""},{"line_number":151,"context_line":"        qos_type_id \u003d base.getid(qos_type)"},{"line_number":152,"context_line":"        return self._get(f\"/qos-types/{qos_type_id}\", \"qos_type\")"},{"line_number":153,"context_line":""},{"line_number":154,"context_line":"    @api_versions.wraps(constants.QOS_TYPE_VERSION)"},{"line_number":155,"context_line":"    def delete(self, qos_type):"}],"source_content_type":"text/x-python","patch_set":5,"id":"9de4b155_3876f217","line":152,"range":{"start_line":134,"start_character":0,"end_line":152,"end_character":65},"in_reply_to":"5d2e2d25_429ce8c0","updated":"2026-02-03 10:13:01.000000000","message":"yes, removed show method and default from get.","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"7796f50c8778f0f0de12c894cca09f6e9a1546d8","unresolved":true,"context_lines":[{"line_number":194,"context_line":""},{"line_number":195,"context_line":"        body \u003d {\"qos_type\": {}}"},{"line_number":196,"context_line":""},{"line_number":197,"context_line":"        if description or description \u003d\u003d \"\":"},{"line_number":198,"context_line":"            body[\"qos_type\"][\"description\"] \u003d description"},{"line_number":199,"context_line":"        return self._update(f\"/qos-types/{qos_type_id}\", body, \"qos_type\")"}],"source_content_type":"text/x-python","patch_set":5,"id":"8ce9b372_8d80a4f6","line":197,"range":{"start_line":197,"start_character":8,"end_line":197,"end_character":43},"updated":"2026-02-03 06:31:22.000000000","message":"`if description is not None`\n\n\nAlso maybe add a test unsetting the description to ensure this code works as expected.","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"cb86a218d868e2b254be8b76f975563ba5e60818","unresolved":false,"context_lines":[{"line_number":194,"context_line":""},{"line_number":195,"context_line":"        body \u003d {\"qos_type\": {}}"},{"line_number":196,"context_line":""},{"line_number":197,"context_line":"        if description or description \u003d\u003d \"\":"},{"line_number":198,"context_line":"            body[\"qos_type\"][\"description\"] \u003d description"},{"line_number":199,"context_line":"        return self._update(f\"/qos-types/{qos_type_id}\", body, \"qos_type\")"}],"source_content_type":"text/x-python","patch_set":5,"id":"56aa5105_aa7463ea","line":197,"range":{"start_line":197,"start_character":8,"end_line":197,"end_character":43},"in_reply_to":"8ce9b372_8d80a4f6","updated":"2026-02-03 10:13:01.000000000","message":"Done","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"}],"pyproject.toml":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"7796f50c8778f0f0de12c894cca09f6e9a1546d8","unresolved":true,"context_lines":[{"line_number":190,"context_line":"share_qos_type_create \u003d \"manilaclient.osc.v2.qos_types:CreateQosType\""},{"line_number":191,"context_line":"share_qos_type_list \u003d \"manilaclient.osc.v2.qos_types:ListQosType\""},{"line_number":192,"context_line":"share_qos_type_show \u003d \"manilaclient.osc.v2.qos_types:ShowQosType\""},{"line_number":193,"context_line":"share_qos_type_set \u003d \" manilaclient.osc.v2.qos_types:SetQosType\""},{"line_number":194,"context_line":"share_qos_type_unset \u003d \"manilaclient.osc.v2.qos_types:UnsetQosType\""},{"line_number":195,"context_line":"share_qos_type_delete \u003d \"manilaclient.osc.v2.qos_types:DeleteQosType\""},{"line_number":196,"context_line":""}],"source_content_type":"text/x-toml","patch_set":5,"id":"80cf6a5b_e3c5954b","line":193,"range":{"start_line":193,"start_character":22,"end_line":193,"end_character":23},"updated":"2026-02-03 06:31:22.000000000","message":"remove space","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"cb86a218d868e2b254be8b76f975563ba5e60818","unresolved":false,"context_lines":[{"line_number":190,"context_line":"share_qos_type_create \u003d \"manilaclient.osc.v2.qos_types:CreateQosType\""},{"line_number":191,"context_line":"share_qos_type_list \u003d \"manilaclient.osc.v2.qos_types:ListQosType\""},{"line_number":192,"context_line":"share_qos_type_show \u003d \"manilaclient.osc.v2.qos_types:ShowQosType\""},{"line_number":193,"context_line":"share_qos_type_set \u003d \" manilaclient.osc.v2.qos_types:SetQosType\""},{"line_number":194,"context_line":"share_qos_type_unset \u003d \"manilaclient.osc.v2.qos_types:UnsetQosType\""},{"line_number":195,"context_line":"share_qos_type_delete \u003d \"manilaclient.osc.v2.qos_types:DeleteQosType\""},{"line_number":196,"context_line":""}],"source_content_type":"text/x-toml","patch_set":5,"id":"2d9cd7cf_10add1a2","line":193,"range":{"start_line":193,"start_character":22,"end_line":193,"end_character":23},"in_reply_to":"80cf6a5b_e3c5954b","updated":"2026-02-03 10:13:01.000000000","message":"Done","commit_id":"df33b8263a878e211c21cb963483b668865bb2a6"}]}
