diff --git a/.bsl-language-server.json b/.bsl-language-server.json
new file mode 100644
index 0000000..25f8662
--- /dev/null
+++ b/.bsl-language-server.json
@@ -0,0 +1,8 @@
+{
+ "$schema": "https://1c-syntax.github.io/bsl-language-server/configuration/schema.json",
+ "diagnostics": {
+ "FunctionNameStartsWithGet": true,
+ "TooManyReturns": true,
+ "UsingSynchronousCalls": true
+ }
+}
\ No newline at end of file
diff --git a/.travis.yml b/.travis.yml
index 1148057..7329b2d 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -12,7 +12,7 @@ git:
depth: false
env:
- - PLUGIN_VERSION="0.13.0"
+ - PLUGIN_VERSION="0.14.0"
script:
- mvn clean test verify sonar:sonar -f build/pom.xml -s build/settings.xml -Dsonar.projectKey=$SONAR_PROJECT_KEY
diff --git "a/BSLLanguageServer/src/Catalogs/\320\234\320\276\320\271\320\241\320\277\321\200\320\260\320\262\320\276\321\207\320\275\320\270\320\272/Forms/\320\244\320\276\321\200\320\274\320\260\320\255\320\273\320\265\320\274\320\265\320\275\321\202\320\260/Module.bsl" "b/BSLLanguageServer/src/Catalogs/\320\234\320\276\320\271\320\241\320\277\321\200\320\260\320\262\320\276\321\207\320\275\320\270\320\272/Forms/\320\244\320\276\321\200\320\274\320\260\320\255\320\273\320\265\320\274\320\265\320\275\321\202\320\260/Module.bsl"
index 5437464..48757ae 100644
--- "a/BSLLanguageServer/src/Catalogs/\320\234\320\276\320\271\320\241\320\277\321\200\320\260\320\262\320\276\321\207\320\275\320\270\320\272/Forms/\320\244\320\276\321\200\320\274\320\260\320\255\320\273\320\265\320\274\320\265\320\275\321\202\320\260/Module.bsl"
+++ "b/BSLLanguageServer/src/Catalogs/\320\234\320\276\320\271\320\241\320\277\321\200\320\260\320\262\320\276\321\207\320\275\320\270\320\272/Forms/\320\244\320\276\321\200\320\274\320\260\320\255\320\273\320\265\320\274\320\265\320\275\321\202\320\260/Module.bsl"
@@ -1,3 +1,5 @@
+Перем CodeBlockBeforeSub;
+
#Область КвикФиксы
&НаКлиенте
@@ -18,3 +20,15 @@
КонецПроцедуры
#КонецОбласти
+
+#Область СлужебныеПроцедурыИФункции
+
+CodeBlockBeforeSub = Ложь;
+
+Процедура CodeBlockBeforeSub()
+
+ CodeBlockBeforeSub = Истина;
+
+КонецПроцедуры
+
+#КонецОбласти
diff --git "a/BSLLanguageServer/src/CommonModules/BSLLS_\320\224\320\270\320\260\320\263\320\275\320\276\321\201\321\202\320\270\320\272\320\270/Module.bsl" "b/BSLLanguageServer/src/CommonModules/BSLLS_\320\224\320\270\320\260\320\263\320\275\320\276\321\201\321\202\320\270\320\272\320\270/Module.bsl"
index aecc49f..9fdc6cd 100644
--- "a/BSLLanguageServer/src/CommonModules/BSLLS_\320\224\320\270\320\260\320\263\320\275\320\276\321\201\321\202\320\270\320\272\320\270/Module.bsl"
+++ "b/BSLLanguageServer/src/CommonModules/BSLLS_\320\224\320\270\320\260\320\263\320\275\320\276\321\201\321\202\320\270\320\272\320\270/Module.bsl"
@@ -15,6 +15,12 @@
КонецПроцедуры
+Процедура DeprecatedTypeManagedForm(А) Экспорт
+
+ А = Тип("УправляемаяФорма");
+
+КонецПроцедуры
+
Процедура EmptyStatement(А) Экспорт
А = 1; ;
@@ -274,6 +280,12 @@
КонецПроцедуры
+Функция ПолучитьFunctionNameStartsWithGet() Экспорт
+
+ Возврат Ложь;
+
+КонецФункции
+
Процедура MagicNumber(А) Экспорт
Если А = 365 Тогда
@@ -521,6 +533,26 @@
КонецПроцедуры
+Функция NestedFunctionInParameters1(А) Экспорт
+
+ Возврат А;
+
+КонецФункции
+
+Функция NestedFunctionInParameters2(А) Экспорт
+
+ Возврат А;
+
+КонецФункции
+
+Процедура NestedFunctionInParameters3(А) Экспорт
+
+ А.Вставить("А",
+ NestedFunctionInParameters1(
+ NestedFunctionInParameters2(Истина)));
+
+КонецПроцедуры
+
Процедура NestedStatements(А) Экспорт
Если Истина Тогда
@@ -636,6 +668,12 @@
КонецПроцедуры
+Процедура TempFilesDir(А) Экспорт
+
+ А = КаталогВременныхФайлов();
+
+КонецПроцедуры
+
&НаСервере
Процедура TimeoutsInExternalResources(А, Б) Экспорт
@@ -706,6 +744,15 @@
КонецПроцедуры
+&НаСервере
+Процедура UsingExternalCodeTools() Экспорт
+
+ ВнешниеОтчеты.Подключить("А");
+ ВнешниеОбработки.Создать("А");
+ РасширенияКонфигурации.Создать();
+
+КонецПроцедуры
+
&НаСервере
Процедура UsingFindElementByString(А) Экспорт
@@ -752,6 +799,15 @@
КонецПроцедуры
+&НаСервере
+Процедура WrongUseOfRollbackTransactionMethod() Экспорт
+
+ НачатьТранзакцию();
+
+ ОтменитьТранзакцию();
+
+КонецПроцедуры
+
Процедура YoLetterUsage(А, Ё) Экспорт
А = 1;
diff --git a/README.md b/README.md
index 8c89dd7..e98c5b6 100644
--- a/README.md
+++ b/README.md
@@ -1,11 +1,11 @@
-# dt.bslls.validator [![Build Status](https://travis-ci.org/DoublesunRUS/ru.capralow.dt.bslls.validator.svg)](https://travis-ci.org/DoublesunRUS/ru.capralow.dt.bslls.validator) [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=DoublesunRUS_ru.capralow.dt.bslls.validator&metric=alert_status)](https://sonarcloud.io/dashboard?id=DoublesunRUS_ru.capralow.dt.bslls.validator) [![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=DoublesunRUS_ru.capralow.dt.bslls.validator&metric=sqale_rating)](https://sonarcloud.io/dashboard?id=DoublesunRUS_ru.capralow.dt.bslls.validator) [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=DoublesunRUS_ru.capralow.dt.bslls.validator&metric=coverage)](https://sonarcloud.io/dashboard?id=DoublesunRUS_ru.capralow.dt.bslls.validator)
+# dt.bslls.validator [![Build Status](https://travis-ci.com/DoublesunRUS/ru.capralow.dt.bslls.validator.svg)](https://travis-ci.com/DoublesunRUS/ru.capralow.dt.bslls.validator) [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=DoublesunRUS_ru.capralow.dt.bslls.validator&metric=alert_status)](https://sonarcloud.io/dashboard?id=DoublesunRUS_ru.capralow.dt.bslls.validator) [![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=DoublesunRUS_ru.capralow.dt.bslls.validator&metric=sqale_rating)](https://sonarcloud.io/dashboard?id=DoublesunRUS_ru.capralow.dt.bslls.validator) [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=DoublesunRUS_ru.capralow.dt.bslls.validator&metric=coverage)](https://sonarcloud.io/dashboard?id=DoublesunRUS_ru.capralow.dt.bslls.validator)
## BSL проверки для [1C:Enterprise Development Tools](http://v8.1c.ru/overview/IDE/) 1.16
Минимальная версия EDT: 1.16.0
-Текущий релиз в ветке [master: 0.13.0](https://github.com/DoublesunRUS/ru.capralow.dt.bslls.validator/tree/master).
+Текущий релиз в ветке [master: 0.14.0](https://github.com/DoublesunRUS/ru.capralow.dt.bslls.validator/tree/master).
Разработка ведется в ветке [dev](https://github.com/DoublesunRUS/ru.capralow.dt.bslls.validator/tree/dev).
В данном репозитории хранятся только исходники.
@@ -15,7 +15,7 @@
### BSL Language Server
Плагин использует [BSL Language Server](https://github.com/1c-syntax/bsl-language-server) в соответствии с [лицензией](https://github.com/1c-syntax/bsl-language-server/blob/develop/COPYING.md).
-В состав плагина включена версия 0.13.0
+В состав плагина включена версия 0.14.1
Список диагностик можно посмотреть на [официальном сайте](https://1c-syntax.github.io/bsl-language-server/diagnostics) сервера.
### Возможности
@@ -32,6 +32,7 @@
* UsingServiceTag
Диагностики есть в EDT:
+* CodeBlockBeforeSub
* FunctionShouldHaveReturn
* ProcedureReturnsValue
* UnknownPreprocessorSymbol
diff --git a/build/pom.xml b/build/pom.xml
index a671777..4f6beb4 100644
--- a/build/pom.xml
+++ b/build/pom.xml
@@ -6,7 +6,7 @@
4.0.0
ru.capralow.dt.bslls.validator
build
- 0.13.0-SNAPSHOT
+ 0.14.0-SNAPSHOT
pom
BSL проверки для EDT
@@ -56,7 +56,7 @@
ru.capralow.dt.bslls.validator.target
default
- 0.13.0-SNAPSHOT
+ 0.14.0-SNAPSHOT
diff --git a/repository/category.xml b/repository/category.xml
index 647064a..fee9d95 100644
--- a/repository/category.xml
+++ b/repository/category.xml
@@ -1,6 +1,6 @@
-
+
diff --git a/repository/pom.xml b/repository/pom.xml
index 1998a40..86a8a70 100644
--- a/repository/pom.xml
+++ b/repository/pom.xml
@@ -8,7 +8,7 @@
ru.capralow.dt.bslls.validator
build
- 0.13.0-SNAPSHOT
+ 0.14.0-SNAPSHOT
../build/pom.xml
diff --git a/ru.capralow.dt.bslls.validator.plugin.feature/feature.xml b/ru.capralow.dt.bslls.validator.plugin.feature/feature.xml
index f9390d0..27d5a31 100644
--- a/ru.capralow.dt.bslls.validator.plugin.feature/feature.xml
+++ b/ru.capralow.dt.bslls.validator.plugin.feature/feature.xml
@@ -2,7 +2,7 @@
@@ -16,7 +16,7 @@
BSD 3-Clause License
-Copyright (c) 2019, Александр Капралов
+Copyright (c) 2019-2020, Alexander Kapralov
All rights reserved.
Redistribution and use in source and binary forms, with or without
diff --git a/ru.capralow.dt.bslls.validator.plugin.feature/pom.xml b/ru.capralow.dt.bslls.validator.plugin.feature/pom.xml
index abcd695..e793220 100644
--- a/ru.capralow.dt.bslls.validator.plugin.feature/pom.xml
+++ b/ru.capralow.dt.bslls.validator.plugin.feature/pom.xml
@@ -7,7 +7,7 @@
ru.capralow.dt.bslls.validator
build
- 0.13.0-SNAPSHOT
+ 0.14.0-SNAPSHOT
../build/pom.xml
ru.capralow.dt.bslls.validator
diff --git a/ru.capralow.dt.bslls.validator.plugin.ui/META-INF/MANIFEST.MF b/ru.capralow.dt.bslls.validator.plugin.ui/META-INF/MANIFEST.MF
index fd54281..ec3f240 100644
--- a/ru.capralow.dt.bslls.validator.plugin.ui/META-INF/MANIFEST.MF
+++ b/ru.capralow.dt.bslls.validator.plugin.ui/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: ru.capralow.dt.bslls.validator.plugin.ui;singleton:=true
-Bundle-Version: 0.13.0.qualifier
+Bundle-Version: 0.14.0.qualifier
Bundle-Activator: ru.capralow.dt.bslls.validator.plugin.internal.ui.BslValidatorPlugin
Bundle-Vendor: %providerName
Require-Bundle: org.eclipse.core.runtime,
diff --git a/ru.capralow.dt.bslls.validator.plugin.ui/bsl-language-server.jar b/ru.capralow.dt.bslls.validator.plugin.ui/bsl-language-server.jar
index 350df11..2dd7b95 100644
Binary files a/ru.capralow.dt.bslls.validator.plugin.ui/bsl-language-server.jar and b/ru.capralow.dt.bslls.validator.plugin.ui/bsl-language-server.jar differ
diff --git a/ru.capralow.dt.bslls.validator.plugin.ui/plugin_ru.properties b/ru.capralow.dt.bslls.validator.plugin.ui/plugin_ru.properties
index 1096c84..3715c25 100644
--- a/ru.capralow.dt.bslls.validator.plugin.ui/plugin_ru.properties
+++ b/ru.capralow.dt.bslls.validator.plugin.ui/plugin_ru.properties
@@ -1,4 +1,4 @@
pluginName = BSL LS \u043F\u0440\u043E\u0432\u0435\u0440\u043A\u0438 \u0434\u043B\u044F EDT
-providerName = \u041A\u0430\u043F\u0440\u0430\u043B\u043E\u0432 \u0410\u043B\u0435\u043A\u0441\u0430\u043D\u0434\u0440 \u0410\u043B\u0435\u043A\u0441\u0430\u043D\u0434\u0440\u0432\u0438\u0447
+providerName = \u041A\u0430\u043F\u0440\u0430\u043B\u043E\u0432 \u0410\u043B\u0435\u043A\u0441\u0430\u043D\u0434\u0440 \u0410\u043B\u0435\u043A\u0441\u0430\u043D\u0434\u0440\u043E\u0432\u0438\u0447
diff --git a/ru.capralow.dt.bslls.validator.plugin.ui/pom.xml b/ru.capralow.dt.bslls.validator.plugin.ui/pom.xml
index b7d7a90..b286cf2 100644
--- a/ru.capralow.dt.bslls.validator.plugin.ui/pom.xml
+++ b/ru.capralow.dt.bslls.validator.plugin.ui/pom.xml
@@ -7,7 +7,7 @@
ru.capralow.dt.bslls.validator
build
- 0.13.0-SNAPSHOT
+ 0.14.0-SNAPSHOT
../build/pom.xml
eclipse-plugin
diff --git a/ru.capralow.dt.bslls.validator.plugin.ui/src/ru/capralow/dt/bslls/validator/plugin/internal/ui/BslValidator.java b/ru.capralow.dt.bslls.validator.plugin.ui/src/ru/capralow/dt/bslls/validator/plugin/internal/ui/BslValidator.java
index e731d1d..b8fffb3 100644
--- a/ru.capralow.dt.bslls.validator.plugin.ui/src/ru/capralow/dt/bslls/validator/plugin/internal/ui/BslValidator.java
+++ b/ru.capralow.dt.bslls.validator.plugin.ui/src/ru/capralow/dt/bslls/validator/plugin/internal/ui/BslValidator.java
@@ -43,6 +43,7 @@
import com.github._1c_syntax.bsl.languageserver.context.DocumentContext;
import com.github._1c_syntax.bsl.languageserver.context.ServerContext;
import com.github._1c_syntax.bsl.languageserver.diagnostics.BSLDiagnostic;
+import com.github._1c_syntax.bsl.languageserver.diagnostics.CodeBlockBeforeSubDiagnostic;
import com.github._1c_syntax.bsl.languageserver.diagnostics.DiagnosticSupplier;
import com.github._1c_syntax.bsl.languageserver.diagnostics.FunctionShouldHaveReturnDiagnostic;
import com.github._1c_syntax.bsl.languageserver.diagnostics.LineLengthDiagnostic;
@@ -114,6 +115,12 @@ private LanguageServerConfiguration initializeLsConfiguration(IProject project)
if (!configurationFile.exists())
configurationFile = new File(getConfigurationFilePath() + File.separator + BSL_LS_FILENAME);
+ if (configurationFile.exists()) {
+ String initializationMessage = BSL_LS_PREFIX.concat("Конфигурационный файл: ") //$NON-NLS-1$
+ .concat(configurationFile.getPath());
+ BslValidatorPlugin.log(BslValidatorPlugin.createInfoStatus(initializationMessage));
+ }
+
LanguageServerConfiguration lsConfiguration = LanguageServerConfiguration.create(configurationFile);
Map>> diagnostics = lsConfiguration.getDiagnostics();
@@ -128,6 +135,7 @@ private LanguageServerConfiguration initializeLsConfiguration(IProject project)
duplicateDiagnostics.add(UsingServiceTagDiagnostic.class);
// Диагностики есть в EDT
+ duplicateDiagnostics.add(CodeBlockBeforeSubDiagnostic.class);
duplicateDiagnostics.add(FunctionShouldHaveReturnDiagnostic.class);
duplicateDiagnostics.add(ProcedureReturnsValueDiagnostic.class);
duplicateDiagnostics.add(UnknownPreprocessorSymbolDiagnostic.class);
@@ -136,7 +144,7 @@ private LanguageServerConfiguration initializeLsConfiguration(IProject project)
// В настройках можно принудительно включить выключенные диагностики
for (Class extends BSLDiagnostic> diagnostic : duplicateDiagnostics) {
DiagnosticInfo diagnosticInfo = new DiagnosticInfo(diagnostic, lsConfiguration.getDiagnosticLanguage());
- String diagnocticCode = diagnosticInfo.getCode();
+ String diagnocticCode = diagnosticInfo.getCode().getStringValue();
if (!diagnostics.containsKey(diagnocticCode))
diagnostics.put(diagnocticCode, falseForLeft);
}
diff --git a/target/pom.xml b/target/pom.xml
index e0a00e2..ddeb357 100644
--- a/target/pom.xml
+++ b/target/pom.xml
@@ -7,7 +7,7 @@
ru.capralow.dt.bslls.validator
build
- 0.13.0-SNAPSHOT
+ 0.14.0-SNAPSHOT
../build/pom.xml