Skip to content
Merged

1.0.3 #4242

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
135 commits
Select commit Hold shift + click to select a range
65e1223
fix(hover): на обрыве см.-цикла показывать собственный конструктор по…
claude Jun 25, 2026
52db09c
docs: add CLAUDE.md with project overview and dev guidelines
claude Jun 25, 2026
77cd58c
docs: tighten CLAUDE.md and add self-maintenance instruction
claude Jun 25, 2026
5e656b4
docs(claude): require conventional commits and add git worktree note
claude Jun 25, 2026
287be25
Merge pull request #4207 from 1c-syntax/claude/github-issue-4204-v19sfb
nixel2007 Jun 25, 2026
d5b53aa
docs(claude): add per-directory CLAUDE.md for core subsystems
claude Jun 25, 2026
ea99516
docs(claude): document more subsystems and cross-cutting concepts
claude Jun 25, 2026
c1c49fc
docs(claude): correct MCP transports (stdio/SSE/Streamable HTTP)
claude Jun 25, 2026
4c840a1
docs(claude): drop self-note from mcp CLAUDE.md
claude Jun 25, 2026
6991f6c
docs(mcp): update package-info to reflect actual transports
claude Jun 25, 2026
9fd222a
docs(claude): add javadoc style rule (contract, not callers)
claude Jun 25, 2026
44af194
docs(mcp): keep package-info to the package's own domain
claude Jun 25, 2026
fa0d855
Merge pull request #4210 from 1c-syntax/claude/repo-docs-setup-oviuj5
nixel2007 Jun 25, 2026
e1edaa3
test(architecture): add ArchUnit architecture tests
claude Jun 26, 2026
92218e6
refactor(types): move OScriptLibraryIndexedEvent to events package
claude Jun 26, 2026
b48df2f
test(architecture): expand ArchUnit ruleset
claude Jun 26, 2026
822ef91
chore(claude): set UTF-8 locale for web sessions and fix docs
claude Jun 26, 2026
2d954c7
refactor(cli): print version via picocli output instead of System.out
claude Jun 26, 2026
ab6781f
test(architecture): broaden stdout ban; freeze layering and @Autowired
claude Jun 26, 2026
edc91af
test(architecture): tighten layered model, shrink freeze baseline
claude Jun 26, 2026
3be97bd
fix(cli): guard against null version in VersionCommand
claude Jun 26, 2026
e937a1d
docs(contributing): document UTF-8 locale requirement for tests
claude Jun 26, 2026
cbf69cf
build: exclude nested CLAUDE.md from javadoc sources
claude Jun 26, 2026
8c9dc0f
refactor(diagnostics): move quick-fix CodeAction builder out of provi…
claude Jun 26, 2026
e0a3692
refactor(reporters): move reporter selection bean to cli layer
claude Jun 26, 2026
4aadecf
refactor(formatting): extract BSL formatting engine from FormatProvider
claude Jun 26, 2026
82edf60
docs(formatting): describe contract, not callers, in javadoc
claude Jun 26, 2026
0133de6
test(architecture): replace @Autowired freeze with explicit allow-list
claude Jun 26, 2026
6e10f82
refactor(lsp): extract LSP layer into dedicated package
claude Jun 26, 2026
9c0ad4a
refactor(lsp): move remaining LSP classes into lsp package
claude Jun 26, 2026
93e4a3a
refactor(app): rename BSLLSPLauncher to MainApplication
claude Jun 26, 2026
39fd5f5
test(architecture): restrict cli access to the root Application layer
claude Jun 26, 2026
eaae6b7
docs: keep comments to current contract, drop transient notes
claude Jun 26, 2026
7ef020b
refactor(lsp): move client-state holders to lsp.client to break lsp↔p…
claude Jun 26, 2026
c6f76ee
style(architecture): reword layer/stdout comments as prose to avoid S…
claude Jun 26, 2026
4f95bf3
fix(javadoc): point links to relocated lsp.BSLTextDocumentService and…
claude Jun 26, 2026
816f3f5
refactor(lsp): move WorkDoneProgressHelper to lsp.client to break lsp…
claude Jun 26, 2026
1c53577
Merge pull request #4211 from 1c-syntax/claude/archunit-integration-j…
nixel2007 Jun 26, 2026
c3cc0fa
refactor(utils): make utils a leaf package by relocating domain-coupl…
claude Jun 26, 2026
3b695ad
Merge pull request #4212 from 1c-syntax/claude/utils-leaf-decouple
nixel2007 Jun 26, 2026
d49134d
test(architecture): enforce utils-as-leaf, add cfg/jsonrpc layers, ra…
claude Jun 26, 2026
f80ea08
test(architecture): model LSP feature and narrow-domain packages as l…
claude Jun 27, 2026
545bd19
test(architecture): drop websocket layer — its mode is cli-activated …
claude Jun 27, 2026
d669509
Merge pull request #4213 from 1c-syntax/claude/archunit-cycle-check
nixel2007 Jun 27, 2026
8c4905b
test(architecture): drop color/folding/formatting from acyclic-domain…
claude Jun 27, 2026
846de53
Merge pull request #4214 from 1c-syntax/claude/archunit-cycle-check
nixel2007 Jun 27, 2026
4fc40b9
refactor(databind): let each LSP feature register its own JSON subtypes
claude Jun 27, 2026
cfb8092
Merge pull request #4216 from 1c-syntax/claude/databind-feature-self-…
nixel2007 Jun 27, 2026
b042988
refactor(client): extract lsp.client to a top-level client package
claude Jun 27, 2026
b805221
Merge pull request #4217 from 1c-syntax/claude/extract-client-package
nixel2007 Jun 27, 2026
67c5623
refactor(mcp): inject the ServerInfo interface to decouple mcp from lsp
claude Jun 27, 2026
614da93
refactor(commands): drop code-lens coupling from complexity command a…
claude Jun 27, 2026
84369c9
Merge pull request #4218 from 1c-syntax/claude/decouple-codelens-comm…
nixel2007 Jun 27, 2026
2e2c6a6
Merge pull request #4219 from 1c-syntax/claude/mcp-decouple-from-lsp
nixel2007 Jun 27, 2026
f605263
refactor(infrastructure): decouple ehcache wiring from diagnostics
claude Jun 27, 2026
add7379
Merge pull request #4220 from 1c-syntax/claude/move-typo-cache-to-dia…
nixel2007 Jun 27, 2026
3d190b5
refactor(diagnostics): extract runtime descriptors to diagnostics.info
claude Jun 27, 2026
644ae8f
build(deps): bump bslls-dev-tools to 0.8.2
claude Jun 27, 2026
be86038
test(architecture): lock configuration->diagnostics to the metadata v…
claude Jun 27, 2026
4720d8e
Merge pull request #4221 from 1c-syntax/claude/extract-diagnostics-info
nixel2007 Jun 27, 2026
f62343a
refactor(context): move OScriptModuleTypeResolver into context
claude Jun 28, 2026
53f1f82
Merge pull request #4222 from 1c-syntax/claude/move-module-type-resol…
nixel2007 Jun 28, 2026
9adb8aa
docs(context): fix unresolved javadoc link in OScriptModuleTypeResolver
claude Jun 28, 2026
e3fd3fd
Merge pull request #4223 from 1c-syntax/claude/fix-javadoc-oscript-re…
nixel2007 Jun 28, 2026
0c79605
refactor(context): invert DiagnosticComputer to drop the context -> d…
claude Jun 28, 2026
46be060
Merge pull request #4224 from 1c-syntax/claude/invert-diagnostic-comp…
nixel2007 Jun 28, 2026
c7c43b5
test(architecture): model diagnostics.metadata as its own layer; whit…
claude Jun 28, 2026
5d0bac9
fix(mcp): mark MCP tools as read-only
claude Jun 28, 2026
92c6085
chore(mcp): remove issue references from code comments
claude Jun 28, 2026
141c63a
Merge pull request #4227 from 1c-syntax/claude/github-issue-4226-muqngh
nixel2007 Jun 28, 2026
090fce6
refactor(binding): move BSLLSBinding to a dedicated subpackage
claude Jun 28, 2026
40f05ef
test(architecture): rebuild layer model as a complete prescriptive map
claude Jun 28, 2026
0df4435
Merge pull request #4225 from 1c-syntax/claude/archunit-lock-context-…
nixel2007 Jun 28, 2026
9ff634c
refactor(events): rename LanguageServerInitializeRequestReceivedEvent…
claude Jun 28, 2026
e37462f
refactor(configuration): break the configuration↔context cycle via ne…
claude Jun 28, 2026
fde5c8f
fix(aop): do not set workspace context when publishing the before-rem…
claude Jun 28, 2026
68277b8
refactor(configuration): inject workspace-scoped config directly inst…
claude Jun 28, 2026
d7ae5e0
style(configuration): drop noisy field Javadoc on workspaceConfiguration
claude Jun 29, 2026
c662b07
style(architecture): drop comments describing the now-absent Configur…
claude Jun 29, 2026
a7784a8
Merge pull request #4229 from 1c-syntax/claude/break-configuration-co…
nixel2007 Jun 29, 2026
472fd6a
build(deps): bump com.tngtech.archunit:archunit-junit5
dependabot[bot] Jun 29, 2026
2428454
build(deps): bump org.jreleaser from 1.24.0 to 1.25.0
dependabot[bot] Jun 29, 2026
3083879
build(deps): bump gradle-wrapper from 9.6.0 to 9.6.1
dependabot[bot] Jun 29, 2026
b247fa3
Merge pull request #4230 from 1c-syntax/dependabot/gradle/com.tngtech…
github-actions[bot] Jun 29, 2026
5fa3895
Merge pull request #4232 from 1c-syntax/dependabot/gradle/gradle-wrap…
github-actions[bot] Jun 29, 2026
2311db8
Merge pull request #4231 from 1c-syntax/dependabot/gradle/org.jreleas…
github-actions[bot] Jun 29, 2026
dd386a4
fix(inlayhints): honor methodCall: false to disable method-call hints
sfaqer Jun 30, 2026
dafe4fc
fix(inlayhints): keep legacy platformMethodCall toggle, widen param type
sfaqer Jun 30, 2026
14067be
refactor(inlayhints): merge method-call suppliers into one
sfaqer Jun 30, 2026
55466b6
refactor(inlayhints): address sonar findings on merged supplier
sfaqer Jun 30, 2026
8089185
build(deps): bump io.github.1c-syntax:bsl-common-library
dependabot[bot] Jun 30, 2026
e42ed2b
Merge pull request #4236 from 1c-syntax/dependabot/gradle/io.github.1…
github-actions[bot] Jun 30, 2026
1fae222
build(deps): bump io.github.1c-syntax:supportconf from 0.16.0 to 0.17.0
dependabot[bot] Jun 30, 2026
fa0a14e
Merge pull request #4235 from 1c-syntax/dependabot/gradle/io.github.1…
github-actions[bot] Jun 30, 2026
5bc39d2
refactor(inlayhints): clean up method-call collectors (sonar)
sfaqer Jul 1, 2026
897d0be
fix(inlayhints): drop dead null-check on non-null getAst()
sfaqer Jul 1, 2026
a8e9f35
refactor(inlayhints): drop legacy sourceDefinedMethodCall key
sfaqer Jul 1, 2026
49ff7a9
feat(hover): кликабельные гиперссылки для См.-ссылок на обрыве рекурсии
claude Jun 25, 2026
ed27bfe
feat(types): резолв См.-ссылок в определение через type service
claude Jun 25, 2026
fbdef90
test(documentlink): резолв См.-ссылки на метод модуля менеджера
claude Jun 25, 2026
38357b1
test(types): покрыть resolveReferenceSymbol + детерминировать порядок…
claude Jun 25, 2026
c442ac5
refactor(types): устранить замечания SonarCloud по новому коду
claude Jun 25, 2026
8afbc53
fix(completion): сохранять типы полей элемента Соответствия в автоком…
claude Jun 25, 2026
8378dbb
refactor(completion): два прохода по ref'ам — поля раньше членов для …
claude Jun 25, 2026
3bb9f32
refactor: перенести навигационный хелпер в context.symbol.SourceDefin…
claude Jul 1, 2026
36fbcc9
refactor(completion): вынести сбор полей и членов в отдельные методы
claude Jul 1, 2026
37f0dfb
Merge pull request #4234 from 1c-syntax/fix/inlayhint-methodcall-toggle
nixel2007 Jul 1, 2026
5a71049
build(deps): bump io.github.1c-syntax:supportconf from 0.17.0 to 0.17.1
dependabot[bot] Jul 1, 2026
7925da3
Merge pull request #4237 from 1c-syntax/dependabot/gradle/io.github.1…
github-actions[bot] Jul 1, 2026
95516cf
Merge pull request #4208 from 1c-syntax/claude/collection-autocomplet…
nixel2007 Jul 1, 2026
8afc05a
refactor(types): единый обход цепочки членов и чистые слои для См.-сс…
claude Jul 1, 2026
a30a60a
fix(types): резолв параметра при неизвестном типе возврата метода + с…
claude Jul 1, 2026
ce69837
fix(types): resolve accumulator self-reference to its accumulated type
claude Jul 1, 2026
f3841a1
test(types): fix cursor position in self-concat expression test
claude Jul 1, 2026
a54e857
Merge pull request #4239 from 1c-syntax/claude/string-concat-inferenc…
nixel2007 Jul 2, 2026
a44a8af
refactor(hover): заинлайнить SeeReferenceHyperlinks в место использов…
claude Jul 2, 2026
ab24c80
refactor(types): переименовать resolveSeeReference в resolveDefinition
claude Jul 2, 2026
ffefd69
refactor(types): снизить сложность resolveChain (Sonar S3776/S1541/S1…
claude Jul 2, 2026
1f79c76
Merge pull request #4209 from 1c-syntax/claude/hover-see-reference-link
nixel2007 Jul 3, 2026
6f4139c
fix(lsp): analyze single-file and untitled documents without a workspace
claude Jul 3, 2026
0883b48
refactor(context): use AtomicReference for primary workspace pointer
claude Jul 3, 2026
764c12c
test(context): isolate ServerContextProviderTest with @BeforeEach clear
claude Jul 3, 2026
d1373ad
refactor(context): reduce getPrimaryContext visibility to package-pri…
claude Jul 3, 2026
e7c5929
build(deps): bump io.sentry.jvm.gradle from 6.13.0 to 6.14.0
dependabot[bot] Jul 3, 2026
9e8e3b8
Merge pull request #4241 from 1c-syntax/dependabot/gradle/io.sentry.j…
github-actions[bot] Jul 3, 2026
fbe1269
fix(context): promote real workspace over default primary on runtime add
claude Jul 3, 2026
1ac787c
test(lsp): drop duplicative runtime-add integration test
claude Jul 3, 2026
c4f1f23
test(lsp): assert untitled resolves to the default context by identity
claude Jul 3, 2026
687197d
style(context): clear two Sonar new-code smells
claude Jul 3, 2026
182c5cd
style(lsp): remove commented-out-code block flagged by Sonar (S125)
claude Jul 3, 2026
69e54d1
fix(context): fail loudly when primary context is missing after initi…
claude Jul 3, 2026
6e3e8c2
test(context): cover loud-fail path; reword Sonar-flagged comment (S125)
claude Jul 3, 2026
570e5d9
test(context): hoist URI.create out of assertThatThrownBy lambda (S5778)
claude Jul 3, 2026
b6d75b4
refactor(context): make primary-context resolution non-Optional
claude Jul 4, 2026
06612ae
Merge pull request #4240 from 1c-syntax/claude/bsl-ls-file-mode-routi…
nixel2007 Jul 4, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .claude/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"$schema": "https://json.schemastore.org/claude-code-settings.json",
"env": {
"LANG": "C.UTF-8",
"LC_ALL": "C.UTF-8"
}
}
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -86,4 +86,7 @@ bsl-language-server_*.zip
/.idea/material_theme_project_new.xml
.bsl-ls-cache/
__pycache__/
.claude/
# Локальное состояние Claude Code игнорируем, но общий settings.json (env-локаль и т.п.)
# держим под версионным контролем — он нужен веб-сессиям всех контрибьюторов.
.claude/*
!.claude/settings.json
207 changes: 207 additions & 0 deletions CLAUDE.md

Large diffs are not rendered by default.

19 changes: 13 additions & 6 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,10 @@ plugins {
id("com.github.ben-manes.versions") version "0.54.0"
id("org.springframework.boot") version "4.1.0"
id("io.spring.dependency-management") version "1.1.7"
id("io.sentry.jvm.gradle") version "6.13.0"
id("io.github.1c-syntax.bslls-dev-tools") version "0.8.1"
id("io.sentry.jvm.gradle") version "6.14.0"
id("io.github.1c-syntax.bslls-dev-tools") version "0.8.2"
id("ru.vyarus.pom") version "3.0.0"
id("org.jreleaser") version "1.24.0"
id("org.jreleaser") version "1.25.0"
id("org.sonarqube") version "7.3.1.8318"
id("me.champeau.jmh") version "0.7.3"
id("com.gorylenko.gradle-git-properties") version "4.0.1"
Expand Down Expand Up @@ -99,8 +99,8 @@ dependencies {
api("io.github.1c-syntax:bsl-parser:0.37.2")
api("io.github.1c-syntax:utils:0.7.2")
api("io.github.1c-syntax:mdclasses:0.19.1")
api("io.github.1c-syntax:bsl-common-library:0.12.0")
api("io.github.1c-syntax:supportconf:0.16.0")
api("io.github.1c-syntax:bsl-common-library:0.12.1")
api("io.github.1c-syntax:supportconf:0.17.1")
api("io.github.1c-syntax:bsl-context:0.7.0")

// nullability annotations
Expand Down Expand Up @@ -175,6 +175,9 @@ dependencies {
testImplementation("com.github.hazendaz.jmockit:jmockit:2.2.0")
testImplementation("org.awaitility:awaitility:4.3.0")

// архитектурные тесты (проверка конвенций именования/аннотаций/зависимостей)
testImplementation("com.tngtech.archunit:archunit-junit5:1.4.2")

testRuntimeOnly("org.junit.platform:junit-platform-launcher")
}

Expand All @@ -193,7 +196,7 @@ tasks.withType<JavaCompile> {

tasks.jar {
manifest {
attributes["Main-Class"] = "com.github._1c_syntax.bsl.languageserver.BSLLSPLauncher"
attributes["Main-Class"] = "com.github._1c_syntax.bsl.languageserver.MainApplication"
attributes["Implementation-Version"] = archiveVersion.get()
}
enabled = true
Expand Down Expand Up @@ -348,6 +351,10 @@ tasks.generateDiagnosticDocs {
}

tasks.javadoc {
// Вложенные CLAUDE.md лежат рядом с исходниками; delombok копирует их в сгенерированные
// сорсы, и javadoc спотыкается о них ("Illegal package name"). Исключаем не-java файлы.
exclude("**/*.md")

options {
this as StandardJavadocDocletOptions
links(
Expand Down
7 changes: 7 additions & 0 deletions docs/contributing/EnvironmentSetting.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,10 @@
* Включить обработку аннотаций: `File -> Settings -> Build, Execution, Deployment -> Compiler -> Annotation Processors -> Enable annotation processing`
* Выполнить настройки автоимпорта, подробно описано в [статье](https://www.jetbrains.com/help/idea/creating-and-optimizing-imports.html). Отдельно стоит обратить внимание на оптимизацию импорта.
* Не надо запускать оптимизацию импортов всего проекта, за этим следят мейнтейнеры. Если после оптимизации импортов появились измененные файлы, которые не менялись в процессе разработки, стоит уведомить мейнтейнеров и откатить эти изменения.

## Локаль и кодировка

Проект двуязычный, и среди тестовых фикстур есть файлы с кириллическими именами (например, `Документ1.xml`). JVM декодирует имена файлов по системной локали (`sun.jnu.encoding`): при `LC_CTYPE=POSIX`/`C` берётся ASCII, и такие фикстуры не читаются — падают `processTestResources` и часть тестов. Запускайте сборку в UTF-8-локали:

* Linux/macOS: `LANG=C.UTF-8 ./gradlew …` (или задайте UTF-8-локаль в окружении);
* Windows: используйте UTF-8 кодовую страницу консоли.
7 changes: 7 additions & 0 deletions docs/en/contributing/EnvironmentSetting.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,10 @@ Please note that plugins do not have to be installed - if you have Internet acce
* Enable annotation processing: `File -> Settings -> Build, Execution, Deployment -> Compiler -> Annotation Processors -> Enable annotation processing`
* Configure auto import settings, details in the [article](https://www.jetbrains.com/help/idea/creating-and-optimizing-imports.html). Pay special attention to import optimization.
* There is no need to start optimization of imports of the entire project, this is followed by maintainers. If, after optimizing imports, changed files appeared that did not change during the development process, you should notify the maintainers and roll back these changes.

## Locale and encoding

The project is bilingual, and test fixtures include files with Cyrillic names (e.g. `Документ1.xml`). The JVM decodes file names using the system locale (`sun.jnu.encoding`): under `LC_CTYPE=POSIX`/`C` it falls back to ASCII and such fixtures cannot be read, breaking `processTestResources` and some tests. Run the build in a UTF-8 locale:

* Linux/macOS: `LANG=C.UTF-8 ./gradlew …` (or set a UTF-8 locale in your environment);
* Windows: use a UTF-8 console code page.
1 change: 0 additions & 1 deletion docs/en/features/ConfigurationFile.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,6 @@ BSL Language Server automatically tracks configuration file changes:
| &nbsp;&nbsp;&nbsp;⤷&nbsp;&nbsp;&nbsp;`cognitiveComplexity` | `Boolean` or `JSON-Object` | Enables displaying the value of the [Cognitive Complexity](../diagnostics/CognitiveComplexity.md) method as inlay hints. By default, the setting is set to `true`. |
| &nbsp;&nbsp;&nbsp;⤷&nbsp;&nbsp;&nbsp;`cyclomaticComplexity` | `Boolean` or `JSON-Object` | Enables displaying the value of the [Cyclomatic Complexity](../diagnostics/CyclomaticComplexity.md) method as inlay hints. By default, the setting is set to `true`. |
| &nbsp;&nbsp;&nbsp;⤷&nbsp;&nbsp;&nbsp;`methodCall` | `Boolean` or `JSON-Object` | Enables displaying the parameters of the invoked method (both configuration/library and platform methods) as inlay hints. By default, the setting is set to `true`. Available parameters:<br/>* `showParametersWithTheSameName` - show parameters with names contained in the passed value. The default parameter value is `false`.<br/>* `showDefaultValues` - show default values for parameters not passed. The default value of the parameter is `true`. |
| &nbsp;&nbsp;&nbsp;⤷&nbsp;&nbsp;&nbsp;`sourceDefinedMethodCall` | `Boolean` or `JSON-Object` | **Deprecated**, use `methodCall` (a single setting for both configuration/library and platform method calls). The key is kept for backward compatibility with older configuration files. Available parameters are the same as for `methodCall`. |
| &nbsp;&nbsp;&nbsp;⤷&nbsp;&nbsp;&nbsp;`variableType` | `Boolean` or `JSON-Object` | Enables displaying the inferred type of variables in assignments as inlay hints. By default, the setting is set to `true`. |
| `capabilities` | `JSON-Object` | Settings for LSP capabilities that the server advertises to clients. Use this section to override defaults such as document sync mode. |
| ⤷&nbsp;&nbsp;&nbsp;`textDocumentSync` | `JSON-Object` | Settings for text document synchronization. |
Expand Down
1 change: 0 additions & 1 deletion docs/features/ConfigurationFile.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,6 @@ BSL Language Server автоматически отслеживает измен
| &nbsp;&nbsp;&nbsp;⤷&nbsp;&nbsp;&nbsp;`cognitiveComplexity` | `Булево` или `JSON-Объект` | Включает отображение значения [когнитивной сложности](../diagnostics/CognitiveComplexity.md) метода в виде inlay hints. По умолчанию настройка установлена в `true`. |
| &nbsp;&nbsp;&nbsp;⤷&nbsp;&nbsp;&nbsp;`cyclomaticComplexity` | `Булево` или `JSON-Объект` | Включает отображение значения [цикломатической сложности](../diagnostics/CyclomaticComplexity.md) метода в виде inlay hints. По умолчанию настройка установлена в `true`. |
| &nbsp;&nbsp;&nbsp;⤷&nbsp;&nbsp;&nbsp;`methodCall` | `Булево` или `JSON-Объект` | Включает отображение параметров вызываемого метода (как методов конфигурации/библиотеки, так и платформенных) в виде inlay hints. По умолчанию настройка установлена в `true`. Доступные параметры:<br/>* `showParametersWithTheSameName` - отображать параметры с именами, содержащимися в передаваемом значении. Значение параметра по умолчанию - `false`.<br/>* `showDefaultValues` - отображать значения по умолчанию для непереданных параметров. Значение параметра по умолчанию - `true`. |
| &nbsp;&nbsp;&nbsp;⤷&nbsp;&nbsp;&nbsp;`sourceDefinedMethodCall` | `Булево` или `JSON-Объект` | **Устарело**, используйте `methodCall` (единая настройка для методов конфигурации/библиотеки и платформенных методов). Ключ сохранён для совместимости со старыми конфигурационными файлами. Доступные параметры те же, что у `methodCall`. |
| &nbsp;&nbsp;&nbsp;⤷&nbsp;&nbsp;&nbsp;`variableType` | `Булево` или `JSON-Объект` | Включает отображение выведенного типа переменных в присваиваниях в виде inlay hints. По умолчанию настройка установлена в `true`. |
| `capabilities` | `JSON-Объект` | Настройки возможностей сервера LSP, которые он сообщает клиенту. Позволяет переопределить значения по умолчанию, например, режим синхронизации документов. |
| ⤷&nbsp;&nbsp;&nbsp;`textDocumentSync` | `JSON-Объект` | Настройки синхронизации текстовых документов. |
Expand Down
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.0-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.1-bin.zip
networkTimeout=10000
retries=0
retryBackOffMs=500
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,15 +72,15 @@
synopsisSubcommandLabel = "[COMMAND [ARGS]]",
footer = "@|green Copyright(c) 2018-2025|@",
header = "@|green BSL language server|@")
@SpringBootApplication(scanBasePackageClasses = BSLLSPLauncher.class)
@SpringBootApplication(scanBasePackageClasses = MainApplication.class)
@Component
@ConditionalOnProperty(
prefix = "app.command.line.runner",
value = "enabled",
havingValue = "true",
matchIfMissing = true)
@RequiredArgsConstructor
public class BSLLSPLauncher implements Callable<Integer>, ExitCodeGenerator {
public class MainApplication implements Callable<Integer>, ExitCodeGenerator {

private static final String DEFAULT_COMMAND = "lsp";

Expand Down Expand Up @@ -117,12 +117,12 @@ public class BSLLSPLauncher implements Callable<Integer>, ExitCodeGenerator {
public static void main(String[] args) {
applyMcpEndpointPath(args);

var applicationContext = new SpringApplicationBuilder(BSLLSPLauncher.class)
var applicationContext = new SpringApplicationBuilder(MainApplication.class)
.web(getWebApplicationType(args))
.profiles(getActiveProfiles(args))
.run(args);

var launcher = applicationContext.getBean(BSLLSPLauncher.class);
var launcher = applicationContext.getBean(MainApplication.class);
launcher.run(args);

if (launcher.getExitCode() >= 0) {
Expand Down
Loading
Loading