Releases: 1c-syntax/bsl-language-server
Releases · 1c-syntax/bsl-language-server
v0.18.0-alpha.2
Merge pull request #1567 from artbear/str-template-1235
v0.18.0-alpha.1
Исправлен англ регэксп для Формат
v0.17.1
- Исправлено ложное срабатывание диагностики
RedundantAccessToObject
на обращении к ЭтотОбъект по индексу
v0.17.0
Общие изменения
- Поддержка Java 15.
- Добавлены диагностики:
- Экспортные методы в модулях команд и общих команд (
CommandModuleExportMethods
); - Исходящий параметр функции (
FunctionOutParameter
); - Конфликт имен методов с методами глобального контекста (
GlobalContextMethodCollision8312
); - Смешивание латинских и кириллических символов в одном идентификаторе (
LatinAndCyrillicSymbolInWord
); - Магические даты (
MagicDate
); - Отсутствует обработчик подписки на событие (
MissingEventSubscriptionHandler
); - Отсутствует описание параметров метода (
MissingParameterDescription
); - Отсутствует описание возвращаемого значения функции (
MissingReturnedValueDescription
); - Поддержка обычного приложения (
OrdinaryAppSupport
); - Избыточное обращение к объекту (
RedundantAccessToObject
); - Избыточное использование "Ссылка" в запросе (
RefOveruse
);
- Экспортные методы в модулях команд и общих команд (
- Изменены диагностики:
CodeOutOfRegion
- добавлен параметрcheckUnknownModuleType
, отвечающий за работу диагностики на неизвестных типах модулей (по умолчанию выключен);NestedFunctionInParameters
- время на исправление замечания уменьшено до 2 минут;UnusedLocalMethod
- добавлен тегUnused
;UnusedParameters
- добавлен тегUnused
;UsingModalWindows
:- добавлен тег
Unused;
- добавлен параметр
forceModalityMode
, отвечающий за включение игнорирования установленного в конфигурации режима модальности.
- добавлен тег
Typo
: - в параметреuserWordsToIgnore
добавлена возможность указания исключений с пробелами
- Исправлено позиционирование срабатывания диагностик на метаданные (такие как, например, корректность именования модуля). Диагностики больше не вешаются на пустой диапазон, а находят первый "значимый" участок кода.
- Расширена конфигурация BSL Language Server - в настройку
diagnostics
добавлено свойствоordinaryAppSupport
- флаг поддержки обычного приложения. Диагностики будут требовать учитывать особенности обычного приложения. По умолчанию включен. - Добавлены новые
codeAction
, позволяющие отключить срабатывание диагностики в строке, выделенном блоке или файле. - Добавлены операции сворачивания блоков:
- комментарий в запросе
- пакет запроса
- В информацию о рассчитанных диагностиках документа добавлена информация об имеющихся тегах (см. https://microsoft.github.io/language-server-protocol/specifications/specification-current/#diagnostic). Клиенты могут использовать эту информацию для дополнительного выделения мест срабатывания диагностик. Например, VSCode зачеркивает места срабатывания deprecated-диагностик и затеняет места срабатывания unused-диагностик.
- Для квик-фиксов, исправляющих ровно одно замечание, добавлена установка свойства
isPreferred
(см. https://microsoft.github.io/language-server-protocol/specifications/specification-current/#textDocument_codeAction). - Исправлена не работавшая фильтрация по запрошенному типу codeAction в свойстве
only
. - В уведомлении
textDocument/publishDiagnostics
добавлена передача версии (version
) документа. - В уведомлении
textDocument/publishDiagnostics
в списке передаваемых диагностик теперь указываются и их теги. - В ответ на запрос
initialize
добавлен параметрserverInfo
- информация о сервере (имя и версия) - В ответе на запрос
initialize
добавлено уточнение по поддерживаемому режиму синхронизации текстовых документов, поддержки методовwillSave
/willSaveWaitUntil
, необходимости отправки методовdidOpen
/didClose
, а так же настройки для методаdidSave
(параметрtextDocumentSync
) - Исправлена и расширена документация.
- Для запуска BSL Language Server в режиме
format
добавлена возможность указывать форматируемый файл, а не только каталог. Ключ указания пути к файлу/каталогу изменен на--src
. Вариант--srcDir
оставлен для совместимости и в будущем будет удален. - Улучшены процедуры поиска запроса в строке.
- Исправлена ошибка форматирования, приводившая к добавлению пробела после унарного минуса.
- Обновление значимых зависимостей:
Изменения для разработчиков
- Работа с
codeLens
вCodeLensProvider
переведена на модель несколькихsupplier
. Каждый новыйcodeLens
должен реализовать интерфейсCodeLensSupplier
. - Работа с
foldingRange
вFoldingProvider
переведена на модель несколькихsupplier
. Каждый новыйfoldingRange
должен реализовать интерфейсFoldingRangeSupplier
. MethodDescription
теперь содержит детальную информацию об описании метода. Доступны дополнительные секции:- назначение метода;
- примеры использования;
- варианты вызова;
- список описаний параметров метода (с поддержкой иерархии параметров для сложны типов вида
Массив
,Структура
и т. д.); - список описаний возвращаемых значений;
- текст гиперссылки (
см. ДругойМодуль.ДругойМетод
).
- В
ParameterDefinition
добавлен Range с определением параметра. - В
DocumentContext
добавлена работа с версиями контента и кэширование части данных. Перестройка данных контекста происходит только в том случае, если версия нового контента отличается от версии сохраненного контента или контент отсутствует. - Добавлен новый тег
DiagnosticTag.UNUSED
, который следует использовать для диагностик, срабатывающих на неиспользуемый код. - В
параметры запроса
textDocument/x-diagnostics
добавлен необязательныйRange
. При его передаче запрос вернет диагностики, попадающие в указанный диапазон. - В ответ на запрос
textDocument/x-diagnostics
теперь возвращается Diagnostics
v0.17.0-RC5
Fix up
v0.17.0-RC4
Merge pull request #1478 from 1c-syntax/fix/issue1452
v0.17.0-RC3
mdclasses bump
v0.17.0-RC2
Merge pull request #1454 from 1c-syntax/feature/quick-fix-is-preferred
v0.17.0-RC1
Merge pull request #1430 from 1c-syntax/fix/jar Исправление сборки jar