Releases: 1c-syntax/bsl-language-server
Releases · 1c-syntax/bsl-language-server
v0.23.0-rc.1
What's Changed
- build(deps): bump io.sentry:sentry-bom from 6.27.0 to 6.28.0 by @dependabot in #3128
- build(deps): bump actions/checkout from 3 to 4 by @dependabot in #3145
- build(deps): bump JetBrains/qodana-action from 2023.2.1 to 2023.2.6 by @dependabot in #3146
- UnusedLocalMethod - "Неиспользуемый локальный метод" - поддержка модулей объектов через параметр правила by @artbear in #3112
- build(deps): bump io.freefair.javadoc-utf-8 from 8.1.0 to 8.3 by @dependabot in #3140
- build(deps): bump io.freefair.maven-central.validate-poms from 8.1.0 to 8.3 by @dependabot in #3142
- build(deps): bump io.freefair.lombok from 8.1.0 to 8.3 by @dependabot in #3144
- build(deps): bump io.sentry:sentry-bom from 6.28.0 to 6.30.0 by @dependabot in #3151
- build(deps): bump io.spring.dependency-management from 1.1.2 to 1.1.3 by @dependabot in #3150
- build(deps): bump org.springframework.boot from 3.1.2 to 3.1.4 by @dependabot in #3152
- build(deps): bump org.sonarqube from 4.3.0.3225 to 4.4.1.3373 by @dependabot in #3156
- build(deps): bump info.picocli:picocli-spring-boot-starter from 4.7.4 to 4.7.5 by @dependabot in #3154
- build(deps): bump com.github.ben-manes.versions from 0.47.0 to 0.48.0 by @dependabot in #3155
- build(deps): bump JetBrains/qodana-action from 2023.2.6 to 2023.2.7 by @dependabot in #3164
- build(deps): bump com.github.ben-manes.versions from 0.48.0 to 0.49.0 by @dependabot in #3160
- build(deps): bump io.freefair.lombok from 8.3 to 8.4 by @dependabot in #3163
- build(deps): bump io.freefair.maven-central.validate-poms from 8.3 to 8.4 by @dependabot in #3162
- build(deps): bump io.freefair.javadoc-utf-8 from 8.3 to 8.4 by @dependabot in #3161
- build(deps): bump io.freefair.javadoc-links from 8.3 to 8.4 by @dependabot in #3159
- build(deps): bump JetBrains/qodana-action from 2023.2.7 to 2023.2.8 by @dependabot in #3166
- build(deps): bump io.freefair.aspectj.post-compile-weaving from 8.3 to 8.4 by @dependabot in #3165
- build(deps): bump com.github.spotbugs:spotbugs-annotations from 4.7.3 to 4.8.0 by @dependabot in #3167
- build(deps): bump io.sentry:sentry-bom from 6.30.0 to 6.31.0 by @dependabot in #3168
- Правило Доступ к файловой системе - FileSystemAccess - ГОТОВО by @artbear in #3117
- build(deps): bump org.springframework.boot from 3.1.4 to 3.1.5 by @dependabot in #3171
- build(deps): bump io.sentry:sentry-bom from 6.31.0 to 6.32.0 by @dependabot in #3170
- build(deps): bump me.champeau.jmh from 0.7.1 to 0.7.2 by @dependabot in #3175
- build(deps): bump io.sentry:sentry-bom from 6.32.0 to 6.33.0 by @dependabot in #3177
- build(deps): bump io.sentry:sentry-bom from 6.33.0 to 6.33.1 by @dependabot in #3179
- Исправлена опечатка в описании диагностики by @AlexPCRus in #3180
- build(deps): bump io.spring.dependency-management from 1.1.3 to 1.1.4 by @dependabot in #3181
- build(deps): bump me.qoomon.git-versioning from 6.4.2 to 6.4.3 by @dependabot in #3184
- build(deps): bump com.github.ben-manes.versions from 0.49.0 to 0.50.0 by @dependabot in #3182
- build(deps): bump AButler/upload-release-assets from 2.0 to 3.0 by @dependabot in #3186
- build(deps): bump io.sentry:sentry-bom from 6.33.1 to 6.34.0 by @dependabot in #3185
- Доработка BadWords - опция поиска по комментариям + показ запрещенного слова в замечаниях by @artbear in #3190
- build(deps): bump com.github.spotbugs:spotbugs-annotations from 4.8.0 to 4.8.2 by @dependabot in #3193
- [MOD] UsingFindElementByString - замечания на ПоискПоНомеру с параметром-литералом by @artbear in #3192
- build(deps): bump actions/setup-java from 3 to 4 by @dependabot in #3194
- build(deps): bump JetBrains/qodana-action from 2023.2.8 to 2023.2.9 by @dependabot in #3197
- build(deps): bump actions/setup-python from 4 to 5 by @dependabot in #3198
- fix syntax error in docs #3200 by @alei1180 in #3201
- build(deps): bump JetBrains/qodana-action from 2023.2.9 to 2023.3.0 by @dependabot in #3199
- build(deps): bump com.github.spotbugs:spotbugs-annotations from 4.8.2 to 4.8.3 by @dependabot in #3202
- build(deps): bump dawidd6/action-download-artifact from 2 to 3 by @dependabot in #3203
- build(deps): bump github/codeql-action from 2 to 3 by @dependabot in #3205
- build(deps): bump actions/upload-artifact from 3 to 4 by @dependabot in #3209
- Правило "Обращение к методам привилегированных модулей" by @artbear in #3172
- Update UsageWriteLogEvent.md by @kuzyara in #3208
- [MOD] MagicNumber - ловим магические числа везде, в т.ч. и при передаче параметров - ГОТОВО by @artbear in #3210
- Updates for file docs/diagnostics/UsingFindElementByString.md in en by @transifex-integration in #3212
- Updates for file docs/diagnostics/ServerSideExportFormMethod.md in en by @transifex-integration in #3213
- bsl-parser 0.23 by @theshadowco in #3214
- Поддержка mdclasses 0.12 by @theshadowco in #3158
- Обновление версии mdclasses и восстановление работы диагностики by @theshadowco in #3218
New Contributors
- @AlexPCRus made their first contribution in #3180
- @alei1180 made their first contribution in #3201
Full Changelog: v0.22.0-ra.4...v0.23.0-rc.1
v0.22.0
Общие изменения
- Проект переведён на JDK17 и Spring Boot 3.1. Поддержка JDK11 прекращена.
- Значительно ускорено время получения первых ответов от BSL Language Server в момент построения контекста проекта при работе в режиме LSP.
- В поставляемых образах BSL Language Server под каждую операционную систему увеличен лимит оперативной памяти с 2 ГБ до 3 ГБ
Исправленные общие ошибки
- В json-schema конфигурационного файла возвращены отсутствующие новые диагностики.
- Окончательно исправлено падение BSL Language Server в VSCode при логировании чего-либо.
Изменения для разработчиков
- Обработчики TextDocumentService, WorkspaceService, а так же долгие операции выделены в отдельные именованные ThreadPool. Расчёт диагностик так же выделен в отдельный ThreadPool, чтобы минимум нагрузки оставить на commonPool.
- Добавлен LanguageClientAwareAppender, перехватывающий все вызовы логирования в консоль и переотправляющий их через запрос
window/logMessage
на клиента.
Спасибо!
Full Changelog: v0.21.1...v0.22.0
v0.22.0-ra.4
What's Changed
- build(deps): bump io.sentry:sentry-bom from 6.26.0 to 6.27.0 by @dependabot in #3119
- Вынос тяжелых parallelStream в отдельный пул потоков, больше именованных пулов by @nixel2007 in #3120
- schema.json fix by @asosnoviy in #3121
- Аппендер вывода логов в LanguageClient, если он подключен by @nixel2007 in #3118
Full Changelog: v0.22.0-ra.3...v0.22.0-ra.4
v0.22.0-ra.3
What's Changed
- build(deps): bump io.spring.dependency-management from 1.1.1 to 1.1.2 by @dependabot in #3099
- build(deps): bump org.sonarqube from 4.2.1.3168 to 4.3.0.3225 by @dependabot in #3100
- build(deps): bump io.sentry:sentry-bom from 6.25.2 to 6.26.0 by @dependabot in #3102
- build(deps): bump JetBrains/qodana-action from 2023.1.5 to 2023.2.1 by @dependabot in #3101
- build(deps): bump org.springframework.boot from 3.1.1 to 3.1.2 by @dependabot in #3106
- Передача executor service во все сервисы by @nixel2007 in #3105
Full Changelog: v0.22.0-ra.2...v0.22.0-ra.3
v0.22.0-ra.2
What's Changed
- build(deps): bump org.springframework.boot from 2.7.5 to 3.0.0 by @dependabot in #2943
- Spring boot 3.1 by @nixel2007 in #3077
- build(deps): bump JetBrains/qodana-action from 2023.1.4 to 2023.1.5 by @dependabot in #3079
- build(deps): bump org.sonarqube from 4.0.0.2929 to 4.2.1.3168 by @dependabot in #3078
- build(deps): bump io.sentry:sentry-bom from 6.22.0 to 6.23.0 by @dependabot in #3080
- Qodana portal by @nixel2007 in #3090
- build(deps): bump io.sentry:sentry-bom from 6.24.0 to 6.25.0 by @dependabot in #3091
- build(deps): bump io.spring.dependency-management from 1.1.0 to 1.1.1 by @dependabot in #3093
- build(deps): bump io.sentry:sentry-bom from 6.25.0 to 6.25.1 by @dependabot in #3092
- Sync by @nixel2007 in #3096
- build(deps): bump io.sentry:sentry-bom from 6.25.1 to 6.25.2 by @dependabot in #3097
- Исключил commons-logging. by @Nivanchenko in #3098
Full Changelog: v0.21.1...v0.22.0-ra.2
v0.21.1
v0.21.0
Общие изменения
- Добавлены
code lens
для запуска тестов в os-файлах с помощью1testrunner
; - Добавлен
code action
для разворачивания конструктора структуры в серию вызовов методаВставить
; - Добавлена возможность запуска полного анализа проекта при открытии IDE;
- Добавлена возможность отправки ошибок в трекер ошибок Sentry.io. Подробнее в документации;
- Добавлена возможность запуска в режиме LSP с использованием технологии websocket;
- Значительно снижено потребление оперативной памяти;
- Добавлен показ прогресса инициализации контекста;
- Добавлена поддержка инструкции препроцессору
#native
в os-файлах; - Добавлены
inlay hint
для показа мест, увеличивающих счетчики цикломатической и когнитивной сложностей. Включение/Отключение подсказок осуществляется по нажатию на соответствующую линзу; - В запросе
textDocument/documentSymbol
(панель "Structure") теперь возвращаются только явно объявленные черезПерем
переменные; - Обновлена документация и описания диагностик;
Изменения в поддержке LSP протокола
- Добавлена обработка запросов
textDocument/inlayHint
и#inlayHint/resolve
, отображающих подсказки прямо в коде; - Добавлена обработка запроса
workspace/executeCommand
, отвечающего за выполнение команд на стороне сервера; - Добавлена обработка запросов
textDocument/rename
иtextDocument/prepareRename
; - В ответ на запрос
workspace/symbol
теперь возвращаетсяWorkspaceSymbol
, а неSymbolInformation
;
Новые диагностики
- Передача параметров между клиентом и сервером (TransferringParametersBetweenClientAndServer);
- Использование привилегированного режима (SetPrivilegedMode);
- Использование системной информации (UseSystemInformation) (выключена по умолчанию);
- Обработчик регламентного задания (ScheduledJobHandler);
- Обращение к отсутствующему методу общего модуля (MissingCommonModuleMethod);
- Перезапись параметров метода (RewriteMethodParameter);
- Пропущен обязательный параметр метода (MissedRequiredParameter);
- Повторное добавление/вставка значений в коллекцию (DuplicatedInsertionIntoCollection);
- Запрет незаполненных значений (DenyIncompleteValues) (выключена по умолчанию);
Изменения в существующих диагностиках
RefOveruse
- исправлено множество false positive;UsageWriteLogEvent
- исправлен false positive при использовании менеджера ошибок, появившегося в платформе 8.3.17;QueryToMissingMetadata
- исправлен false positive, срабатывавший на обращении к метаданным с отличающимся регистром букв;UnusedParameters
- исправлено падение диагностики;IncorrectLineBreak
- теперь диагностика по умолчанию позволяет иметь висячую запятую;CommentedCode
- добавлен параметрexclusionPrefixes
для указания префиксов для исключения срабатывания диагностики;UnusedLocalMethod
- исправлен false positive на обработчиках оповещения.
Исправленные общие ошибки
- Исправлена проблема однопоточного чтения конфигурации в некоторых случаях;
- Исправлено несколько ошибок поиска при заполнении индекса ссылок;
code action
создания стандартных областей теперь использует настройки локали из конфигурационного файла и/или языка текущей конфигурации;- Исправлено некорректное добавление отступа при написании кода в "текучем" (fluent) стиле;
Обновление значимых зависимостей
- Language Tool обновлен до версии
6.1
; - Spring Boot обновлен до версии
2.7.12
; - BSL Parser обновлен до версии
0.22.0
; - MDClasses обновлен до версии
0.10.3
; - LSP4J обновлен до версии
0.21.0
.
Изменения для разработчиков
- Поддержка и сборка на JDK 20;
- Отказ от jsr305 (см. "Руководство по стилю написания кода" -> "Обработка null"), system-exit, подготовка к переходу на JDK 17;
- В библиотеку
1c-syntax/utils
добавлены служебные классы для интернирования строк (StringInterner
) и объектов поequals()
(GenericInterner
); VariableSymbol
преобразован в интерфейс с двумя реализациями, отличающимися типами полей для указания расположения символа (short/int
);- Ответственность по очистке содержимого
DocumentContext
(и соответствующие методы) перенесена вServerContext
; - В пакет
diagnostics
добавлена аннотация@Disabled
для временного отключения диагностики из работы; - В пакет
utils
добавлено несколько вспомогательных классов для разработки диагностик; - Класс
Resources
сделан бином;
Изменения в конфигурации сервера
- Добавлена секция
inlayHint
для конфигурирования параметров подсказок в коде; - Добавлено свойство
sendErrors
для управления режимом отправки ошибок в Sentry; - В секцию
codeLens
добавлена секцияtestRunner
для управления настройками утилиты запуска тестов; - В секцию
diagnostics
добавлено свойствоanalyzeOnStart
для включения выполнения полного анализа проекта при открытии;
Спасибо!
- @artbear
- @asosnoviy
- @qtLex
- @theshadowco
- @nixel2007
- @EightM
- @alkoleft
- @salexdv
- @ovcharenko-di
- @otymko
- @APonkratoveijhcberl
- @Nivanchenko
- @sfaqer
v0.21.0-rc.3
What's Changed
- Deps bump by @nixel2007 in #3057
- Updates for docs/features/ConfigurationFile.md in en by @transifex-integration in #3061
- Updates for docs/index.md in en by @transifex-integration in #3060
- Updates for docs/diagnostics/DeprecatedCurrentDate.md in en by @transifex-integration in #3059
- Updates for docs/diagnostics/TransferringParametersBetweenClientAndServer.md in en by @transifex-integration in #3058
- Исправлена ошибка указания идентификатор линз запуска тестов by @sfaqer in #3065
- Исправлена ошибка падения анализа из-за исключения выпадающего из MissingCommonModuleMethodDiagnostic by @sfaqer in #3067
- Исправлена ошибка чтения параметров SourceDefinedMethodCallInlayHintSupplier by @sfaqer in #3068
Full Changelog: v0.21.0-rc.2...v0.21.0-rc.3
v0.21.0-rc.2
What's Changed
- Cleanups and deps bump by @nixel2007 in #3048
- Попытка указания constraint для guava by @nixel2007 in #3049
- Lsp4j 0.21.0 by @nixel2007 in #3051
- Бампнул версию парсера. Поддержка #native by @Nivanchenko in #3052
- Исправлено внедрение списка включенных сапплаеров by @nixel2007 in #3053
- Merge develop into feature/inlayHints by @nixel2007 in #3054
- [FP] RefOveruse by @artbear in #2825
- Реалиация inlayHints для вызовов методов из конфигурации by @nixel2007 in #2672
- #734 Реализация код экшена на разворачивание конструктора структуры by @nixel2007 in #2901
- Линзы для запуска тестов с помощью 1testrunner by @nixel2007 in #1769
New Contributors
- @Nivanchenko made their first contribution in #3052
Full Changelog: v0.21.0-ra.9...v0.21.0-rc.2
v0.21.0-ra.9
What's Changed
- UsageWriteLogEvent - Исключено FP при использовании глобального объекта ОбработкаОшибок by @artbear in #3010
- Правило "Передача параметров между клиентом и сервером" - ГОТОВО by @artbear in #2854
- build(deps): bump peaceiris/actions-gh-pages from 3.9.2 to 3.9.3 by @dependabot in #3033
- fix(build): Поддержка jpackage macOS Ventura by @otymko in #3034
- executeCommand api by @nixel2007 in #2960
- Скорректировано описание диагностики DeprecatedCurrentDate by @APonkratov in #3037
- inlayHints api by @nixel2007 in #3035
- #3040 npe fix by @asosnoviy in #3041
- build(deps): bump JetBrains/qodana-action from 2022.3.4 to 2023.1.0 by @dependabot in #3044
- Инлэй хинты по сложностям методов и команды для включения-выключения показа by @nixel2007 in #3039
- Проверка сборки package в develop + поддержка jdk20 для jacoco и lombok by @nixel2007 in #3046
Full Changelog: v0.21.0-ra.7...v0.21.0-ra.9