engine-whats-new

โดย flutter

สร้างสรุป "what's new" สำหรับรีลีสและไฟล์ diff สำหรับการเปลี่ยนแปลงใน Flutter engine (//engine/src/flutter) ระหว่างสองรีลีส (เช่น 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.

Skills เพิ่มเติมจาก flutter

dart-modern-features
flutter
เพื่อหาผู้สมัครสำหรับการปรับปรุงให้ทันสมัย:
flutter-fix-layout-issues
flutter
แก้ไขข้อผิดพลาดการจัดวาง Flutter (โอเวอร์โฟลว์, ข้อจำกัดที่ไม่มีขอบเขต) โดยใช้เครื่องมือ Dart และ Flutter MCP ใช้เมื่อจัดการกับ "RenderFlex overflowed", "Vertical…
adding-release-notes
flutter
เพิ่มคำอธิบายการเปลี่ยนแปลงที่ผู้ใช้เห็นลงในบันทึกประจำรุ่นของ DevTools ใช้เมื่อบันทึกการปรับปรุง การแก้ไข หรือฟีเจอร์ใหม่ในไฟล์ NEXT_RELEASE_NOTES.md
reviewing-devtools-prs
flutter
เวิร์กโฟลว์การรีวิว PR เฉพาะคลังของ DevTools ที่บังคับใช้แนวทางสไตล์ของ DevTools และรูปแบบการรีวิวทั่วไป ใช้เมื่อรีวิว pull requests ใน...
dart-use-primary-constructors
flutter
ช่วยให้ผู้ใช้เขียนคอนสตรักเตอร์หลักใน Dart ที่ถูกต้องทั้งทางไวยากรณ์และความหมาย และย้าย/ใช้งานไวยากรณ์คอนสตรักเตอร์แบบใหม่ ไวยากรณ์เซมิโคลอนแบบไม่มีเนื้อหา…
code-documentation
flutter
คู่มือสำหรับการเขียนเอกสารประกอบโค้ดอย่างมีประสิทธิภาพ รวมถึง docstrings, JSDoc, dartdoc และคอมเมนต์การใช้งาน ใช้ทักษะนี้เมื่อเขียนโค้ดใหม่ เพิ่มเติม…
api-review
flutter
ตรวจสอบโค้ดที่ระบุเทียบกับแนวทาง API Design มาตรฐาน ใช้สกิลนี้เมื่อผู้ใช้ขอให้รีวิว API หรือตรวจสอบโค้ดตามแนวทาง API design…
flutter-accessibility
flutter
ใช้มาตรฐานการเข้าถึง WCAG 2 และ EN 301 549 รวมถึงเลย์เอาต์แบบปรับเปลี่ยนได้ในแอป Flutter บังคับใช้คำอธิบายเชิงความหมาย ขนาดเป้าหมายการแตะ (ขั้นต่ำ 48x48 dp) และอัตราส่วนความคมชัดของข้อความ (4.5:1 สำหรับข้อความขนาดเล็ก, 3:1 สำหรับข้อความขนาดใหญ่) บนแพลตฟอร์มมือถือ เว็บ และเดสก์ท็อป มีตรรกะการตัดสินใจสำหรับการเริ่มต้นความหมายบนเว็บ การห่อวิดเจ็ตแบบโต้ตอบ การสลับเลย์เอาต์ตามขนาดหน้าจอ และการจัดการอินพุตคีย์บอร์ด/เมาส์ รวมถึงการจัดการการนำทางโฟกัสผ่าน FocusTraversalGroup และ...