Добро пожаловать в майский выпуск новостной рассылки Gradle Build Tool за 2026 год! В этом месяце мы обсуждаем: действительно ли ИИ плохо кодит плагины для Gradle, быстрые локальные циклы разработки с Configuration Cache, сокращение времени сборки в CI на 57% в DuckDuckGo и выход Gradle 9.5.1.
Содержание
- Из сообществаПЛОХО ЛИ ИИ КОДИТ?СБРОС ОБЛАСТИ ВИДИМОСТИ KOTLINПОЧЕМУ RICH CONSOLE НЕ РАБОТАЕТ НА NIXРЕФАКТОРИНГ HCL С ПОМОЩЬЮ OPENREWRITE
- ПЛОХО ЛИ ИИ КОДИТ?
- СБРОС ОБЛАСТИ ВИДИМОСТИ KOTLIN
- ПОЧЕМУ RICH CONSOLE НЕ РАБОТАЕТ НА NIX
- РЕФАКТОРИНГ HCL С ПОМОЩЬЮ OPENREWRITE
- От команды GradleВЫХОД GRADLE 9.5.1БЫСТРЫЕ ЛОКАЛЬНЫЕ ЦИКЛЫ РАЗРАБОТКИ
- ВЫХОД GRADLE 9.5.1
- БЫСТРЫЕ ЛОКАЛЬНЫЕ ЦИКЛЫ РАЗРАБОТКИ
- От DevelocityDUCKDUCKGO СОКРАЩАЕТ ВРЕМЯ СБОРКИ НА 57%
- DUCKDUCKGO СОКРАЩАЕТ ВРЕМЯ СБОРКИ НА 57%
- Предстоящие мероприятия
- Расскажите друзьям
Введение
Добро пожаловать в майский выпуск новостной рассылки Gradle Build Tool за 2026 год! В этом месяце мы погружаемся в будущее быстрых локальных циклов разработки с Configuration Cache и Isolated Projects, обсуждаем сокращение времени сборки в CI на 57% в DuckDuckGo, патч-релиз Gradle 9.5.1, а также на практическом примере смотрим, что происходит, когда ИИ запускают для анализа реальной кодовой базы плагина Gradle.
ПЛОХО ЛИ ИИ КОДИТ? #
Тони Робалик (Tony Robalik) документирует три конкретных инцидента, связанных с его плагином Dependency Analysis Gradle Plugin, когда участники, использующие ИИ, нанесли реальный ущерб: ошибочный диагноз ClassCastException, сгенерированный ИИ, в котором неверно почти каждое утверждение; PR с «исправлением», который был семантически некорректным и в два раза превышал необходимый объем; а также PR, связанный с чувствительностью к путям, который привел бы к стохастическим сбоям сборки у каждого пользователя удаленного кэша.
Его реакция: в Кодекс поведения плагина было добавлено строгое правило «Без LLM / без ИИ».
👉 Читать пост
СБРОС ОБЛАСТИ ВИДИМОСТИ KOTLIN #
Блок kotlin { ... }, вложенный внутрь android { buildTypes { release { ... } } }, выглядит так, будто он ограничивает флаг -Werror только релизными сборками, однако kotlin является корневым расширением, поэтому Gradle незаметно применяет его к каждой задаче компиляции Kotlin в проекте.
Ауримас Лютикас (Aurimas Liutikas) разбирает эту скрытую ловушку и рассказывает, как Gradle разрешает имена, поднимаясь вверх по вложенным блокам, родительским проектам и многоуровневым файлам gradle.properties до тех пор, пока не найдет совпадение.
👉 Читать пост
ПОЧЕМУ RICH CONSOLE НЕ РАБОТАЕТ НА NIX #
Бенедикт Риттер (Benedikt Ritter) прослеживает годичной давности отчет «Gradle 8.12 сломал красивую консоль в NixOS» до двух нес相关ных проектных решений верхнего уровня, которые незаметно конфликтуют друг с другом: кэш-ключи native-platform зависят только от NativeVersion.VERSION (из-за чего пропатченные и чистые исходные библиотеки сталкиваются), а собранные в nixpkgs JDK не могут выполнять dlopen библиотек из /lib64 даже на хостах FHS вроде Fedora с поддержкой Nix.
Временное обходное решение: зафиксируйте org.gradle.console=rich в файле ~/.gradle/gradle.properties, чтобы полностью обойти автообнаружение.
👉 Читать пост
РЕФАКТОРИНГ HCL С ПОМОЩЬЮ OPENREWRITE #
Павел Очадлы (Paweł Oczadły) выступает за то, чтобы рассматривать масштабную миграцию Terraform/OpenTofu на уровне организации как задачу структурированного рефакторинга, а не проблему скриптов на sed: семантические деревья OpenRewrite без потерь выполняют перезапись, Gradle выступает в роли движка выполнения, а обязанности четко разделены на рецепты Java (как делать), рецепты YAML (что делать) и Gradle (оркестрация).
Два тематических исследования Azure Verified Modules показывают, что этот паттерн превращается в чистые, готовые к ревью PR, а не в спонтанные скрипты. Build Scans от Develocity получают краткое упоминание в качестве естественного уровня наблюдаемости, если вы уже используете его.
👉 Читать пост
От Gradle #
ВЫХОД GRADLE 9.5.1 #
Gradle 9.5.1 — первый патч-релиз для версии 9.5.0, исправляющий три регрессии, с которыми столкнулись некоторые пользователи в оригинальной версии 9.5.0:
- Отказ из-за нехватки памяти (OOM) при обновлении с 9.4.1 до 9.5.0 (#37753)
- Tooling API нельзя использовать с относительным путем к проекту в 9.5.0 (#37797)
- Отсутствует документация для CreateMD5.java (#37812)
Если вы уже перешли на версию 9.5.0, рекомендуется выполнить обновление:
👉 Смотреть примечания к релизу
БЫСТРЫЕ ЛОКАЛЬНЫЕ ЦИКЛЫ РАЗРАБОТКИ #
Алекс Семин (Alex Semin) излагает планы Gradle по устранению узкого места фазы конфигурации в крупных проектах и объясняет, почему Configuration Cache станет стандартом по умолчанию в Gradle 10. В крупных проектах узкое место сместилось с выполнения на конфигурацию, и Configuration Cache вместе с экспериментальной функцией Isolated Projects напрямую борются с этим:
- Configuration Cache рассматривает конфигурацию как чистую функцию и кэширует результирующий граф задач. Сообщается, что после внедрения этот блок экономит около 4 инженерных лет ежегодно.
- Isolated Projects добавляет границы между подпроектами, позволяя выполнять конфигурацию параллельно, а при промахах кэша начинает работать кэширование для отдельных проектов. Бенчмарки показывают ускорение синхронизации Android Studio в 1,3–2,5 раза для сборок с 50–100 подпроектами.
- NowInAndroid теперь совместим с Isolated Projects, что является полезным доказательством того, что миграция возможна для реальных кодовых баз Android.
В пост также встроена оригинальная запись с конференции KotlinConf 2025 для тех, кто предпочитает видео.
👉 Читать пост
От Develocity #
DUCKDUCKGO СОКРАЩАЕТ ВРЕМЯ СБОРКИ НА 57% #
В новом тематическом исследовании, опубликованном в этом месяце, Android-команда DuckDuckGo подробно описала, как они использовали скрипты валидации сборки Develocity Build Validation Scripts для систематического поиска промахов кэша в сборке Android на 160 модулей. Скрипты валидации выявили три специфических класса проблем с отравлением кэша: различия в путях схем Room, недетерминизм Dagger и несовпадения кэширования CMake. Их исправление сократило время сборки в CI на величину до 57%.
👉 Читать пост
Предстоящие мероприятия #
Встречайтесь с командой Gradle и другими участниками сообщества на этих грядущих мероприятиях! Мы будем рады пообщаться с вами и обсудить любые вопросы, связанные с Gradle Build Tool, Develocity, разработкой инженерной продуктивности (DPE) или меняющимся влиянием искусственного интеллекта на разработку и поставку программного обеспечения.
- 3–4 июня — jPrime 2026 — София, Болгария. Болгарская JVM-конференция с сильным потоком по инструментам сборки и платформной инженерии.
- 3–4 июня — DevTalks Bucharest — Бухарест, Румыния. Широкая конференция разработчиков с активным потоком по JVM/Android.
- 17–19 июня — Devoxx Poland 2026 — Краков, Польша. Семипоточная конференция по Java/JVM; ожидается много материалов по Kotlin и инструментам сборки.
Расскажите друзьям #
Мы рекомендуем вам делиться интересными материалами из этой рассылки.
Найти этот и предыдущие выпуски можно в архиве рассылки Gradle Newsletter Archive или подписавшись по RSS.
Открыт прием заявок на доклады (Call for Proposals) для июньского выпуска!










