From fbc9fca5cf2afbe8cc208eaf8de6465812a7bdd5 Mon Sep 17 00:00:00 2001 From: Brett Zamir Date: Fri, 7 Jun 2024 08:49:44 +0800 Subject: [PATCH] fix(`require-description-complete-sentence`): regression with heading exempting; fixes #1220 --- src/rules/requireDescriptionCompleteSentence.js | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/rules/requireDescriptionCompleteSentence.js b/src/rules/requireDescriptionCompleteSentence.js index 8673b45ae..a40720f3f 100644 --- a/src/rules/requireDescriptionCompleteSentence.js +++ b/src/rules/requireDescriptionCompleteSentence.js @@ -112,7 +112,9 @@ const validateDescription = ( return false; } - const paragraphs = extractParagraphs(description).filter(Boolean); + const descriptionNoHeadings = description.replaceAll(/^\s*#[^\n]*(\n|$)/gm, ''); + + const paragraphs = extractParagraphs(descriptionNoHeadings).filter(Boolean); return paragraphs.some((paragraph, parIdx) => { const sentences = extractSentences(paragraph, abbreviationsRegex); @@ -192,10 +194,7 @@ const validateDescription = ( const paragraphNoAbbreviations = paragraph.replace(abbreviationsRegex, ''); - if ( - !/(?:[.?!|]|```)\s*$/u.test(paragraphNoAbbreviations) && - !paragraphNoAbbreviations.startsWith('#') - ) { + if (!/(?:[.?!|]|```)\s*$/u.test(paragraphNoAbbreviations)) { report('Sentences must end with a period.', fix, tag); return true; }