audit-dependencies

от flutter

Оптимизируйте размер и безопасность плагина, удаляя неиспользуемые зависимости и обновляя устаревшие библиотеки.

npx skills add https://github.com/flutter/flutter-intellij --skill audit-dependencies

Skill: Dependency & Library Audit

You are tasked with optimizing plugin size and security by removing unused dependencies and updating outdated libraries.

Objective

Optimize plugin size and security by removing unused dependencies and updating outdated libraries.

Workflow Instructions

1. Baseline

  • Run ./gradlew test and ./gradlew verifyPlugin to ensure the project is stable.

2. Audit build.gradle

  • Review dependencies {} block. Identify libraries that might no longer be used.

3. Check plugin.xml

  • Ensure all <depends> tags match actual API usage.

4. Update Versions

  • Check for newer stable versions of third-party libraries.

5. Remove Unused

  • Delete any local .jar files in lib/ that are not referenced or can be replaced by Maven coordinates.

6. Verify

  • Run ./gradlew buildPlugin and check the distribution size. Ensure the plugin still loads and functions correctly.
  • Run ./gradlew testClasses, ./gradlew test, and ./gradlew verifyPlugin to ensure no checking or runtime issues were introduced.
  • Suggest manual test steps: Check the code changes made and write test steps for a user to execute that will trigger the code paths that have changed. If needed, add logging statements to verify that the code paths have successfully run.

7. Report & Review

  • Summarize the dependencies removed or updated.
  • Test Location: Explicitly state where in the IDE the user should go to test the changed functionality (e.g., "Go to Preferences > Languages & Frameworks > Flutter").
  • Action: Ask the user to review the build.gradle changes closely.
  • Do not commit or push.
  • Provide a suggested Git commit message (e.g., "Cleanup: Remove unused dependency [Name]").

Больше 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
Специфичный для репозитория DevTools процесс ревью PR, обеспечивающий соблюдение стилевых рекомендаций DevTools и общих паттернов ревью. Используйте при ревью пул-реквестов в…
dart-use-primary-constructors
flutter
Помогите пользователям писать синтаксически и семантически корректные первичные конструкторы в Dart, а также мигрировать и использовать новый синтаксис конструкторов, синтаксис с пустым телом и точкой с запятой,…
code-documentation
flutter
Руководство по написанию эффективной документации кода, включая docstrings, JSDoc, dartdoc и комментарии к реализации. Используйте этот навык при написании нового кода, добавлении…
api-review
flutter
Проверяет указанный код на соответствие каноническим рекомендациям по проектированию API. Используйте этот навык, когда пользователь запрашивает ревью API или проверку кода на соответствие API design…
flutter-accessibility
flutter
We need to translate the given text from English to Russian, preserving the name "flutter-accessibility" if it appears. The text is a description of an agent skill. The instruction says: "Translate only the text inside <text>. Do not include the name unless it appears in the source text." The name "flutter-accessibility" does not appear in the source text provided. So we just translate the text. The text: "Implement WCAG 2 and EN 301 549 accessibility standards and adaptive layouts in Flutter apps. Enforces semantic annotations, tap target sizes (48x48 dp minimum), and text contrast ratios (4.5:1 for small text, 3:1 for large) across mobile, web, and desktop platforms Provides decision logic for web semantics initialization, interactive widget wrapping, screen-size-based layout switching, and keyboard/mouse input handling Includes focus traversal management via FocusTraversalGroup and..." We need to translate accurately, preserving technical terms like WCAG 2, EN 301 549, Flutter, dp, ratios, FocusTraversalGroup,