flutter / flutter/flutter-intellij
☂️ [verifier] output tracking (2025.2.3)
- Dominant language
- Java
- Stars
- 2k
- Forks
- 356
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 27
Description
# Plugin Verification Report
**Target IDE:** `AI-252.28238.7.2523.14688667`
## Deprecated API Usages (80)
### `com.intellij.execution.process.ProcessAdapter` (Class Reference)
- [x] https://github.com/flutter/flutter-intellij/pull/8765, https://github.com/flutter/flutter-intellij/pull/8779
- [x] `io.flutter.android.AndroidEmulator$1.`
- [x] `io.flutter.run.bazelTest.BazelTestRunner.Connector$1`
- [x] `io.flutter.run.daemon.DevToolsServerTask$2.`
- [x] `io.flutter.run.coverage.FlutterCoverageProgramRunner$1.`
- [x] `io.flutter.actions.OpenInAndroidStudioAction$1`
- [x] `io.flutter.sdk.FlutterSdk$1.`
- [x] `io.flutter.sdk.FlutterCommand$3`
- [x] `io.flutter.run.daemon.FlutterApp$2.`
- [x] `io.flutter.actions.OpenInXcodeAction$2`
- [x] `io.flutter.run.daemon.DevToolsServerTask$1.`
- [x] `io.flutter.actions.OpenInAndroidStudioAction$1.`
- [x] `io.flutter.console.FlutterConsole$1.`
- [x] `io.flutter.actions.OpenInAppCodeAction$2.`
- [x] `io.flutter.console.FlutterConsole$1`
- [x] `io.flutter.run.coverage.FlutterCoverageProgramRunner$1`
- [x] `io.flutter.actions.OpenInAppCodeAction$1`
- [x] `io.flutter.run.coverage.FlutterCoverageProgramRunner.listener`
- [x] `io.flutter.sdk.FlutterCommand$2.`
- [x] `io.flutter.run.daemon.FlutterApp$2`
- [x] `io.flutter.sdk.FlutterCommand$2`
- [x] `io.flutter.run.daemon.DevToolsServerTask$2`
- [x] `io.flutter.console.FlutterConsoleFilter.OpenExternalFileHyperlink$1.`
- [x] `io.flutter.console.FlutterConsole.watchProcess`
- [x] `io.flutter.android.AndroidSdk$1`
- [x] `io.flutter.actions.OpenInXcodeAction$2.`
- [x] `io.flutter.android.AndroidSdk$1.`
- [x] `io.flutter.android.AndroidEmulator$1`
- [x] `io.flutter.sdk.FlutterCommand$3.`
- [x] `io.flutter.console.FlutterConsole.lambda$watchProcess$0`
- [x] `io.flutter.actions.OpenInXcodeAction$1.`
- [x] `io.flutter.run.daemon.DevToolsServerTask$1`
- [x] `io.flutter.android.AndroidEmulator.listener`
- [x] `io.flutter.run.test.FlutterTestRunner.Connector$1.`
- [x] `io.flutter.actions.FlutterBuildActionGroup$1.`
- [x] `io.flutter.actions.OpenInAppCodeAction$2`
- [x] `io.flutter.run.daemon.DaemonApi$1`
- [x] `io.flutter.actions.FlutterBuildActionGroup$1`
- [x] `io.flutter.console.FlutterConsoleFilter.OpenExternalFileHyperlink$1`
- [x] `io.flutter.actions.OpenInAppCodeAction$1.`
- [x] `io.flutter.run.daemon.DaemonApi$1.`
- [x] `io.flutter.sdk.FlutterSdk$1`
- [x] `io.flutter.run.test.FlutterTestRunner.Connector$1`
- [x] `io.flutter.actions.OpenInXcodeAction$1`
- [x] `io.flutter.actions.FlutterBuildActionGroup.build`
### Other Deprecated APIs
- [ ] **Method Invocation:** `FilenameIndex.getFilesByName` in `io.flutter.run.FlutterPositionMapper`
- [ ] **Method Invocation:** `DumbService.runReadActionInSmartMode` in `io.flutter.font.FontPreviewProcessor` (3 usages)
- [ ] **Constructor:** `RunConfigurationProducer.(ConfigurationType)` in `FlutterRunConfigurationProducer`, `FlutterTestConfigProducer`, `BazelTestConfigProducer`
- [ ] **Method Invocation:** `UrlClassLoader.addFiles` in `io.flutter.utils.FileUtils`
- [x] **Method Invocation:** `TransactionGuard.submitTransaction` in `AndroidModuleLibraryManager`
- [ ] **Class Reference:** `ComboboxWithBrowseButton` in `io.flutter.module.FlutterGeneratorPeer` (5 usages)
- [ ] **Method Invocation:** `Application.addApplicationListener` in `io.flutter.jxbrowser.EmbeddedBrowserEngine`
- [ ] **Method Override:** `CoverageEngine.createCoverageSuite` in `io.flutter.run.coverage.FlutterCoverageEngine` (2 overrides)
- [ ] **Method Invocation:** `ReflectionUtil.getDeclaredMethod` in `AndroidEmulator`, `AndroidModuleLibraryManager`
- [ ] **Method Override:** `CoverageRunner.loadCoverageData` in `io.flutter.run.coverage.FlutterCoverageRunner`
- [ ] **Constructor:** `RunConfigurationProducer.(ConfigurationFactory)` in `io.flutter.run.bazelTest.BazelTestConfigProducer`
- [x] https://github.com/flutter/flutter-intellij/pull/8768
- [x] **Field Access:** `Charsets.UTF_8` in `DaemonApi`, `FlutterUtils`
- [ ] **Method Invocation:** `VirtualFileManager.addVirtualFileListener` in `AndroidModuleLibraryManager`, `FlutterPluginsLibraryManager`
- [ ] **Constructor:** `DartTemplateContextType.` in `io.flutter.template.DartToplevelTemplateContextType`
- [ ] **Method Override:** `ProjectManagerListener.projectOpened` in `io.flutter.project.FlutterProjectStructureDetector$1`
- [ ] **Interface Reference:** `DefaultLiveTemplatesProvider` in `io.flutter.template.FlutterLiveTemplatesProvider`
- [ ] **Method Invocation:** `ProjectTypeService.setProjectType` in `io.flutter.ProjectOpenActivity`
- [ ] **Method Invocation:** `ActionPlaces.isMainMenuOrActionSearch` in `io.flutter.run.FlutterPopFrameAction`
- [ ] **Constructor:** `BaseCoverageSuite.` in `io.flutter.run.coverage.FlutterCoverageSuite`
- [ ] **Constructor:** `CoverageEnabledConfiguration.` in `io.flutter.run.coverage.FlutterCoverageEnabledConfiguration`
- [ ] **Method Invocation:** `PropertiesComponent.setValues` in `io.flutter.sdk.FlutterSdkUtil`
- [x] https://github.com/flutter/flutter-intellij/pull/8769
- [x] **Method Invocation:** `JavaParserDefinition.createLexer` in `io.flutter.utils.AndroidUtils`
- [ ] **Constructor:** `SkipDefaultValuesSerializationFilters.` in `io.flutter.run.SdkRunConfig`
## Experimental API Usages (4)
- [x] https://github.com/flutter/flutter-intellij/pull/8767
- [x] **Class Reference:** `com.intellij.ui.BadgeIcon` in `io.flutter.toolwindow.ToolWindowBadgeUpdater` (2 usages)
- [x] **Constructor:** `BadgeIcon.` in `io.flutter.toolwindow.ToolWindowBadgeUpdater` (2 usages)
## Internal API Usages (37)
### 🔥 🔥 `ProjectImpl` / `ProjectManagerImpl` (Internal Classes)
- [x] https://github.com/flutter/flutter-intellij/pull/8778
- [x] Class Ref `ProjectImpl` in `AndroidModuleLibraryManager` (3 usages)
- [x] Constructor `ProjectImpl.` invoked in `AndroidModuleLibraryManager`
- [x] Method `ProjectImpl.isDisposed` invoked in `AndroidModuleLibraryManager`
- [x] Method `ProjectImpl.getLocationHash` overridden in `AndroidModuleLibraryManager`
- [x] Class Ref `ProjectManagerImpl` in `AndroidModuleLibraryManager`
(Note that this constructor is removed in 2026.1; we might see runtime `NoSuchMethodError`s if we don't fix.)
### `TestStateInfo.Magnitude` (Internal Enum)
- [ ] Field `COMPLETE_INDEX` in `TestLineMarkerContributor$1`
- [ ] Enum Reference in `TestLineMarkerContributor`
- [ ] Method `values()` in `TestLineMarkerContributor$1`
- [ ] Field `IGNORED_INDEX` in `TestLineMarkerContributor$1`
- [ ] Field `ERROR_INDEX` in `TestLineMarkerContributor$1`
- [ ] Field `PASSED_INDEX` in `TestLineMarkerContributor$1`
- [ ] Field `FAILED_INDEX` in `TestLineMarkerContributor$1`
### `CoverageEnabledConfiguration` (Internal Field/Method)
- [ ] Field `myCoverageFilePath` in `FlutterCoverageEnabledConfiguration` (3 usages)
- [ ] Method `coverageRunnerExtensionRemoved` overridden in `FlutterCoverageEnabledConfiguration`
- [ ] Method `coverageRunnerExtensionRemoved` invoked in `FlutterCoverageEnabledConfiguration`
### Coverage Engine Internals
- [ ] Method `CoverageEngine.coverageProjectViewStatisticsApplicableTo` overridden in `FlutterCoverageEngine`
- [ ] Method `SimpleCoverageAnnotator.getRoots` overridden in `FlutterCoverageAnnotator`
- [ ] Method `CoverageEngine.recompileProjectAndRerunAction` overridden in `FlutterCoverageEngine`
- [ ] Method `CoverageEngine.canHavePerTestCoverage` overridden in `FlutterCoverageEngine`
- [ ] Method `CoverageEngine.getQualifiedName` overridden in `FlutterCoverageEngine`
### Other Internal APIs
- [ ] **Class Ref:** `XDebugSessionImpl` in `io.flutter.vmService.VmServiceWrapper`
- [ ] **Method:** `XDebugSessionImpl.reset` in `io.flutter.vmService.VmServiceWrapper`
- [ ] **Method:** `UrlClassLoader.addFiles` in `io.flutter.utils.FileUtils`
- [x] **Class Ref:** `ComponentManagerImpl` in `AndroidModuleLibraryManager`
- [ ] **Method:** `Module.setModuleType` in `io.flutter.utils.FlutterModuleUtils`
- [ ] **Method:** `Module.getModuleFile` in `io.flutter.FlutterInitializer`
- [ ] **Method:** `NewProjectUtilKt.createNewProjectAsync` in `io.flutter.actions.FlutterNewProjectAction`
## Override-Only API Violations (5)
- [ ] 🛑 https://github.com/flutter/flutter-intellij/pull/8766 (incompatible w/ 2025.1.4.7 -- Narwhal)
- [ ] **Invoked:** `AnAction.update` in `NativeEditorNotificationProvider.NativeEditorActionsPanel`
- [ ] **Invoked:** `AnAction.update` in `FlutterRetargetAppAction`
- [ ] **Invoked:** `OpenInAndroidStudioAction.actionPerformed` in `OpenInAndroidStudioAction`
- [ ] **Invoked:** `AnAction.actionPerformed` in `FlutterRetargetAppAction`
- [ ] **Invoked:** `AnAction.actionPerformed` in `NativeEditorNotificationProvider.NativeEditorActionsPanel`
---
# 2026.1
Looking further ahead, 2026 has a handful of new violations. (The following is an incomplete list, culled manually from the marketplace report.)
## 🔥 Scheduled for removal API
- [x] https://github.com/flutter/flutter-intellij/pull/8774
- [x] `SystemInfo.getOsNameAndVersion() `(scheduled for removal in a future release)
- [x] Deprecated method `SystemInfo.getOsNameAndVersion()` is invoked in `JxBrowserUtils.getPlatformFileName()`.
- [x] Deprecated method `SystemInfo.getOsNameAndVersion()` is invoked in `JxBrowserManager.setUp(String)`.
- [x] Deprecated method `SystemInfo.getOsNameAndVersion()` is invoked in `DeviceDaemon.DaemonCrashReporter.()`.
- [x] https://github.com/flutter/flutter-intellij/pull/8775
- [x] `PluginId.findId(String[])` scheduled for removal in a future release)
- [x] Deprecated method `PluginId.findId(String[])` is invoked in `FlutterUtils.getPluginId()`. This method will be removed in a future release
- [x] https://github.com/flutter/flutter-intellij/pull/8776
- [x] `Messages.showIdeaMessageDialog(...)` (scheduled for removal in a future release)
- [x] Deprecated method `Messages.showIdeaMessageDialog(...)` is invoked in `FlutterMessages.showDialog(...)`.
- [ ] 🛑 `ProjectOpenProcessor.doOpenProject(...)` (scheduled for removal in a future release)
- [ ] Deprecated method `ProjectOpenProcessor.doOpenProject(...)` is overridden in class `FlutterProjectOpenProcessor.`
* Annoyingly this can't be removed as it's implementing an abstract method in the base class.
- [ ] `ProjectManagerListener.projectOpened(Project)` (scheduled for removal in a future release)
- [ ] Deprecated method `ProjectManagerListener.projectOpened(Project) `is overridden in class `FlutterProjectStructureDetector$1`
Contributor guide
Assessment
This issue has not been assessed yet.