)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"change_message_id":"cc8cc7db12699f5cbb6fee8c17b058a18b923d2c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"dd58ec7a_53dab9c0","updated":"2026-07-30 11:30:09.000000000","message":"LGTM - clean refactoring, more tests.\n\nOnly found nits in the docstrings - but these don\u0027t need an extra round IMHO, thus +A.","commit_id":"ae4536e02c5dd73b30e2ef92599d99c6a723f7dd"}],"swift/common/middleware/versioned_writes/object_versioning.py":[{"author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"change_message_id":"cc8cc7db12699f5cbb6fee8c17b058a18b923d2c","unresolved":true,"context_lines":[{"line_number":187,"context_line":"    parameter to page through versions."},{"line_number":188,"context_line":""},{"line_number":189,"context_line":"    :param object_name: (str) name of the user object"},{"line_number":190,"context_line":"    :return: reserved-namespace prefix string"},{"line_number":191,"context_line":"    \"\"\""},{"line_number":192,"context_line":"    return get_reserved_name(object_name, \u0027\u0027)"},{"line_number":193,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"0aa35c37_8f2027c4","line":190,"updated":"2026-07-30 11:30:09.000000000","message":"nit: could include `:raises ValueError:` - same for the next two methods, all of them using `get_reserved_name`","commit_id":"ae4536e02c5dd73b30e2ef92599d99c6a723f7dd"},{"author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"change_message_id":"cc8cc7db12699f5cbb6fee8c17b058a18b923d2c","unresolved":true,"context_lines":[{"line_number":207,"context_line":"    Get the name of the version object for given ``object_name`` and"},{"line_number":208,"context_line":"    ``version_id``."},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"    :param object_name: (str) name of object"},{"line_number":211,"context_line":"    :param version_id: (str) version of object"},{"line_number":212,"context_line":"    :return: a version object name in the reserved namespace"},{"line_number":213,"context_line":"    \"\"\""}],"source_content_type":"text/x-python","patch_set":2,"id":"09c0efb5_a53876a7","line":210,"updated":"2026-07-30 11:30:09.000000000","message":"nit: could be a Timestamp as well - which is explicitly verified in your new test `test_build_versions_object_name_accepts_timestamp`","commit_id":"ae4536e02c5dd73b30e2ef92599d99c6a723f7dd"},{"author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"change_message_id":"cc8cc7db12699f5cbb6fee8c17b058a18b923d2c","unresolved":true,"context_lines":[{"line_number":220,"context_line":"    Parse a version object name into the user object name and the version_id."},{"line_number":221,"context_line":""},{"line_number":222,"context_line":"    :param versioned_name: version object name"},{"line_number":223,"context_line":"    :return: a tuple of strings: (user object name, version_id)."},{"line_number":224,"context_line":"    \"\"\""},{"line_number":225,"context_line":"    try:"},{"line_number":226,"context_line":"        name, inv \u003d split_reserved_name(versioned_name)"}],"source_content_type":"text/x-python","patch_set":2,"id":"bc990c82_9213aedd","line":223,"updated":"2026-07-30 11:30:09.000000000","message":"nit: In case of an ValueError this is not a tuple of strings, but (str, None)","commit_id":"ae4536e02c5dd73b30e2ef92599d99c6a723f7dd"}]}
