Releases: 1c-syntax/bsl-language-server
Releases · 1c-syntax/bsl-language-server
v0.20.0-rc.1
What's Changed
- Сохранение неизменяемых между populateContext и rebuild данными в DocumentContext. by @nixel2007 in #1921
- Feature/in memory db references to variables by @qtLex in #1871
New Contributors
Full Changelog: .v0.20.0-ra.3...v0.20.0-rc.1
v0.20.0-ra.3
What's Changed
- ФП на ОткрытьФорму - CodeAfterAsyncCall После вызова асинхронного метода есть строки кода by @artbear in #1873
- Исправление падения на расчете рэнжа для имени области by @nixel2007 in #1874
- Обновил версию парсера и добавил тест корректности запроса by @theshadowco in #1877
- [FP] FieldsFromJoinsWithoutIsNull Отсутствие проверки на NULL для полей из присоединяемых таблиц #1867 by @artbear in #1875
- Bump actions/checkout from 2.3.4 to 2.3.5 by @dependabot in #1883
- Смена мейнтейнера by @asosnoviy in #1881
- WrongMetadataInQuery fix by @asosnoviy in #1886
- sarif схема переехала by @asosnoviy in #1887
- Bump org.springframework.boot from 2.5.5 to 2.5.6 by @dependabot in #1888
- Использование Set для обхода ошибки дублирования узлов методов в дереве разбора by @nixel2007 in #1889
- Bump ru.vyarus.pom from 2.2.0 to 2.2.1 by @dependabot in #1894
- Информативное наименование диагностики UsageWriteLogEvent на английском языке by @vkostyanetsky in #1897
- fix NPE WrongDataPathForFormElementsDiagnostic by @asosnoviy in #1900
- Bump actions/checkout from 2.3.5 to 2.4.0 by @dependabot in #1903
- RedundantAccessToObject разрешать обращение по имени в модулях повтИсп by @asosnoviy in #1902
- Bump io.freefair.lombok from 6.2.0 to 6.3.0 by @dependabot in #1907
- Bump io.freefair.maven-central.validate-poms from 6.2.0 to 6.3.0 by @dependabot in #1905
- Bump io.freefair.javadoc-utf-8 from 6.2.0 to 6.3.0 by @dependabot in #1908
- Bump io.freefair.aspectj.post-compile-weaving from 6.2.0 to 6.3.0 by @dependabot in #1906
- Deps upgrade, java 17 by @nixel2007 in #1909
- Bump org.springframework.boot from 2.5.6 to 2.6.0 by @dependabot in #1911
- Bump actions/setup-python from 2.2.2 to 2.3.0 by @dependabot in #1910
- parser bump by @asosnoviy in #1917
- Bump org.springframework.boot from 2.6.0 to 2.6.1 by @dependabot in #1925
- Bump actions/setup-python from 2.3.0 to 2.3.1 by @dependabot in #1924
- Bump actions/upload-artifact from 2.2.4 to 2.3.0 by @dependabot in #1928
- Bump actions/upload-artifact from 2.3.0 to 2.3.1 by @dependabot in #1929
- Bump org.springframework.boot from 2.6.1 to 2.6.2 by @dependabot in #1931
- Добавил значения для 19-21 версий by @theshadowco in #1937
- Кроткое описание возвращаемого значения MissingReturnedValueDescription by @theshadowco in #1938
- Внесены правки в описания диагностик by @theshadowco in #1940
- Bump com.github.ben-manes.versions from 0.39.0 to 0.40.0 by @dependabot in #1941
- Оптимизация UsingSynchronousCallsDiagnostic by @theshadowco in #1939
New Contributors
- @Golovanoff made their first contribution in #1836
- @vkostyanetsky made their first contribution in #1897
Full Changelog: v0.20.0-ra.2...v0.20.0-ra.3
v0.20.0-ra.2
What's Changed
- Скорректировал диагностику для исключения обычных форм by @theshadowco in #1865
- 2 Правила "Неверно задан обработчик метода http-сервиса" и "Неверно задан обработчик операции web-сервиса" by @artbear in #1792
- [Запросы] Неточное использование полей из таблиц левых\правых соединений, без проверки на NULL или приведения через ЕстьNULL by @artbear in #1650
- Диагностика "Отсутствует удаление данных из временного хранилища после использования" by @artbear in #1578
- Снижение фона от строк с запросами by @theshadowco in #1868
Full Changelog: v0.20.0-ra.1...v0.20.0-ra.2
v0.20.0-ra.1
What's Changed
- Гиперссылка в местоположении символа, ведущая на файл и номер строки by @nixel2007 in #1833
- Bump org.springframework.boot from 2.5.4 to 2.5.5 by @dependabot in #1835
- Bump me.qoomon.git-versioning from 5.1.0 to 5.1.1 by @dependabot in #1840
- Модификация диагностики LineLengthDiagnostic by @theshadowco in #1842
- Поддержка запросов codeLens/resolve и workspace/codelens/refresh, рефакторинг by @nixel2007 in #1768
- NestedFunctionInParametersDiagnostic mod by @asosnoviy in #1845
- MOD SpaceAtStartCommentDiagnostic by @theshadowco in #1846
- Переезд на новую версию парсера запросов by @theshadowco in #1841
- Новая диагностика - кривой запрос by @theshadowco in #1847
- Диагностика: Запрещенное имя методанных by @theshadowco in #1850
- Feature/modd metadata object name length by @theshadowco in #1852
- same metadata object and child names by @theshadowco in #1851
- Правило - "Путь к данным" не заполнен у полей формы by @artbear in #1831
- Новая диагностика - Серверный экспортный метод формы by @theshadowco in #1849
- Новая диагностика: Повторное использование строковых литералов by @theshadowco in #1854
- Рефакторинг. getFirstSignificantTokenRange by @theshadowco in #1855
- Диагностика поиска запрещенных слов by @Golovanoff in #1836
- Bump cirrus-actions/rebase from 1.4 to 1.5 by @dependabot in #1856
- fix deleteConfig watcher #1860 by @asosnoviy in #1861
- Правило "Неверное обращение к метаданным в запросе" by @artbear in #1823
- Обновил версию парсера by @theshadowco in #1858
- Возможность управлять порогом срабатывания линзы by @nixel2007 in #1857
- Рефакторинг хранения ссылок в индексе by @nixel2007 in #1746
- Поиск глобального конфигурационного файла by @asosnoviy in #1848
New Contributors
- @Golovanoff made their first contribution in #1836
Full Changelog: v0.19.1...v0.20.0-ra.1
v0.19.1
v0.19.0
Общие изменения
- Добавлена обработка запросов
textDocument/documentColor
иtextDocument/colorPresentation
для отображения представления цвета. Обрабатываются обращения к системному перечислениюWebЦвета
и создание цвета с помощью конструктораНовый Цвет
; - Добавлена обработка запроса
textDocument/selectionRange
для формирования дерева областей выделения от текущей позиции (командаExpand Selection
вVSCode
); - Линзы когнитивной сложности и цикломатической сложности теперь показывают текст на языке сервера (параметр
language
конфигурационного файла); - Добавлен репортер в формат SARIF;
- Удален репортер в
Generic coverage
, метрикаcovlocData
объявлена устаревшей. При необходимости получения данных по строкам к покрытию используйте другие инструменты, напримерCoverage41C
; - Добавлены диагностики:
- Все возможные пути выполнения функции должны содержать оператор Возврат (
AllFunctionPathMustHaveReturn
); - Назначение псевдонимов выбранным полям в запросе (
AssignAliasFieldsInQuery
); - Флажок «Устанавливать права для новых объектов» должен быть установлен только у роли ПолныеПрава (
SetPermissionsForNewObjects
); - После вызова асинхронного метода есть строки кода (
CodeAfterAsyncCall
);
- Все возможные пути выполнения функции должны содержать оператор Возврат (
- Изменены диагностики:
Typo
- английский словарь больше не ругается на кириллицу и наоборот;IdenticalExpressions
- диагностика переписана на новый движок "дерева выражений", повышена точность срабатывания диагностики с учетом вариативности и приоритетов операций, добавлен параметрpopularDivisors
для отсекания срабатываний на популярных делителях60
и1024
;MissingTemporaryFileDeletion
- исправлено падение при вызове функции от результата вызова функции, исправлены избыточные (не)срабатывания диагностики при частичном совпадении искомого имени метода с созданием/удалением временного файла, добавлена поддержка методов удаления файла, находящихся в общих модулях;AssignAliasFieldsInQuery
- исправлены падения при разрывах запроса в области описания выбираемых полей;IncorrectUseOfStrTemplate
- исправлены ложные срабатывания при сложном экранировании шаблонных переменных через двойные знаки процента или скобки, исправлены ложные несрабатывания при передаче параметров в виде отсутствующего значения;IncorrectLineBreak
- исправлены ложные срабатывания на комментариях и внутри строк;SelectTopWithoutOrderBy
- исправлено срабатывание диагностики на конструкциюВЫБРАТЬ ПЕРВОЕ 0
, исправлено падение диагностики при разрыве запроса;CreateQueryInCycle
- исправлено падение диагностики при наличии ошибок в синтаксисе описания цикла;UsingHardcodeNetworkAddress
- добавлен параметрsearchPopularVersionExclusion
для исключения срабатывания диагностики на популярные конструкции, не являющиеся адресами. По умолчанию игнорируются строки, начинающиеся на1
,2
,3
,8.3
и11
;LatinAndCyrillicSymbolInWord
- добавлен параметрallowTrailingPartsInAnotherLanguage
, разрешающий началу или концу идентификатора быть написанным на другом языке;UsageWriteLogEvent
- исправлено ложное срабатывание диагностики вне блокаИсключение
;CachedPublic
- исправлено ложное срабатывание диагностики на пустой области;IncorrectUseLikeInQuery
- важность понижена доmajor
;UsingLikeInQuery
- важность понижена доmajor
;VirtualTableCallWithoutParameters
- важность понижена доmajor
;MagicDate
- исправлена ошибка, которая не позволяла убрать из разрешенных дат в параметреauthorizedDates
даты, установленные по умолчанию;MagicNumber
- исправлена ошибка, которая не позволяла убрать из разрешенных чисел в параметреauthorizedNumbers
числа, установленные по умолчанию;
- Исправлена ошибка позиционирования некоторых диагностик, опиравшихся на построчный перебор файла;
- Исправлена ошибка разбора исходного кода, если один из параметров метода имеет имя
Ждать
; - Исправлена ошибка чтения параметров диагностик, имеющих тип "число с плавающей точкой" (
float
), приводящая к падению приложения; - Исправлено падение сервера, если путь к файлу содержит квадратные скобки (
[
и]
); - Обновление значимых зависимостей:
Изменения для разработчиков
- BSL Language Server теперь публикуется в Maven Central. Снапшоты develop-ветки доступны в Sonatype Snapshot Repository. Версионируемый javadoc доступен на javadoc.io;
- javadoc теперь содержит кросс-ссылки на объекты mdclasses и antrl4;
- Добавлен механизм
Expression Tree
для построения дерева выражений с учетом приоритетов операций. См. пакетcom.github._1c_syntax.bsl.languageserver.utils.expressiontree
; - Добавлен механизм
Control Flow Graph
для построения графа потока управления в блоке кода (CodeBlockContext
). См. пакетcom.github._1c_syntax.bsl.languageserver.cfg
; - Добавлен метод
DocumentContext::getScriptVariantLocale
, возвращающий вариант встроенного языка текущего файла. Интерфейс классаResources
расширен методами, принимающимиLocale
- Изменения базовых настроек проекта, хранящихся в каталоге
.idea
больше не будут приводить к конфликтам и шуму в измененных файлах репозитория.
v0.19.0-rc.3
Merge pull request #1812 from 1c-syntax/feature/publishToSonatype
v0.19.0-rc.2
Merge pull request #1799 from 1c-syntax/fix/contentList
v0.19.0-rc.1
Merge pull request #1725 from EvilBeaver/feature/cfg ControlFlowGraph и диагностика с примером
v0.18.1
Общие изменения
- Добавлено отслеживание за смертью процесса, запустившего BSL Language Server в режиме LSP. В случае завершения родительского процесса BSL Language Server будет завершать свою работу через 30 секунд.
- В парсер описания метода добавлена обработка конструкций
Array contains Something
. - В парсер описания метода добавлена обработка конструкций для составных типов-коллекций с примитивными типами элементов вида
Массив из Строка
. - Изменены диагностики:
IncorrectLineBreak
- добавлен параметры диагностики, позволяющие конфигурировать допустимые символы в начале и конце строки, исправлено позиционирование срабатываний диагностики.
- Обновление значимых зависимостей:
- BSL Parser обновлен до версии 0.19.3;