diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..f1e9760 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,3 @@ +# модули +* text=auto +*.os text eol=lf diff --git a/README.md b/README.md index 6a5beaf..91fb0e5 100644 --- a/README.md +++ b/README.md @@ -15,3 +15,24 @@ Часто возникают ситуации, когда в разных проектах используется общая кодовая база и есть потребность исключить замечания родительского проекта, т.к. исправление их в дочернем самостоятельно не планируется. Переносить руками все замечания достаточно проблематично. Для закрытия замечаний необходимо вызвать команду `issue-resolver` и передать ей информацию для авторизации, данные родительского и дочерних проектов. + +#### Логика закрытия замечаний + +SonarQube может создавать несколько замечаний по одному правилу на одну строку, на один символ / подстроку, что приводит к формированию одноко хэша строки. Примером таких замечаний например являются правила наличия пробелов у знаков математических операций и отсутствие описаний параметров методов. + +Для гарантии корректрого закрытия замечаний дочернего проекта ввене алгоритм, при котором закрытие в довернем проекте замечний возможно только при выполнении следующих условий: + +- количество одинаковых замечаний (с одинаковым хэшем и правилом) должно совпадать с родительским +- количество одинаковых незакрытых замечаний в дочернем проекте должны быть большим или равным количеству закрываемых замечаний из родительского проекта + +В дочернем проекте будет закрыто то количество замечаний, которое неоьбходимо для выравнивая по количеству с родительским. + +**Примеры:** + +**Пример 1:** В родительском проекте есть 3 замечания на строке, исправлено одно. В дочернем тоже 3 замечания, исправленных нет. В результате - бцдет закрыто одно замечание в дочернем проекте. + +**Пример 2:** В родительском проекте есть 3 замечания на строке, исправлено одно. В дочернем тоже 3 замечания, исправленных 2. В результате - в дочернем проекте не будет закрыто ни одного нового замечания. + +**Пример 3:** В родительском проекте есть 3 замечания на строке, исправлено два. В дочернем тоже 3 замечания, исправленных 1. В результате - в дочернем проекте будет закрыто еще одно замечание, и общее количество закрых станет 2. + +**Пример 4:** В родительском проекте есть 3 замечания на строке, исправлено два. В дочернем 4 замечания, исправленных 1. В результате - в дочернем проекте не будет закрыто ни одного нового замечния. diff --git a/packagedef b/packagedef index 8070ef4..50a269e 100644 --- a/packagedef +++ b/packagedef @@ -1,17 +1,16 @@ -ПутьКСценариюПараметров = ОбъединитьПути(ТекущийСценарий().Каталог, "src", "Модули", "ПараметрыСистемы.os"); +ПутьКСценариюПараметров = ОбъединитьПути(ТекущийСценарий().Каталог, "src", "Модули", "ПараметрыСистемы.os"); + ПараметрыСистемы_ЛокальнаяВерсия = ЗагрузитьСценарий(ПутьКСценариюПараметров); Описание.Имя(ПараметрыСистемы_ЛокальнаяВерсия.ИмяПродукта()) .Версия(ПараметрыСистемы_ЛокальнаяВерсия.ВерсияПродукта()) - .ВерсияСреды("1.0.20") + .ВерсияСреды("1.0.21") .ЗависитОт("logos", "1.2.0") .ЗависитОт("cmdline", "1.0.0") .ЗависитОт("1commands", "1.3.5") - .ВключитьФайл("src") .ВключитьФайл("packagedef") - .ВключитьФайл("readme.md") + .ВключитьФайл("README.md") .ВключитьФайл("LICENSE") .ВключитьФайл("examples") - .ИсполняемыйФайл("src/main.os", "sonar-helper") diff --git a/src/Классы/КомандаЗакрытьИшузы.os b/src/Классы/КомандаЗакрытьИшузы.os index 0c0c51d..b78d09c 100644 --- a/src/Классы/КомандаЗакрытьИшузы.os +++ b/src/Классы/КомандаЗакрытьИшузы.os @@ -121,7 +121,7 @@ Возврат МенеджерКомандПриложения.РезультатыКоманд().Успех; -КонецФункции +КонецФункции ///////////////////////////////////////////////////////////////////////////////////////////////////