)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"fb379812cad87d25f100cc4f053e5c23081215be","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"52837184_dae64c80","updated":"2021-12-02 07:39:48.000000000","message":"Sorry for the late review, i finally managed to more or less understand the situation. I\u0027d do some minor modification of the error message (see my inline comment), otherwise it looks good to me. Thanks Hervé!\n","commit_id":"a97ca620acbe6e62dc91fc1c5960ce4b02fe19a3"},{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"6f7d52efce43539e518439936f278648120471ca","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"69f4f1fc_5b679995","updated":"2021-12-02 09:40:51.000000000","message":"Thanks for the update Hervé!","commit_id":"5d5c666e9f79f54cee53e03bfde003c16c965dde"}],"openstack_releases/cmds/validate.py":[{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"1886fbe388bca8b610368d31d76cf51c14c71d5b","unresolved":true,"context_lines":[{"line_number":1763,"context_line":"            branch.name,"},{"line_number":1764,"context_line":"        ])"},{"line_number":1765,"context_line":""},{"line_number":1766,"context_line":"        location \u003d branch.get_repo_map()"},{"line_number":1767,"context_line":""},{"line_number":1768,"context_line":"        for repo, hash in sorted(location.items()):"},{"line_number":1769,"context_line":"            if deliv.get_repo(repo).is_retired:"}],"source_content_type":"text/x-python","patch_set":1,"id":"548dd7de_db3a6be1","line":1766,"updated":"2021-11-19 15:19:51.000000000","message":"The corresponding validator to handle the ValueError","commit_id":"27c2da59cbe6a96ef6bc9639cff169865ea41e85"},{"author":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},"change_message_id":"b51d005d0fd81afd99961389bc3afdbde666c284","unresolved":true,"context_lines":[{"line_number":1606,"context_line":"                                 latest_release.version))"},{"line_number":1607,"context_line":"                        )"},{"line_number":1608,"context_line":"                except IndexError:"},{"line_number":1609,"context_line":"                    if branch_mode !\u003d \u0027tagless\u0027:"},{"line_number":1610,"context_line":"                        context.error("},{"line_number":1611,"context_line":"                            \u0027No tags found for deliverable within this \u0027"},{"line_number":1612,"context_line":"                            \u0027series. Creating a tag is mandatory before \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"7f0cabbe_d6bc7a09","line":1609,"range":{"start_line":1609,"start_character":0,"end_line":1609,"end_character":48},"updated":"2021-11-22 11:03:40.000000000","message":"This if is useless, since we are already in a if statement from line 1562 and we know branch_mode is std or std-with-versions...","commit_id":"678a1f5d1b874b649b6508877a9c80bcd7838696"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"8b9e9fe772d8621b7407d6954a80f647593644ec","unresolved":true,"context_lines":[{"line_number":1764,"context_line":"        ])"},{"line_number":1765,"context_line":""},{"line_number":1766,"context_line":"        try:"},{"line_number":1767,"context_line":"            location \u003d branch.get_repo_map()"},{"line_number":1768,"context_line":"        except ValueError:"},{"line_number":1769,"context_line":"            location \u003d {}"},{"line_number":1770,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"d347414d_df93f930","line":1767,"range":{"start_line":1767,"start_character":23,"end_line":1767,"end_character":44},"updated":"2021-11-19 15:35:25.000000000","message":"This part is poorly handled too in this context (when a tag is missing).\nI\u0027m not sure how to handle this point and I\u0027m not sure if we don\u0027t add side effects here by adding this try/catch.\n\nWithout that it will fail with a non handled error (a ValueError exception), and so the validation will fail abruptly too, like with the previous fixed test. \n\nPerhaps we should add a debug or a warn at least in the except part. \n\nThoughts?","commit_id":"678a1f5d1b874b649b6508877a9c80bcd7838696"},{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"fb379812cad87d25f100cc4f053e5c23081215be","unresolved":true,"context_lines":[{"line_number":1764,"context_line":"        ])"},{"line_number":1765,"context_line":""},{"line_number":1766,"context_line":"        try:"},{"line_number":1767,"context_line":"            location \u003d branch.get_repo_map()"},{"line_number":1768,"context_line":"        except ValueError:"},{"line_number":1769,"context_line":"            location \u003d {}"},{"line_number":1770,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"8b3c2481_96bd3f36","line":1767,"range":{"start_line":1767,"start_character":23,"end_line":1767,"end_character":44},"in_reply_to":"9e300ef0_151a247b","updated":"2021-12-02 07:39:48.000000000","message":"Indeed this fails in case there is no release tag, just the branch cut. On the other hand if a tagless typed stable branch cut is done properly (with [1]) then this line will pass. But I agree that fixing this could be a different patch.\n\n\n[1] example (good):\n-branches:\n  - name: stable/wallaby\n    location:\n      openstack/tripleo-docs: 77859636a2002221fda27b9ae1f3c774b5776b29\ninstead of (wrong):\n-branches:\n  - name: stable/wallaby\n    location: 77859636a2002221fda27b9ae1f3c774b5776b29","commit_id":"678a1f5d1b874b649b6508877a9c80bcd7838696"},{"author":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},"change_message_id":"b51d005d0fd81afd99961389bc3afdbde666c284","unresolved":true,"context_lines":[{"line_number":1764,"context_line":"        ])"},{"line_number":1765,"context_line":""},{"line_number":1766,"context_line":"        try:"},{"line_number":1767,"context_line":"            location \u003d branch.get_repo_map()"},{"line_number":1768,"context_line":"        except ValueError:"},{"line_number":1769,"context_line":"            location \u003d {}"},{"line_number":1770,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"9e300ef0_151a247b","line":1767,"range":{"start_line":1767,"start_character":23,"end_line":1767,"end_character":44},"in_reply_to":"d347414d_df93f930","updated":"2021-11-22 11:03:40.000000000","message":"I think we should fix this case separately -- if it happens in practice. I would leave it out of the current patch","commit_id":"678a1f5d1b874b649b6508877a9c80bcd7838696"},{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"fb379812cad87d25f100cc4f053e5c23081215be","unresolved":true,"context_lines":[{"line_number":1609,"context_line":"                    context.error("},{"line_number":1610,"context_line":"                        \u0027No tags found for deliverable within this \u0027"},{"line_number":1611,"context_line":"                        \u0027series. Creating a tag is mandatory before \u0027"},{"line_number":1612,"context_line":"                        \u0027creating a branch\u0027"},{"line_number":1613,"context_line":"                    )"},{"line_number":1614,"context_line":""},{"line_number":1615,"context_line":"        elif branch_mode \u003d\u003d \u0027tagless\u0027:"}],"source_content_type":"text/x-python","patch_set":3,"id":"6ef814c3_a58c49d0","line":1612,"updated":"2021-12-02 07:39:48.000000000","message":"This is almost fine, but not quite true o:) as branch can be created if \u0027stable-branch-type: tagless\u0027 is set. So I\u0027d append this error message with something like:\n\nor stable-branch-type needs to be set as tagless.","commit_id":"a97ca620acbe6e62dc91fc1c5960ce4b02fe19a3"}],"openstack_releases/deliverable.py":[{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"1886fbe388bca8b610368d31d76cf51c14c71d5b","unresolved":true,"context_lines":[{"line_number":377,"context_line":"        \"Return mapping between repo and hash.\""},{"line_number":378,"context_line":"        if isinstance(self.location, dict):"},{"line_number":379,"context_line":"            return self.location"},{"line_number":380,"context_line":"        try:"},{"line_number":381,"context_line":"            release \u003d self.deliv.get_release(self.location)"},{"line_number":382,"context_line":"        except ValueError:"},{"line_number":383,"context_line":"            return {}"},{"line_number":384,"context_line":"        return {"},{"line_number":385,"context_line":"            p.repo.name: p.hash"},{"line_number":386,"context_line":"            for p in release.projects"}],"source_content_type":"text/x-python","patch_set":1,"id":"fc69f638_cc82434e","line":383,"range":{"start_line":380,"start_character":8,"end_line":383,"end_character":21},"updated":"2021-11-19 15:19:51.000000000","message":"I\u0027m not sure if we should handle the ValueError here or in the validator (see my comment above)","commit_id":"27c2da59cbe6a96ef6bc9639cff169865ea41e85"}]}
