)]}'
{"cliff/command.py":[{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"0bde20fe8e1ad40ef4080ec7df2b4f4123ac36de","unresolved":false,"context_lines":[{"line_number":104,"context_line":"    def _split_lines(self, text, width):"},{"line_number":105,"context_line":"        if \u0027\\n\u0027 in text:"},{"line_number":106,"context_line":"            return text.splitlines()"},{"line_number":107,"context_line":"        return super(SmartHelpFormatter, self)._split_lines(text, width)"}],"source_content_type":"text/x-python","patch_set":1,"id":"bff0334d_a35a204c","line":107,"updated":"2017-04-07 13:29:14.000000000","message":"I think we still want the line wrapping. Can we split the text on \\n\\n and then combine the results of passing each of those paragraphs to the base class method?","commit_id":"e63f15e84b14cbfc38c5c1953ebdb0331789a72d"},{"author":{"_account_id":8276,"name":"kiwik","email":"chenrui.momo@gmail.com","username":"kiwik"},"change_message_id":"43ba149494906adc97db6ba59fadbec1f0b88e1e","unresolved":false,"context_lines":[{"line_number":104,"context_line":"    def _split_lines(self, text, width):"},{"line_number":105,"context_line":"        if \u0027\\n\u0027 in text:"},{"line_number":106,"context_line":"            return text.splitlines()"},{"line_number":107,"context_line":"        return super(SmartHelpFormatter, self)._split_lines(text, width)"}],"source_content_type":"text/x-python","patch_set":1,"id":"bff0334d_136b0885","line":107,"in_reply_to":"bff0334d_a35a204c","updated":"2017-04-11 08:22:31.000000000","message":"Ah, It\u0027s a better way, thank you.","commit_id":"e63f15e84b14cbfc38c5c1953ebdb0331789a72d"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"dd2279c699b4ad4a8744b4e3f558659bba318907","unresolved":false,"context_lines":[{"line_number":91,"context_line":"        return self.take_action(parsed_args) or 0"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"class SmartHelpFormatter(argparse.HelpFormatter):"},{"line_number":95,"context_line":"    \"\"\"Smart help formatter to output raw help message if help contain \\n."},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"    Some command help messages maybe have multiple line content, the built-in"}],"source_content_type":"text/x-python","patch_set":2,"id":"bff0334d_90d46e49","line":94,"updated":"2017-04-12 17:10:34.000000000","message":"Let\u0027s mark this class private by prefixing the name with an underscore.","commit_id":"6fee00394515015779e871966ef324a343dbcf7e"},{"author":{"_account_id":8276,"name":"kiwik","email":"chenrui.momo@gmail.com","username":"kiwik"},"change_message_id":"0058c1f8c09ba390f8bac9f31c419726c0d4f402","unresolved":false,"context_lines":[{"line_number":91,"context_line":"        return self.take_action(parsed_args) or 0"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"class SmartHelpFormatter(argparse.HelpFormatter):"},{"line_number":95,"context_line":"    \"\"\"Smart help formatter to output raw help message if help contain \\n."},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"    Some command help messages maybe have multiple line content, the built-in"}],"source_content_type":"text/x-python","patch_set":2,"id":"9ff52f3f_59aa8385","line":94,"in_reply_to":"bff0334d_90d46e49","updated":"2017-04-13 03:40:34.000000000","message":"Done","commit_id":"6fee00394515015779e871966ef324a343dbcf7e"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"dd2279c699b4ad4a8744b4e3f558659bba318907","unresolved":false,"context_lines":[{"line_number":103,"context_line":"    \"\"\""},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"    def _split_lines(self, text, width):"},{"line_number":106,"context_line":"        if \u0027\\n\u0027 in text:"},{"line_number":107,"context_line":"            lines \u003d text.splitlines()"},{"line_number":108,"context_line":"        else:"},{"line_number":109,"context_line":"            lines \u003d [text]"}],"source_content_type":"text/x-python","patch_set":2,"id":"bff0334d_b08ad260","line":106,"updated":"2017-04-12 17:10:34.000000000","message":"I think you want to split on \u0027\\n\\n\u0027 to get paragraphs, and then let the base class wrap the paragraphs. Otherwise the output will have a very jagged right margin.\n\nIf you look at the docstring for this class as an example, and consider what happens to lines 101 and 102 if the width is less than the length of line 101, we could end up with something like\n\n  message format if it contain \\n, and wrap long line\n  like HelpFormatter\n  behavior.\n\nwhen what we want is\n\n  message format if it contain \\n, and wrap long line\n  like HelpFormatter behavior.\n\nBy wrapping the entire paragraph as one block, we can flow one line with the next as part of the wrapping process.","commit_id":"6fee00394515015779e871966ef324a343dbcf7e"},{"author":{"_account_id":8276,"name":"kiwik","email":"chenrui.momo@gmail.com","username":"kiwik"},"change_message_id":"0058c1f8c09ba390f8bac9f31c419726c0d4f402","unresolved":false,"context_lines":[{"line_number":103,"context_line":"    \"\"\""},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"    def _split_lines(self, text, width):"},{"line_number":106,"context_line":"        if \u0027\\n\u0027 in text:"},{"line_number":107,"context_line":"            lines \u003d text.splitlines()"},{"line_number":108,"context_line":"        else:"},{"line_number":109,"context_line":"            lines \u003d [text]"}],"source_content_type":"text/x-python","patch_set":2,"id":"9ff52f3f_f9515764","line":106,"in_reply_to":"bff0334d_b08ad260","updated":"2017-04-13 03:40:34.000000000","message":"Ah, I got your point, thanks detailed clarification.","commit_id":"6fee00394515015779e871966ef324a343dbcf7e"}],"cliff/tests/test_command.py":[{"author":{"_account_id":8276,"name":"kiwik","email":"chenrui.momo@gmail.com","username":"kiwik"},"change_message_id":"d8e89df54ed0a1c77a5044ac4ce03553cd5c1b63","unresolved":false,"context_lines":[{"line_number":36,"context_line":"        )"},{"line_number":37,"context_line":"        parser.add_argument("},{"line_number":38,"context_line":"            \u0027regular_help_argument\u0027,"},{"line_number":39,"context_line":"            help\u003d\"The quick brown fox jumps \""},{"line_number":40,"context_line":"                 \"over the lazy dog.\","},{"line_number":41,"context_line":"        )"},{"line_number":42,"context_line":"        return parser"},{"line_number":43,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"7ffa3b31_0f738ae9","line":40,"range":{"start_line":39,"start_character":17,"end_line":40,"end_character":37},"updated":"2017-04-14 09:28:58.000000000","message":"Hi Doug, Sorry, ask about \"\\n\\n\" and \"\\n\" again, I saw the usage of regular help message is to append the string, so no additional \"\\n\" exist at the end of original line, I think we can use the single \"\\n\" to split the long help message, like the above one, please see the output string in my test case.","commit_id":"9d505a7faf7025174a574b3cfd0e8cfa17cf3b62"},{"author":{"_account_id":8276,"name":"kiwik","email":"chenrui.momo@gmail.com","username":"kiwik"},"change_message_id":"d8e89df54ed0a1c77a5044ac4ce03553cd5c1b63","unresolved":false,"context_lines":[{"line_number":103,"context_line":"                        none: (v2.37+) no network is attached"},{"line_number":104,"context_line":"                        auto: (v2.37+) the compute service will automatically"},{"line_number":105,"context_line":"                        allocate a network."},{"line_number":106,"context_line":"                        Specifying a --nic of auto or none cannot be used with"},{"line_number":107,"context_line":"                        any other --nic value."},{"line_number":108,"context_line":"  regular_help_argument"},{"line_number":109,"context_line":"                        The quick brown fox jumps over the lazy dog."}],"source_content_type":"text/x-python","patch_set":4,"id":"7ffa3b31_af9496e9","line":106,"range":{"start_line":106,"start_character":54,"end_line":106,"end_character":65},"updated":"2017-04-14 09:28:58.000000000","message":"here, no jagged right margin.","commit_id":"9d505a7faf7025174a574b3cfd0e8cfa17cf3b62"}]}
