Skip to content

Commit 43676d0

Browse files
committed
Merge remote-tracking branch 'origin/develop' into ref-index-fix-2832
2 parents c3c2cc9 + ad92b4d commit 43676d0

File tree

132 files changed

+2128
-232
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

132 files changed

+2128
-232
lines changed

.github/workflows/sentry.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: Sentry
2+
on:
3+
push:
4+
branches-ignore:
5+
- "translations_*"
6+
jobs:
7+
sentry:
8+
name: Sentry
9+
runs-on: ubuntu-latest
10+
steps:
11+
- uses: actions/checkout@v2
12+
- name: Create Sentry release
13+
uses: getsentry/action-release@v1
14+
env:
15+
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
16+
SENTRY_ORG: ${{ secrets.SENTRY_ORG }}
17+
SENTRY_PROJECT: ${{ secrets.SENTRY_PROJECT }}
18+
with:
19+
environment: production

build.gradle.kts

Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,17 +9,18 @@ plugins {
99
signing
1010
id("org.cadixdev.licenser") version "0.6.1"
1111
id("org.sonarqube") version "3.4.0.2513"
12-
id("io.freefair.lombok") version "6.4.3.1"
13-
id("io.freefair.javadoc-links") version "6.4.3.1"
14-
id("io.freefair.javadoc-utf-8") version "6.4.3.1"
15-
id("io.freefair.aspectj.post-compile-weaving") version "6.4.3.1"
16-
id("io.freefair.maven-central.validate-poms") version "6.4.3.1"
17-
id("me.qoomon.git-versioning") version "6.1.6"
12+
id("io.freefair.lombok") version "6.5.0.3"
13+
id("io.freefair.javadoc-links") version "6.5.0.3"
14+
id("io.freefair.javadoc-utf-8") version "6.5.0.3"
15+
id("io.freefair.aspectj.post-compile-weaving") version "6.5.0.3"
16+
id("io.freefair.maven-central.validate-poms") version "6.5.0.3"
17+
id("me.qoomon.git-versioning") version "6.2.0"
1818
id("com.github.ben-manes.versions") version "0.42.0"
1919
id("org.springframework.boot") version "2.6.7"
20-
id("io.spring.dependency-management") version "1.0.11.RELEASE"
20+
id("io.spring.dependency-management") version "1.0.12.RELEASE"
2121
id("io.github.1c-syntax.bslls-dev-tools") version "0.7.0"
2222
id("ru.vyarus.pom") version "2.2.1"
23+
id("com.gorylenko.gradle-git-properties") version "2.4.1"
2324
id("io.codearte.nexus-staging") version "0.30.0"
2425
}
2526

@@ -51,6 +52,12 @@ val isSnapshot = gitVersioning.gitVersionDetails.refType != GitRefType.TAG
5152

5253
val languageToolVersion = "5.6"
5354

55+
dependencyManagement {
56+
imports {
57+
mavenBom("io.sentry:sentry-bom:6.2.1")
58+
}
59+
}
60+
5461
dependencies {
5562

5663
// RUNTIME
@@ -72,7 +79,9 @@ dependencies {
7279
exclude("org.glassfish", "javax.json")
7380
}
7481
api("com.github.1c-syntax", "utils", "0.4.0")
75-
api("com.github.1c-syntax", "mdclasses", "0.9.5")
82+
api("com.github.1c-syntax", "mdclasses", "0.10.0")
83+
api("io.github.1c-syntax", "bsl-common-library", "0.3.0")
84+
api("io.github.1c-syntax", "supportconf", "0.1.1")
7685

7786
// JLanguageTool
7887
implementation("org.languagetool", "languagetool-core", languageToolVersion)
@@ -101,6 +110,10 @@ dependencies {
101110
// SARIF serialization
102111
implementation("com.contrastsecurity", "java-sarif", "2.0")
103112

113+
// Sentry
114+
implementation("io.sentry:sentry-spring-boot-starter")
115+
implementation("io.sentry:sentry-logback")
116+
104117
// COMPILE
105118

106119
// stat analysis

docs/diagnostics/IncorrectUseLikeInQuery.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,4 +71,4 @@
7171
* Полезная информация: [Отказ от использования модальных окон](https://its.1c.ru/db/metod8dev#content:5272:hdoc)
7272
* Источник: [Cognitive complexity, ver. 1.4](https://www.sonarsource.com/docs/CognitiveComplexity.pdf) -->
7373

74-
- Источник: [Стандарт: Особенности использования в запросах оператора ПОДОБНО](https://its.1c.ru/db/v8std/content/726/hdoc?ysclid=l3g3fkmxsx)
74+
- Источник: [Стандарт: Особенности использования в запросах оператора ПОДОБНО](https://its.1c.ru/db/v8std/content/726/hdoc?ysclid=l3g3fkmxsx)
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
# Перезапись параметров метода (RewriteMethodParameter)
2+
3+
<!-- Блоки выше заполняются автоматически, не трогать -->
4+
## Описание диагностики
5+
<!-- Описание диагностики заполняется вручную. Необходимо понятным языком описать смысл и схему работу -->
6+
Иногда разработчик пишут функции таким образом, когда аргументы функции перезаписываются сразу на входе в функцию/процедуру.
7+
8+
Такое поведение вводит в заблуждение других разработчиков, которые вызывают подобные функции/процедуры.
9+
Эти функции нужно исправить. Например, убрать параметры, преобразовав их в локальные переменные.
10+
11+
## Примеры
12+
<!-- В данном разделе приводятся примеры, на которые диагностика срабатывает, а также можно привести пример, как можно исправить ситуацию -->
13+
Подозрительный код
14+
```bsl
15+
Процедура Конфигуратор(Знач СтрокаПодключения, Знач Пользователь = "", Знач Пароль = "") Экспорт
16+
СтрокаПодключения = "/F""" + КаталогБазы + """"; // Здесь
17+
...
18+
КонецФункции
19+
```
20+
21+
Исправленный код
22+
```bsl
23+
Процедура Конфигуратор(Знач КаталогБазы, Знач Пользователь = "", Знач Пароль = "") Экспорт
24+
СтрокаПодключения = "/F""" + КаталогБазы + """"; // Здесь
25+
...
26+
КонецФункции
27+
```
28+
или
29+
```bsl
30+
Процедура Конфигуратор(Знач КаталогБазы, Знач Пользователь = "", Знач Пароль = "") Экспорт
31+
Если Не ПустаяСтрока(КаталогБазы) Тогда
32+
НоваяСтрокаПодключения = "/F""" + КаталогБазы + """";
33+
Иначе
34+
НоваяСтрокаПодключения = СтрокаПодключения;
35+
КонецЕсли;
36+
...
37+
КонецФункции
38+
```
39+
40+
## Источники
41+
<!-- Необходимо указывать ссылки на все источники, из которых почерпнута информация для создания диагностики -->
42+
<!-- Примеры источников
43+
44+
* [PVS-Studio V763. Parameter is always rewritten in function body before being used](https://pvs-studio.com/ru/docs/warnings/v6023)

docs/en/diagnostics/CrazyMultilineString.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
# Crazy multiline literals (CrazyMultilineString)
22

33
<!-- Блоки выше заполняются автоматически, не трогать -->
4-
## Описание диагностики
4+
## Description
5+
56
<!-- Описание диагностики заполняется вручную. Необходимо понятным языком описать смысл и схему работу -->
67

78
In source text, multi-line constants can be initialized in two ways:

docs/en/diagnostics/IncorrectLineBreak.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Incorrect expression line break (IncorrectLineBreak)
22

33
<!-- Блоки выше заполняются автоматически, не трогать -->
4-
## Описание диагностики
4+
## Description
55
<!-- Описание диагностики заполняется вручную. Необходимо понятным языком описать смысл и схему работу -->
66

77
Long arithmetic expressions are carried as follows: one entry can contain more than one operand; when wrapping, operation characters are written at the beginning of the line (and not at the end of the previous line); operands on a new line are preceded by standard indentation, or they are aligned to the beginning of the first operand, regardless of the operation signs.

docs/en/diagnostics/IncorrectUseLikeInQuery.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Incorrect use of 'LIKE' (IncorrectUseLikeInQuery)
22

33
<!-- Блоки выше заполняются автоматически, не трогать -->
4-
## Описание диагностики
4+
## Description
55
<!-- Описание диагностики заполняется вручную. Необходимо понятным языком описать смысл и схему работу -->
66

77
When using the operator `LIKE` in the query text, it is allowed to use only
@@ -70,4 +70,4 @@ Query.SetParameter("NameTemplate", "FU_");
7070
* Полезная информация: [Отказ от использования модальных окон](https://its.1c.ru/db/metod8dev#content:5272:hdoc)
7171
* Источник: [Cognitive complexity, ver. 1.4](https://www.sonarsource.com/docs/CognitiveComplexity.pdf) -->
7272

73-
- [Standard. Features of use in operator requests LIKE (RU)](https://its.1c.ru/db/v8std/content/726/hdoc?ysclid=l3g3fkmxsx)
73+
- [Standard. Features of use in operator requests LIKE (RU)](https://its.1c.ru/db/v8std/content/726/hdoc?ysclid=l3g3fkmxsx)

docs/en/diagnostics/LogicalOrInTheWhereSectionOfQuery.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
# Using a logical "OR" in the "WHERE" section of a query (LogicalOrInTheWhereSectionOfQuery)
22

33
<!-- Блоки выше заполняются автоматически, не трогать -->
4-
## Описание диагностики
4+
## Description
5+
56
<!-- Описание диагностики заполняется вручную. Необходимо понятным языком описать смысл и схему работу -->
67
Не следует использовать `ИЛИ` в секции `ГДЕ` запроса. Это может привести к тому, что СУБД не сможет использовать
78
индексы таблиц и будет выполнять сканирование, что увеличит время работы запроса и вероятность возникновения блокировок.

docs/en/diagnostics/MultilineStringInQuery.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Multi-line literal in query (MultilineStringInQuery)
22

33
<!-- Блоки выше заполняются автоматически, не трогать -->
4-
## Описание диагностики
4+
## Description
55
<!-- Описание диагностики заполняется вручную. Необходимо понятным языком описать смысл и схему работу -->
66

77
Multi-line literals are rarely used in query texts, mostly these are error results due to an incorrect number of double quotes.
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# Rewrite method parameter (RewriteMethodParameter)
2+
3+
<!-- Блоки выше заполняются автоматически, не трогать -->
4+
## Description
5+
<!-- Описание диагностики заполняется вручную. Необходимо понятным языком описать смысл и схему работу -->
6+
7+
## Examples
8+
<!-- В данном разделе приводятся примеры, на которые диагностика срабатывает, а также можно привести пример, как можно исправить ситуацию -->
9+
10+
## Sources
11+
<!-- Необходимо указывать ссылки на все источники, из которых почерпнута информация для создания диагностики -->
12+
<!-- Примеры источников
13+
14+
* Источник: [Стандарт: Тексты модулей](https://its.1c.ru/db/v8std#content:456:hdoc)
15+
* Полезная информация: [Отказ от использования модальных окон](https://its.1c.ru/db/metod8dev#content:5272:hdoc)
16+
* Источник: [Cognitive complexity, ver. 1.4](https://www.sonarsource.com/docs/CognitiveComplexity.pdf) -->

0 commit comments

Comments
 (0)