Skip to content

Commit 5f50a77

Browse files
committed
Release v1.15.0
2 parents 0114fc6 + fc4eb1c commit 5f50a77

File tree

10 files changed

+51
-7
lines changed

10 files changed

+51
-7
lines changed

build.gradle.kts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ plugins {
55
jacoco
66
java
77
`maven-publish`
8-
id("org.sonarqube") version "5.0.0.4638"
8+
id("org.sonarqube") version "5.1.0.4882"
99
id("org.cadixdev.licenser") version "0.6.1"
1010
id("com.github.johnrengelman.shadow") version ("7.0.0")
1111
id("com.github.ben-manes.versions") version "0.51.0"
@@ -32,7 +32,7 @@ val sonarQubeVersion = "9.9.0.65466"
3232
dependencies {
3333
implementation("org.sonarsource.api.plugin", "sonar-plugin-api", "9.14.0.375")
3434

35-
implementation("io.github.1c-syntax", "bsl-language-server", "0.23.0") {
35+
implementation("io.github.1c-syntax", "bsl-language-server", "0.23.1") {
3636
exclude("com.contrastsecurity", "java-sarif")
3737
exclude("io.sentry", "sentry-logback")
3838
exclude("org.springframework.boot", "spring-boot-starter-websocket")

docs/en/index.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,8 @@ Available values:
8989
* never *default* - modules are not skipped
9090
- `sonar.bsl.languageserver.overrideConfiguration` - override Quality Profile settings with settings from BSL Language Server configuration file;
9191
- `sonar.bsl.languageserver.configurationPath` - path to BSL Language Server configuration file to override settings;
92+
- `sonar.bsl.languageserver.subsystemsFilter.include` - List of names of subsystems for which objects the analysis is performed, including child subsystems. Default `""` - include all;
93+
- `sonar.bsl.languageserver.subsystemsFilter.exclude` - List of names of subsystems excluded from analysis, including child subsystems. Default - `""` - not exclude;
9294
- `sonar.bsl.file.suffixes` - list of file suffixes that will be scanned. Default - `.bsl,.os`
9395

9496
## Language switch for rule names/descriptions and issue messages

docs/index.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,8 @@ sonar-scanner -Dsonar.host.url=https://sonar.company.com -Dsonar.login=SONAR_AUT
9191
- never *по умолчанию* - модули не пропускаются;
9292
* `sonar.bsl.languageserver.overrideConfiguration` - переопределить настройки Quality Profile настройками из файла конфигурации BSL Language Server;
9393
* `sonar.bsl.languageserver.configurationPath` - путь к файлу конфигурации BSL Language Server для переопределения настроек;
94+
* `sonar.bsl.languageserver.subsystemsFilter.include` - Список имен подсистем по объектам которых выполняется анализ, включая подчиненные подсистемы. По умолчанию `""` - Все подсистемы;
95+
* `sonar.bsl.languageserver.subsystemsFilter.exclude` - Список имен подсистем исключенных из анализа, включая подчиненные подсистемы. По умолчанию - `""` - Нет исключаемых подсистем;
9496
* `sonar.bsl.file.suffixes` - список расширений файлов для анализа. По умолчанию - `.bsl,.os`
9597

9698
## Переключение языка имен правил и сообщений в замечаниях

src/main/java/com/github/_1c_syntax/bsl/sonar/BSLCommunityProperties.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,8 @@ public final class BSLCommunityProperties {
4141
public static final String LANG_SERVER_CONFIGURATION_PATH_KEY = "sonar.bsl.languageserver.configurationPath";
4242
public static final String LANG_SERVER_OVERRIDE_CONFIGURATION_KEY = "sonar.bsl.languageserver.overrideConfiguration";
4343
public static final String LANG_SERVER_REPORT_PATH_KEY = "sonar.bsl.languageserver.reportPaths";
44+
public static final String LANG_SERVER_SUBSYSTEM_FILTER_INCLUDE_KEY = "sonar.bsl.languageserver.subsystemsFilter.include";
45+
public static final String LANG_SERVER_SUBSYSTEM_FILTER_EXCLUDE_KEY = "sonar.bsl.languageserver.subsystemsFilter.exclude";
4446
public static final String BSL_FILE_EXTENSIONS_KEY = "sonar.bsl.file.suffixes";
4547

4648
public static final Boolean LANG_SERVER_ENABLED_DEFAULT_VALUE = Boolean.TRUE;
@@ -103,6 +105,20 @@ public static List<PropertyDefinition> getProperties() {
103105
.onQualifiers(Qualifiers.PROJECT)
104106
.build(),
105107
PropertyDefinitionUtils.newPropertyBuilderBSL(5,
108+
LANG_SERVER_SUBSYSTEM_FILTER_INCLUDE_KEY,
109+
"subsystemfilter.include",
110+
"")
111+
.onQualifiers(Qualifiers.PROJECT)
112+
.multiValues(true)
113+
.build(),
114+
PropertyDefinitionUtils.newPropertyBuilderBSL(6,
115+
LANG_SERVER_SUBSYSTEM_FILTER_EXCLUDE_KEY,
116+
"subsystemfilter.exclude",
117+
"")
118+
.onQualifiers(Qualifiers.PROJECT)
119+
.multiValues(true)
120+
.build(),
121+
PropertyDefinitionUtils.newPropertyBuilderBSL(7,
106122
BSL_FILE_EXTENSIONS_KEY,
107123
"file.suffixes",
108124
BSL_FILE_EXTENSIONS_DEFAULT_VALUE)

src/main/java/com/github/_1c_syntax/bsl/sonar/BSLCoreSensor.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -328,6 +328,19 @@ private LanguageServerConfiguration getLanguageServerConfiguration() {
328328

329329
configuration.getDiagnosticsOptions().setSkipSupport(skipSupport);
330330

331+
332+
Set<String> includeSubsystems = new HashSet<>();
333+
Collections.addAll(includeSubsystems, context.config()
334+
.getStringArray(BSLCommunityProperties.LANG_SERVER_SUBSYSTEM_FILTER_INCLUDE_KEY));
335+
336+
configuration.getDiagnosticsOptions().getSubsystemsFilter().setInclude(includeSubsystems);
337+
338+
Set<String> excludeSubsystems = new HashSet<>();
339+
Collections.addAll(excludeSubsystems, context.config()
340+
.getStringArray(BSLCommunityProperties.LANG_SERVER_SUBSYSTEM_FILTER_EXCLUDE_KEY));
341+
342+
configuration.getDiagnosticsOptions().getSubsystemsFilter().setExclude(excludeSubsystems);
343+
331344
var activeRules = context.activeRules();
332345

333346
Map<String, Either<Boolean, Map<String, Object>>> diagnostics = new HashMap<>();

src/main/resources/edt.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -182,8 +182,8 @@
182182
},
183183
{
184184
"Code": "EDT-21",
185-
"Name": "Не следует размещать экспортные процедуры и функции в модулях команд и форм. К этим модулям нет возможности обращаться из внешнего по отношению к ним кода, поэтому экспортные процедуры и функции в этих модулях не имеют смысла.",
186-
"Description": "Отсутствует",
185+
"Name": "Не следует размещать экспортные процедуры и функции в модулях команд и форм",
186+
"Description": "Не следует размещать экспортные процедуры и функции в модулях команд и форм. К этим модулям нет возможности обращаться из внешнего по отношению к ним кода, поэтому экспортные процедуры и функции в этих модулях не имеют смысла.",
187187
"Type": "CODE_SMELL",
188188
"Severity": "MINOR",
189189
"Active": true,
@@ -1568,8 +1568,8 @@
15681568
},
15691569
{
15701570
"Code": "EDT-175",
1571-
"Name": "Реквизиты составного типа, используемые в условиях соединений, отборах, а также для упорядочивания, должны содержать только ссылочные типы. В состав их типов не рекомендуется включать никаких других нессылочных типов.",
1572-
"Description": "Отсутствует",
1571+
"Name": "Реквизиты составного типа, используемые в условиях соединений, отборах, а также для упорядочивания, должны содержать только ссылочные типы.",
1572+
"Description": "Реквизиты составного типа, используемые в условиях соединений, отборах, а также для упорядочивания, должны содержать только ссылочные типы. В состав их типов не рекомендуется включать никаких других нессылочных типов.",
15731573
"Type": "BUG",
15741574
"Severity": "MINOR",
15751575
"Active": true,

src/main/resources/org/sonar/l10n/communitybsl.properties

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,10 @@ communitybsl.overrideConfiguration.name=BSL Language Server - Use configuration
1010
communitybsl.overrideConfiguration.description=Override SonarQube settings with BSL LS configuration file.
1111
communitybsl.file.suffixes.name=BSL File suffixes
1212
communitybsl.file.suffixes.description=List of file suffixes that will be scanned.
13+
communitybsl.subsystemfilter.include.description=List of subsystems for include.
14+
communitybsl.subsystemfilter.include.name=Subsystems for include.
15+
communitybsl.subsystemfilter.exclude.description=List of subsystems for exclude.
16+
communitybsl.subsystemfilter.exclude.name=List of subsystems for exclude.
1317
# EXTERNAL
1418
communitybsl.reportPaths.name=BSL Language Server Report Files
1519
communitybsl.reportPaths.description=Paths (absolute or relative) to xml files with BSL Language Server diagnostics

src/main/resources/org/sonar/l10n/communitybsl_ru.properties

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,10 @@ communitybsl.overrideConfiguration.name=Использовать конфигу
1010
communitybsl.overrideConfiguration.description=Переопределяет настройки профиля SonarQube в соответствии с конфигурационным файлом BSL Language Server
1111
communitybsl.file.suffixes.name=Расширения bsl-файлов
1212
communitybsl.file.suffixes.description=Список расширений файлов для анализа
13+
communitybsl.subsystemfilter.include.description=Список подсистем для замечаний
14+
communitybsl.subsystemfilter.include.name=Включая подсистемы
15+
communitybsl.subsystemfilter.exclude.description=Список подсистем для исключения замечаний
16+
communitybsl.subsystemfilter.exclude.name=Исключая подсистемы
1317
# EXTERNAL
1418
communitybsl.reportPaths.name=Путь к файлам отчета BSL Language Server
1519
communitybsl.reportPaths.description=Путь (абсолютный или относительный) к xml-файлам отчета BSL Language Server

src/test/java/com/github/_1c_syntax/bsl/sonar/BSLPluginTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ void testGetExtensions() {
5050
var runtime = SonarRuntimeImpl.forSonarQube(VERSION_8_9, SonarQubeSide.SCANNER, SonarEdition.COMMUNITY);
5151
var context = new Plugin.Context(runtime);
5252
bslPlugin.define(context);
53-
assertThat((List<?>) context.getExtensions()).hasSize(23);
53+
assertThat((List<?>) context.getExtensions()).hasSize(25);
5454
}
5555

5656
@Test

src/test/java/com/github/_1c_syntax/bsl/sonar/ext_issues/RuleDefinitionTest.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ void testDefine() {
4747
var repository = context.repository(reporter.getRepositoryKey());
4848
assertThat(repository).isNotNull();
4949
assertThat(repository.rules()).hasSize(179);
50+
assertThat(repository.rules()).allMatch(rule-> rule.name().length() < 200);
5051
}
5152

5253
@Test
@@ -63,6 +64,7 @@ void testEmptyExternalFilePath() {
6364
var repository = context.repository(reporter.getRepositoryKey());
6465
assertThat(repository).isNotNull();
6566
assertThat(repository.rules()).hasSize(179);
67+
assertThat(repository.rules()).allMatch(rule-> rule.name().length() < 200);
6668
}
6769

6870
@Test
@@ -85,5 +87,6 @@ void testExternalFile() {
8587
var repository = context.repository(reporter.getRepositoryKey());
8688
assertThat(repository).isNotNull();
8789
assertThat(repository.rules()).hasSize(183);
90+
assertThat(repository.rules()).allMatch(rule-> rule.name().length() < 200);
8891
}
8992
}

0 commit comments

Comments
 (0)