This commit is contained in:
Weves 2024-05-11 12:34:29 -07:00 committed by Chris Weaver
parent 2e0be9f2da
commit 4e759717ab
2 changed files with 29 additions and 18 deletions

View File

@ -44,38 +44,48 @@ def extract_jira_project(url: str) -> tuple[str, str]:
return jira_base, jira_project
def extract_text_from_content(content):
def extract_text_from_content(content: dict) -> str:
texts = []
if 'content' in content:
for block in content['content']:
if 'content' in block:
for item in block['content']:
if item['type'] == 'text':
texts.append(item['text'])
if "content" in content:
for block in content["content"]:
if "content" in block:
for item in block["content"]:
if item["type"] == "text":
texts.append(item["text"])
return " ".join(texts)
def _get_comment_strs(jira: Issue, comment_email_blacklist: tuple[str, ...] = ()) -> list[str]:
def _get_comment_strs(
jira: Issue, comment_email_blacklist: tuple[str, ...] = ()
) -> list[str]:
comment_strs = []
for comment in jira.fields.comment.comments:
try:
if hasattr(comment, 'body'):
body_text = extract_text_from_content(comment.raw['body'])
elif hasattr(comment, 'raw'):
body = comment.raw.get('body', 'No body content available')
body_text = extract_text_from_content(body) if isinstance(body, dict) else body
if hasattr(comment, "body"):
body_text = extract_text_from_content(comment.raw["body"])
elif hasattr(comment, "raw"):
body = comment.raw.get("body", "No body content available")
body_text = (
extract_text_from_content(body) if isinstance(body, dict) else body
)
else:
body_text = "No body attribute found"
if hasattr(comment, 'author') and comment.author.emailAddress in comment_email_blacklist:
if (
hasattr(comment, "author")
and comment.author.emailAddress in comment_email_blacklist
):
continue # Skip adding comment if author's email is in blacklist
comment_strs.append(body_text)
except Exception as e:
logger.error(f"Failed to process comment due to an error: {e}")
continue
continue
return comment_strs
def fetch_jira_issues_batch(
jql: str,
start_index: int,

View File

@ -231,7 +231,8 @@ class NotionConnector(LoadConnector, PollConnector):
if result_type == "unsupported":
logger.warning(
f"Skipping unsupported block type '{result_type}' ('{result_block_id}') for page '{page_block_id}': "
f"Skipping unsupported block type '{result_type}' "
f"('{result_block_id}') for base block '{base_block_id}': "
f"(discussion: https://github.com/danswer-ai/danswer/issues/1230)"
)
continue