# Engine Whats New

> Generates the "what's new" release summary and diff file for changes in the Flutter engine (//engine/src/flutter) between two releases (e.g., 3.47 vs 3.44). When to use: - Only activate when explicitly asked by the user to generate what's new in the engine, diff Flutter engine releases, or produce an engine release summary. When not to use: - Do not use for general questions about commits, individual file history, or codebase searches unless explicitly requested to generate the engine release diff or summary.

- Skill: `flutter/engine-whats-new` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add flutter/engine-whats-new`
- Raw SKILL.md: https://api.skillmd.com/api/skills/flutter/engine-whats-new/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: flutter (https://skillmd.com/u/flutter)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/flutter/engine-whats-new

---


# Flutter Engine What's New & Diff Skill

## Workflow

### 1. Identify Inputs

Extract the following from the user's request:
* **Target Release (`<TARGET_RELEASE>`):** The Flutter release version to analyze (e.g., `3.47`, `3.47.0`, or `flutter-3.47-candidate.0`).
* **Base Release (`<BASE_RELEASE>`):** Optional. The prior Flutter release to compare against (e.g., `3.44`). If omitted by the user, the script will automatically calculate the predecessor release (e.g., for `3.47` it automatically selects `3.44`).

### 2. Run the Generator Tool

Execute the Dart script from the Flutter repository root:

```bash
dart .agents/skills/engine-whats-new/scripts/generate_engine_whats_new.dart --release <TARGET_RELEASE>
```

If the user specifies a custom base release or output paths:

```bash
dart .agents/skills/engine-whats-new/scripts/generate_engine_whats_new.dart --release <TARGET_RELEASE> --from <BASE_RELEASE> --output-diff engine_diff_<BASE_RELEASE>_to_<TARGET_RELEASE>.diff --output-summary engine_whats_new_<TARGET_RELEASE>.md
```

To output structured JSON for programmatic consumption:

```bash
dart .agents/skills/engine-whats-new/scripts/generate_engine_whats_new.dart --release <TARGET_RELEASE> --format json
```

### 3. Review Generated Artifacts & Present to User

The tool produces two primary artifacts in the repository root:
1. **Diff File (`engine_diff_<BASE_RELEASE>_to_<TARGET_RELEASE>.diff`):** The full unified git diff of all changes in //engine/src/flutter between the two releases.
2. **Summary Document (`engine_whats_new_<TARGET_RELEASE>.md`):** A categorized Markdown summary covering:
   * **Overview & Statistics:** Total engine commits, files changed, additions, and deletions.
   * **🚀 Impeller & Graphics Rendering:** Vulkan, Metal, OpenGL, shaders, and display list updates.
   * **🌐 Web Engine & Wasm:** Web SDK, CanvasKit, and WebAssembly changes.
   * **📱 Android Embedding:** Gradle/AGP updates, Android view rendering, and Java/Kotlin embedding changes.
   * **🍎 iOS & macOS Embeddings:** Darwin platform view lifecycle, Metal views, and macOS/iOS updates.
   * **🪟 Windows & Linux Desktop Embeddings:** Win32 compositor, Linux GTK embedding, and desktop shell fixes.
   * **🔤 Text, Typography & Accessibility:** Semantics, IME, font fallback, and text layout improvements.
   * **🔄 Dependency Rolls:** Skia, Dart SDK, ICU, HarfBuzz, and ANGLE rolls.
   * **🛠️ Build System, CI & Tooling:** GN build files, luci scripts, and testing utilities.

Provide the user with a concise overview of the results and links to the generated diff and markdown summary files.

## Examples

- **User:** "Generate what's new in the engine for Flutter 3.47."
- **Agent:**
  1. Identifies target release `3.47`.
  2. Runs `dart .agents/skills/engine-whats-new/scripts/generate_engine_whats_new.dart --release 3.47`.
  3. Reports the summary statistics (e.g., 354 commits, 1179 files changed) and shares the generated `engine_diff_3.44_to_3.47.diff` and `engine_whats_new_3.47.md`.

- **User:** "Diff the engine changes between Flutter 3.41 and 3.44."
- **Agent:**
  1. Identifies base release `3.41` and target release `3.44`.
  2. Runs `dart .agents/skills/engine-whats-new/scripts/generate_engine_whats_new.dart --from 3.41 --to 3.44`.
  3. Presents the breakdown of engine changes and the diff file.

