diff --git a/third_party/gradlew.bat b/third_party/gradlew.bat index aa5f10b06..24c62d56f 100644 --- a/third_party/gradlew.bat +++ b/third_party/gradlew.bat @@ -1,82 +1,82 @@ -@rem -@rem Copyright 2015 the original author or authors. -@rem -@rem Licensed under the Apache License, Version 2.0 (the "License"); -@rem you may not use this file except in compliance with the License. -@rem You may obtain a copy of the License at -@rem -@rem https://www.apache.org/licenses/LICENSE-2.0 -@rem -@rem Unless required by applicable law or agreed to in writing, software -@rem distributed under the License is distributed on an "AS IS" BASIS, -@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -@rem See the License for the specific language governing permissions and -@rem limitations under the License. -@rem -@rem SPDX-License-Identifier: Apache-2.0 -@rem - -@if "%DEBUG%"=="" @echo off -@rem ########################################################################## -@rem -@rem Gradle startup script for Windows -@rem -@rem ########################################################################## - -@rem Set local scope for the variables, and ensure extensions are enabled -setlocal EnableExtensions - -set DIRNAME=%~dp0 -if "%DIRNAME%"=="" set DIRNAME=. -@rem This is normally unused -set APP_BASE_NAME=%~n0 -set APP_HOME=%DIRNAME% - -@rem Resolve any "." and ".." in APP_HOME to make it shorter. -for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi - -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" - -@rem Find java.exe -if defined JAVA_HOME goto findJavaFromJavaHome - -set JAVA_EXE=java.exe -%JAVA_EXE% -version >NUL 2>&1 -if %ERRORLEVEL% equ 0 goto execute - -echo. 1>&2 -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 -echo. 1>&2 -echo Please set the JAVA_HOME variable in your environment to match the 1>&2 -echo location of your Java installation. 1>&2 - -"%COMSPEC%" /c exit 1 - -:findJavaFromJavaHome -set JAVA_HOME=%JAVA_HOME:"=% -set JAVA_EXE=%JAVA_HOME%/bin/java.exe - -if exist "%JAVA_EXE%" goto execute - -echo. 1>&2 -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 -echo. 1>&2 -echo Please set the JAVA_HOME variable in your environment to match the 1>&2 -echo location of your Java installation. 1>&2 - -"%COMSPEC%" /c exit 1 - -:execute -@rem Setup the command line - - - -@rem Execute Gradle -@rem endlocal doesn't take effect until after the line is parsed and variables are expanded -@rem which allows us to clear the local environment before executing the java command -endlocal & "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* & call :exitWithErrorLevel - -:exitWithErrorLevel -@rem Use "%COMSPEC%" /c exit to allow operators to work properly in scripts -"%COMSPEC%" /c exit %ERRORLEVEL% +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables, and ensure extensions are enabled +setlocal EnableExtensions + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +"%COMSPEC%" /c exit 1 + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +"%COMSPEC%" /c exit 1 + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +@rem endlocal doesn't take effect until after the line is parsed and variables are expanded +@rem which allows us to clear the local environment before executing the java command +endlocal & "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* & call :exitWithErrorLevel + +:exitWithErrorLevel +@rem Use "%COMSPEC%" /c exit to allow operators to work properly in scripts +"%COMSPEC%" /c exit %ERRORLEVEL% diff --git a/third_party/src/main/java/com/jetbrains/lang/dart/ide/runner/server/ui/DartRemoteDebugConfigurationEditor.form b/third_party/src/main/java/com/jetbrains/lang/dart/ide/runner/server/ui/DartRemoteDebugConfigurationEditor.form index 95e035c0f..6ca16b20f 100644 --- a/third_party/src/main/java/com/jetbrains/lang/dart/ide/runner/server/ui/DartRemoteDebugConfigurationEditor.form +++ b/third_party/src/main/java/com/jetbrains/lang/dart/ide/runner/server/ui/DartRemoteDebugConfigurationEditor.form @@ -31,7 +31,7 @@ - + diff --git a/third_party/src/main/java/com/jetbrains/lang/dart/ide/runner/server/ui/DartRemoteDebugConfigurationEditor.java b/third_party/src/main/java/com/jetbrains/lang/dart/ide/runner/server/ui/DartRemoteDebugConfigurationEditor.java index 53b84e3fc..ab33e4fcc 100644 --- a/third_party/src/main/java/com/jetbrains/lang/dart/ide/runner/server/ui/DartRemoteDebugConfigurationEditor.java +++ b/third_party/src/main/java/com/jetbrains/lang/dart/ide/runner/server/ui/DartRemoteDebugConfigurationEditor.java @@ -1,11 +1,13 @@ // Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. package com.jetbrains.lang.dart.ide.runner.server.ui; +import com.intellij.openapi.application.ModalityState; +import com.intellij.openapi.application.ReadAction; import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory; import com.intellij.openapi.options.SettingsEditor; +import com.intellij.openapi.progress.ProgressManager; import com.intellij.openapi.project.Project; import com.intellij.openapi.roots.ProjectRootManager; -import com.intellij.openapi.ui.TextComponentAccessor; import com.intellij.openapi.util.io.FileUtil; import com.intellij.openapi.vfs.LocalFileSystem; import com.intellij.openapi.vfs.VirtualFile; @@ -13,12 +15,14 @@ import com.intellij.psi.search.FilenameIndex; import com.intellij.psi.search.GlobalSearchScope; import com.intellij.psi.search.GlobalSearchScopesCore; -import com.intellij.ui.ComboboxWithBrowseButton; import com.intellij.ui.SimpleListCellRenderer; import com.intellij.ui.components.JBLabel; +import com.intellij.util.concurrency.AppExecutorUtil; +import com.jetbrains.lang.dart.DartBundle; import com.jetbrains.lang.dart.DartFileType; import com.jetbrains.lang.dart.ide.runner.server.DartRemoteDebugConfiguration; import com.jetbrains.lang.dart.ide.runner.server.DartRemoteDebugParameters; +import com.jetbrains.lang.dart.ui.BasicComboBoxWithBrowseButton; import com.jetbrains.lang.dart.util.PubspecYamlUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -32,50 +36,55 @@ public class DartRemoteDebugConfigurationEditor extends SettingsEditor { private JPanel myMainPanel; - private ComboboxWithBrowseButton myDartProjectCombo; + private BasicComboBoxWithBrowseButton myDartProjectCombo; private JBLabel myHintLabel; + private final Project myProject; private final SortedSet myComboItems = new TreeSet<>(); public DartRemoteDebugConfigurationEditor(final @NotNull Project project) { + myProject = project; + myDartProjectCombo.addBrowseFolderListener(DartBundle.message("button.browse.dialog.title.select.dart.project.path"), + myProject, + FileChooserDescriptorFactory.createSingleFolderDescriptor() + .withTitle(DartBundle.message("button.browse.dialog.title.select.dart.project.path")), + this::resolveNameAndPath, + this::applySelectedProjectPath); initDartProjectsCombo(project); myHintLabel.setCopyable(true); } private void initDartProjectsCombo(final @NotNull Project project) { - myDartProjectCombo.getComboBox().setRenderer(SimpleListCellRenderer.create("", NameAndPath::getPresentableText)); + myDartProjectCombo.setRenderer(SimpleListCellRenderer.create("", NameAndPath::getPresentableText)); - if (!project.isDefault()) { + if (project.isDefault()) return; + + ReadAction.nonBlocking(() -> { + SortedSet items = new TreeSet<>(); for (VirtualFile pubspecFile : FilenameIndex.getVirtualFilesByName(PUBSPEC_YAML, GlobalSearchScope.projectScope(project))) { - myComboItems.add(new NameAndPath(PubspecYamlUtil.getDartProjectName(pubspecFile), pubspecFile.getParent().getPath())); + ProgressManager.checkCanceled(); + items.add(new NameAndPath(PubspecYamlUtil.getDartProjectName(pubspecFile), pubspecFile.getParent().getPath())); } - if (myComboItems.isEmpty()) { + if (items.isEmpty()) { for (VirtualFile contentRoot : ProjectRootManager.getInstance(project).getContentRoots()) { + ProgressManager.checkCanceled(); if (FileTypeIndex.containsFileOfType(DartFileType.INSTANCE, GlobalSearchScopesCore.directoryScope(project, contentRoot, true))) { - myComboItems.add(new NameAndPath(null, contentRoot.getPath())); + items.add(new NameAndPath(null, contentRoot.getPath())); } } } - } - - myDartProjectCombo.getComboBox().setModel(new DefaultComboBoxModel<>(myComboItems.toArray())); - - myDartProjectCombo.addBrowseFolderListener( - project, - FileChooserDescriptorFactory.createSingleFolderDescriptor(), - new TextComponentAccessor<>() { - @Override - public String getText(final JComboBox combo) { - final Object item = combo.getSelectedItem(); - return item instanceof NameAndPath ? ((NameAndPath)item).myPath : ""; - } - - @Override - public void setText(final JComboBox combo, final @NotNull String path) { - setSelectedProjectPath(FileUtil.toSystemIndependentName(path)); + return items; + }) + .finishOnUiThread(ModalityState.any(), items -> { + final Object selectedItem = myDartProjectCombo.getSelectedItem(); + myComboItems.addAll(items); + myDartProjectCombo.setModel(new DefaultComboBoxModel<>(myComboItems.toArray(NameAndPath[]::new))); + if (selectedItem != null) { + myDartProjectCombo.setSelectedItem(selectedItem); } - }); + }) + .submit(AppExecutorUtil.getAppExecutorService()); } @Override @@ -92,23 +101,34 @@ protected void resetEditorFrom(final @NotNull DartRemoteDebugConfiguration confi private void setSelectedProjectPath(final @NotNull String projectPath) { if (projectPath.isEmpty()) return; + ReadAction.nonBlocking(() -> resolveNameAndPath(projectPath)) + .finishOnUiThread(ModalityState.any(), this::applySelectedProjectPath) + .submit(AppExecutorUtil.getAppExecutorService()); + } + + private @NotNull NameAndPath resolveNameAndPath(final @NotNull String projectPath) { final VirtualFile pubspecFile = LocalFileSystem.getInstance().findFileByPath(projectPath + "/" + PUBSPEC_YAML); final String projectName = pubspecFile == null ? null : PubspecYamlUtil.getDartProjectName(pubspecFile); - final NameAndPath item = new NameAndPath(projectName, projectPath); + return new NameAndPath(projectName, projectPath); + } + private void applySelectedProjectPath(final @NotNull NameAndPath item) { if (!myComboItems.contains(item)) { myComboItems.add(item); - myDartProjectCombo.getComboBox().setModel(new DefaultComboBoxModel(myComboItems.toArray())); + myDartProjectCombo.setModel(new DefaultComboBoxModel<>(myComboItems.toArray(NameAndPath[]::new))); } - - myDartProjectCombo.getComboBox().setSelectedItem(item); + myDartProjectCombo.setSelectedItem(item); } @Override protected void applyEditorTo(final @NotNull DartRemoteDebugConfiguration config) { final DartRemoteDebugParameters params = config.getParameters(); - final Object selectedItem = myDartProjectCombo.getComboBox().getSelectedItem(); - params.setDartProjectPath(selectedItem instanceof NameAndPath ? ((NameAndPath)selectedItem).myPath : ""); + final Object selectedItem = myDartProjectCombo.getSelectedItem(); + params.setDartProjectPath(selectedItem == null ? "" : selectedItem.toString().trim()); + } + + private void createUIComponents() { + myDartProjectCombo = new BasicComboBoxWithBrowseButton<>(); } private static class NameAndPath implements Comparable { @@ -126,7 +146,7 @@ public String getPresentableText() { @Override public String toString() { - return getPresentableText(); + return myPath; } @Override diff --git a/third_party/src/main/java/com/jetbrains/lang/dart/projectWizard/DartGeneratorPeer.form b/third_party/src/main/java/com/jetbrains/lang/dart/projectWizard/DartGeneratorPeer.form index 556e7e6c3..9c21a6f39 100644 --- a/third_party/src/main/java/com/jetbrains/lang/dart/projectWizard/DartGeneratorPeer.form +++ b/third_party/src/main/java/com/jetbrains/lang/dart/projectWizard/DartGeneratorPeer.form @@ -25,7 +25,7 @@ - + diff --git a/third_party/src/main/java/com/jetbrains/lang/dart/projectWizard/DartGeneratorPeer.java b/third_party/src/main/java/com/jetbrains/lang/dart/projectWizard/DartGeneratorPeer.java index 0001b0c28..71acf4257 100644 --- a/third_party/src/main/java/com/jetbrains/lang/dart/projectWizard/DartGeneratorPeer.java +++ b/third_party/src/main/java/com/jetbrains/lang/dart/projectWizard/DartGeneratorPeer.java @@ -4,8 +4,10 @@ import com.intellij.icons.AllIcons; import com.intellij.ide.util.PropertiesComponent; import com.intellij.ide.util.projectWizard.SettingsStep; +import com.intellij.openapi.Disposable; import com.intellij.openapi.application.ApplicationManager; -import com.intellij.openapi.ui.ComboBox; +import com.intellij.openapi.application.ModalityState; +import com.intellij.openapi.application.ReadAction; import com.intellij.openapi.ui.TextFieldWithBrowseButton; import com.intellij.openapi.ui.ValidationInfo; import com.intellij.openapi.util.Disposer; @@ -14,18 +16,18 @@ import com.intellij.openapi.util.text.HtmlChunk; import com.intellij.openapi.util.text.StringUtil; import com.intellij.platform.ProjectGeneratorPeer; -import com.intellij.platform.WebProjectGenerator; import com.intellij.ui.ColorUtil; -import com.intellij.ui.ComboboxWithBrowseButton; import com.intellij.ui.DocumentAdapter; import com.intellij.ui.JBColor; import com.intellij.ui.components.JBCheckBox; import com.intellij.ui.components.JBLabel; import com.intellij.ui.components.JBList; import com.intellij.uiDesigner.core.GridConstraints; +import com.intellij.util.concurrency.AppExecutorUtil; import com.intellij.util.ui.AsyncProcessIcon; import com.jetbrains.lang.dart.DartBundle; import com.jetbrains.lang.dart.sdk.DartSdkUtil; +import com.jetbrains.lang.dart.ui.BasicComboBoxWithBrowseButton; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -36,12 +38,12 @@ import java.util.List; import java.util.stream.IntStream; -public class DartGeneratorPeer implements ProjectGeneratorPeer { +public class DartGeneratorPeer implements ProjectGeneratorPeer, Disposable { private static final String DART_PROJECT_TEMPLATE = "DART_PROJECT_TEMPLATE"; private static final String CREATE_SAMPLE_UNCHECKED = "CREATE_SAMPLE_UNCHECKED"; private JPanel myMainPanel; - private ComboboxWithBrowseButton mySdkPathComboWithBrowse; + private BasicComboBoxWithBrowseButton mySdkPathComboWithBrowse; private JBLabel myVersionLabel; private JPanel myTemplatesPanel; @@ -56,17 +58,20 @@ public class DartGeneratorPeer implements ProjectGeneratorPeer myDartCreateTemplates;// not-null means that it's been already calculated - private String myDartCreateTemplatesSdkPath; //used to expire the above cache if the sdk is changed an alternative would be to use the same cache method as com.jetbrains.lang.dart.sdk.DartSdkUtil.getSdkVersion + private String myDartCreateTemplatesSdkPath; //used to expire the above cache if the sdk is changed + + private String mySdkPathValidationError; public DartGeneratorPeer() { // set initial values before initDartSdkControls() because listeners should not be triggered on initialization - mySdkPathComboWithBrowse.getComboBox().setEditable(true); - //mySdkPathComboWithBrowse.getComboBox().getEditor().setItem(...); initial sdk path will be correctly taken from known paths history + mySdkPathComboWithBrowse.setEditable(true); // now setup controls - DartSdkUtil.initDartSdkControls(null, mySdkPathComboWithBrowse, myVersionLabel); + DartSdkUtil.initDartSdkControls(null, mySdkPathComboWithBrowse, myVersionLabel, this); - myCreateSampleProjectCheckBox.addActionListener(e -> myTemplatesList.setEnabled(myCreateSampleProjectCheckBox.isSelected())); + myCreateSampleProjectCheckBox.addActionListener(e -> { + myTemplatesList.setEnabled(myCreateSampleProjectCheckBox.isSelected()); + }); String selectedTemplateName = PropertiesComponent.getInstance().getValue(DART_PROJECT_TEMPLATE); myCreateSampleProjectCheckBox.setSelected(!CREATE_SAMPLE_UNCHECKED.equals(selectedTemplateName)); @@ -92,56 +97,62 @@ public Component getListCellRendererComponent(JList list, Object value, int inde myCreateSampleProjectCheckBox.setEnabled(false); myTemplatesList.setEnabled(false); - final JTextComponent editorComponent = (JTextComponent)mySdkPathComboWithBrowse.getComboBox().getEditor().getEditorComponent(); - editorComponent.getDocument().addDocumentListener(new DocumentAdapter() { + final JTextComponent editorComponent = (JTextComponent)mySdkPathComboWithBrowse.getEditor().getEditorComponent(); + final DocumentAdapter listener = new DocumentAdapter() { @Override protected void textChanged(final @NotNull DocumentEvent e) { - if(e.getType() == DocumentEvent.EventType.INSERT){ - onSdkPathChanged(); - } + onSdkPathChanged(); } - }); + }; + editorComponent.getDocument().addDocumentListener(listener); + Disposer.register(this, () -> editorComponent.getDocument().removeDocumentListener(listener)); onSdkPathChanged(); } private void onSdkPathChanged() { - String sdkPath = mySdkPathComboWithBrowse.getComboBox().getEditor().getItem().toString().trim(); + final String sdkPath = mySdkPathComboWithBrowse.getEditor().getItem().toString().trim(); // If the sdk path has changed, recalculate the create template options if (myDartCreateTemplatesSdkPath != null && !myDartCreateTemplatesSdkPath.equals(sdkPath)) { clearTemplates(); } - String errorMessage = DartSdkUtil.getErrorMessageIfWrongSdkRootPath(sdkPath); - if (errorMessage != null) { - clearTemplates(); - return; - } - if (myDartCreateCalcStarted) { - if (myDartCreateTemplates != null) { - showTemplates(myDartCreateTemplates); - } - else { - // Calculation in progress, just wait. - myLoadingTemplatesPanel.setVisible(true); - myLoadedTemplatesPanel.setVisible(false); - } - } - else { - myDartCreateCalcStarted = true; - startLoadingTemplates(); - } + ReadAction.nonBlocking(() -> DartSdkUtil.getErrorMessageIfWrongSdkRootPath(sdkPath)) + .finishOnUiThread(ModalityState.any(), errorMessage -> { + mySdkPathValidationError = errorMessage; + if (myIntellijLiveValidationEnabled) { + validateInIntelliJ(); + } + + if (errorMessage != null) { + clearTemplates(); + return; + } + + if (myDartCreateCalcStarted) { + if (myDartCreateTemplates != null) { + showTemplates(myDartCreateTemplates); + } + else { + // Calculation in progress, just wait. + myLoadingTemplatesPanel.setVisible(true); + myLoadedTemplatesPanel.setVisible(false); + } + } + else { + myDartCreateCalcStarted = true; + startLoadingTemplates(); + } + }) + .submit(AppExecutorUtil.getAppExecutorService()); } - // Clears myTemplateList which is required when an invalid Dart SDK directory - // is selected private void clearTemplates() { myDartCreateTemplates = null; myDartCreateTemplatesSdkPath = null; myDartCreateCalcStarted = false; myLoadingTemplatesPanel.setVisible(false); - // myLoadedTemplatesPanel should be visible to show the default text myLoadedTemplatesPanel.setVisible(true); myCreateSampleProjectCheckBox.setEnabled(false); myTemplatesList.setEnabled(false); @@ -155,23 +166,26 @@ private void startLoadingTemplates() { myLoadedTemplatesPanel.setVisible(false); final AsyncProcessIcon asyncProcessIcon = new AsyncProcessIcon("Dart project templates loading"); - myLoadingTemplatesPanel.add(asyncProcessIcon, new GridConstraints()); // defaults are ok: row = 0, column = 0 + myLoadingTemplatesPanel.add(asyncProcessIcon, new GridConstraints());// defaults are ok: row = 0, column = 0 asyncProcessIcon.resume(); + final String comboSdkPath = mySdkPathComboWithBrowse.getEditor().getItem().toString().trim(); + final String sdkPath = FileUtil.toSystemIndependentName(comboSdkPath); + ApplicationManager.getApplication().executeOnPooledThread(() -> { - final String comboSdkPath = mySdkPathComboWithBrowse.getComboBox().getEditor().getItem().toString().trim(); - final String sdkPath = - FileUtil.toSystemIndependentName(comboSdkPath); DartProjectTemplate.loadTemplatesAsync(sdkPath, templates -> { - asyncProcessIcon.suspend(); - myLoadingTemplatesPanel.remove(asyncProcessIcon); - Disposer.dispose(asyncProcessIcon); + ApplicationManager.getApplication().invokeLater(() -> { + asyncProcessIcon.suspend(); + myLoadingTemplatesPanel.remove(asyncProcessIcon); + Disposer.dispose(asyncProcessIcon); - myDartCreateTemplates = templates; - myDartCreateTemplatesSdkPath = comboSdkPath; + myDartCreateTemplates = templates; + myDartCreateTemplatesSdkPath = comboSdkPath; - // it's better to call onSdkPathChanged() but not showTemplates() directly as sdk path could have been changed during this long calculation - onSdkPathChanged(); + // it's better to call onSdkPathChanged() but not showTemplates() + // directly as sdk path could have been changed during this long calculation + onSdkPathChanged(); + }, ModalityState.any()); }); }); } @@ -183,6 +197,7 @@ private void showTemplates(final List templates) { currentModel.getSize() == templates.size() && IntStream.range(0, templates.size()).allMatch(i -> templates.get(i).getName().equals(currentModel.getElementAt(i).getName()))) { // already showing the right list + return; } @@ -236,7 +251,7 @@ public void buildUI(final @NotNull SettingsStep settingsStep) { @Override public @NotNull DartProjectWizardData getSettings() { - final String sdkPath = FileUtil.toSystemIndependentName(mySdkPathComboWithBrowse.getComboBox().getEditor().getItem().toString().trim()); + final String sdkPath = FileUtil.toSystemIndependentName(mySdkPathComboWithBrowse.getEditor().getItem().toString().trim()); final DartProjectTemplate template = myCreateSampleProjectCheckBox.isSelected() ? myTemplatesList.getSelectedValue() : null; PropertiesComponent.getInstance().setValue(DART_PROJECT_TEMPLATE, template == null ? CREATE_SAMPLE_UNCHECKED : template.getName()); @@ -245,10 +260,8 @@ public void buildUI(final @NotNull SettingsStep settingsStep) { @Override public @Nullable ValidationInfo validate() { - final String sdkPath = mySdkPathComboWithBrowse.getComboBox().getEditor().getItem().toString().trim(); - final String message = DartSdkUtil.getErrorMessageIfWrongSdkRootPath(sdkPath); - if (message != null) { - return new ValidationInfo(message, mySdkPathComboWithBrowse); + if (mySdkPathValidationError != null) { + return new ValidationInfo(mySdkPathValidationError, mySdkPathComboWithBrowse); } if (myCreateSampleProjectCheckBox.isSelected()) { @@ -284,16 +297,17 @@ public boolean validateInIntelliJ() { } private void enableIntellijLiveValidation() { - final JTextComponent editorComponent = (JTextComponent)mySdkPathComboWithBrowse.getComboBox().getEditor().getEditorComponent(); - editorComponent.getDocument().addDocumentListener(new DocumentAdapter() { + final JTextComponent editorComponent = (JTextComponent)mySdkPathComboWithBrowse.getEditor().getEditorComponent(); + final DocumentAdapter listener = new DocumentAdapter() { @Override protected void textChanged(final @NotNull DocumentEvent e) { validateInIntelliJ(); } - }); + }; + editorComponent.getDocument().addDocumentListener(listener); + Disposer.register(this, () -> editorComponent.getDocument().removeDocumentListener(listener)); myCreateSampleProjectCheckBox.addActionListener(e -> validateInIntelliJ()); - myTemplatesList.addListSelectionListener(e -> validateInIntelliJ()); } @@ -303,21 +317,10 @@ public boolean isBackgroundJobRunning() { } @Override - public void addSettingsStateListener(final @NotNull WebProjectGenerator.SettingsStateListener stateListener) { - final JTextComponent editorComponent = (JTextComponent)mySdkPathComboWithBrowse.getComboBox().getEditor().getEditorComponent(); - editorComponent.getDocument().addDocumentListener(new DocumentAdapter() { - @Override - protected void textChanged(final @NotNull DocumentEvent e) { - stateListener.stateChanged(validate() == null); - } - }); - - myCreateSampleProjectCheckBox.addActionListener(e -> stateListener.stateChanged(validate() == null)); - - myTemplatesList.addListSelectionListener(e -> stateListener.stateChanged(validate() == null)); + public void dispose() { } private void createUIComponents() { - mySdkPathComboWithBrowse = new ComboboxWithBrowseButton(new ComboBox<>()); + mySdkPathComboWithBrowse = new BasicComboBoxWithBrowseButton<>(); } } diff --git a/third_party/src/main/java/com/jetbrains/lang/dart/sdk/DartConfigurable.form b/third_party/src/main/java/com/jetbrains/lang/dart/sdk/DartConfigurable.form index b7d960a61..94d6f7d22 100644 --- a/third_party/src/main/java/com/jetbrains/lang/dart/sdk/DartConfigurable.form +++ b/third_party/src/main/java/com/jetbrains/lang/dart/sdk/DartConfigurable.form @@ -25,7 +25,7 @@ - + diff --git a/third_party/src/main/java/com/jetbrains/lang/dart/sdk/DartConfigurable.java b/third_party/src/main/java/com/jetbrains/lang/dart/sdk/DartConfigurable.java index 28082202a..469d0fb3e 100644 --- a/third_party/src/main/java/com/jetbrains/lang/dart/sdk/DartConfigurable.java +++ b/third_party/src/main/java/com/jetbrains/lang/dart/sdk/DartConfigurable.java @@ -5,17 +5,20 @@ import com.intellij.icons.AllIcons; import com.intellij.ide.actions.ShowSettingsUtilImpl; import com.intellij.ide.util.PropertiesComponent; +import com.intellij.openapi.Disposable; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ModalityState; -import com.intellij.openapi.progress.ProgressManager; +import com.intellij.openapi.fileEditor.FileEditorManager; import com.intellij.openapi.module.Module; import com.intellij.openapi.module.ModuleManager; import com.intellij.openapi.module.ModuleType; import com.intellij.openapi.options.Configurable.NoScroll; import com.intellij.openapi.options.SearchableConfigurable; +import com.intellij.openapi.progress.ProgressManager; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.ComboBox; import com.intellij.openapi.ui.Messages; +import com.intellij.openapi.util.Disposer; import com.intellij.openapi.util.IconLoader; import com.intellij.openapi.util.NlsContexts; import com.intellij.openapi.util.NlsSafe; @@ -23,7 +26,10 @@ import com.intellij.openapi.util.text.HtmlBuilder; import com.intellij.openapi.util.text.HtmlChunk; import com.intellij.openapi.util.text.StringUtil; +import com.intellij.openapi.vfs.VirtualFile; import com.intellij.openapi.wm.IdeFocusManager; +import com.intellij.psi.PsiFile; +import com.intellij.psi.PsiManager; import com.intellij.ui.*; import com.intellij.ui.components.JBCheckBox; import com.intellij.ui.components.JBLabel; @@ -33,12 +39,12 @@ import com.intellij.util.ui.UIUtil; import com.jetbrains.lang.dart.DartBundle; import com.jetbrains.lang.dart.flutter.FlutterUtil; +import com.jetbrains.lang.dart.lsp.DartLspConstants; +import com.jetbrains.lang.dart.lsp.LspMethod; +import com.jetbrains.lang.dart.ui.BasicComboBoxWithBrowseButton; import com.redhat.devtools.lsp4ij.LanguageServerManager; import com.redhat.devtools.lsp4ij.ServerStatus; import org.jetbrains.annotations.Nls; -import com.jetbrains.lang.dart.lsp.LspMethod; -import com.jetbrains.lang.dart.lsp.DartLspConstants; -import java.util.stream.Collectors; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -50,8 +56,9 @@ import javax.swing.tree.DefaultTreeModel; import javax.swing.tree.ExpandVetoException; import java.util.*; +import java.util.stream.Collectors; -public final class DartConfigurable implements SearchableConfigurable, NoScroll { +public final class DartConfigurable implements SearchableConfigurable, NoScroll, Disposable { public static final int WEBDEV_PORT_DEFAULT = 53322; private static final String WEBDEV_PORT_PROPERTY_NAME = "dart.webdev.port"; @@ -61,7 +68,7 @@ public final class DartConfigurable implements SearchableConfigurable, NoScroll private JBCheckBox myEnableDartSupportCheckBox; private JPanel mySettingsPanel; - private ComboboxWithBrowseButton mySdkPathComboWithBrowse; + private BasicComboBoxWithBrowseButton mySdkPathComboWithBrowse; private JBLabel myVersionLabel; private JBCheckBox myCheckSdkUpdateCheckBox; // disabled and unchecked, shown in UI instead of myCheckSdkUpdateCheckBox if selected Dart SDK is a part of a Flutter SDK @@ -113,10 +120,10 @@ private void initEnableDartSupportCheckBox() { } private void initDartSdkControls() { - DartSdkUtil.initDartSdkControls(myProject, mySdkPathComboWithBrowse, myVersionLabel); + DartSdkUtil.initDartSdkControls(myProject, mySdkPathComboWithBrowse, myVersionLabel, this); - final JTextComponent sdkEditor = (JTextComponent)mySdkPathComboWithBrowse.getComboBox().getEditor().getEditorComponent(); - sdkEditor.getDocument().addDocumentListener(new DocumentAdapter() { + final JTextComponent sdkEditor = (JTextComponent)mySdkPathComboWithBrowse.getEditor().getEditorComponent(); + final DocumentAdapter listener = new DocumentAdapter() { @Override protected void textChanged(final @NotNull DocumentEvent e) { final String sdkHomePath = getTextFromCombo(mySdkPathComboWithBrowse); @@ -130,7 +137,9 @@ protected void textChanged(final @NotNull DocumentEvent e) { updateControlsEnabledState(); updateErrorLabel(); } - }); + }; + sdkEditor.getDocument().addDocumentListener(listener); + Disposer.register(this, () -> sdkEditor.getDocument().removeDocumentListener(listener)); myCheckSdkUpdateCheckBox.addActionListener(e -> { final boolean enabled = myCheckSdkUpdateCheckBox.isSelected() && myCheckSdkUpdateCheckBox.isEnabled(); @@ -264,8 +273,8 @@ public boolean isModified() { return false; } - private static @NotNull String getTextFromCombo(final @NotNull ComboboxWithBrowseButton combo) { - return FileUtilRt.toSystemIndependentName(combo.getComboBox().getEditor().getItem().toString().trim()); + private static @NotNull String getTextFromCombo(final @NotNull ComboBox combo) { + return FileUtilRt.toSystemIndependentName(combo.getEditor().getItem().toString().trim()); } @Override @@ -283,9 +292,9 @@ public void reset() { // reset UI myEnableDartSupportCheckBox.setSelected(myDartSupportEnabledInitial); @NlsSafe String sdkInitialPath = mySdkInitial == null ? "" : FileUtilRt.toSystemDependentName(mySdkInitial.getHomePath()); - mySdkPathComboWithBrowse.getComboBox().getEditor().setItem(sdkInitialPath); + mySdkPathComboWithBrowse.getEditor().setItem(sdkInitialPath); if (!sdkInitialPath.isEmpty()) { - ensureComboModelContainsCurrentItem(mySdkPathComboWithBrowse.getComboBox()); + ensureComboModelContainsCurrentItem(mySdkPathComboWithBrowse); } final DartSdkUpdateOption sdkUpdateOption = DartSdkUpdateOption.getDartSdkUpdateOption(); @@ -384,6 +393,14 @@ public void apply() { public void disposeUIResources() { mySdkInitial = null; myModulesWithDartSdkLibAttachedInitial.clear(); + Disposer.dispose(this); + } + + @Override + public void dispose() { + // No-op: this class implements Disposable solely to act as a parent node in the Disposer tree. + // All actual resource cleanup (e.g., DocumentListeners) is handled by child Disposables + // registered with this instance and triggered via Disposer.dispose(this) in disposeUIResources(). } private void updateControlsEnabledState() { @@ -437,7 +454,7 @@ private void updateErrorLabel() { } private void createUIComponents() { - mySdkPathComboWithBrowse = new ComboboxWithBrowseButton(new ComboBox<>()); + mySdkPathComboWithBrowse = new BasicComboBoxWithBrowseButton<>(); final CheckboxTree.CheckboxTreeCellRenderer checkboxTreeCellRenderer = new CheckboxTree.CheckboxTreeCellRenderer() { @Override diff --git a/third_party/src/main/java/com/jetbrains/lang/dart/sdk/DartSdkUtil.java b/third_party/src/main/java/com/jetbrains/lang/dart/sdk/DartSdkUtil.java index 95bb21340..c95dba4d3 100644 --- a/third_party/src/main/java/com/jetbrains/lang/dart/sdk/DartSdkUtil.java +++ b/third_party/src/main/java/com/jetbrains/lang/dart/sdk/DartSdkUtil.java @@ -1,24 +1,27 @@ // Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. package com.jetbrains.lang.dart.sdk; +import com.intellij.openapi.Disposable; import com.intellij.ide.util.PropertiesComponent; +import com.intellij.openapi.application.ModalityState; +import com.intellij.openapi.application.ReadAction; import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory; import com.intellij.openapi.project.Project; -import com.intellij.openapi.ui.ComponentWithBrowseButton; -import com.intellij.openapi.ui.TextComponentAccessor; +import com.intellij.openapi.util.Disposer; import com.intellij.openapi.util.NlsContexts; import com.intellij.openapi.util.NlsSafe; import com.intellij.openapi.util.Pair; import com.intellij.openapi.util.SystemInfo; import com.intellij.openapi.util.io.FileUtil; import com.intellij.openapi.util.text.Strings; -import com.intellij.ui.ComboboxWithBrowseButton; import com.intellij.ui.DocumentAdapter; import com.intellij.ui.components.JBLabel; import com.intellij.util.ArrayUtilRt; import com.intellij.util.SmartList; +import com.intellij.util.concurrency.AppExecutorUtil; import com.intellij.util.system.CpuArch; import com.jetbrains.lang.dart.DartBundle; +import com.jetbrains.lang.dart.ui.BasicComboBoxWithBrowseButton; import org.jetbrains.annotations.Contract; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -64,11 +67,26 @@ public static boolean isDartSdkHome(final @Nullable String path) { } public static void initDartSdkControls(final @Nullable Project project, - final @NotNull ComboboxWithBrowseButton dartSdkPathComponent, - final @NotNull JBLabel versionLabel) { - dartSdkPathComponent.getComboBox().setEditable(true); - addKnownPathsToCombo(dartSdkPathComponent.getComboBox(), DART_SDK_KNOWN_PATHS, DartSdkUtil::isDartSdkHome); - if (getItemFromCombo(dartSdkPathComponent.getComboBox()).isEmpty()) { + final @NotNull BasicComboBoxWithBrowseButton dartSdkCombo, + final @NotNull JBLabel versionLabel, + final @NotNull Disposable parentDisposable) { + dartSdkCombo.addBrowseFolderListener(DartBundle.message("button.browse.dialog.title.select.dart.sdk.path"), + project, + FileChooserDescriptorFactory.createSingleFolderDescriptor() + .withTitle(DartBundle.message("button.browse.dialog.title.select.dart.sdk.path")), + path -> { + if (!path.isEmpty() && !isDartSdkHome(path)) { + final String probablySdkPath = path + "/dart-sdk"; + if (isDartSdkHome(probablySdkPath)) { + return probablySdkPath; + } + } + return path; + }, + path -> dartSdkCombo.getEditor().setItem(FileUtil.toSystemDependentName(path))); + + addKnownPathsToCombo(dartSdkCombo, DART_SDK_KNOWN_PATHS, DartSdkUtil::isDartSdkHome); + if (getItemFromCombo(dartSdkCombo).isEmpty()) { // Suggest default path according to https://dart.dev/get-dart. // No need to check folder presence here; even if it doesn't exist - that's the best we can suggest @NlsSafe String path = SystemInfo.isMac ? CpuArch.isArm64() ? "/opt/homebrew/opt/dart/libexec" @@ -77,52 +95,34 @@ public static void initDartSdkControls(final @Nullable Project project, : SystemInfo.isLinux ? "/usr/lib/dart" : null; if (path != null) { - dartSdkPathComponent.getComboBox().getEditor().setItem(path); + dartSdkCombo.getEditor().setItem(path); } } - final String sdkHomePath = getItemFromCombo(dartSdkPathComponent.getComboBox()); - final String sdkVersion = getSdkVersion(sdkHomePath); - versionLabel.setText(sdkVersion == null ? "" : sdkVersion); + updateVersionLabelAsync(dartSdkCombo, versionLabel, parentDisposable); - final TextComponentAccessor textComponentAccessor = new TextComponentAccessor<>() { + final JTextComponent editorComponent = (JTextComponent)dartSdkCombo.getEditor().getEditorComponent(); + final DocumentAdapter listener = new DocumentAdapter() { @Override - public String getText(final JComboBox component) { - return getItemFromCombo(component); - } - - @Override - public void setText(final @NotNull JComboBox component, final @NotNull String text) { - if (!text.isEmpty() && !isDartSdkHome(text)) { - final String probablySdkPath = text + "/dart-sdk"; - if (isDartSdkHome(probablySdkPath)) { - component.getEditor().setItem(FileUtil.toSystemDependentName(probablySdkPath)); - return; - } - } - - component.getEditor().setItem(FileUtil.toSystemDependentName(text)); + protected void textChanged(final @NotNull DocumentEvent e) { + updateVersionLabelAsync(dartSdkCombo, versionLabel, parentDisposable); } }; + editorComponent.getDocument().addDocumentListener(listener); + Disposer.register(parentDisposable, () -> editorComponent.getDocument().removeDocumentListener(listener)); + } - var descriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor().withTitle(DartBundle.message("button.browse.dialog.title.select.dart.sdk.path")); - var browseFolderListener = new ComponentWithBrowseButton.BrowseFolderActionListener<>(dartSdkPathComponent, project, descriptor, textComponentAccessor); - dartSdkPathComponent.addActionListener(browseFolderListener); - - final JTextComponent editorComponent = (JTextComponent)dartSdkPathComponent.getComboBox().getEditor().getEditorComponent(); - editorComponent.getDocument().addDocumentListener(new DocumentAdapter() { - @Override - protected void textChanged(final @NotNull DocumentEvent e) { - final String sdkHomePath = getItemFromCombo(dartSdkPathComponent.getComboBox()); - if(e.getType() == DocumentEvent.EventType.INSERT){ - final String sdkVersion = getSdkVersion(sdkHomePath); - versionLabel.setText(sdkVersion == null ? "" : sdkVersion); - } - } - }); + private static void updateVersionLabelAsync(final @NotNull BasicComboBoxWithBrowseButton dartSdkCombo, + final @NotNull JBLabel versionLabel, + final @NotNull Disposable parentDisposable) { + final String sdkHomePath = getItemFromCombo(dartSdkCombo); + ReadAction.nonBlocking(() -> getSdkVersion(sdkHomePath)) + .expireWith(parentDisposable) + .finishOnUiThread(ModalityState.any(), version -> versionLabel.setText(version == null ? "" : version)) + .submit(AppExecutorUtil.getAppExecutorService()); } - private static @NotNull String getItemFromCombo(final @NotNull JComboBox combo) { + private static @NotNull String getItemFromCombo(final @NotNull JComboBox combo) { return combo.getEditor().getItem().toString().trim(); } @@ -134,7 +134,7 @@ protected void textChanged(final @NotNull DocumentEvent e) { return null; } - private static void addKnownPathsToCombo(final @NotNull JComboBox combo, + private static void addKnownPathsToCombo(final @NotNull JComboBox combo, final @NotNull String propertyKey, final @NotNull Predicate pathChecker) { final SmartList validPathsForUI = new SmartList<>(); diff --git a/third_party/src/main/java/com/jetbrains/lang/dart/ui/BasicComboBoxWithBrowseButton.java b/third_party/src/main/java/com/jetbrains/lang/dart/ui/BasicComboBoxWithBrowseButton.java new file mode 100644 index 000000000..be9f1518f --- /dev/null +++ b/third_party/src/main/java/com/jetbrains/lang/dart/ui/BasicComboBoxWithBrowseButton.java @@ -0,0 +1,60 @@ +// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. +package com.jetbrains.lang.dart.ui; + +import com.intellij.icons.AllIcons; +import com.intellij.openapi.application.ModalityState; +import com.intellij.openapi.application.ReadAction; +import com.intellij.openapi.fileChooser.FileChooser; +import com.intellij.openapi.fileChooser.FileChooserDescriptor; +import com.intellij.openapi.project.Project; +import com.intellij.openapi.ui.ComboBox; +import com.intellij.openapi.util.NlsContexts; +import com.intellij.openapi.util.io.FileUtil; +import com.intellij.ui.components.fields.ExtendableTextField; +import com.intellij.util.concurrency.AppExecutorUtil; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import javax.swing.plaf.basic.BasicComboBoxEditor; +import java.util.function.Consumer; +import java.util.function.Function; + +public class BasicComboBoxWithBrowseButton extends ComboBox { + private final ExtendableTextField myEditor = new ExtendableTextField(); + + public BasicComboBoxWithBrowseButton() { + setEditable(true); + myEditor.setBorder(null); + setEditor(new BasicComboBoxEditor() { + @Override + protected ExtendableTextField createEditorComponent() { + return myEditor; + } + }); + } + + public void addBrowseFolderListener(@Nullable @NlsContexts.DialogTitle String title, + @Nullable Project project, + @NotNull FileChooserDescriptor descriptor, + @NotNull Function backgroundResolver, + @NotNull Consumer edtConsumer) { + myEditor.addExtension( + ExtendableTextField.Extension.create( + AllIcons.General.OpenDisk, + AllIcons.General.OpenDiskHover, + title, + () -> { + FileChooser.chooseFile(descriptor, project, this, null, file -> { + String path = FileUtil.toSystemIndependentName(file.getPath()); + ReadAction.nonBlocking(() -> backgroundResolver.apply(path)) + .finishOnUiThread(ModalityState.any(), edtConsumer) + .submit(AppExecutorUtil.getAppExecutorService()); + }); + })); + } + + @NotNull + public ExtendableTextField getEditorComponent() { + return myEditor; + } +} diff --git a/third_party/src/main/resources/messages/DartBundle.properties b/third_party/src/main/resources/messages/DartBundle.properties index 88e1cf3cc..6fe1c1bb7 100644 --- a/third_party/src/main/resources/messages/DartBundle.properties +++ b/third_party/src/main/resources/messages/DartBundle.properties @@ -380,6 +380,7 @@ progress.title.loading.coverage.data=Loading coverage data\u2026 progress.title.activating.coverage.package=Activating coverage package\u2026 dialog.title.select.working.directory=Select Working Directory button.browse.dialog.title.select.dart.sdk.path=Select Dart SDK Path +button.browse.dialog.title.select.dart.project.path=Select Dart Project Path label.text.name=Name: dialog.title.extract.local.variable=Extract Local Variable dialog.title.rename.0=Rename {0} @@ -497,4 +498,4 @@ notification.group.dart.analysis.issue=Dart analysis issue code.changes.by.dart.analysis.server=Code Changes by the Dart Analysis Server dart.inlay.hints.closing.labels.name=Closing Labels -dart.inlay.hints.closing.labels.description=Show labels at the end of code blocks to identify which structure is being closed \ No newline at end of file +dart.inlay.hints.closing.labels.description=Show labels at the end of code blocks to identify which structure is being closed diff --git a/third_party/tool/baseline/251/verifier-baseline.txt b/third_party/tool/baseline/251/verifier-baseline.txt index 23e85bf64..2f2860927 100644 --- a/third_party/tool/baseline/251/verifier-baseline.txt +++ b/third_party/tool/baseline/251/verifier-baseline.txt @@ -1,36 +1,7 @@ -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.$$$setupUI$$$() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.applyEditorTo(DartRemoteDebugConfiguration) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.initDartProjectsCombo(Project) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.myDartProjectCombo : ComboboxWithBrowseButton -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.setSelectedProjectPath(String) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.() -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.addSettingsStateListener(WebProjectGenerator.SettingsStateListener) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.createUIComponents() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.enableIntellijLiveValidation() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.getSettings() : DartProjectWizardData -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.lambda$startLoadingTemplates$2(AsyncProcessIcon) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.mySdkPathComboWithBrowse : ComboboxWithBrowseButton -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.onSdkPathChanged() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.validate() : ValidationInfo -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.createUIComponents() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.getTextFromCombo(ComboboxWithBrowseButton) : String -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.initDartSdkControls() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.mySdkPathComboWithBrowse : ComboboxWithBrowseButton -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.reset() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartSdkUtil.initDartSdkControls(Project, ComboboxWithBrowseButton, JBLabel) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartSdkUtil$2.(ComboboxWithBrowseButton, JBLabel) -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartSdkUtil$2.textChanged(DocumentEvent) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartSdkUtil$2.val$dartSdkPathComponent : ComboboxWithBrowseButton * Deprecated constructor com.intellij.codeInsight.template.TemplateContextType.(java.lang.String id, java.lang.String presentableName, java.lang.Class baseContextType) is invoked in com.jetbrains.lang.dart.ide.template.DartTemplateContextType.(String, String, Class) * Deprecated constructor com.intellij.util.xmlb.SkipDefaultValuesSerializationFilters.() is invoked in com.jetbrains.lang.dart.ide.runner.base.DartRunConfigurationBase.writeExternal(Element) : void * Deprecated constructor com.intellij.util.xmlb.SkipDefaultValuesSerializationFilters.() is invoked in com.jetbrains.lang.dart.ide.runner.server.DartRemoteDebugConfiguration.writeExternal(Element) : void * Deprecated constructor com.intellij.util.xmlb.SkipDefaultValuesSerializationFilters.() is invoked in com.jetbrains.lang.dart.ide.runner.server.webdev.DartWebdevConfiguration.writeExternal(Element) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.addSettingsStateListener(WebProjectGenerator.SettingsStateListener) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.lambda$addSettingsStateListener$6(WebProjectGenerator.SettingsStateListener, ActionEvent) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.lambda$addSettingsStateListener$7(WebProjectGenerator.SettingsStateListener, ListSelectionEvent) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer$4.(DartGeneratorPeer, WebProjectGenerator.SettingsStateListener) -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer$4.textChanged(DocumentEvent) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer$4.val$stateListener : WebProjectGenerator.SettingsStateListener * Deprecated method com.google.dart.server.generated.AnalysisServer.analysis_getReachableSources(java.lang.String arg0, com.google.dart.server.GetReachableSourcesConsumer arg1) : void is overridden in class com.google.dart.server.internal.remote.RemoteAnalysisServerImpl * Deprecated method com.google.dart.server.generated.AnalysisServer.analysis_updateOptions(org.dartlang.analysis.server.protocol.AnalysisOptions arg0) : void is overridden in class com.google.dart.server.internal.remote.RemoteAnalysisServerImpl * Deprecated method com.google.dart.server.generated.AnalysisServer.completion_registerLibraryPaths(java.util.List arg0) : void is overridden in class com.google.dart.server.internal.remote.RemoteAnalysisServerImpl @@ -39,15 +10,14 @@ * Deprecated method com.intellij.codeInsight.template.TemplateContextType.isInContext(com.intellij.psi.PsiFile file, int offset) : boolean is overridden in class com.jetbrains.lang.dart.ide.template.DartTemplateContextType * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.analyzer.DartAnalysisServerErrorHandler.handleError(String, String, boolean, String, String) : void * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.ide.actions.DartEditorNotificationsProvider.EnableDartSupportForModule.run() : void -* Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.ide.errorTreeView.DartProblemsView.showNotification(NotificationType, String, String, Icon, boolean) : void * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.ide.errorTreeView.DartProblemsView$3.hyperlinkActivated(Notification, HyperlinkEvent) : void +* Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.ide.errorTreeView.DartProblemsView.showNotification(NotificationType, String, String, Icon, boolean) : void * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.pubServer.PubServerService.PubServeOutputListener.showNotificationIfNeeded(boolean) : void * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.sdk.DartSdkUpdateChecker.notifySdkUpdateAvailable(Project, String, String, String) : void * Deprecated method com.intellij.openapi.actionSystem.ActionPlaces.isMainMenuOrActionSearch(java.lang.String place) : boolean is invoked in com.jetbrains.lang.dart.ide.runner.actions.DartPopFrameAction.update(AnActionEvent) : void * Deprecated method com.intellij.openapi.actionSystem.UiCompatibleDataProvider.getData(java.lang.String dataId) : java.lang.Object is invoked in com.jetbrains.lang.dart.ide.errorTreeView.DartProblemsViewPanel.popupInvoked(Component, int, int) : void * Deprecated method com.intellij.openapi.startup.StartupManager.runWhenProjectIsInitialized(java.lang.Runnable arg0) : void is invoked in com.jetbrains.lang.dart.projectWizard.DartModuleBuilder.runWhenNonModalIfModuleNotDisposed(Runnable, Module) : void * Deprecated method com.intellij.openapi.vfs.VirtualFileManager.addVirtualFileListener(com.intellij.openapi.vfs.VirtualFileListener arg0, com.intellij.openapi.Disposable arg1) : void is invoked in com.jetbrains.lang.dart.pubServer.PubServerManager.(Project) -* Deprecated method com.intellij.platform.ProjectGeneratorPeer.addSettingsStateListener(com.intellij.platform.WebProjectGenerator.SettingsStateListener listener) : void is overridden in class com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer * Deprecated method com.intellij.psi.search.FilenameIndex.getFilesByName(com.intellij.openapi.project.Project project, java.lang.String name, com.intellij.psi.search.GlobalSearchScope scope) : com.intellij.psi.PsiFile[] is invoked in com.jetbrains.lang.dart.ide.runner.server.vmService.DartVmServiceDebugProcess.lambda$guessRemoteProjectRoot$2(String, VirtualFile) : PsiFile[] * Experimental API class com.redhat.devtools.lsp4ij.client.features.LSPClientFeatures is referenced in com.jetbrains.lang.dart.lsp.DartLanguageServerFactory.createClientFeatures() : LSPClientFeatures. This class can be changed in a future release leading to incompatibilities * Experimental API class com.redhat.devtools.lsp4ij.client.features.LSPClientFeatures is referenced in com.jetbrains.lang.dart.lsp.DartLauncherBuilder.(LSPClientFeatures). This class can be changed in a future release leading to incompatibilities @@ -61,10 +31,10 @@ * Experimental API method com.intellij.openapi.vfs.newvfs.events.VFilePropertyChangeEvent.isRename() : boolean is invoked in com.jetbrains.lang.dart.DartFileListener.prepareChange(List) : AsyncFileListener.ChangeApplier. This method can be changed in a future release leading to incompatibilities * Experimental API method com.redhat.devtools.lsp4ij.client.features.LSPClientFeatures.createLauncherBuilder() : org.eclipse.lsp4j.jsonrpc.Launcher.Builder is overridden in class com.jetbrains.lang.dart.lsp.DartLspClientFeatures. This method can be changed in a future release leading to incompatibilities * Experimental API method com.redhat.devtools.lsp4ij.client.features.LSPClientFeatures.getProject() : com.intellij.openapi.project.Project is invoked in com.jetbrains.lang.dart.lsp.DartLauncherBuilder.createMessageProducer(InputStream, MessageJsonHandler, MessageIssueHandler) : MessageProducer. This method can be changed in a future release leading to incompatibilities +* Internal class com.intellij.psi.impl.include.FileIncludeInfo is referenced in com.jetbrains.lang.dart.psi.DartPackageAwareFileIncludeProvider$1.visitXmlTag(XmlTag) : void. This class is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. * Internal class com.intellij.psi.impl.include.FileIncludeInfo is referenced in com.jetbrains.lang.dart.psi.DartPackageAwareFileIncludeProvider.getIncludeInfos(FileContent) : FileIncludeInfo[]. This class is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. * Internal class com.intellij.psi.impl.include.FileIncludeInfo is referenced in com.jetbrains.lang.dart.psi.DartPackageAwareFileIncludeProvider.getIncludeInfos(XmlFile) : FileIncludeInfo[]. This class is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. * Internal class com.intellij.psi.impl.include.FileIncludeInfo is referenced in com.jetbrains.lang.dart.psi.DartPackageAwareFileIncludeProvider.resolveIncludedFile(FileIncludeInfo, PsiFile) : PsiFileSystemItem. This class is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. -* Internal class com.intellij.psi.impl.include.FileIncludeInfo is referenced in com.jetbrains.lang.dart.psi.DartPackageAwareFileIncludeProvider$1.visitXmlTag(XmlTag) : void. This class is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. * Internal class com.intellij.psi.impl.include.FileIncludeProvider is referenced in com.jetbrains.lang.dart.psi.DartPackageAwareFileIncludeProvider. This class is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. * Internal class com.intellij.psi.impl.include.FileIncludeProvider is referenced in com.jetbrains.lang.dart.psi.DartPackageAwareFileIncludeProvider.(). This class is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. * Internal class com.intellij.util.PlatformUtils is referenced in com.jetbrains.lang.dart.sdk.DartSdkLibUtil.isIdeWithMultipleModuleSupport() : boolean. This class is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. diff --git a/third_party/tool/baseline/252/verifier-baseline.txt b/third_party/tool/baseline/252/verifier-baseline.txt index 23e85bf64..2f2860927 100644 --- a/third_party/tool/baseline/252/verifier-baseline.txt +++ b/third_party/tool/baseline/252/verifier-baseline.txt @@ -1,36 +1,7 @@ -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.$$$setupUI$$$() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.applyEditorTo(DartRemoteDebugConfiguration) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.initDartProjectsCombo(Project) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.myDartProjectCombo : ComboboxWithBrowseButton -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.setSelectedProjectPath(String) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.() -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.addSettingsStateListener(WebProjectGenerator.SettingsStateListener) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.createUIComponents() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.enableIntellijLiveValidation() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.getSettings() : DartProjectWizardData -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.lambda$startLoadingTemplates$2(AsyncProcessIcon) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.mySdkPathComboWithBrowse : ComboboxWithBrowseButton -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.onSdkPathChanged() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.validate() : ValidationInfo -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.createUIComponents() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.getTextFromCombo(ComboboxWithBrowseButton) : String -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.initDartSdkControls() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.mySdkPathComboWithBrowse : ComboboxWithBrowseButton -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.reset() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartSdkUtil.initDartSdkControls(Project, ComboboxWithBrowseButton, JBLabel) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartSdkUtil$2.(ComboboxWithBrowseButton, JBLabel) -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartSdkUtil$2.textChanged(DocumentEvent) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartSdkUtil$2.val$dartSdkPathComponent : ComboboxWithBrowseButton * Deprecated constructor com.intellij.codeInsight.template.TemplateContextType.(java.lang.String id, java.lang.String presentableName, java.lang.Class baseContextType) is invoked in com.jetbrains.lang.dart.ide.template.DartTemplateContextType.(String, String, Class) * Deprecated constructor com.intellij.util.xmlb.SkipDefaultValuesSerializationFilters.() is invoked in com.jetbrains.lang.dart.ide.runner.base.DartRunConfigurationBase.writeExternal(Element) : void * Deprecated constructor com.intellij.util.xmlb.SkipDefaultValuesSerializationFilters.() is invoked in com.jetbrains.lang.dart.ide.runner.server.DartRemoteDebugConfiguration.writeExternal(Element) : void * Deprecated constructor com.intellij.util.xmlb.SkipDefaultValuesSerializationFilters.() is invoked in com.jetbrains.lang.dart.ide.runner.server.webdev.DartWebdevConfiguration.writeExternal(Element) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.addSettingsStateListener(WebProjectGenerator.SettingsStateListener) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.lambda$addSettingsStateListener$6(WebProjectGenerator.SettingsStateListener, ActionEvent) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.lambda$addSettingsStateListener$7(WebProjectGenerator.SettingsStateListener, ListSelectionEvent) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer$4.(DartGeneratorPeer, WebProjectGenerator.SettingsStateListener) -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer$4.textChanged(DocumentEvent) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer$4.val$stateListener : WebProjectGenerator.SettingsStateListener * Deprecated method com.google.dart.server.generated.AnalysisServer.analysis_getReachableSources(java.lang.String arg0, com.google.dart.server.GetReachableSourcesConsumer arg1) : void is overridden in class com.google.dart.server.internal.remote.RemoteAnalysisServerImpl * Deprecated method com.google.dart.server.generated.AnalysisServer.analysis_updateOptions(org.dartlang.analysis.server.protocol.AnalysisOptions arg0) : void is overridden in class com.google.dart.server.internal.remote.RemoteAnalysisServerImpl * Deprecated method com.google.dart.server.generated.AnalysisServer.completion_registerLibraryPaths(java.util.List arg0) : void is overridden in class com.google.dart.server.internal.remote.RemoteAnalysisServerImpl @@ -39,15 +10,14 @@ * Deprecated method com.intellij.codeInsight.template.TemplateContextType.isInContext(com.intellij.psi.PsiFile file, int offset) : boolean is overridden in class com.jetbrains.lang.dart.ide.template.DartTemplateContextType * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.analyzer.DartAnalysisServerErrorHandler.handleError(String, String, boolean, String, String) : void * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.ide.actions.DartEditorNotificationsProvider.EnableDartSupportForModule.run() : void -* Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.ide.errorTreeView.DartProblemsView.showNotification(NotificationType, String, String, Icon, boolean) : void * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.ide.errorTreeView.DartProblemsView$3.hyperlinkActivated(Notification, HyperlinkEvent) : void +* Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.ide.errorTreeView.DartProblemsView.showNotification(NotificationType, String, String, Icon, boolean) : void * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.pubServer.PubServerService.PubServeOutputListener.showNotificationIfNeeded(boolean) : void * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.sdk.DartSdkUpdateChecker.notifySdkUpdateAvailable(Project, String, String, String) : void * Deprecated method com.intellij.openapi.actionSystem.ActionPlaces.isMainMenuOrActionSearch(java.lang.String place) : boolean is invoked in com.jetbrains.lang.dart.ide.runner.actions.DartPopFrameAction.update(AnActionEvent) : void * Deprecated method com.intellij.openapi.actionSystem.UiCompatibleDataProvider.getData(java.lang.String dataId) : java.lang.Object is invoked in com.jetbrains.lang.dart.ide.errorTreeView.DartProblemsViewPanel.popupInvoked(Component, int, int) : void * Deprecated method com.intellij.openapi.startup.StartupManager.runWhenProjectIsInitialized(java.lang.Runnable arg0) : void is invoked in com.jetbrains.lang.dart.projectWizard.DartModuleBuilder.runWhenNonModalIfModuleNotDisposed(Runnable, Module) : void * Deprecated method com.intellij.openapi.vfs.VirtualFileManager.addVirtualFileListener(com.intellij.openapi.vfs.VirtualFileListener arg0, com.intellij.openapi.Disposable arg1) : void is invoked in com.jetbrains.lang.dart.pubServer.PubServerManager.(Project) -* Deprecated method com.intellij.platform.ProjectGeneratorPeer.addSettingsStateListener(com.intellij.platform.WebProjectGenerator.SettingsStateListener listener) : void is overridden in class com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer * Deprecated method com.intellij.psi.search.FilenameIndex.getFilesByName(com.intellij.openapi.project.Project project, java.lang.String name, com.intellij.psi.search.GlobalSearchScope scope) : com.intellij.psi.PsiFile[] is invoked in com.jetbrains.lang.dart.ide.runner.server.vmService.DartVmServiceDebugProcess.lambda$guessRemoteProjectRoot$2(String, VirtualFile) : PsiFile[] * Experimental API class com.redhat.devtools.lsp4ij.client.features.LSPClientFeatures is referenced in com.jetbrains.lang.dart.lsp.DartLanguageServerFactory.createClientFeatures() : LSPClientFeatures. This class can be changed in a future release leading to incompatibilities * Experimental API class com.redhat.devtools.lsp4ij.client.features.LSPClientFeatures is referenced in com.jetbrains.lang.dart.lsp.DartLauncherBuilder.(LSPClientFeatures). This class can be changed in a future release leading to incompatibilities @@ -61,10 +31,10 @@ * Experimental API method com.intellij.openapi.vfs.newvfs.events.VFilePropertyChangeEvent.isRename() : boolean is invoked in com.jetbrains.lang.dart.DartFileListener.prepareChange(List) : AsyncFileListener.ChangeApplier. This method can be changed in a future release leading to incompatibilities * Experimental API method com.redhat.devtools.lsp4ij.client.features.LSPClientFeatures.createLauncherBuilder() : org.eclipse.lsp4j.jsonrpc.Launcher.Builder is overridden in class com.jetbrains.lang.dart.lsp.DartLspClientFeatures. This method can be changed in a future release leading to incompatibilities * Experimental API method com.redhat.devtools.lsp4ij.client.features.LSPClientFeatures.getProject() : com.intellij.openapi.project.Project is invoked in com.jetbrains.lang.dart.lsp.DartLauncherBuilder.createMessageProducer(InputStream, MessageJsonHandler, MessageIssueHandler) : MessageProducer. This method can be changed in a future release leading to incompatibilities +* Internal class com.intellij.psi.impl.include.FileIncludeInfo is referenced in com.jetbrains.lang.dart.psi.DartPackageAwareFileIncludeProvider$1.visitXmlTag(XmlTag) : void. This class is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. * Internal class com.intellij.psi.impl.include.FileIncludeInfo is referenced in com.jetbrains.lang.dart.psi.DartPackageAwareFileIncludeProvider.getIncludeInfos(FileContent) : FileIncludeInfo[]. This class is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. * Internal class com.intellij.psi.impl.include.FileIncludeInfo is referenced in com.jetbrains.lang.dart.psi.DartPackageAwareFileIncludeProvider.getIncludeInfos(XmlFile) : FileIncludeInfo[]. This class is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. * Internal class com.intellij.psi.impl.include.FileIncludeInfo is referenced in com.jetbrains.lang.dart.psi.DartPackageAwareFileIncludeProvider.resolveIncludedFile(FileIncludeInfo, PsiFile) : PsiFileSystemItem. This class is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. -* Internal class com.intellij.psi.impl.include.FileIncludeInfo is referenced in com.jetbrains.lang.dart.psi.DartPackageAwareFileIncludeProvider$1.visitXmlTag(XmlTag) : void. This class is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. * Internal class com.intellij.psi.impl.include.FileIncludeProvider is referenced in com.jetbrains.lang.dart.psi.DartPackageAwareFileIncludeProvider. This class is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. * Internal class com.intellij.psi.impl.include.FileIncludeProvider is referenced in com.jetbrains.lang.dart.psi.DartPackageAwareFileIncludeProvider.(). This class is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. * Internal class com.intellij.util.PlatformUtils is referenced in com.jetbrains.lang.dart.sdk.DartSdkLibUtil.isIdeWithMultipleModuleSupport() : boolean. This class is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. diff --git a/third_party/tool/baseline/253/verifier-baseline.txt b/third_party/tool/baseline/253/verifier-baseline.txt index a9c0ceab7..378bc8d92 100644 --- a/third_party/tool/baseline/253/verifier-baseline.txt +++ b/third_party/tool/baseline/253/verifier-baseline.txt @@ -1,55 +1,25 @@ -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.$$$setupUI$$$() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.applyEditorTo(DartRemoteDebugConfiguration) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.initDartProjectsCombo(Project) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.myDartProjectCombo : ComboboxWithBrowseButton -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.setSelectedProjectPath(String) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.() -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.addSettingsStateListener(WebProjectGenerator.SettingsStateListener) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.createUIComponents() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.enableIntellijLiveValidation() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.getSettings() : DartProjectWizardData -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.lambda$startLoadingTemplates$2(AsyncProcessIcon) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.mySdkPathComboWithBrowse : ComboboxWithBrowseButton -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.onSdkPathChanged() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.validate() : ValidationInfo -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.createUIComponents() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.getTextFromCombo(ComboboxWithBrowseButton) : String -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.initDartSdkControls() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.mySdkPathComboWithBrowse : ComboboxWithBrowseButton -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.reset() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartSdkUtil.initDartSdkControls(Project, ComboboxWithBrowseButton, JBLabel) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartSdkUtil$2.(ComboboxWithBrowseButton, JBLabel) -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartSdkUtil$2.textChanged(DocumentEvent) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartSdkUtil$2.val$dartSdkPathComponent : ComboboxWithBrowseButton * Deprecated constructor com.intellij.codeInsight.template.TemplateContextType.(java.lang.String id, java.lang.String presentableName, java.lang.Class baseContextType) is invoked in com.jetbrains.lang.dart.ide.template.DartTemplateContextType.(String, String, Class) * Deprecated constructor com.intellij.util.xmlb.SkipDefaultValuesSerializationFilters.() is invoked in com.jetbrains.lang.dart.ide.runner.base.DartRunConfigurationBase.writeExternal(Element) : void * Deprecated constructor com.intellij.util.xmlb.SkipDefaultValuesSerializationFilters.() is invoked in com.jetbrains.lang.dart.ide.runner.server.DartRemoteDebugConfiguration.writeExternal(Element) : void * Deprecated constructor com.intellij.util.xmlb.SkipDefaultValuesSerializationFilters.() is invoked in com.jetbrains.lang.dart.ide.runner.server.webdev.DartWebdevConfiguration.writeExternal(Element) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.addSettingsStateListener(WebProjectGenerator.SettingsStateListener) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.lambda$addSettingsStateListener$6(WebProjectGenerator.SettingsStateListener, ActionEvent) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.lambda$addSettingsStateListener$7(WebProjectGenerator.SettingsStateListener, ListSelectionEvent) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer$4.(DartGeneratorPeer, WebProjectGenerator.SettingsStateListener) -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer$4.textChanged(DocumentEvent) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer$4.val$stateListener : WebProjectGenerator.SettingsStateListener * Deprecated method com.google.dart.server.generated.AnalysisServer.analysis_getReachableSources(java.lang.String arg0, com.google.dart.server.GetReachableSourcesConsumer arg1) : void is overridden in class com.google.dart.server.internal.remote.RemoteAnalysisServerImpl * Deprecated method com.google.dart.server.generated.AnalysisServer.analysis_updateOptions(org.dartlang.analysis.server.protocol.AnalysisOptions arg0) : void is overridden in class com.google.dart.server.internal.remote.RemoteAnalysisServerImpl * Deprecated method com.google.dart.server.generated.AnalysisServer.completion_registerLibraryPaths(java.util.List arg0) : void is overridden in class com.google.dart.server.internal.remote.RemoteAnalysisServerImpl * Deprecated method com.google.dart.server.generated.AnalysisServer.execution_setSubscriptions(java.util.List arg0) : void is overridden in class com.google.dart.server.internal.remote.RemoteAnalysisServerImpl * Deprecated method com.intellij.codeInsight.daemon.DaemonCodeAnalyzer.restart() : void is invoked in com.jetbrains.lang.dart.analyzer.DartServerData.lambda$forceFileAnnotation$5(Project) : void -* Deprecated method com.intellij.codeInsight.daemon.DaemonCodeAnalyzer.restart() : void is invoked in com.jetbrains.lang.dart.sdk.DartConfigurable.lambda$apply$5(boolean) : void +* Deprecated method com.intellij.codeInsight.daemon.DaemonCodeAnalyzer.restart() : void is invoked in com.jetbrains.lang.dart.sdk.DartConfigurable.lambda$apply$6(boolean) : void * Deprecated method com.intellij.codeInsight.daemon.impl.PsiElementListNavigator.openTargets(com.intellij.openapi.editor.Editor e, T[] targets, java.lang.String title, java.lang.String findUsagesTitle, javax.swing.ListCellRenderer listRenderer) : void is invoked in com.jetbrains.lang.dart.ide.actions.DartServerGotoSuperHandler.invoke(Project, Editor, PsiFile) : void * Deprecated method com.intellij.codeInsight.template.TemplateContextType.isInContext(com.intellij.psi.PsiFile file, int offset) : boolean is overridden in class com.jetbrains.lang.dart.ide.template.DartTemplateContextType * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.analyzer.DartAnalysisServerErrorHandler.handleError(String, String, boolean, String, String) : void * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.ide.actions.DartEditorNotificationsProvider.EnableDartSupportForModule.run() : void -* Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.ide.errorTreeView.DartProblemsView.showNotification(NotificationType, String, String, Icon, boolean) : void * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.ide.errorTreeView.DartProblemsView$3.hyperlinkActivated(Notification, HyperlinkEvent) : void +* Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.ide.errorTreeView.DartProblemsView.showNotification(NotificationType, String, String, Icon, boolean) : void * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.pubServer.PubServerService.PubServeOutputListener.showNotificationIfNeeded(boolean) : void * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.sdk.DartSdkUpdateChecker.notifySdkUpdateAvailable(Project, String, String, String) : void * Deprecated method com.intellij.openapi.actionSystem.ActionPlaces.isMainMenuOrActionSearch(java.lang.String place) : boolean is invoked in com.jetbrains.lang.dart.ide.runner.actions.DartPopFrameAction.update(AnActionEvent) : void * Deprecated method com.intellij.openapi.actionSystem.UiCompatibleDataProvider.getData(java.lang.String dataId) : java.lang.Object is invoked in com.jetbrains.lang.dart.ide.errorTreeView.DartProblemsViewPanel.popupInvoked(Component, int, int) : void * Deprecated method com.intellij.openapi.startup.StartupManager.runWhenProjectIsInitialized(java.lang.Runnable arg0) : void is invoked in com.jetbrains.lang.dart.projectWizard.DartModuleBuilder.runWhenNonModalIfModuleNotDisposed(Runnable, Module) : void * Deprecated method com.intellij.openapi.vfs.VirtualFileManager.addVirtualFileListener(com.intellij.openapi.vfs.VirtualFileListener arg0, com.intellij.openapi.Disposable arg1) : void is invoked in com.jetbrains.lang.dart.pubServer.PubServerManager.(Project) -* Deprecated method com.intellij.platform.ProjectGeneratorPeer.addSettingsStateListener(com.intellij.platform.WebProjectGenerator.SettingsStateListener listener) : void is overridden in class com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer * Deprecated method com.intellij.psi.search.FilenameIndex.getFilesByName(com.intellij.openapi.project.Project project, java.lang.String name, com.intellij.psi.search.GlobalSearchScope scope) : com.intellij.psi.PsiFile[] is invoked in com.jetbrains.lang.dart.ide.runner.server.vmService.DartVmServiceDebugProcess.lambda$guessRemoteProjectRoot$2(String, VirtualFile) : PsiFile[] * Deprecated method com.intellij.ui.CheckboxTreeBase.CheckboxTreeCellRendererBase.getCheckbox() : javax.swing.JCheckBox is invoked in com.jetbrains.lang.dart.sdk.DartConfigurable$2.customizeRenderer(JTree, Object, boolean, boolean, boolean, int, boolean) : void * Experimental API class com.redhat.devtools.lsp4ij.client.features.LSPClientFeatures is referenced in com.jetbrains.lang.dart.lsp.DartLanguageServerFactory.createClientFeatures() : LSPClientFeatures. This class can be changed in a future release leading to incompatibilities diff --git a/third_party/tool/baseline/261/verifier-baseline.txt b/third_party/tool/baseline/261/verifier-baseline.txt index e19361bc0..47e8ac737 100644 --- a/third_party/tool/baseline/261/verifier-baseline.txt +++ b/third_party/tool/baseline/261/verifier-baseline.txt @@ -1,48 +1,19 @@ -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.$$$setupUI$$$() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.applyEditorTo(DartRemoteDebugConfiguration) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.initDartProjectsCombo(Project) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.myDartProjectCombo : ComboboxWithBrowseButton -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.ide.runner.server.ui.DartRemoteDebugConfigurationEditor.setSelectedProjectPath(String) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.() -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.addSettingsStateListener(WebProjectGenerator.SettingsStateListener) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.createUIComponents() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.enableIntellijLiveValidation() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.getSettings() : DartProjectWizardData -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.lambda$startLoadingTemplates$2(AsyncProcessIcon) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.mySdkPathComboWithBrowse : ComboboxWithBrowseButton -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.onSdkPathChanged() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.validate() : ValidationInfo -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.createUIComponents() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.getTextFromCombo(ComboboxWithBrowseButton) : String -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.initDartSdkControls() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.mySdkPathComboWithBrowse : ComboboxWithBrowseButton -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartConfigurable.reset() : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartSdkUtil.initDartSdkControls(Project, ComboboxWithBrowseButton, JBLabel) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartSdkUtil$2.(ComboboxWithBrowseButton, JBLabel) -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartSdkUtil$2.textChanged(DocumentEvent) : void -* Deprecated class com.intellij.ui.ComboboxWithBrowseButton is referenced in com.jetbrains.lang.dart.sdk.DartSdkUtil$2.val$dartSdkPathComponent : ComboboxWithBrowseButton * Deprecated constructor com.intellij.codeInsight.template.TemplateContextType.(java.lang.String id, java.lang.String presentableName, java.lang.Class baseContextType) is invoked in com.jetbrains.lang.dart.ide.template.DartTemplateContextType.(String, String, Class) * Deprecated constructor com.intellij.util.xmlb.SkipDefaultValuesSerializationFilters.() is invoked in com.jetbrains.lang.dart.ide.runner.base.DartRunConfigurationBase.writeExternal(Element) : void * Deprecated constructor com.intellij.util.xmlb.SkipDefaultValuesSerializationFilters.() is invoked in com.jetbrains.lang.dart.ide.runner.server.DartRemoteDebugConfiguration.writeExternal(Element) : void * Deprecated constructor com.intellij.util.xmlb.SkipDefaultValuesSerializationFilters.() is invoked in com.jetbrains.lang.dart.ide.runner.server.webdev.DartWebdevConfiguration.writeExternal(Element) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.addSettingsStateListener(WebProjectGenerator.SettingsStateListener) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.lambda$addSettingsStateListener$6(WebProjectGenerator.SettingsStateListener, ActionEvent) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer.lambda$addSettingsStateListener$7(WebProjectGenerator.SettingsStateListener, ListSelectionEvent) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer$4.(DartGeneratorPeer, WebProjectGenerator.SettingsStateListener) -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer$4.textChanged(DocumentEvent) : void -* Deprecated interface com.intellij.platform.WebProjectGenerator.SettingsStateListener is referenced in com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer$4.val$stateListener : WebProjectGenerator.SettingsStateListener * Deprecated method com.google.dart.server.generated.AnalysisServer.analysis_getReachableSources(java.lang.String arg0, com.google.dart.server.GetReachableSourcesConsumer arg1) : void is overridden in class com.google.dart.server.internal.remote.RemoteAnalysisServerImpl * Deprecated method com.google.dart.server.generated.AnalysisServer.analysis_updateOptions(org.dartlang.analysis.server.protocol.AnalysisOptions arg0) : void is overridden in class com.google.dart.server.internal.remote.RemoteAnalysisServerImpl * Deprecated method com.google.dart.server.generated.AnalysisServer.completion_registerLibraryPaths(java.util.List arg0) : void is overridden in class com.google.dart.server.internal.remote.RemoteAnalysisServerImpl * Deprecated method com.google.dart.server.generated.AnalysisServer.execution_setSubscriptions(java.util.List arg0) : void is overridden in class com.google.dart.server.internal.remote.RemoteAnalysisServerImpl * Deprecated method com.intellij.codeInsight.daemon.DaemonCodeAnalyzer.restart() : void is invoked in com.jetbrains.lang.dart.analyzer.DartServerData.lambda$forceFileAnnotation$5(Project) : void -* Deprecated method com.intellij.codeInsight.daemon.DaemonCodeAnalyzer.restart() : void is invoked in com.jetbrains.lang.dart.sdk.DartConfigurable.lambda$apply$5(boolean) : void +* Deprecated method com.intellij.codeInsight.daemon.DaemonCodeAnalyzer.restart() : void is invoked in com.jetbrains.lang.dart.sdk.DartConfigurable.lambda$apply$6(boolean) : void * Deprecated method com.intellij.codeInsight.daemon.impl.PsiElementListNavigator.openTargets(com.intellij.openapi.editor.Editor e, T[] targets, java.lang.String title, java.lang.String findUsagesTitle, javax.swing.ListCellRenderer listRenderer) : void is invoked in com.jetbrains.lang.dart.ide.actions.DartServerGotoSuperHandler.invoke(Project, Editor, PsiFile) : void * Deprecated method com.intellij.codeInsight.template.TemplateContextType.isInContext(com.intellij.psi.PsiFile file, int offset) : boolean is overridden in class com.jetbrains.lang.dart.ide.template.DartTemplateContextType * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.analyzer.DartAnalysisServerErrorHandler.handleError(String, String, boolean, String, String) : void * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.ide.actions.DartEditorNotificationsProvider.EnableDartSupportForModule.run() : void -* Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.ide.errorTreeView.DartProblemsView.showNotification(NotificationType, String, String, Icon, boolean) : void * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.ide.errorTreeView.DartProblemsView$3.hyperlinkActivated(Notification, HyperlinkEvent) : void +* Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.ide.errorTreeView.DartProblemsView.showNotification(NotificationType, String, String, Icon, boolean) : void * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.pubServer.PubServerService.PubServeOutputListener.showNotificationIfNeeded(boolean) : void * Deprecated method com.intellij.notification.Notification.setListener(com.intellij.notification.NotificationListener listener) : com.intellij.notification.Notification is invoked in com.jetbrains.lang.dart.sdk.DartSdkUpdateChecker.notifySdkUpdateAvailable(Project, String, String, String) : void * Deprecated method com.intellij.openapi.actionSystem.ActionPlaces.isMainMenuOrActionSearch(java.lang.String place) : boolean is invoked in com.jetbrains.lang.dart.ide.runner.actions.DartPopFrameAction.update(AnActionEvent) : void @@ -53,7 +24,6 @@ * Deprecated method com.intellij.openapi.application.ReadAction.compute(com.intellij.openapi.util.ThrowableComputable action) : T is invoked in com.jetbrains.lang.dart.ide.runner.server.vmService.DartVmServiceDebugProcess.guessRemoteProjectRoot(ElementList) : void * Deprecated method com.intellij.openapi.startup.StartupManager.runWhenProjectIsInitialized(java.lang.Runnable arg0) : void is invoked in com.jetbrains.lang.dart.projectWizard.DartModuleBuilder.runWhenNonModalIfModuleNotDisposed(Runnable, Module) : void * Deprecated method com.intellij.openapi.vfs.VirtualFileManager.addVirtualFileListener(com.intellij.openapi.vfs.VirtualFileListener arg0, com.intellij.openapi.Disposable arg1) : void is invoked in com.jetbrains.lang.dart.pubServer.PubServerManager.(Project) -* Deprecated method com.intellij.platform.ProjectGeneratorPeer.addSettingsStateListener(com.intellij.platform.WebProjectGenerator.SettingsStateListener listener) : void is overridden in class com.jetbrains.lang.dart.projectWizard.DartGeneratorPeer * Deprecated method com.intellij.psi.search.FilenameIndex.getFilesByName(com.intellij.openapi.project.Project project, java.lang.String name, com.intellij.psi.search.GlobalSearchScope scope) : com.intellij.psi.PsiFile[] is invoked in com.jetbrains.lang.dart.ide.runner.server.vmService.DartVmServiceDebugProcess.lambda$guessRemoteProjectRoot$2(String, VirtualFile) : PsiFile[] * Deprecated method com.intellij.ui.CheckboxTreeBase.CheckboxTreeCellRendererBase.getCheckbox() : javax.swing.JCheckBox is invoked in com.jetbrains.lang.dart.sdk.DartConfigurable$2.customizeRenderer(JTree, Object, boolean, boolean, boolean, int, boolean) : void * Deprecated method com.intellij.xdebugger.XDebuggerManager.startSession(com.intellij.execution.runners.ExecutionEnvironment arg0, com.intellij.xdebugger.XDebugProcessStarter arg1) : com.intellij.xdebugger.XDebugSession is invoked in com.jetbrains.lang.dart.ide.runner.DartRunner.doExecuteDartDebug(RunProfileState, ExecutionEnvironment, String) : RunContentDescriptor @@ -66,7 +36,6 @@ * Experimental API class com.redhat.devtools.lsp4ij.client.features.LSPClientFeatures is referenced in com.jetbrains.lang.dart.lsp.DartLspClientFeatures.createLauncherBuilder() : Launcher.Builder. This class can be changed in a future release leading to incompatibilities * Experimental API constructor com.redhat.devtools.lsp4ij.client.features.LSPClientFeatures.() is invoked in com.jetbrains.lang.dart.lsp.DartLspClientFeatures.(). This constructor can be changed in a future release leading to incompatibilities * Experimental API method com.intellij.openapi.command.CoroutinesKt.writeCommandAction(com.intellij.openapi.project.Project project, java.lang.String commandName, kotlin.jvm.functions.Function0 action, kotlin.coroutines.Continuation $completion) : java.lang.Object is invoked in com.jetbrains.lang.dart.analyzer.DartAnalysisServerImpl.lsp_workspaceApplyEdit$1.invokeSuspend(Object) : Object. This method can be changed in a future release leading to incompatibilities -* Experimental API method com.intellij.openapi.components.ComponentManagerEx.getServiceAsync(java.lang.Class keyClass, kotlin.coroutines.Continuation $completion) : java.lang.Object is invoked in com.jetbrains.lang.dart.ide.actions.DartPubActionBase.Companion.showPubOutputConsole(Module, GeneralCommandLine, OSProcessHandler, VirtualFile, String, Continuation) : Object. This method can be changed in a future release leading to incompatibilities * Experimental API method com.redhat.devtools.lsp4ij.client.features.LSPClientFeatures.createLauncherBuilder() : org.eclipse.lsp4j.jsonrpc.Launcher.Builder is overridden in class com.jetbrains.lang.dart.lsp.DartLspClientFeatures. This method can be changed in a future release leading to incompatibilities * Experimental API method com.redhat.devtools.lsp4ij.client.features.LSPClientFeatures.getProject() : com.intellij.openapi.project.Project is invoked in com.jetbrains.lang.dart.lsp.DartLauncherBuilder.createMessageProducer(InputStream, MessageJsonHandler, MessageIssueHandler) : MessageProducer. This method can be changed in a future release leading to incompatibilities * Internal class com.intellij.util.PlatformUtils is referenced in com.jetbrains.lang.dart.sdk.DartSdkLibUtil.isIdeWithMultipleModuleSupport() : boolean. This class is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. @@ -76,8 +45,6 @@ * Internal field com.intellij.execution.testframework.sm.runner.states.TestStateInfo.Magnitude.ERROR_INDEX : com.intellij.execution.testframework.sm.runner.states.TestStateInfo.Magnitude is accessed in com.jetbrains.lang.dart.ide.runner.test.DartTestRerunner.computeTestNameRegexp() : String. This field is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the field is not supposed to be used in client code. * Internal field com.intellij.execution.testframework.sm.runner.states.TestStateInfo.Magnitude.FAILED_INDEX : com.intellij.execution.testframework.sm.runner.states.TestStateInfo.Magnitude is accessed in com.jetbrains.lang.dart.ide.runner.test.DartTestRerunner.computeTestNameRegexp() : String. This field is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the field is not supposed to be used in client code. * Internal field com.intellij.execution.testframework.sm.runner.states.TestStateInfo.Magnitude.TERMINATED_INDEX : com.intellij.execution.testframework.sm.runner.states.TestStateInfo.Magnitude is accessed in com.jetbrains.lang.dart.ide.runner.test.DartTestRerunner.computeTestNameRegexp() : String. This field is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the field is not supposed to be used in client code. -* Internal interface com.intellij.openapi.components.ComponentManagerEx is referenced in com.jetbrains.lang.dart.ide.actions.DartPubActionBase.Companion.showPubOutputConsole(Module, GeneralCommandLine, OSProcessHandler, VirtualFile, String, Continuation) : Object. This interface is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the class is not supposed to be used in client code. -* Internal method com.intellij.openapi.components.ComponentManagerEx.getServiceAsync(java.lang.Class keyClass, kotlin.coroutines.Continuation $completion) : java.lang.Object is invoked in com.jetbrains.lang.dart.ide.actions.DartPubActionBase.Companion.showPubOutputConsole(Module, GeneralCommandLine, OSProcessHandler, VirtualFile, String, Continuation) : Object. This method is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the method is not supposed to be used in client code. * Internal method com.intellij.ui.IconManager.loadRasterizedIcon(java.lang.String arg0, java.lang.String arg1, java.lang.ClassLoader arg2, int arg3, int arg4) : javax.swing.Icon is invoked in icons.DartIcons.load(String, String, int, int) : Icon. This method is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the method is not supposed to be used in client code. * Internal method com.intellij.util.net.NetKt.loopbackSocketAddress(int port) : java.net.InetSocketAddress is invoked in com.jetbrains.lang.dart.pubServer.PubServerService.connectToProcess(AsyncPromise, int, OSProcessHandler, Consumer) : void. This method is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the method is not supposed to be used in client code. * Internal method com.intellij.util.PlatformUtils.getPlatformPrefix() : java.lang.String is invoked in com.jetbrains.lang.dart.sdk.DartSdkLibUtil.isIdeWithMultipleModuleSupport() : boolean. This method is marked with @org.jetbrains.annotations.ApiStatus.Internal annotation or @com.intellij.openapi.util.IntellijInternalApi annotation and indicates that the method is not supposed to be used in client code. diff --git a/third_party/tool/update_baselines.bat b/third_party/tool/update_baselines.bat new file mode 100644 index 000000000..1368bc621 --- /dev/null +++ b/third_party/tool/update_baselines.bat @@ -0,0 +1,46 @@ +@echo off +setlocal enabledelayedexpansion + +:: Script to create or update baselines based on current verification reports. +:: Run this from the repository root. + +if not exist "third_party" ( + echo Error: This script must be run from the repository root directory. + exit /b 1 +) + +echo Running plugin verification... +if exist "third_party\build\reports\pluginVerifier" ( + rd /s /q "third_party\build\reports\pluginVerifier" +) + +pushd third_party +call gradlew.bat verifyPlugin +popd + +set "versions=251 252 253 261" + +for %%v in (%versions%) do ( + echo Processing baseline for %%v... + set "BASELINE=third_party\tool\baseline\%%v\verifier-baseline.txt" + set "REPORT=" + + :: Find the first report.md in a directory matching the version using PowerShell for robustness + for /f "usebackq delims=" %%f in (`powershell -NoProfile -Command "Get-ChildItem -Path 'third_party\build\reports\pluginVerifier' -Filter 'report.md' -Recurse | Where-Object { $_.FullName -match '-%%v\.' } | Select-Object -ExpandProperty FullName -First 1"`) do ( + set "REPORT=%%f" + ) + + if defined REPORT ( + echo Extracting issues from !REPORT! + if not exist "third_party\tool\baseline\%%v" mkdir "third_party\tool\baseline\%%v" + + :: Extract lines starting with * and sort them (case-sensitive) + powershell -NoProfile -Command "Get-Content -LiteralPath '!REPORT!' | Where-Object { $_ -match '^\*' } | Sort-Object -CaseSensitive | Set-Content -LiteralPath '!BASELINE!'" + + echo Updated baseline at !BASELINE! + ) else ( + echo Warning: Report does not exist for version %%v. Skipping. + ) +) + +echo Done updating baselines.