mirror of
https://github.com/JetBrains/intellij-sdk-code-samples.git
synced 2025-07-28 01:07:49 +08:00
15 KiB
15 KiB
Please see Incompatible API Changes on how to verify compatibility.
Changes from API marked with
@Deprecated(forRemoval=true)
or any oforg.jetbrains.annotations.ApiStatus
@Experimental
,@ScheduledForRemoval
, or@Internal
are not listed here, as incompatible changes are to be expected.For API annotated with
ApiStatus.@Internal
, see for more details and replacements.
{type="note"}
Java 17 is required when targeting 2022.2 or later only.
Java 11 is required (blog post) when targeting 2020.3 and later only.
Please make sure to always upgrade
gradle-intellij-plugin
to the latest version
{type="note"}
Early Access Program (EAP) releases of upcoming versions are available here.
2022.2
IntelliJ Platform 2022.2
com.intellij.openapi.actionSystem.TypeSafeDataProvider
class removed- Use
com.intellij.openapi.actionSystem.DataProvider
class instead. com.intellij.openapi.actionSystem.DataSink
class removed- Removed along with
com.intellij.openapi.actionSystem.TypeSafeDataProvider
. com.intellij.openapi.vcs.changes.ui.ChangesBrowser
class removed- Use
com.intellij.openapi.vcs.changes.ui.ChangesBrowserBase
orcom.intellij.openapi.vcs.changes.ui.SimpleChangesBrowser
instead. com.intellij.openapi.vcs.changes.ui.ChangesBrowser.MyUseCase
class removed- Removed along with
com.intellij.openapi.vcs.changes.ui.ChangesBrowser
. com.intellij.openapi.vcs.changes.ui.ChangesTreeList
class removed- Use
com.intellij.openapi.vcs.changes.ui.ChangesTree
orcom.intellij.openapi.vcs.changes.ui.ChangesTreeImpl
instead.
Java Plugin 2022.2
com.intellij.codeInspection.javaDoc.JavaDocLocalInspection
class removed- Use
com.intellij.codeInspection.javaDoc.JavadocDeclarationInspection.ADDITIONAL_TAGS
field instead ofJavaDocLocalInspection.myAdditionalJavadocTags
.
Plugin DevKit Plugin 2022.2
icons.DevkitIcons
class renamed toorg.jetbrains.idea.devkit.DevKitIcons
- Use
org.jetbrains.idea.devkit.DevKitIcons
instead. icons.DevkitIcons.Gutter
class renamed toorg.jetbrains.idea.devkit.DevKitIcons.Gutter
- Use
org.jetbrains.idea.devkit.DevKitIcons.Gutter
instead.
Collaboration Tools 2022.2
com.intellij.collaboration.auth.ui.AccountsListModelBase.notifyCredentialsChanged(A account)
method visibility changed from protected to private- Method hidden for better encapsulation.
com.intellij.collaboration.auth.ui.AccountsPanelFactory.INSTANCE
field removed- Factory is now a factory.
com.intellij.collaboration.auth.ui.LoadingAccountsDetailsProvider.DetailsLoadingResult
class removed- Better API introduced in the form of
com.intellij.collaboration.auth.ui.AccountsDetailsLoader
. com.intellij.collaboration.auth.ui.LoadingAccountsDetailsProvider
class removed- Better API introduced in the form of
com.intellij.collaboration.auth.ui.AccountsDetailsLoader
. com.intellij.collaboration.ui.codereview.avatar.CachingAvatarIconsProvider
class renamed tocom.intellij.collaboration.ui.codereview.avatar.CachingCircleImageIconsProvider
- Icon provider implementation changes to async.
GitHub 2022.2
org.jetbrains.plugins.github.api.GithubApiRequestExecutorManager.getExecutor(GithubAccount)
method return type changed fromorg.jetbrains.plugins.github.api.GithubApiRequestExecutor.WithTokenAuth
toorg.jetbrains.plugins.github.api.GithubApiRequestExecutor
- Hidden implementation details.
org.jetbrains.plugins.github.api.GithubApiRequestExecutorManager.getExecutor(GithubAccount, Project)
method return type changed fromorg.jetbrains.plugins.github.api.GithubApiRequestExecutor.WithTokenAuth
toorg.jetbrains.plugins.github.api.GithubApiRequestExecutor
- Hidden implementation details.
org.jetbrains.plugins.github.api.GithubApiRequestExecutorManager.getExecutor(GithubAccount, JComponent)
method return type changed fromorg.jetbrains.plugins.github.api.GithubApiRequestExecutor.WithTokenAuth
toorg.jetbrains.plugins.github.api.GithubApiRequestExecutor
- Hidden implementation details.
Grazie Plugin 2022.2
- Method
com.intellij.grazie.GrazieBundle.message(key, parameters)
marked static - To shorten Java callers.
2022.1
IntelliJ Platform 2022.1
org.apache.log4j
package removed- log4j library removed from IntelliJ Platform, please see this blog post for migration instructions.
org.slf4j
package removed- log4j library removed from IntelliJ Platform, please see this blog post for migration instructions.
com.intellij.openapi.diagnostic.Log4jBasedLogger
class removed- log4j library removed from IntelliJ Platform, please see this blog post for migration instructions.
com.intellij.platform.DirectoryProjectConfigurator.configureProject(Project, VirtualFile, Ref<Module>, boolean)
marked abstract- Implement it instead of removed one.
com.intellij.psi.impl.java.stubs.index.JavaStubIndexKeys.CLASS_FQN
field type changed fromStubIndexKey<Integer, PsiClass>
toStubIndexKey<CharSequence, PsiClass>
JavaFullClassNameIndex
now takesCharSequence
instead of itshashCode
to allow specific optimizations.com.intellij.psi.impl.java.stubs.index.JavaFullClassNameIndex.getKey
method return type changed fromStubIndexKey<Integer, PsiClass>
toStubIndexKey<CharSequence, PsiClass>
JavaFullClassNameIndex
now takesCharSequence
instead of itshashCode
to allow specific optimizations.com.intellij.psi.impl.java.stubs.index.JavaFullClassNameIndex.get(Integer, Project, GlobalSearchScope)
method parameter type changed fromInteger
toCharSequence
JavaFullClassNameIndex
now takesCharSequence
instead of itshashCode
to allow specific optimizations.com.jcraft.jsch
package removed- JSch library was removed, bundle it with your plugin instead.
com.intellij.diagnostic.DialogAppender.addFilter(Filter)
method removedDialogAppender
now implementsjava.util.logging.Handler
, usesetFilter
method if you need to apply a filter.com.intellij.psi.impl.cache.impl.BaseFilterLexerUtil.ScanContent
class removed- Todo index is removed from the indexing procedure, use specific
calcIdEntries
orcalcTodoEntries
method instead. com.intellij.psi.impl.cache.impl.BaseFilterLexerUtil.scanContent(FileContent, IdAndToDoScannerBasedOnFilterLexer)
method removed- Todo index is removed from the indexing procedure, use specific
calcIdEntries
orcalcTodoEntries
method instead. com.intellij.util.ui.StartupUiUtil.createStyleSheet(String)
method removed- Method moved to
com.intellij.util.ui.StyleSheetUtil
Collaboration Tools 2022.1
com.intellij.collaboration.auth.ui.AccountsPanelFactory.accountsPanel(Row, AccountManager, PersistentDefaultAccountHolder, AccountsListModel, AccountsDetailsProvider, Disposable, Icon)
method removed- Support for default accounts required a signature change.
Markdown Plugin 2022.1
org.intellij.markdown.parser.constraints.MarkdownConstraints.Companion
class removed- Some methods from a companion object were moved to
CommonMarkdownConstraints
and to extension functions onMarkdownConstraints
. org.intellij.markdown.parser.constraints.MarkdownConstraints.Companion
field removed- Some methods from a companion object were moved to
CommonMarkdownConstraints
and to extension functions onMarkdownConstraints
. org.intellij.markdown.parser.constraints.MarkdownConstraints
class now interface- Use
CommonMarkdownConstraints
for default method implementations instead. org.intellij.markdown.parser.markerblocks.providers.AtxHeaderProvider(boolean)
constructor parameterboolean
removedAtxHeaderProvider
now always requires at least one space between#
and its content as specified by the CommonMark spec.org.intellij.markdown.html.HtmlGenerator.generateHtml()
method removed- Use
org.intellij.markdown.html.HtmlGenerator.generateHtml(org.intellij.markdown.html.HtmlGenerator.TagRenderer)
instead. org.intellij.markdown.parser.markerblocks.MarkerBlockProvider.Companion.passSmallIndent(CharSequence)
method removed- Use
org.intellij.markdown.parser.markerblocks.MarkerBlockProvider.Companion.passSmallIndent(CharSequence, Integer)
instead.
Database Tools and SQL Plugin 2022.1
com.intellij.database.datagrid.DataProducer.processRequest(DataRequest)
method parameter type changed fromDataRequest
toGridDataRequest
GridDataRequest
is a part of new API for async loading of table data. It's not possible to keep old method with default implementation becauseDataProducer
will no longer have dependency onDataRequest
. Plugins need to be recompiled to maintain bytecode compatibility.com.intellij.database.datagrid.DataRequest.RawQueryRequest.afterLastRowAdded(DataRequest.Context, int)
method parameter type changed fromDataRequest.Context
toGridDataRequest.Context
- The signature of the method was changed in the interface
com.intellij.database.datagrid.DataConsumer
that is now a part of new API for async loading of table data. Change the parameter type of the overridden method and recompile plugin to maintain bytecode compatibility. com.intellij.database.datagrid.DataConsumer.addRows(DataRequest.Context, List<DataConsumer.Row>)
method parameter type changed fromDataRequest.Context
toGridDataRequest.Context
- The signature of the method was changed in the interface
com.intellij.database.datagrid.DataConsumer
that is now a part of new API for async loading of table data. Change the parameter type of the overridden method and recompile plugin to maintain bytecode compatibility. com.intellij.database.datagrid.DataConsumer.addRows(DataRequest.Context, List<DataConsumer.Row>)
method parameter type changed fromList<DataConsumer.Row>
toList<? extends GridRow>
- The signature of the method was changed in the interface
com.intellij.database.datagrid.DataConsumer
that is now a part of new API for async loading of table data. Change the parameter type of the overridden method and recompile plugin to maintain bytecode compatibility. com.intellij.database.extractors.ObjectFormatter.getPlainValue(Object, DataConsumer.Column, Dbms)
method removed- Method was removed because we refactor table editor API. It will not depend on Dbms anymore. Please use
ObjectFormatter.objectToString
instead. com.intellij.database.DatabaseDataKeys.DATA_SOURCE_KEY
field removedDatabaseDataKeys
no longer extendsDatabaseDataKeysCore
becauseDatabaseDataKeys
was moved to a separate module for table editor.DATA_SOURCE_KEY
now has to be accessed directly viaDatabaseDataKeysCore
.com.intellij.database.extractors.ObjectFormatter
class now interface- Method was removed because we refactor table editor API. New API will allow to use table editor in other products and fully customize it.