Posted on

dejavu

A lightweight framework for tracking and asserting against Jetpack Compose recompositions.

https://dejavu.mmckenna.me

https://github.com/himattm/dejavu

Dejavu is a test-only library that turns recomposition behavior into assertions. Tag your composables with standard Modifier.testTag(), write expectations against recomposition counts, and get structured diagnostics when something changes — whether from a teammate, a library upgrade, an AI agent rewriting your UI code, or a refactor that silently destabilizes a lambda.

  • Zero production code changes — just Modifier.testTag()
  • One-line test setup — createRecompositionTrackingRule()
  • Rich diagnostics — source location, recomposition timeline, parameter diffs, causality analysis
  • Per-instance tracking — multiple instances of the same composable get independent counters

Posted on

Compose hot reload

https://github.com/JetBrains/compose-hot-reload/releases/tag/v1.2.0-alpha01

This release introduces a brand-new Model Context Protocol (MCP) server that enables AI agents to interact with a running Compose application in real time.

В выпуске v1.2.0-alpha01 представлен новый сервер Model Context Protocol (MCP), который позволяет агентам ИИ взаимодействовать с запущенным приложением Compose в режиме реального времени. Сервер предоставляет различные инструменты, например:

  • status — получение текущего статуса приложения; 1
  • take_screenshot — создание снимка экрана; 2
  • get_semantic_tree — просмотр дерева компонентов пользовательского интерфейса; 3
  • click и long_click — щелчок и длительное нажатие на элемент интерфейса; 4
  • type_text — замена содержимого текстового поля; 5
  • scroll и scroll_to_index — прокрутка внутри прокручиваемого компонента. 6

Сервер подключается к уровню оркестрации горячей перезагрузки и запускается с помощью задачи hotMcpServer Gradle. JetBrains Runtime 25 теперь используется как версия JBR по умолчанию для горячей перезагрузки. Также внесены изменения в инструменты разработчика и Gradle.

Posted on

Media3 1.8.0 – What’s new?

Media3 1.8.0 – Что нового?
https://android-developers.googleblog.com/2025/08/media3-180-whats-new.html

  • Media3 1.8.0 включает исправления ошибок, улучшения производительности и новые функции.
  • Добавлен режим очистки в ExoPlayer для оптимизации производительности.
  • Интегрировано повторное использование поиска во время очистки с выключенным режимом очистки.
  • Расширена поддержка прямых трансляций рекламы с использованием сервера (SGAI).
  • Получатель метаданных обновлен для извлечения длительности мультимедийных элементов без воспроизведения.
  • Внесены улучшения и исправления ошибок в ExoPlayer и связанных с воспроизведением компонентах.
  • Обновлены уведомления для медиасеансов для улучшения настроек уведомлений по умолчанию.
  • Добавлена поддержка обрезки с использованием списков редактирования MP4 для ускорения операций обрезки.
  • Оптимизация для конкретного набора микросхем с использованием CodecDbLite для максимального качества видео.
  • Обновлено демонстрационное приложение для создания композиции на Kotlin и Compose.