remove-platform-version

Entferne die Unterstützung für eine ältere IntelliJ Platform / Android Studio Version aus dem Projekt und bereinige veralteten Code, Baselines und CI-Konfigurationen.

npx skills add https://github.com/flutter/flutter-intellij --skill remove-platform-version

Skill: Remove Platform Version Support

You are tasked with removing support for an older IntelliJ Platform or Android Studio version (e.g., dropping support for 2025.1 / build 251 and raising the lower bound to 2025.2 / build 252).

Objective

Systematically update compatibility ranges, clean up CI verification loops and baseline files, identify and remove obsolete compatibility code or TODOs, check repository issues, and update documentation.


Workflow Instructions

1. Establish Baseline & Identify Target Version

  • Identify the build number being removed (e.g., 251 for 2025.1) and the new lower bound (e.g., 252 for 2025.2).
  • Run ./gradlew testClasses to ensure the project compiles before making changes.

2. Update Compatibility Lower Bound (gradle.properties)

  • Open gradle.properties.
  • Update sinceBuild=<version> to the new lower bound build number (e.g., change sinceBuild=251 to sinceBuild=252).

3. Update CI Verification Script (tool/github.sh)

  • Open tool/github.sh.
  • Locate the VERIFY_BOT verification loop (for version in ...; do).
  • Remove the dropped version number from the list so that ./gradlew verifyPlugin is only run against active versions in the compatibility range.

4. Remove Obsolete Verifier Baseline (tool/baseline/)

  • Check tool/baseline/<version>/ for the removed version directory.
  • Remove the directory and baseline file (e.g., using git rm -r tool/baseline/<version>) so baseline update scripts (tool/update_baselines.sh) do not attempt to verify unsupported versions.

5. Search & Remove Obsolete Code and TODOs

  • Search Codebase: Grep src/ for references to the removed build number or version string (e.g., 251, 2025.1).
  • Check Version Checks: Look for version-specific branches or workarounds (such as in DartPluginVersion.java or UI compatibility shims) that check for the removed version and simplify or remove dead code paths.
  • Check TODOs: Look for comments like TODO: remove when dropping support for <version> or similar workarounds that can now be cleaned up.

6. Search Repository Issues

  • Search repository issues (via GitHub issue search or issue tracker) for issues related to dropping or moving off the removed version (e.g., repo:flutter/flutter-intellij <version> or platform compatibility issues).
  • Check if any open issues or tracked technical debt items specify code deletions or cleanup steps upon dropping support for that version, and implement any applicable cleanups.

7. Update Changelog

  • CHANGELOG.md: Under the ### Removed section, add an entry documenting the removal (e.g., - Support for platform version 2025.1.).
  • Note: Do not modify docs/building.md. Its version examples are illustrative and should not be updated when removing a platform version.

8. Verify & Validate

  • Run ./gradlew testClasses to verify compilation.
  • Run ./gradlew test to verify unit tests pass.
  • Run ./gradlew verifyPlugin to verify that plugin verification succeeds against the new compatibility range.

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...