Skip to content

Comments

Обновления#123

Merged
theshadowco merged 2 commits intodevelopfrom
feature/bumps260220
Feb 20, 2026
Merged

Обновления#123
theshadowco merged 2 commits intodevelopfrom
feature/bumps260220

Conversation

@theshadowco
Copy link
Member

Описание

  • лицензии
  • зависимости
  • jspecify null check

Связанные задачи

Closes:

Чеклист

Общие

  • Ветка PR обновлена из develop
  • Отладочные, закомментированные и прочие, не имеющие смысла участки кода удалены
  • Изменения покрыты тестами
  • Обязательные действия перед коммитом выполнены (запускал команду gradlew precommit)

Дополнительно

@coderabbitai
Copy link

coderabbitai bot commented Feb 20, 2026

Обзор

Обновлены конфигурация сборки Gradle (замена плагина лицензирования, обновление версий плагинов и зависимостей, переход на аннотации JSpecify), обновлена версия Gradle с 8.14.3 на 9.3.1, удалена обработка CLASSPATH из скриптов-оболочек, обновлены годы в копирайтах исходных файлов с 2025 на 2026.

Изменения

Когорта / Файлы Резюме
Конфигурация сборки Gradle
build.gradle.kts
Замена плагина лицензирования (org.cadixdev.licenser → cloud.rio.license 0.18.0), обновление FreeFair плагинов (9.1.0 → 9.2.0), переформатирование объявлений зависимостей (строка вместо группы/артефакта), обновление commons-io (2.18.0 → 2.21.0), добавление api зависимости jspecify:1.0.0, переход на BOM для JUnit (6.0.3), обновление AssertJ (3.27.7), изменение команд лицензирования в precommit task.
Обновление Gradle wrapper
gradle/wrapper/gradle-wrapper.properties
Обновление дистрибутива Gradle с 8.14.3 на 9.3.1.
Скрипты-оболочки Gradle
gradlew, gradlew.bat
Удаление инициализации и использования CLASSPATH из скриптов запуска gradle-wrapper.jar.
Исходные файлы пакета supconf
src/main/java/com/github/_1c_syntax/bsl/supconf/*.java, src/test/java/com/github/_1c_syntax/bsl/supconf/*.java
Обновление года копирайта в заголовках файлов с 2025 на 2026 (за исключением package-info.java).
Аннотации пакета нулевой безопасности
src/main/java/com/github/_1c_syntax/bsl/supconf/package-info.java
Замена @ParametersAreNonnullByDefault и @ReturnValuesAreNonnullByDefault на @NullMarked из org.jspecify.annotations, обновление импортов, обновление года копирайта на 2026.

Оцениваемая сложность кода

🎯 3 (Средняя) | ⏱️ ~20 минут

Стихотворение

🐰 Кролик говорит:

Gradle спешит в версию девять с нетерпеньем,
Плагины обновлены, зависимый строй,
JSpecify приносит нам true без сомненья,
Копирайты танцуют с числом 2026,
CLASSPATH уходит в забвенье — и вот
Сборка светлеет, как весенний денёк! 🌿

🚥 Pre-merge checks | ✅ 1 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Title check ❓ Inconclusive Название 'Обновления' является слишком расплывчатым и не описывает конкретные изменения в pull request. Уточните название, указав основные изменения, например: 'Обновление лицензии, зависимостей и добавление jspecify null-check'.
✅ Passed checks (1 passed)
Check name Status Explanation
Description check ✅ Passed Описание содержит актуальную информацию об изменениях (обновление лицензий, зависимостей, добавление jspecify null-check) и связано с внесенными правками.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
  • 📝 Generate docstrings (stacked PR)
  • 📝 Generate docstrings (commit on current branch)
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feature/bumps260220

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@sonarqubecloud
Copy link

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (4)
src/main/java/com/github/_1c_syntax/bsl/supconf/SupportDataReader.java (1)

145-146: Форматирование LGTM; опционально — переименовать параметр dataStrings.

Перенос параметров на отдельные строки улучшает читаемость. Вместе с тем, второй параметр назван dataStrings, хотя его тип — int (числовой код варианта поддержки: 0/1/2). Это создаёт семантическую путаницу с массивом dataStrings[] в вызывающих методах.

♻️ Предлагаемое переименование параметра
-  private static SupportVariant computeSupportVariant(GeneralSupportVariant configurationSupportVariant,
-                                                      int dataStrings) {
+  private static SupportVariant computeSupportVariant(GeneralSupportVariant configurationSupportVariant,
+                                                      int supportVariantCode) {
     SupportVariant supportVariant;
     if (configurationSupportVariant == GeneralSupportVariant.LOCKED) {
       supportVariant = SupportVariant.NOT_EDITABLE;
     } else {
-      supportVariant = SupportVariant.valueOf(dataStrings);
+      supportVariant = SupportVariant.valueOf(supportVariantCode);
     }
     return supportVariant;
   }
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@src/main/java/com/github/_1c_syntax/bsl/supconf/SupportDataReader.java`
around lines 145 - 146, The parameter name dataStrings in
computeSupportVariant(GeneralSupportVariant configurationSupportVariant, int
dataStrings) is misleading (it's an int code, not an array); rename it to a
clearer name such as supportVariantCode or variantCode in the method signature
and update all callers (places that currently pass the int and also that define
dataStrings[] arrays) to use the new identifier, keeping logic unchanged; ensure
imports/overloads/JavaDocs (if any) referencing dataStrings are updated to the
new name so compilation and semantics remain correct.
build.gradle.kts (3)

55-55: Доступна более новая версия commons-io.

На GitHub Apache Commons IO актуальная версия уже 2.22.0, тогда как здесь используется 2.21.0. Не критично, но при возможности стоит обновить до актуальной.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@build.gradle.kts` at line 55, Update the commons-io dependency to the newer
release by replacing the existing implementation("commons-io:commons-io:2.21.0")
entry with the current version (e.g., 2.22.0); after changing the version,
refresh/resolve Gradle dependencies (IDE sync or gradle --refresh-dependencies)
and run the build to verify there are no compatibility regressions.

52-52: Использование альфа-версии SLF4J в production-зависимости.

slf4j-api:2.1.0-alpha1 — это pre-release версия. Для библиотеки, публикуемой на Maven Central (java-library + maven-publish), использование альфа-зависимости в implementation scope транзитивно повлияет на всех потребителей. Рассмотрите возможность перехода на стабильный релиз SLF4J 2.x (например, 2.0.16), если он совместим.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@build.gradle.kts` at line 52, Replace the pre-release SLF4J dependency
declaration implementation("org.slf4j:slf4j-api:2.1.0-alpha1") with a stable 2.x
release (e.g. 2.0.16) in build.gradle.kts so consumers of your
java-library/maven-publish artifact don't inherit an alpha dependency; update
the version string, run a full build and tests to confirm compatibility, and if
any APIs changed adjust call sites accordingly (search for slf4j usages and the
implementation(...) entry to locate the change).

13-13: Закомментированный плагин.

Закомментированный io.freefair.maven-central.validate-poms — лучше удалить полностью или оставить комментарий о причине отключения (TODO/FIXME), чтобы не засорять конфигурацию.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@build.gradle.kts` at line 13, В файле обнаружена закомментированная строка
плагина "//    id("io.freefair.maven-central.validate-poms") version "9.2.0"" —
удалите полностью этот закомментированный плагин или явно оставьте поясняющий
комментарий (TODO/FIXME) с причиной отключения; найдите упоминание
io.freefair.maven-central.validate-poms и либо удалите строку, либо замените её
на короткий комментарий с объяснением состояния.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@build.gradle.kts`:
- Line 8: The plugin identifier declared as id("cloud.rio.license") is incorrect
and causes build failures; update the plugin declaration to use the correct
identifier id("cloud.rio.license-report") with the same version "0.18.0" in the
build.gradle.kts plugin block (locate the id(...) call that currently references
cloud.rio.license and replace it with cloud.rio.license-report).

---

Nitpick comments:
In `@build.gradle.kts`:
- Line 55: Update the commons-io dependency to the newer release by replacing
the existing implementation("commons-io:commons-io:2.21.0") entry with the
current version (e.g., 2.22.0); after changing the version, refresh/resolve
Gradle dependencies (IDE sync or gradle --refresh-dependencies) and run the
build to verify there are no compatibility regressions.
- Line 52: Replace the pre-release SLF4J dependency declaration
implementation("org.slf4j:slf4j-api:2.1.0-alpha1") with a stable 2.x release
(e.g. 2.0.16) in build.gradle.kts so consumers of your
java-library/maven-publish artifact don't inherit an alpha dependency; update
the version string, run a full build and tests to confirm compatibility, and if
any APIs changed adjust call sites accordingly (search for slf4j usages and the
implementation(...) entry to locate the change).
- Line 13: В файле обнаружена закомментированная строка плагина "//   
id("io.freefair.maven-central.validate-poms") version "9.2.0"" — удалите
полностью этот закомментированный плагин или явно оставьте поясняющий
комментарий (TODO/FIXME) с причиной отключения; найдите упоминание
io.freefair.maven-central.validate-poms и либо удалите строку, либо замените её
на короткий комментарий с объяснением состояния.

In `@src/main/java/com/github/_1c_syntax/bsl/supconf/SupportDataReader.java`:
- Around line 145-146: The parameter name dataStrings in
computeSupportVariant(GeneralSupportVariant configurationSupportVariant, int
dataStrings) is misleading (it's an int code, not an array); rename it to a
clearer name such as supportVariantCode or variantCode in the method signature
and update all callers (places that currently pass the int and also that define
dataStrings[] arrays) to use the new identifier, keeping logic unchanged; ensure
imports/overloads/JavaDocs (if any) referencing dataStrings are updated to the
new name so compilation and semantics remain correct.

@theshadowco theshadowco merged commit 0304471 into develop Feb 20, 2026
22 checks passed
@theshadowco theshadowco deleted the feature/bumps260220 branch February 20, 2026 15:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant