From 8f16c4601269703d2e750a5c356731be746fdd9c Mon Sep 17 00:00:00 2001 From: mrT23 Date: Fri, 28 Jul 2023 10:52:49 +0300 Subject: [PATCH] try-except --- pr_agent/tools/pr_code_suggestions.py | 34 ++++++++++++++++----------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/pr_agent/tools/pr_code_suggestions.py b/pr_agent/tools/pr_code_suggestions.py index f9d0efe4..a3b388d9 100644 --- a/pr_agent/tools/pr_code_suggestions.py +++ b/pr_agent/tools/pr_code_suggestions.py @@ -91,22 +91,28 @@ class PRCodeSuggestions: def push_inline_code_suggestions(self, data): code_suggestions = [] for d in data['Code suggestions']: - if settings.config.verbosity_level >= 2: - logging.info(f"suggestion: {d}") - relevant_file = d['relevant file'].strip() - relevant_lines_str = d['relevant lines'].strip() - relevant_lines_start = int(relevant_lines_str.split('-')[0]) # absolute position - relevant_lines_end = int(relevant_lines_str.split('-')[-1]) - content = d['suggestion content'] - new_code_snippet = d['improved code'] + try: + if settings.config.verbosity_level >= 2: + logging.info(f"suggestion: {d}") + relevant_file = d['relevant file'].strip() + relevant_lines_str = d['relevant lines'].strip() + if ',' in relevant_lines_str: # 'relevant lines': '181, 190' + relevant_lines_str = int(relevant_lines_str.split(',')[0]) + relevant_lines_start = int(relevant_lines_str.split('-')[0]) # absolute position + relevant_lines_end = int(relevant_lines_str.split('-')[-1]) + content = d['suggestion content'] + new_code_snippet = d['improved code'] - if new_code_snippet: - new_code_snippet = self.dedent_code(relevant_file, relevant_lines_start, new_code_snippet) + if new_code_snippet: + new_code_snippet = self.dedent_code(relevant_file, relevant_lines_start, new_code_snippet) - body = f"**Suggestion:** {content}\n```suggestion\n" + new_code_snippet + "\n```" - code_suggestions.append({'body': body,'relevant_file': relevant_file, - 'relevant_lines_start': relevant_lines_start, - 'relevant_lines_end': relevant_lines_end}) + body = f"**Suggestion:** {content}\n```suggestion\n" + new_code_snippet + "\n```" + code_suggestions.append({'body': body, 'relevant_file': relevant_file, + 'relevant_lines_start': relevant_lines_start, + 'relevant_lines_end': relevant_lines_end}) + except: + if settings.config.verbosity_level >= 2: + logging.info(f"Could not parse suggestion: {d}") self.git_provider.publish_code_suggestions(code_suggestions)