)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"36f6b211e6f809d03c63d9fe3575669271cd9668","unresolved":true,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Consolidate get_stable_branch_id to the single canonical definition"},{"line_number":10,"context_line":"in gitutils.py. Remove identical copies from new_release.py,"},{"line_number":11,"context_line":"list_deliverables.py, and propose_final_releases.py."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Add unit tests for get_stable_branch_id."},{"line_number":14,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"ef5f5719_00ed41b2","line":11,"updated":"2026-07-03 13:49:02.000000000","message":"yepp, this is a completely valid refactoring! thanks for working on it! Maybe it just me, but now that i looked again at the code in `gitutils.py` i realised that however the original content is about `git` command calls, the later added methods [1] are more like other useful functions that are nothing to do with `git utils`. so if we are now refactoring, i\u0027d rather see these functions some other place:\n* either in openstack_releases/series_status.py\n* or some separate, new *utils* file\n\nwhat do you think?\n\n[1] `get_stable_branch_id` and `get_full_branch_name`","commit_id":"23578d28914e600112844b1a48de7f61a8644e88"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"3d6769f8ee67816918df4aebe22c444e2069b0d0","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Consolidate get_stable_branch_id to the single canonical definition"},{"line_number":10,"context_line":"in gitutils.py. Remove identical copies from new_release.py,"},{"line_number":11,"context_line":"list_deliverables.py, and propose_final_releases.py."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Add unit tests for get_stable_branch_id."},{"line_number":14,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"d6cfdc3e_c5c2459b","line":11,"in_reply_to":"329efa0c_f5a9efc7","updated":"2026-07-16 13:15:06.000000000","message":"Done","commit_id":"23578d28914e600112844b1a48de7f61a8644e88"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"616a9e5c44b900fc21eeed7d4d6aa1d789a8c9e9","unresolved":true,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Consolidate get_stable_branch_id to the single canonical definition"},{"line_number":10,"context_line":"in gitutils.py. Remove identical copies from new_release.py,"},{"line_number":11,"context_line":"list_deliverables.py, and propose_final_releases.py."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Add unit tests for get_stable_branch_id."},{"line_number":14,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"329efa0c_f5a9efc7","line":11,"in_reply_to":"330059ef_68ea255b","updated":"2026-07-15 13:25:18.000000000","message":"I will update this patch","commit_id":"23578d28914e600112844b1a48de7f61a8644e88"},{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"7682888858a19b1748f3336b70e24d6cb5ec2684","unresolved":true,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Consolidate get_stable_branch_id to the single canonical definition"},{"line_number":10,"context_line":"in gitutils.py. Remove identical copies from new_release.py,"},{"line_number":11,"context_line":"list_deliverables.py, and propose_final_releases.py."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Add unit tests for get_stable_branch_id."},{"line_number":14,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"330059ef_68ea255b","line":11,"in_reply_to":"8edf6ea7_9f697b57","updated":"2026-07-09 12:05:06.000000000","message":"\u003e that\u0027s a good point, I haven\u0027t checked too deep before, but looking into it I agree with you, get_stable_branch_id and get_full_branch_name are purely about series status data — they look up series info and derive branch names from it. They don\u0027t touch git at all.\n\u003e the functions are essentially helpers on top of SeriesStatus, maybe they can be even methods there ?\n\nyepp, either function in series_status.py or methods of SeriesStatus could work (though i haven\u0027t checked now thoroughly).\n\n\u003e in this case, even though gitutils.py imports series_status, I think it\u0027s cleaner\n\nACK. Do you plan to update this patch, or you mean to merge this as is and then move the code in a follow-up?","commit_id":"23578d28914e600112844b1a48de7f61a8644e88"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"2b9bc36c6576d27e01e9fbee0c10bc9e1ef0e96a","unresolved":true,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Consolidate get_stable_branch_id to the single canonical definition"},{"line_number":10,"context_line":"in gitutils.py. Remove identical copies from new_release.py,"},{"line_number":11,"context_line":"list_deliverables.py, and propose_final_releases.py."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Add unit tests for get_stable_branch_id."},{"line_number":14,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"8edf6ea7_9f697b57","line":11,"in_reply_to":"ef5f5719_00ed41b2","updated":"2026-07-06 13:05:37.000000000","message":"that\u0027s a good point, I haven\u0027t checked too deep before, but looking into it I agree with you, get_stable_branch_id and get_full_branch_name are purely about series status data — they look up series info and derive branch names from it. They don\u0027t touch git at all.\nthe functions are essentially helpers on top of SeriesStatus, maybe they can be even methods there ?\nin this case, even though gitutils.py imports series_status, I think it\u0027s cleaner","commit_id":"23578d28914e600112844b1a48de7f61a8644e88"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"66656479aa5e85fa7e91cf782eee9e1bb149671b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"eda33edd_95271777","updated":"2026-07-16 15:48:45.000000000","message":"one small issue, otherwise looks awesome. Thanks Riccardo for working on this!","commit_id":"d6d91b04fbed53143f67ad0248d14bf896c54e1f"},{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"f8977d21ee34f7a288f50f69c83c7a85d34e55b5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"d61b0c39_855ad53a","updated":"2026-07-17 11:59:35.000000000","message":"thanks, Riccardo! patch looks perfect to me! (adding procedural PTL-Approved+1)\nI think this is good to go","commit_id":"355be1250b28565ee966990fe6c855e7e5b55d76"}],"openstack_releases/tests/test_gitutils.py":[{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"66656479aa5e85fa7e91cf782eee9e1bb149671b","unresolved":true,"context_lines":[{"line_number":20,"context_line":"from openstack_releases import series_status"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"class TestGetStableBranchId(base.BaseTestCase):"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    def _make_status(self, series_data):"},{"line_number":26,"context_line":"        data \u003d [dict(d, name\u003dname) for name, d in series_data.items()]"}],"source_content_type":"text/x-python","patch_set":4,"id":"7acf4cf8_80458cbf","line":23,"updated":"2026-07-16 15:48:45.000000000","message":"can you move this to `openstack_releases/tests/test_series_status.py` file instead? o:)","commit_id":"d6d91b04fbed53143f67ad0248d14bf896c54e1f"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"009b5fb719b00ca3c4cb263009ea9690f2e72973","unresolved":true,"context_lines":[{"line_number":20,"context_line":"from openstack_releases import series_status"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"class TestGetStableBranchId(base.BaseTestCase):"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    def _make_status(self, series_data):"},{"line_number":26,"context_line":"        data \u003d [dict(d, name\u003dname) for name, d in series_data.items()]"}],"source_content_type":"text/x-python","patch_set":4,"id":"e7b588c4_1d15e0bf","line":23,"in_reply_to":"7acf4cf8_80458cbf","updated":"2026-07-17 07:48:06.000000000","message":"oh, yeah, right! :D","commit_id":"d6d91b04fbed53143f67ad0248d14bf896c54e1f"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"b6cbe0abf88b1a9b8c7702991eba71571568e49c","unresolved":false,"context_lines":[{"line_number":20,"context_line":"from openstack_releases import series_status"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"class TestGetStableBranchId(base.BaseTestCase):"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    def _make_status(self, series_data):"},{"line_number":26,"context_line":"        data \u003d [dict(d, name\u003dname) for name, d in series_data.items()]"}],"source_content_type":"text/x-python","patch_set":4,"id":"54945cfc_60ccea18","line":23,"in_reply_to":"e7b588c4_1d15e0bf","updated":"2026-07-17 08:08:52.000000000","message":"Done","commit_id":"d6d91b04fbed53143f67ad0248d14bf896c54e1f"}]}
