Skip to content

πŸŽ‰ v1.0.0 πŸŽ‰

Latest

Choose a tag to compare

@nixel2007 nixel2007 released this 19 Jun 14:56
bcba086

ВСрсия 1.0.0 β€” Ρ€ΡƒΠ±Π΅ΠΆΠ½Ρ‹ΠΉ Ρ€Π΅Π»ΠΈΠ·. Основой стала ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ новая систСма Ρ‚ΠΈΠΏΠΎΠ², Π½Π°Π΄Π΅Π»ΡΡŽΡ‰Π°Ρ сСрвСр знаниями ΠΎ доступных Ρ‚ΠΈΠΏΠ°Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ Π΄Π²ΠΈΠΆΠΊΠ° OneScript, ΠΈ ΡƒΠΌΠ΅ΡŽΡ‰Π°Ρ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏΡ‹ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π½Π° основании Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ². БущСствСнно Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° LSP β€” Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π°Π²Ρ‚ΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, подсказка ΠΏΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌ, иСрархия Ρ‚ΠΈΠΏΠΎΠ² ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ запросы (Π²ΠΏΠ»ΠΎΡ‚ΡŒ Π΄ΠΎ возмоТностСй LSP 3.18). Π”ΠΎΠ±Π°Π²Π»Π΅Π½ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² качСствС MCP-сСрвСра ΠΈ собран ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹ΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ возмоТностСй Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ.

Новая систСма Ρ‚ΠΈΠΏΠΎΠ²

Π‘Π΅Ρ€Π΄Ρ†Π΅ Ρ€Π΅Π»ΠΈΠ·Π° β€” Π·Π°Π½ΠΎΠ²ΠΎ спроСктированная систСма Ρ‚ΠΈΠΏΠΎΠ² (model, registry, inferencer, TypeService).
Π­Ρ‚ΠΎ Π΅Π΄ΠΈΠ½Ρ‹ΠΉ слой, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π½Π°Π΅Ρ‚ ΠΎΠ±ΠΎ всСх Ρ‚ΠΈΠΏΠ°Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ ΡƒΠΌΠ΅Π΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ выраТСния Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ ΠΊΠΎΠ΄Π°. На Π½Ρ‘ΠΌ построСны подсказка ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ, Π°Π²Ρ‚ΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, подсказки ΠΏΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌ, сСмантичСская подсвСтка ΠΈ Π½ΠΎΠ²Ρ‹Π΅ диагностики.

  • Единая модСль ΠΈ рССстр Ρ‚ΠΈΠΏΠΎΠ². Π’ΠΈΠΏΡ‹ ΡΠΎΠ±ΠΈΡ€Π°ΡŽΡ‚ΡΡ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… источников Π² ΠΎΠ±Ρ‰ΠΈΠΉ рССстр:
    • ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ (Ρ‡Π΅Ρ€Π΅Π· bsl-context) ΠΈΠ· синтакс-ΠΏΠΎΠΌΠΎΡ‰Π½ΠΈΠΊΠ° Π½Π° вашСй машинС;
    • Ρ‚ΠΈΠΏΡ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ (Ρ‡Π΅Ρ€Π΅Π· MDClasses) β€” ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Ρ‹ ΠΈ Ρ‚.ΠΏ.;
    • Ρ‚ΠΈΠΏΡ‹ OneScript ΠΈΠ· синтакс-ΠΏΠΎΠΌΠΎΡ‰Π½ΠΈΠΊΠ° OneScript 2.1, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ OScript-классы.
  • Π’Ρ‹Π²ΠΎΠ΄ Ρ‚ΠΈΠΏΠΎΠ² Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ (inference). Π‘Π΅Ρ€Π²Π΅Ρ€ опрСдСляСт Ρ‚ΠΈΠΏ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ/выраТСния ΠΏΠΎΠ΄ курсором Π² Ρ‚ΠΎΠΌ числС ΠΏΠΎ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡŽ, ΠΏΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠΌΡƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΌΠ΅ΠΆΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄) ΠΈ ΠΏΠΎ полям структур, Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ-конструктором.
  • БпСциализация ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π½Ρ‹Ρ… Ρ‡Π»Π΅Π½ΠΎΠ². ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ слоТныС конструкции Π²ΠΈΠ΄Π° Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠΈ.Π˜ΠΌΡΠ‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠ°.Π˜ΠΌΡΠœΠ΅Ρ‚ΠΎΠ΄Π°Π’ΠΎΠ·Π²Π°Ρ‰Π°ΡŽΡ‰Π΅Π³ΠΎΠ‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρƒ().ΠŸΠΎΠ»Π΅Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹. На ΠΊΠ°ΠΆΠ΄ΠΎΠΌ этапС этой Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ доступны ΠΈ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ подсказки ΠΈ Π°Π²Ρ‚ΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅.
  • Випизация Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… уровня модуля ΠΈ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Бсылки см. ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ-конструкторы ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°ΡŽΡ‚ΡΡ Π² Ρ‚ΠΈΠΏΡ‹.
  • Поля структуры ΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Для структур ΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ Ρ‚Π°Π±Π»ΠΈΡ† Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ вСдСтся Π°Π½Π°Π»ΠΈΠ· ΠΊΠ°ΠΊ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹Ρ… Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΌ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ, Ρ‚Π°ΠΊ ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… явно Π² ΠΊΠΎΠ΄Π΅.
  • БпСциализация элСмСнтов ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΉ. ΠŸΡ€ΠΈ использовании Ρ†ΠΈΠΊΠ»Π° Для КаТдого выводится Ρ‚ΠΈΠΏ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° Π½Π° основании описания ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ. Π˜Ρ‚Π΅Ρ€Π°Ρ†ΠΈΡ ΠΏΠΎ Массив ΠΈΠ· Число ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ Число Π² Ρ‚ΠΈΠΏ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ-ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°.
  • Π‘ΠΈΠ»ΠΈΠ½Π³Π²Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. ΠŸΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° русских ΠΈ английских ΠΈΠΌΡ‘Π½ Ρ‚ΠΈΠΏΠΎΠ² ΠΈ Ρ‡Π»Π΅Π½ΠΎΠ²: двуязычноС ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² подсказках ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ, Π°Π²Ρ‚ΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΈ подсказках ΠΏΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌ; классификация ΡΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹Ρ… ΠΈΠΌΡ‘Π½; ΠΏΠΎΠΊΠ°Π· ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° «своём» языкС символа (BSL/OneScript).
  • ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Ρ‹, async ΠΈ Π²Π°Ρ€ΠΈΠ°Π΄ΠΈΠΊ-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹. ΠžΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ΅ понятиС для конструктора OScript-класса; ΡƒΡ‡Ρ‘Ρ‚ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° Асинх Ρƒ объявлСний ΠΈ Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²; ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° variadic-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π² ΠΌΠ΅Ρ‚ΠΎΠ΄Π°Ρ… (повторяСмыС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, ΠΊΠ°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Π‘Ρ‚Ρ€Π¨Π°Π±Π»ΠΎΠ½).
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° OneScript ΠΊΠ°ΠΊ языка ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ класса. Π’ систСму Ρ‚ΠΈΠΏΠΎΠ² Π·Π°Π²Π΅Π΄Π΅Π½Ρ‹ понятия Класса ΠΈ ΠœΠΎΠ΄ΡƒΠ»Ρ OneScript, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ понятиС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΠΎΠΉ "Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ" с Π°Π½Π°Π»ΠΈΠ·ΠΎΠΌ lib.config ΠΈ "соглашСния ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°Ρ…".
  • ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ. ΠšΠ»Π°ΡΡΡ‹ OneScript с Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠ΅ΠΉ &ΠžΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ β€” выводится Ρ‚ΠΈΠΏ элСмСнтов ΠΏΡ€ΠΈ ΠΎΠ±Ρ…ΠΎΠ΄Π΅ Для КаТдого.
  • БСмантичСская подсвСтка Π½Π° Π±Π°Π·Π΅ систСмы Ρ‚ΠΈΠΏΠΎΠ². ΠŸΠΎΠ΄ΡΠ²Π΅Ρ‚ΠΊΠ° Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π±ΠΎΠ³Π°Ρ‡Π΅ ΠΈ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π°Π΅Ρ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, асинхронныС ΠΈ статичСскиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° «ОБСнь» (Autumn)

ΠŸΠΎΠ²Π΅Ρ€Ρ… Π½ΠΎΠ²ΠΎΠΉ систСмы Ρ‚ΠΈΠΏΠΎΠ² Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° DI-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° «ОБСнь» (Autumn) для OneScript: сСрвСр распознаёт Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°, индСксируСт ΠΆΠ΅Π»ΡƒΠ΄ΠΈ ΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ внСдрСния, ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Ρ‚ΠΈΠΏΡ‹ внСдряСмых зависимостСй - благодаря Ρ‡Π΅ΠΌΡƒ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°Ρ… «ОБСни» Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π°Π²Ρ‚ΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ подсказки ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹.

  • Π’Ρ‹Π²ΠΎΠ΄ Ρ‚ΠΈΠΏΠΎΠ² внСдряСмых зависимостСй (DI). Π’Ρ‹Π²ΠΎΠ΄ Ρ‚ΠΈΠΏΠΎΠ² для Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΉ &ΠŸΠ»Π°ΡΡ‚ΠΈΠ»ΠΈΠ½, ΠΊΠ°ΠΊ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ внСдрСния ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΠΎΠ³ΠΎ ТСлудя, Ρ‚Π°ΠΊ ΠΈ ΠΏΡ€ΠΈ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΉ.
  • Аннотации ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΈ внСдрСния ΠœΠ΅Ρ‚Π°-Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ (&Π›ΠΎΠ³, &ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€, killjoy ΠΈ Π΄Ρ€.) Ρ€Π°ΡΠΏΠΎΠ·Π½Π°ΡŽΡ‚ΡΡ ΠΈ выводятся Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹.
  • &ΠŸΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠ”Π»Ρ (AliasFor) учитываСтся ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ Ρ‚ΠΈΠΏΠΎΠ² внСдряСмых зависимостСй.
  • Навигация ΠΏΠΎ ТСлудям. Π”Π²ΡƒΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΌΠ΅ΠΆΠ΄Ρƒ объявлСниСм ТСлудя ΠΈΠ»ΠΈ завязи, ΠΈ Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ Π΅Π³ΠΎ внСдрСния: Π½ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠ΄-Π»ΠΈΠ½Π·Ρ‹ ΠΈ быстрыС дСйствия.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ наслСдования extends (OneScript)

ΠŸΠΎΠ²Π΅Ρ€Ρ… Π½ΠΎΠ²ΠΎΠΉ систСмы Ρ‚ΠΈΠΏΠΎΠ² Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ наслСдования extends для OneScript: сСрвСр распознаёт Π΅Ρ‘ Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ ΠΈ строит модСль ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ Ρ‚ΠΈΠΏΠΎΠ², Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊ рСализациям ΠΈ иСрархия Ρ‚ΠΈΠΏΠΎΠ².

  • Аннотации наслСдования. Π Π°ΡΠΏΠΎΠ·Π½Π°ΡŽΡ‚ΡΡ &Π Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ (extends), &Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ (implements) ΠΈ &Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ (interface); ΠΏΠΎ Π½ΠΈΠΌ Π²Ρ‹ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ связи «супСртип ↔ ΠΏΠΎΠ΄Ρ‚ΠΈΠΏΒ» ΠΈ «интСрфСйс ↔ рСализация».
  • ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊ рСализациям (textDocument/implementation) β€” ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° интСрфСйса (&Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ) ΠΊΠΎ всСм ΠΎΠ΄Π½ΠΎΠΈΠΌΡ‘Π½Π½Ρ‹ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΡ… Π΅Π³ΠΎ классов (&Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚).
  • Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ Ρ‚ΠΈΠΏΠΎΠ² (textDocument/prepareTypeHierarchy, typeHierarchy/supertypes, typeHierarchy/subtypes) β€” Π΄Π΅Ρ€Π΅Π²ΠΎ супСртипов ΠΈ ΠΏΠΎΠ΄Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠΎ &Π Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚/&Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚, с SymbolKind.Interface для интСрфСйсов.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° LSP

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ возмоТностСй Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ docs/capabilities.
Π‘Π°ΠΌΠ° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° сущСствСнно Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π° β€” Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π½ΠΎΠ²Ρ‹Π΅ запросы ΠΈ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Ρ‹ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅, Π²ΠΏΠ»ΠΎΡ‚ΡŒ Π΄ΠΎ возмоТностСй LSP 3.17/3.18.

НовыС ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ запросы

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° запроса textDocument/completion ΠΈ completionItem/resolve β€” Π°Π²Ρ‚ΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°: Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ свойства ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (с Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌ Ρ‚ΠΈΠΏΠ°), Ρ‚ΠΈΠΏΡ‹ послС Новый, ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова ΠΈ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅; Π½Π΅Ρ‡Ρ‘Ρ‚ΠΊΠΈΠΉ поиск (подстрока ΠΈ ΠΏΠΎΠ΄ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ), Ρ€Π°Π½ΠΆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· sortText, сигнатура ΠΈ Ρ‚ΠΈΠΏ Π² labelDetails (LSP 3.17), commitCharacters, отлоТСнная докумСнтация Ρ‡Π΅Ρ€Π΅Π· resolve, Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ курсора послС скобок.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° запроса textDocument/signatureHelp β€” подсказка ΠΏΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌ Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° с подсвСткой Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΈ ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ клиСнтских возмоТностСй (labelOffset, documentationFormat, контСкст retrigger).
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° запроса inlayHint/resolve β€” ΠΎΡ‚Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ Π½Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ подсказки-вставки (Π² v0.29.0 Π½Π΅ поддСрТивался).
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° запроса textDocument/implementation β€” ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊ рСализациям (ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° LocationLink); подробности β€” Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Β«ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ наслСдования extendsΒ».
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° запросов textDocument/prepareTypeHierarchy, typeHierarchy/supertypes ΠΈ typeHierarchy/subtypes β€” иСрархия Ρ‚ΠΈΠΏΠΎΠ²; подробности β€” Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Β«ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ наслСдования extendsΒ».
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° запроса textDocument/linkedEditingRange β€” ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ объявлСния локального символа ΠΈ всСх Π΅Π³ΠΎ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΉ Π±Π΅Π· Π²Ρ‹Π·ΠΎΠ²Π° пСрСимСнования.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° запроса textDocument/onTypeFormatting β€” Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ Π½Π°Π±ΠΎΡ€Π° (Ρ„Π»Π°Π³ useOnTypeFormatting).
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° запроса textDocument/rangesFormatting β€” Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠ² (LSP 3.18).
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° запроса textDocument/prepareRename β€” ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° пСрСимСнования с PrepareRenameResult ΠΈ placeholder.
  • ОбъявлСна ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… пространств β€” workspace/didChangeWorkspaceFolders (workspaceFolders.supported ΠΈ changeNotifications): динамичСскоС Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ workspace folders (см. Ρ€Π°Π·Π΄Π΅Π» Β«ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… пространств»).
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π°Π΄ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ workspace/didCreateFiles, workspace/didRenameFiles, workspace/didDeleteFiles (Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹ **/*.bsl, **/*.os, ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ) ΠΈ динамичСская рСгистрация Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚Π΅Π»Π΅ΠΉ Π·Π° Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ (didChangeWatchedFiles) Ρ‡Π΅Ρ€Π΅Π· RelativePattern.
  • Π―Π²Π½ΠΎ дСкларируСтся positionEncoding = utf-16.

Π£Π»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… запросов

  • textDocument/inlayHint β€” Π½ΠΎΠ²Ρ‹Π΅ Π²ΠΈΠ΄Ρ‹ подсказок-вставок: ΠΈΠΌΠ΅Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ конструкторов (Новый Класс()), Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΡ€ΠΎΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Ρ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²; ΠΊΠ»ΠΈΠΊΠ°Π±Π΅Π»ΡŒΠ½Ρ‹Π΅ части подписи (LabelPart); ускорСн расчёт подсказок ΠΈΠΌΡ‘Π½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² (устранён ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈΡ‡Π½Ρ‹ΠΉ ΠΎΠ±Ρ…ΠΎΠ΄ AST).
  • textDocument/foldingRange β€” сворачиваниС Π²Π΅Ρ‚Π²Π΅ΠΉ Π˜Π½Π°Ρ‡Π΅Π•ΡΠ»ΠΈ/Π˜Π½Π°Ρ‡Π΅ ΠΈ Π±Π»ΠΎΠΊΠ° Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, Π±Π»ΠΎΠΊΠΎΠ² #Вставка/#Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ, осмыслСнный collapsedText, соблюдСниС клиСнтского rangeLimit.
  • textDocument/documentLink β€” ΠΊΠ»ΠΈΠΊΠ°Π±Π΅Π»ΡŒΠ½Ρ‹Π΅ ссылки Π² коммСнтариях - Π‘ΠΌ./See ΠΊ упомянутому ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ/ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ, ΠΊ извСстному Ρ‚ΠΈΠΏΡƒ, ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ http(s)-ссылок.
  • textDocument/documentHighlight β€” подсвСтка Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² с Π²ΠΈΠ΄ΠΎΠΌ Read/Write, kind=Text для ΠΏΠ°Ρ€Π½Ρ‹Ρ… лСксСм.
  • textDocument/documentSymbol β€” detail с сигнатурой ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄Π°.
  • workspace/symbol β€” поиск символов ΠΏΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚Π°Π½:
    • ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ индСкс символов с Ρ€Π°Π½ΠΆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΠΎ рСлСвантности; Π²Ρ‹Π΄Π°Ρ‡Π° большС Π½Π΅ усСкаСтся Β«Π²ΡΠ»Π΅ΠΏΡƒΡŽΒ»;
    • прСфиксный поиск ΠΊΠ°ΠΊ ΠΏΠΎ Π½Π°Ρ‡Π°Π»Ρƒ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ, Ρ‚Π°ΠΊ ΠΈ ΠΏΠΎ Π½Π°Ρ‡Π°Π»Ρƒ любого слова: запрос Π”ΠΎΠΊ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΠŸΡ€ΠΎΠ²Π΅ΡΡ‚ΠΈΠ”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ (ΠΈΠΌΠ΅Π½Π° 1Π‘ ΠΏΠΈΡˆΡƒΡ‚ΡΡ Π² CamelCase, ΠΊΠΈΡ€ΠΈΠ»Π»ΠΈΡ†Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠ°Π½Π°);
    • многословный camel-hump-поиск (Β«Ρ‚Π°ΠΉΡ‚Π»-кСйс-Ρ…ΠΎΠΏΒ») β€” запрос ΠŸΡ€Π”ΠΎΠΊ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΠŸΡ€ΠΎΠ²Π΅ΡΡ‚ΠΈΠ”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ (ΠŸΡ€ΠΎΠ²Π΅ΡΡ‚ΠΈ + Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚); совпадСния Β«ΠΏΠΎ порядку слов» Ρ€Π°Π½ΠΆΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π²Ρ‹ΡˆΠ΅ совпадСний «вразброс»;
    • порядок рСлСвантности: Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ имя β†’ прСфикс ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ β†’ многословноС совпадСниС ΠΏΠΎ порядку β†’ прСфикс слова ΠΈΠ· сСрСдины ΠΈΠΌΠ΅Π½ΠΈ β†’ многословноС совпадСниС Π½Π΅ ΠΏΠΎ порядку;
    • потоковая Π²Ρ‹Π΄Π°Ρ‡Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² (partial results, $/progress): сначала быстрый Π½Π°Π±ΠΎΡ€ ΠΈΠ· индСкса, Π·Π°Ρ‚Π΅ΠΌ Π½ΠΈΠΆΠ½Π΅Ρ€Π°Π½ΠΆΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ fuzzy-хвост (подстрока Π²Π½ΡƒΡ‚Ρ€ΠΈ слова ΠΈ разбросанная ΠΏΠΎΠ΄ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ) досылаСтся Ρ‡Π°Π½ΠΊΠ°ΠΌΠΈ; для ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² Π±Π΅Π· ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²ΠΎΠΉ Π²Ρ‹Π΄Π°Ρ‡ΠΈ β€” Ρ„Π»Π°Π³ workspaceSymbol.syncFuzzySearch (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½);
    • поиск выполняСтся сразу ΠΏΠΎ всСм зарСгистрированным workspace folders (см. Ρ€Π°Π·Π΄Π΅Π» Β«ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… пространств»);
    • Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ containerName, ΠΎΡ‚ΠΌΠ΅Π½Π° запроса Ρ‡Π΅Ρ€Π΅Π· CancelChecker, бСзопасный ΠΎΡ‚ΠΊΠ°Ρ‚ Π½Π° Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½Ρ‹ΠΉ поиск ΠΏΡ€ΠΈ Π½Π΅Π²Π°Π»ΠΈΠ΄Π½ΠΎΠΌ regex.
  • textDocument/codeAction β€” ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° source.fixAll (Π°Π²Ρ‚ΠΎΠΏΠΎΡ‡ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΈ сохранСнии) ΠΈ ΡƒΡ‡Ρ‘Ρ‚ context.triggerKind.
  • textDocument/rename β€” WorkspaceEdit Π½Π° documentChanges ΠΈ ChangeAnnotation, валидация Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ, Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ пСрСимСнования символов-ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ.
  • textDocument/formatting β€” ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° insertFinalNewline ΠΈ trimFinalNewlines.
  • textDocument/references β€” ΡƒΡ‡Ρ‘Ρ‚ context.includeDeclaration.
  • textDocument/definition β€” ΡƒΡ‡Ρ‘Ρ‚ клиСнтской возмоТности linkSupport (LocationLink).
  • textDocument/prepareCallHierarchy β€” раскрытиС ΡƒΠ·Π»Π° ΠΊΠΎΠ΄Π° модуля Π² ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ Π²Ρ‹Π·ΠΎΠ²ΠΎΠ².
  • textDocument/hover β€” ΠΏΠΎΠΊΠ°Π· Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ/выраТСния, ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠ° Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° (Β«?Β»), состава Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… структур ΠΈ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠ° устарСвания ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈΠ· исходников.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… пространств (multi-workspace)

Π‘Π΅Ρ€Π²Π΅Ρ€ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ сразу с нСсколькими ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°ΠΌΠΈ-Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌΠΈ пространствами (workspace folders) β€” Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΠ³Π΄Π° Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΎΠΊΠ½Π΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎ нСсколько ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ, Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² OneScript.

  • Π˜Π·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ контСкст Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Ρ€Π°Π±ΠΎΡ‡Π΅Π΅ пространство. КаТдая ΠΏΠ°ΠΏΠΊΠ° анализируСтся Π² собствСнном контСкстС: ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅, символы ΠΈ индСксы ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ Π½Π΅ Β«ΠΏΡ€ΠΎΡ‚Π΅ΠΊΠ°ΡŽΡ‚Β» Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ. К ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ примСняСтся своя конфигурация β€” настройки ΠΈ состав диагностик Π·Π°Π΄Π°ΡŽΡ‚ΡΡ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ пространства ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ.
  • Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ составом Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… пространств. Папки ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ сСрвСру ΠΏΡ€ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, Π° ΠΈΡ… Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π²ΠΎ врСмя сСанса обрабатываСтся запросом workspace/didChangeWorkspaceFolders - ΠΏΠ΅Ρ€Π΅ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ.
  • Поиск ΠΏΠΎ всСм ΠΏΠ°ΠΏΠΊΠ°ΠΌ. Запрос workspace/symbol выполняСт поиск символов сразу ΠΏΠΎ всСм зарСгистрированным workspace folders, Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ.

Π Π΅ΠΆΠΈΠΌ MCP (ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎ)

Π‘Π΅Ρ€Π²Π΅Ρ€ ΡƒΠΌΠ΅Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ сСрвСр Model Context Protocol (MCP), открывая возмоТности Π°Π½Π°Π»ΠΈΠ·Π° ΠΊΠΎΠ΄Π° 1Π‘ (BSL) ΠΈ OneScript AI-Π°Π³Π΅Π½Ρ‚Π°ΠΌ. Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ MCP Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΏΠΎΠ²Π΅Ρ€Ρ… Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Π΄Π²ΠΈΠΆΠΊΠ°, Ρ‡Ρ‚ΠΎ ΠΈ LSP-Ρ€Π΅ΠΆΠΈΠΌ. Π Π°Π±ΠΎΡ‡ΠΈΠ΅ пространства Π·Π°Π΄Π°ΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· MCP roots β€” прямой Π°Π½Π°Π»ΠΎΠ³ workspace folders.

  • Π Π΅ΠΆΠΈΠΌΡ‹ запуска: ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ MCP-сСрвСр (ΠΊΠΎΠΌΠ°Π½Π΄Π° mcp с транспортом stdio/sse/streamable) Π»ΠΈΠ±ΠΎ совмСстно с LSP ΠΏΠΎ Ρ„Π»Π°Π³Ρƒ --mcp (рядом с stdio- ΠΈΠ»ΠΈ websocket-LSP, ΠΏΠΎ Streamable HTTP).
  • Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹: analyze_file, document_symbols, find_references, call_hierarchy, hover, definition, type_info (свойства ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ‚ΠΈΠΏΠ° ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ), type_at_position (Π²Ρ‹Π²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ выраТСния ΠΏΠΎΠ΄ курсором), global_member_info. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠ°Π½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ fileType (BSL/OS).
  • Основан Π½Π° Spring AI 2.0; API ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ.

НовыС диагностики

На основС систСмы Ρ‚ΠΈΠΏΠΎΠ²:

  • UnknownMember β€” ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ нСизвСстному ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ ΠΈΠ»ΠΈ свойству.
  • UnavailableMemberCall β€” использованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π°/свойства, нСдоступного Π² Ρ†Π΅Π»Π΅Π²ΠΎΠΉ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.
  • AssignToReadOnlyProperty β€” присвоСниС значСния свойству, доступному Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния.

ΠŸΡ€ΠΎΡ‡ΠΈΠ΅:

  • CommonModuleVariables β€” объявлСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… (ΠŸΠ΅Ρ€Π΅ΠΌ) Π² ΠΎΠ±Ρ‰Π΅ΠΌ ΠΌΠΎΠ΄ΡƒΠ»Π΅.
  • CompareWithBoolean β€” сравнСниС с Π±ΡƒΠ»Π΅Π²ΠΎΠΉ константой.
  • BadExceptionCategory β€” нСдопустимая катСгория ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ Π² Π’Ρ‹Π·Π²Π°Ρ‚ΡŒΠ˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅.
  • EventHandlerInvalidSignature - нСсоотвСтствиС сигнатуры ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ события (с быстрыми исправлСниями).
  • EventHandlerOutsideEventRegion β€” ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ события Π²Π½Π΅ стандартной области (с быстрыми исправлСниями).

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ устарСвания ΠΈ нСдоступности ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½Ρ‹Ρ… Ρ‡Π»Π΅Π½ΠΎΠ² ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Ρ‘Π½ Π½Π° data-driven модСль: вмСсто Тёстко Π·Π°ΡˆΠΈΡ‚Ρ‹Ρ… диагностик DeprecatedMethods8310/DeprecatedMethods8317 устарСваниС ΠΈ Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ Ρ‡Π»Π΅Π½ΠΎΠ² Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΠΏΠΎ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ· Π΄Π°Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ².

ΠŸΡ€ΠΎΡ‡ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Π΅ возмоТности

  • Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡƒΡ‚Π΅ΠΉ ΠΈΠ· Π°Π½Π°Π»ΠΈΠ·Π° β€” ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ excludePaths Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅: список glob-ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, **/.git/**, build/, *.tmp), Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π½Π΅ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ΡΡ. ДСйствуСт ΠΈ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ LSP, ΠΈ ΠΏΡ€ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΌ Π°Π½Π°Π»ΠΈΠ·Π΅/Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки.
  • Π€ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ диагностик ΠΏΠΎ авторству Git β€” ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ignoredAuthors Π² сСкции diagnostics ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°: список email-адрСсов Π°Π²Ρ‚ΠΎΡ€ΠΎΠ², строки ΠΊΠΎΠ΄Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… (ΠΏΠΎ Π΄Π°Π½Π½Ρ‹ΠΌ git blame) ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ ΠΈΠ· Π°Π½Π°Π»ΠΈΠ·Π°. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ список пуст β€” Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ ΠΏΠΎ авторству Π½Π΅ выполняСтся. Π£Π΄ΠΎΠ±Π½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒ унаслСдованный ΠΈΠ»ΠΈ Ρ‡ΡƒΠΆΠΎΠΉ ΠΊΠΎΠ΄ ΠΈ ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° замСчаниях ΠΏΠΎ своим измСнСниям.
  • БСмантичСская подсвСтка лямбд Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ lambdas Π²Π½ΡƒΡ‚Ρ€ΠΈ строковых Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΠΎΠ².
  • Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΡ‚ΠΎΠΊΠΈ для исполнитСлСй LSP-запросов.
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… Β«Π¦Π²Π΅Ρ‚ ΠΏΠ°Π»ΠΈΡ‚Ρ€Ρ‹Β» (Π¦Π²Π΅Ρ‚ΠŸΠ°Π»ΠΈΡ‚Ρ€Ρ‹).
  • ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Ρ‘Π½ Π½Π° JDK 21 ΠΊΠ°ΠΊ Π±Π°Π·ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Java;

Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½Ρ‹ ΠΎΠ±Ρ‰ΠΈΠ΅ ошибки

  • УстранСно Π»ΠΎΠΆΠ½ΠΎΠ΅ срабатываниС ServerCallsInFormEvents Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρƒ &ΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅Π‘Π΅Π·ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚Π°.
  • УстранСно Π»ΠΎΠΆΠ½ΠΎΠ΅ срабатываниС MissingCommonModuleMethod Π½Π° Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ°Ρ… Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±Ρ‰ΠΈΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ.
  • УстранСно Π»ΠΎΠΆΠ½ΠΎΠ΅ срабатываниС MissingTemporaryFileDeletion ΠΏΡ€ΠΈ асинхронном ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ².
  • Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° VirtualTableCallWithoutParameters Π½Π° ΠšΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΉΠžΡ‚Π±ΠΎΡ€Π°.
  • УстранСны Π»ΠΎΠΆΠ½Ρ‹Π΅ срабатывания диагностик ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°Ρ…, Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ.
  • Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½Ρ‹ падСния ΠΏΡ€ΠΈ построСнии Π³Ρ€Π°Ρ„Π° ΠΏΠΎΡ‚ΠΎΠΊΠ° управлСния (CFG): IllegalArgumentException Π½Π° "висячСй" Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π΅ прСпроцСссора ΠΏΠ΅Ρ€Π΅Π΄ Ρ†ΠΈΠΊΠ»ΠΎΠΌ ΠΈ сбой ΠΏΡ€ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π°Ρ… прСпроцСссора, ΠΏΠ΅Ρ€Π΅ΡΠ΅ΠΊΠ°ΡŽΡ‰ΠΈΡ… Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ Π˜Π½Π°Ρ‡Π΅Π•ΡΠ»ΠΈ.
  • УстранСно Π»ΠΎΠΆΠ½ΠΎΠ΅ срабатываниС QueryParseError Π½Π° запросС с Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ БВРОКА.
  • Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ StringIndexOutOfBoundsException Π² QueryComputer для сосСдних строковых Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² послС Ρ€Π°Π·Ρ€Ρ‹Π²Π° строки.
  • Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ NullPointerException Π² WebColorInformationSupplier ΠΏΡ€ΠΈ нСизвСстном ΠΈΠΌΠ΅Π½ΠΈ Ρ†Π²Π΅Ρ‚Π°.
  • ColorProvider большС Π½Π΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π»ΠΎΠΆΠ½Ρ‹ΠΉ Ρ‡Ρ‘Ρ€Π½Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π·Π΅Ρ† Ρ†Π²Π΅Ρ‚Π° для Π½Π΅Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΡŒΠ½Ρ‹Ρ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² конструктора Π¦Π²Π΅Ρ‚.
  • ΠŸΡ€ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ объявлСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π±Π΅Π· ΠΈΠΌΠ΅Π½ΠΈ ΠΏΡ€ΠΈ построСнии структуры Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.

ОбновлСния Π·Π½Π°Ρ‡ΠΈΠΌΡ‹Ρ… зависимостСй

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ 1c-syntax:

  • io.github.1c-syntax:bsl-parser: 0.32.0 β†’ 0.37.1;
  • io.github.1c-syntax:mdclasses: 0.18.0 β†’ 0.19.1;
  • io.github.1c-syntax:bsl-context: новая Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ, 0.7.0;
  • io.github.1c-syntax:bsl-common-library: 0.10.0 β†’ 0.11.0;
  • io.github.1c-syntax:utils: 0.7.0 β†’ 0.7.2.

Π’Π½Π΅ΡˆΠ½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ:

  • org.eclipse.lsp4j (lsp4j core + websocket.jakarta): 0.24.0 β†’ 1.0.0;
  • org.springframework.boot: 4.0.1 β†’ 4.1.0;
  • org.springframework.ai:spring-ai-bom: новая Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ, 2.0.0 (Ρ€Π΅ΠΆΠΈΠΌ MCP);
  • LanguageTool: 6.7 β†’ 6.8.

Π‘Π±ΠΎΡ€ΠΊΠ° ΠΈ инструмСнты:

Бпасибо!

  • @theshadowco
  • @sfaqer
  • @erprivalov
  • @johnnyshut
  • @nixel2007
  • ΠΈ всСм-всСм-всСм ΠΊΠΎΠ½Ρ‚Ρ€ΠΈΠ±ΡŒΡŽΡ‚ΠΎΡ€Π°ΠΌ ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ BSL Language Server Π·Π° эти 8 Π»Π΅Ρ‚!

Full Changelog: v0.29.0...v1.0.0