engine-whats-new

Erstellt die „What's new“-Release-Zusammenfassung und Diff-Datei für Änderungen im Flutter-Engine (//engine/src/flutter) zwischen zwei Releases (z. B. 3.47 vs. …)

npx skills add https://github.com/flutter/flutter --skill 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:

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:

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:

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.

Mehr Skills von flutter

dart-modern-features
flutter
Um Kandidaten für die Modernisierung zu finden:
flutter-fix-layout-issues
flutter
Behebt Flutter-Layout-Fehler (Überläufe, unbegrenzte Constraints) mit Dart und Flutter MCP Tools. Verwenden bei der Behebung von "RenderFlex overflowed", "Vertical…
adding-release-notes
flutter
Fügt benutzerseitige Änderungsbeschreibungen zu den DevTools-Versionshinweisen hinzu. Verwenden Sie dies, wenn Sie Verbesserungen, Fehlerbehebungen oder neue Funktionen in der Datei NEXT_RELEASE_NOTES.md dokumentieren.
reviewing-devtools-prs
flutter
DevTools-repositoriumspezifischer PR-Review-Workflow, der die DevTools-Stilrichtlinien und gängige Review-Muster durchsetzt. Verwenden Sie dies beim Überprüfen von Pull Requests im…
dart-use-primary-constructors
flutter
Helfen Sie Benutzern, syntaktisch und semantisch korrekte primäre Konstruktoren in Dart zu schreiben, und migrieren/verwenden Sie die neue Konstruktorsyntax, die Semikolon-Syntax mit leerem Körper, …
code-documentation
flutter
Leitfaden für das Schreiben effektiver Code-Dokumentation, einschließlich Docstrings, JSDoc, dartdoc und Implementierungskommentaren. Verwenden Sie diese Fähigkeit beim Schreiben von neuem Code, beim Hinzufügen…
api-review
flutter
Überprüft den angegebenen Code gegen die kanonischen API-Design-Richtlinien. Verwenden Sie dieses Skill, wenn der Benutzer eine API-Überprüfung anfordert oder Code gegen API-Design…
flutter-accessibility
flutter
Implementiert WCAG 2- und EN 301 549-Barrierefreiheitsstandards sowie adaptive Layouts in Flutter-Apps. Erzwingt semantische Annotationen, Mindestgrößen für Antippziele (48x48 dp) und Textkontrastverhältnisse (4,5:1 für kleinen Text, 3:1 für großen Text) auf mobilen, Web- und Desktop-Plattformen. Bietet Entscheidungslogik für die Initialisierung von Websemantik, das Umschließen interaktiver Widgets, bildschirmgrößenbasiertes Layout-Switching sowie Tastatur-/Mauseingabe-Handling. Enthält Fokus-Traversal-Management über FocusTraversalGroup und...