mirror of
https://github.com/JetBrains/intellij-sdk-code-samples.git
synced 2025-07-28 01:07:49 +08:00
12 KiB
12 KiB
title |
---|
Incompatible Changes in IntelliJ Platform and Plugins API |
Changes in IntelliJ Platform 2018.1
Change | How to deal with it |
---|---|
com.google.common.base.Objects.ToStringHelper class removed |
Use com.google.common.base.MoreObjects.ToStringHelper instead |
com.google.common.util.concurrent.Futures.get method removed |
Use com.google.common.util.concurrent.Futures.getChecked instead |
org.tmatesoft.svn package removed |
Use classes from org.jetbrains.idea.svn instead |
org.jetbrains.idea.svn.svnkit.SvnKitManager class removed |
Use org.jetbrains.idea.svn.api.ClientFactory instead |
com.intellij.ide.ui.laf.darcula.ui.TextFieldWithPopupHandlerUI constructor parameter JTextField removed |
Use com.intellij.ide.ui.laf.darcula.ui.TextFieldWithPopupHandlerUI default constructor instead |
com.intellij.ide.ui.laf.darcula.ui.DarculaTextFieldUI constructor parameter JTextField removed |
Use com.intellij.ide.ui.laf.darcula.ui.DarculaTextFieldUI default constructor instead |
com.intellij.ide.ui.laf.darcula.ui.DarculaComboBoxUI constructor parameter JComboBox removed |
Use com.intellij.ide.ui.laf.darcula.ui.DarculaComboBoxUI default constructor instead |
com.intellij.ide.ui.laf.darcula.ui.TextFieldWithPopupHandlerUI.myTextField field removed |
Use javax.swing.plaf.basic.BasicTextUI.getComponent() instead |
com.intellij.ide.ui.laf.darcula.ui.DarculaButtonUI.isDefaultButton method parameter type changed from javax.swing.JComponent to java.awt.Component |
This was done to avoid many redundant casts to javax.swing.JComponent |
com.intellij.ide.ui.laf.intellij.MacIntelliJIconCache class renamed to com.intellij.ide.ui.laf.IconCache |
Use more generic class name com.intellij.ide.ui.laf.IconCache |
Changes in PhpStorm and PHP plugin 2018.1
Change | How to deal with it |
---|---|
com.jetbrains.php.lang.documentation.phpdoc.parser.PhpDocElementTypes.DOC_COMMENT field type changed from com.intellij.psi.tree.ILazyParseableElementType to com.jetbrains.php.lang.documentation.phpdoc.psi.stubs.PhpDocCommentElementType |
In most of the cases it's enough to recompile the code. It may also be needed to check that the code doesn't rely on the field's type. |
com.jetbrains.php.lang.documentation.phpdoc.parser.PhpDocElementTypes.phpDocTag field type changed from com.jetbrains.php.lang.documentation.phpdoc.psi.PhpDocElementType to com.jetbrains.php.lang.documentation.phpdoc.psi.stubs.PhpDocTagElementType |
In most of the cases it's enough to recompile the code. It may also be needed to check that the code doesn't rely on the field's type. |
com.jetbrains.php.lang.documentation.phpdoc.parser.PhpDocElementTypes.phpDocReturn field type changed from com.jetbrains.php.lang.documentation.phpdoc.psi.PhpDocElementType to com.jetbrains.php.lang.documentation.phpdoc.psi.stubs.PhpDocTagElementType |
In most of the cases it's enough to recompile the code. It may also be needed to check that the code doesn't rely on the field's type. |
com.jetbrains.php.lang.documentation.phpdoc.parser.PhpDocElementTypes.phpDocMixin field type changed from com.jetbrains.php.lang.documentation.phpdoc.psi.PhpDocElementType to com.jetbrains.php.lang.documentation.phpdoc.psi.stubs.PhpDocTagElementType |
In most of the cases it's enough to recompile the code. It may also be needed to check that the code doesn't rely on the field's type. |
com.jetbrains.php.lang.documentation.phpdoc.parser.PhpDocElementTypes.phpDocThrows field type changed from com.jetbrains.php.lang.documentation.phpdoc.psi.PhpDocElementType to com.jetbrains.php.lang.documentation.phpdoc.psi.stubs.PhpDocTagElementType |
In most of the cases it's enough to recompile the code. It may also be needed to check that the code doesn't rely on the field's type. |
com.jetbrains.php.lang.documentation.phpdoc.parser.PhpDocElementTypes.phpDocParam field type changed from com.jetbrains.php.lang.documentation.phpdoc.psi.PhpDocElementType to com.jetbrains.php.lang.documentation.phpdoc.psi.stubs.PhpDocTagElementType |
In most of the cases it's enough to recompile the code. It may also be needed to check that the code doesn't rely on the field's type. |
com.jetbrains.php.lang.documentation.phpdoc.parser.PhpDocElementTypes.phpDocInlineTag field type changed from com.jetbrains.php.lang.documentation.phpdoc.psi.PhpDocElementType to com.jetbrains.php.lang.documentation.phpdoc.psi.stubs.PhpDocTagElementType |
In most of the cases it's enough to recompile the code. It may also be needed to check that the code doesn't rely on the field's type. |
com.jetbrains.php.lang.documentation.phpdoc.parser.tags.PhpDocTagParser.getElementType method return type changed from com.jetbrains.php.lang.documentation.phpdoc.psi.PhpDocElementType to com.intellij.psi.tree.IElementType |
In most of the cases it's enough to recompile the code. It's also necessary to change the return type of subclasses. |
com.jetbrains.php.lang.documentation.phpdoc.psi.impl.PhpDocCommentImpl superclass changed from com.intellij.psi.impl.source.tree.LazyParseablePsiElement to com.jetbrains.php.lang.psi.elements.impl.PhpPsiElementImpl |
It's necessary to check that the code doesn't rely on the superclass. |
com.jetbrains.php.lang.documentation.phpdoc.psi.impl.tags.PhpDocTagImpl superclass changed from com.jetbrains.php.lang.documentation.phpdoc.psi.impl.PhpDocPsiElementImpl to com.jetbrains.php.lang.psi.elements.impl.PhpNamedElementImpl |
It's necessary to check that the code doesn't rely on the superclass. The change also affects all the inheritors of PhpDocTagImpl . |
Changes in IntelliJ Platform 2017.3
Change | How to deal with it |
---|---|
com.intellij.internal.statistic.AbstractApplicationUsagesCollector class removed |
This class isn't supposed to be used in regular plugins. Override com.intellij.internal.statistic.AbstractProjectsUsagesCollector instead if you're developing an IDE with its own statistics services. |
com.intellij.internal.statistic.UsagesCollector.doPersistProjectUsages method removed |
This method isn't supposed to be used in regular plugins. There is no need to call this method anymore. |
org.apache.sanselan package removed |
Use classes from org.apache.commons.imaging instead |
com.intellij.psi.MultiplePsiFilesPerDocumentFileViewProvider.getLanguages abstract method added |
Implementation of this class are supposed to have several languages so you need to implement this method explicitly and return them all |
org.jetbrains.kotlin.idea.configuration.KotlinProjectConfigurator.changeCoroutineConfiguration abstract method added |
You need to implement this method and add the logic for updating the configuration in your build system |
org.jetbrains.kotlin.idea.configuration.KotlinProjectConfigurator.updateLanguageVersion abstract method added |
You need to implement this method and add the logic for updating the configuration in your build system |
org.jetbrains.kotlin.idea.configuration.KotlinProjectConfigurator.addLibraryDependency abstract method added |
You need to implement this method and add the logic for updating the configuration in your build system |
Changes in DataGrip and Database Tools plugin 2017.3
Change | How to deal with it |
---|---|
com.intellij.database.dataSource.DataSourceManager class removed |
Use com.intellij.database.psi.DbPsiFacade instead |
com.intellij.database.dataSource.DataSourceManagerEx class removed |
Use com.intellij.database.psi.DbPsiFacade instead |
com.intellij.database.dataSource.DataSource class removed |
Use com.intellij.database.psi.DbDataSource and com.intellij.database.model.DatabaseSystem instead. |
com.intellij.database.psi.DbDataSource.getModel method return type changed from DbElement -based model to DasObject -based model |
Use com.intellij.database.psi.DbPsiFacade.findElement to get the corresponding com.intellij.database.psi.DbElement wrapper when needed. |
com.intellij.database.view.DatabaseView.getTreeBuilder method removed |
Use LangDataKeys.PSI_ELEMENT_ARRAY.get(event) to get Database view selection |
Changes in PhpStorm and PHP plugin 2017.3
Change | How to deal with it |
---|---|
com.jetbrains.php.lang.psi.elements.Function.getReturnType() method return type changed from PsiElement to PhpReturnType |
Before method had been returning a com.jetbrains.php.lang.psi.elements.ClassReference . Now method returns com.jetbrains.php.lang.psi.elements.PhpReturnType . Method ReturnType.getClassReference() can be used if you need just a ClassReference . If you need to get the PhpType , use com.jetbrains.php.lang.psi.elements.Function.getReturnType.getType() method instead |
Changes in IntelliJ Platform 2016.3
Change | How to deal with it |
---|---|
ApplicationListener.afterWriteActionFinished abstract method added |
Implement this method or extend com.intellij.openapi.application.ApplicationAdapter class instead of implementing the interface |
Changes in IntelliJ Platform 2016.2
Change | How to deal with it |
---|---|
com.intellij.util.net.HttpConfigurable.PROXY_LOGIN field removed |
Use com.intellij.util.net.HttpConfigurable.getProxyLogin() instead |
com.intellij.util.net.HttpConfigurable.PROXY_PASSWORD_CRYPT field removed |
Use com.intellij.util.net.HttpConfigurable.getPlainProxyPassword() instead |
org.jetbrains.asm4 package removed |
Use classes from org.jetbrains.org.objectweb.asm package instead |