Корректировка файлов для релиза

This commit is contained in:
Maximov Valery
2019-03-25 09:21:27 +03:00
parent a7dc6bfb41
commit 23275100d3
4 changed files with 29 additions and 6 deletions
+3
View File
@@ -0,0 +1,3 @@
# модули
* text=auto
*.os text eol=lf
+21
View File
@@ -15,3 +15,24 @@
Часто возникают ситуации, когда в разных проектах используется общая кодовая база и есть потребность исключить замечания родительского проекта, т.к. исправление их в дочернем самостоятельно не планируется. Переносить руками все замечания достаточно проблематично.
Для закрытия замечаний необходимо вызвать команду `issue-resolver` и передать ей информацию для авторизации, данные родительского и дочерних проектов.
#### Логика закрытия замечаний
SonarQube может создавать несколько замечаний по одному правилу на одну строку, на один символ / подстроку, что приводит к формированию одноко хэша строки. Примером таких замечаний например являются правила наличия пробелов у знаков математических операций и отсутствие описаний параметров методов.
Для гарантии корректрого закрытия замечаний дочернего проекта ввене алгоритм, при котором закрытие в довернем проекте замечний возможно только при выполнении следующих условий:
- количество одинаковых замечаний (с одинаковым хэшем и правилом) должно совпадать с родительским
- количество одинаковых незакрытых замечаний в дочернем проекте должны быть большим или равным количеству закрываемых замечаний из родительского проекта
В дочернем проекте будет закрыто то количество замечаний, которое неоьбходимо для выравнивая по количеству с родительским.
**Примеры:**
**Пример 1:** В родительском проекте есть 3 замечания на строке, исправлено одно. В дочернем тоже 3 замечания, исправленных нет. В результате - бцдет закрыто одно замечание в дочернем проекте.
**Пример 2:** В родительском проекте есть 3 замечания на строке, исправлено одно. В дочернем тоже 3 замечания, исправленных 2. В результате - в дочернем проекте не будет закрыто ни одного нового замечания.
**Пример 3:** В родительском проекте есть 3 замечания на строке, исправлено два. В дочернем тоже 3 замечания, исправленных 1. В результате - в дочернем проекте будет закрыто еще одно замечание, и общее количество закрых станет 2.
**Пример 4:** В родительском проекте есть 3 замечания на строке, исправлено два. В дочернем 4 замечания, исправленных 1. В результате - в дочернем проекте не будет закрыто ни одного нового замечния.
+4 -5
View File
@@ -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")
@@ -121,7 +121,7 @@
Возврат МенеджерКомандПриложения.РезультатыКоманд().Успех;
КонецФункции
КонецФункции
///////////////////////////////////////////////////////////////////////////////////////////////////