Skip to content

Releases: 1c-syntax/bsl-language-server

v0.20.0-rc.1

02 Jan 19:28
c2b2ba5
Compare
Choose a tag to compare
v0.20.0-rc.1 Pre-release
Pre-release

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

02 Jan 09:22
Compare
Choose a tag to compare
v0.20.0-ra.3 Pre-release
Pre-release

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

Full Changelog: v0.20.0-ra.2...v0.20.0-ra.3

v0.20.0-ra.2

12 Oct 07:54
0e4b396
Compare
Choose a tag to compare
v0.20.0-ra.2 Pre-release
Pre-release

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

08 Oct 17:45
cc48ff5
Compare
Choose a tag to compare
v0.20.0-ra.1 Pre-release
Pre-release

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

Full Changelog: v0.19.1...v0.20.0-ra.1

v0.19.1

23 Sep 13:35
07d896a
Compare
Choose a tag to compare
  • Исправлено падение сервера на запросе textDocument/documentColor, отправляемом из окна git diff в vscode

v0.19.0

16 Sep 14:12
3c21d18
Compare
Choose a tag to compare

Общие изменения

  • Добавлена обработка запросов 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), приводящая к падению приложения;
  • Исправлено падение сервера, если путь к файлу содержит квадратные скобки ([ и ]);
  • Обновление значимых зависимостей:
    • встроенный словарь Language Tool обновлен до версии 5.4;
    • Spring Boot обновлен до версии 2.5.4;
    • MDClasses обновлен до версии 0.9.2;
    • BSL Parser обновлен до версии 0.19.4;

Изменения для разработчиков

  • 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

13 Sep 16:18
bec77e5
Compare
Choose a tag to compare
v0.19.0-rc.3 Pre-release
Pre-release
Merge pull request #1812 from 1c-syntax/feature/publishToSonatype

v0.19.0-rc.2

08 Sep 07:50
c948357
Compare
Choose a tag to compare
v0.19.0-rc.2 Pre-release
Pre-release
Merge pull request #1799 from 1c-syntax/fix/contentList

v0.19.0-rc.1

29 Aug 11:05
ff1ac97
Compare
Choose a tag to compare
v0.19.0-rc.1 Pre-release
Pre-release
Merge pull request #1725 from EvilBeaver/feature/cfg

ControlFlowGraph и диагностика с примером

v0.18.1

26 May 15:43
adad907
Compare
Choose a tag to compare

Общие изменения

  • Добавлено отслеживание за смертью процесса, запустившего BSL Language Server в режиме LSP. В случае завершения родительского процесса BSL Language Server будет завершать свою работу через 30 секунд.
  • В парсер описания метода добавлена обработка конструкций Array contains Something.
  • В парсер описания метода добавлена обработка конструкций для составных типов-коллекций с примитивными типами элементов вида Массив из Строка.
  • Изменены диагностики:
    • IncorrectLineBreak - добавлен параметры диагностики, позволяющие конфигурировать допустимые символы в начале и конце строки, исправлено позиционирование срабатываний диагностики.
  • Обновление значимых зависимостей:
    • BSL Parser обновлен до версии 0.19.3;