Skip to content

Releases: JetBrains/intellij-platform-gradle-plugin

2.10.4

02 Nov 16:37
e70d705

Choose a tag to compare

Added

  • Add bundledPlugin(id: String) helper to IntelliJPlatformPluginsExtension

Fixed

  • Use withRandomSuffix for intellijPlatformConfigurationName in local dependency configurations defined for Plugin Verifier

2.10.3

31 Oct 07:59
4de9a3c

Choose a tag to compare

Added

  • Add --list-ides CLI option to verifyPlugin task to list IDEs that will be used for verification without performing actual verification.

Fixed

  • Security update

2.10.2

22 Oct 20:13
64925d2

Choose a tag to compare

Fixed

  • Cast IntelliJPlatformType.fromCode to IntelliJPlatformType again to correctly apply the IJ Ultimate/IJ Unified distribution constraints for transparency reasons.

2.10.1

19 Oct 16:02
7ec218c

Choose a tag to compare

Fixed

  • Fix the incorrect configuration name in the requestedIntelliJPlatforms.set method call for local IntelliJ Platform dependency.
  • Refactor dependency helper methods to improve validation and replace direct providers mapping with a cached provider for better lazy configuration resolution handling.

2.10.0

14 Oct 06:06

Choose a tag to compare

Added

  • Add composeUI() dependency helper to add Compose UI framework dependencies.
  • Introduce testFramework support in intellijPlatformTesting extension and add corresponding test cases. #2022
  • Add ModuleDependency.excludeKotlinStdlib() and ModuleDependency.excludeCoroutines() extension function to exclude all Kotlin stdlib and Kotlinx Coroutines transitive dependencies #2029
  • Improve deprecated IntelliJ Platform artifacts based on their version and introduce error logging for them.
  • Add PyCharm platform type with corresponding artifact coordinates. #2036
  • Add pycharm dependency helpers to support the unified PyCharm platform type. #2036
  • Integration with Problems API

Changed

  • Update minimal supported Gradle version to 8.13
  • Revert deprecation of intellijIdeaCommunity and intellijIdeaUltimate dependency helpers.

Fixed

  • Refactor IntelliJ Platform type resolution and validation to exclude unavailable distribution constrains #2027
  • Refactor ide and ides methods to rely on the cacheable IntelliJ Platform dependency creation.
  • Refactor IntelliJPlatformDependenciesHelper to replace DependencyHandler with DependencyFactory for dependency creation. #2024
  • Handle unspecified project version in PluginConfiguration to prevent setting it to the "unspecified" value.

2.9.0

05 Sep 19:29
79f8625

Choose a tag to compare

Added

  • Add IntellijIdea platform type with corresponding artifact coordinates. #2021
  • Add intellijIdea dependency helpers to support the unified IntelliJ IDEA platform type. #2021

Changed

  • Update String.parseIdeNotation() to throw an exception for invalid IntelliJ Platform notation instead of returning a default value
  • Deprecate IntelliJPlatformType.IntellijIdeaCommunity and IntelliJPlatformType.IntellijIdeaUltimate with replacement suggestions to IntelliJPlatformType.IntellijIdea. #2021
  • Deprecate intellijIdeaCommunity and intellijIdeaUltimate dependency helpers with replacement suggestions to intellijIdea. #2021
  • Support version-specific IntelliJ Platform type resolution and introduce UNIFIED_INTELLIJ_IDEA_VERSION and UNIFIED_INTELLIJ_IDEA_BUILD_NUMBER constants to help distinguish between IntelliJ IDEA and IntelliJ IDEA Ultimate when parsing IU code.

Fixed

  • Update the artifact URL pattern to include classifier in .tar.gz naming for correct source resolution

2.8.0

02 Sep 20:40
6c4cef1

Choose a tag to compare

Added

  • Add license information into a published POM file
  • Introduce intellijPlatform.caching extension
  • Allow for customizing the cached IntelliJ Platform directory name with intellijPlatform.caching.ides.name
  • Introduce intellijPlatform.caching.ides.enabled to control IntelliJ Platform caching globally

Changed

  • Deprecate intellijPlatform.cache in favor of intellijPlatform.caching.path
  • Deprecate useCustomCache in favor of useCache when defining a dependency on the IntelliJ Platform

Fixed

  • Reorder configuration creation to avoid ConcurrentModificationException when using the custom cache.
  • Correctly resolve ~ in GradleProperties to the users home directory.
  • Remove extendsFrom usages in custom IntelliJ Platform test configurations to avoid propagation of dependencies on bundled modules and plugins coming from the base IntelliJ Platform.
  • Refactor IntelliJPlatformDependenciesExtension to replace lambda-based configuration with Action for improved interoperability and Groovy support #2017.
  • Refactor LocalIvyArtifactPathComponentMetadataRule to validate module type and version against productInfo when resolving Ivy artifacts. #2015

2.7.2

14 Aug 12:26
75c16fe

Choose a tag to compare

Fixed

  • Validate artifact file existence in LocalIvyArtifactPathComponentMetadataRule and skip non-existent paths to prevent resolution errors.

2.7.1

09 Aug 08:24
0f6b53e

Choose a tag to compare

Added

  • Add RubyMine com.jetbrains.intellij.rubymine:rubymine Maven coordinates to the IntelliJPlatformType

Changed

  • Update minimal supported Gradle version to 8.6

Fixed

  • Add a check for target file existence before creating and writing to JarOutputStream. #1988
  • Fix the incorrect rsync exclusion pattern in DmgExtractorValueSource
  • Fix macOS missing nio-fs.jar on bootclasspath when running the runIde task against the local IDE. #1994
  • Pass sandbox properties path with invariant separators.
  • Added missing retrofit annotations to IdeServicesPluginRepositoryService.uploadByStringIdAndFamily
  • Fixed: SignPluginTask keystore options are now honored; the task runs with keystore-only configuration (no PEM key/cert required). #2001

2.7.0

25 Jul 22:01
c77ee75

Choose a tag to compare

Breaking Changes

  • pluginModule(Dependency) dependency helper no longer bundles module into the main plugin jar, use pluginComposedModule(Dependency) instead.
  • Replace IdeServicesPluginRepositoryService.uploadByStringId with IdeServicesPluginRepositoryService.uploadByStringIdAndFamily

Added

  • Add missing org.jetbrains.kotlin.platform.type=jvm for custom test runtime classpath configuration
  • Add support for JetBrains Client and resolving the IntelliJ Platform in frontend mode
  • Add VerifyPluginProjectConfigurationMutedMessages Gradle property to mute specific messages reported by the verifyPluginProjectConfiguration task #1958
  • Create the .toolbox-ignore marker file next to the product-info.json file to avoid the Toolbox App from indexing it TBX-14798
  • Introduce IntelliJPlatformCacheResolver for improved IDE dependency resolution and caching #1601
  • Introduce useCustomCache dependency configuration property to utilize the IntelliJPlatformCacheResolver custom caching mechanism.
  • ModuleAware to handle information if the current project represents an IntelliJ Platform plugin module
  • pluginComposedModule(Dependency) helper for bundling (composing) the module dependency into the main plugin jar
  • Make Any.toIntelliJPlatformType() publicly available and introduce Provider<*>.toIntelliJPlatformType()

Changed

  • Introduce a new set of dependency helpers to configure the IntelliJ Platform dependency with a lambda function instead of regular parameters, marking other helpers deprecated.
  • pluginModule(Dependency) helper now moves the module dependency into the lib/modules directory of the plugin jar.
  • Search for a bundled plugin using module alias if not resolved by ID
  • Stop including the intellijPlatformPluginModule configuration in the intellijPlatformClasspath as it's already bundled within the composed jar.
  • Refactor PrepareJarSearchableOptionsTask to handle plugin modules and improve file filtering logic.
  • Refactor PluginVerification.Ides to introduce configurable create dependency creation helpers; deprecate legacy ide and ides methods in favor of a lambda-based approach.

Fixed

  • Test framework dependency is not provided to a custom testIde task #1945
  • Respect the custom IntelliJ Platform configuration name when creating a custom task using the local IntelliJ Platform path
  • Properly share the requested IntelliJ Platform between internal Gradle plugin components
  • Refactor CollectorTransformer to exclude tests-related jars using filterNot as minus doesn't remove duplicates
  • Refactor JarSearchableOptionsTask to improve the searchableOption outgoing artifact registration #1968
  • Do not add default dependencies related to the code instrumentation if disabled #1983
  • Introduce CoroutinesJavaAgentValueSource for dynamic coroutines debug agent creation #1977