- move to java 25 folder
- update tests and fix error with incorrect resolve with new language levels
- IO.println will be updated later
(cherry picked from commit 93985096433766e33178da6048ce4554063841a2)
(cherry picked from commit 1245b45c8ef5860d2b27441666bd6eb4eea8df75)
IJ-MR-169535
GitOrigin-RevId: 416752bfd6663f4ebd684ec1a7273900c73b155d
- support new java file templates for java 25
(cherry picked from commit ae9df54a7ea1f55f68da5d3688a27bcdc4545850)
(cherry picked from commit e50ccc9076136085e88629b1f7f9f5f4162dd424)
IJ-MR-169535
GitOrigin-RevId: 7dbb94053e95dd7f65b87ad84c1cd95f3b4eb48f
see discussion in IJ-MR-167068
(cherry picked from commit 6d36cb4375f8f6a6d7d7b603de037c2c7a5255a8)
(cherry picked from commit bc222c301dfe54624b54c05431dadf0a5c0523dc)
IJ-MR-169535
GitOrigin-RevId: 05d36387c2949811727a8191dd8cf9a4bb70ee8e
This is important for scenarios of co-usage of the tools, which become more important when using worksapces.
(cherry picked from commit 1ee93831c703cf684c1e301f22217c699469e21c)
IJ-MR-167553
GitOrigin-RevId: 8f4f59499d7fa83e2664ca4389c2e6041740fe6d
Added koog to library-usage-statistics.xml and library-jar-statistics.xml
(cherry picked from commit 9e0e3dd94986564ad070e3a4467fc51d9e9718ec)
IJ-CR-166510
GitOrigin-RevId: 9fe9e0b847d451ff83371b47f7321cfdff122f5e
Revert "[java] IDEA-360282 Use implicit class declaration for a new Java 25 project"
This reverts commit f21990af11c320d373023658866859f61c3c93fd.
(cherry picked from commit ec865d097aa1196ef5061a473d3cc2ba2eb7ca99)
IJ-CR-166010
GitOrigin-RevId: 400df4916c884fee63cacf53b0228faf1a1f1cfa
Encapsulated dependency coordinates allows to misunderstanding what is the dependency coordinates and how they should compare with each other. Also, it forbids dependency coordinate hijack by other extensions.
Maven coordinates should be specified only by the Library and Module Maven coordinate entities.
### Code Reviews
* IJ-CR-164983
### Issues
* IDEA-370483 Maven performance degradation related to library dependency substitution
GitOrigin-RevId: 01461ea4bf0fe44e60a80404a2cf08f16c0d5853
IJPL-182235: return a plugin dependency to avoid CNFE [spring.data] -> [spring.el.contexts]
SpringDataQLInjectorBase in spring-data uses ElTemplateParser class from com.intellij.javaee.el
Merge remote-tracking branch 'origin/master' into singleDistro252
Merge remote-tracking branch 'origin/master' into singleDistro252
# Conflicts:
# community/platform/platform-impl/src/com/intellij/ide/plugins/newui/PluginDetailsPageComponent.kt
[remote-driver] Simplify JBA login in tests
Replaced repetitive inline browser handling code with `logInToJba` helper method.
Merge remote-tracking branch 'origin/master' into singleDistro252
IJPL-182235: filter out plugins that depend on explicitly disabled ones
Do not try to enable plugins that have at least one direct or transitive non-optional dependency in disabled_plugins.txt
[patronus] IJI-2659: add plugins/ultimate-plugin to rider.rules
Merge remote-tracking branch 'origin/master' into singleDistro252
[integration tests] IJPL-182235: do not disable paid plugins on startup in WarmupIntegrationShortTest
[integration tests] IJPL-182235: do not disable paid plugins on startup in DynamicNonBundledPluginsTest
[integration tests] IJPL-182235: do not disable paid plugins on startup in DynamicLoadingDatagripPluginTest
[remote-driver] IJPL-182235: do not disable paid plugins on startup in ToolWindowsUiTest
[remote-driver] IJPL-182235: do not disable paid plugins on startup in StatusbarTest
[integration tests] IJPL-182235: do not disable paid plugins on startup in workspace model integration tests
[remote-driver] IJPL-182235: do not disable paid plugins on startup in UpdateRequestTest
IJPL-182235: add an option to not disable paid plugins on startup in tests
IJPL-182235: make shouldStartWithPaidPluginsDisabled a bit more readable
[remote-driver] Add license tests tags and suites
[remote-driver] Improve BaseLicenseUiTest data cleanup for local run
[remote-driver] LicenseDialogUi Cleanup
[remote-driver] Extend AuthDialogUi with DialogUiComponent
Replaced UiComponent with DialogUiComponent as the base class for AuthDialogUi
[remote-driver] Add EAPLicenseUiTest
[remote-driver] Rename `TokenAuthDialogUi` to `AuthDialogUi`
IJPL-189370: change EAP expiration logic in unified builds to the standard one
IJPL-182235: do not disable the Ultimate plugin on IDE startup in EAPs
!fixup [remote-driver] AT-2142 Create single distro license tests
[remote-driver] AT-2142 Create single distro license tests
IJPL-187422 fix empty system name for license expiration dialog
[remote-driver] Add UI test stubs for single distro licenses
AT-2142 Add trial license generation support in tests
Implemented a new method to generate trial licenses
Merge remote-tracking branch 'origin/master' into singleDistro252
# Conflicts:
# build/expected/ultimate-content-platform.yaml
# community/platform/platform-impl/src/com/intellij/ide/plugins/newui/ListPluginComponent.java
# community/platform/platform-impl/src/com/intellij/ide/plugins/newui/PluginDetailsPageComponent.kt
# community/platform/platform-impl/src/com/intellij/ide/plugins/newui/PluginModelFacade.kt
AT-2129 Add a test for loading an ultimate plugin after activating the IDE
IJ-CR-164880
IJPL-187743: replace reference comparison with `Objects.equals` for String in isFromSubscriptionExpirationDialog
String references *may* be reused, but it seems like it doesn't happen in built installers, so let's use a more reliable equality check
IJPL-184018: "Continue and Restart..." in the force choice dialog should restart the IDE
IJPL-187785: call dry run trial license on startup once a day even in the TRIAL_AVAILABLE state
If the user hasn't accepted the trial yet, and it's no longer available, update the state
IJPL-187785: don't call dry run trial license more than once a day
Even in the error state
[singleDistro] move com.intellij.frameworkSupport extension point to lang module from java
Without that we will consider database plugin as non-dynamic for IDEs without java plugin since it requires com.intellij.frameworkSupport EP, but it is not loaded.
Add plugins/ultimate-plugin to executeOnChanges for Kotlin Ultimate and RubyMine Tests (IJI-2659)
PatronusConfigYamlConsistencyTest failed after merging the latest changes from master
Merge remote-tracking branch 'origin/master' into singleDistro252
# Conflicts:
# .patronus/src/checks/rustrover/RustRoverTestsAggregator.kt
Add plugins/ultimate-plugin to executeOnChanges for RustRover Tests in .patronus/.../RustRoverTestsAggregator (IJI-1562)
Merge remote-tracking branch 'origin/master' into singleDistro252
# Conflicts:
# .patronus/src/main/org/jetbrains/intellij/patronus/gen/checks/rustrover/RustRoverTestsAggregator.kt
# community/platform/platform-impl/api-dump-unreviewed.txt
# community/platform/platform-impl/src/com/intellij/ide/plugins/DynamicPlugins.kt
# community/platform/platform-tests/testSrc/com/intellij/ide/plugins/DynamicPluginsTest.kt
# plugins/llm/javaee/spring/mvc/BUILD.bazel
# plugins/llm/javaee/spring/mvc/intellij.ml.llm.javaee.spring.mvc.iml
# ultimate/ultimate-resources/resources/META-INF/plugin.xml
PY-81389, PY-81220 The "Trial" widget appears in the EAP builds
IJPL-187601 Licenses: Log out should propose restart only if there is a subscription
PY-81389, PY-81220 The "Trial" widget appears in the EAP builds
IJPL-187785: show the error state in the trial widget only when dry-run failed for the user eligible for auto trial
either a new user or a user with an old enough config (at least 6 months)
Merge remote-tracking branch 'origin/master' into singleDistro252
IJPL-187785: add an error state for the trial widget
IJPL-182435: do not execute trial acquisition with Ultimate plugin enabled
IJPL-186844: convert groovy duplicates detection to content modules
IJPL-186844: check class loaders in checkCanUnloadWithoutRestart for optional dependencies
Co-authored-by: Vadim Salavatov <vadim.salavatov@jetbrains.com>
Revert "IJPL-186844: do not process non-optional module dependencies when onlyOptional is true in processDependenciesOnPlugin"
This reverts commit 411880ca36cc6d7c70222c1d0086119e8ffbf7fd.
IJPL-183884: adjust dynamic plugins test
The previous version led to `ClientSessionsManager is registered as application service, but requested as project one` errors in some other tests when running on TeamCity
Update Bazel files
Merge remote-tracking branch 'origin/master' into singleDistro252
# Conflicts:
# .patronus/config.yaml
# .patronus/src/main/org/jetbrains/intellij/patronus/gen/checks/rustrover/RustRoverTestsAggregator.kt
IJPL-182235: remove extra compile dependencies from llm spring modules [spring.data] -> [spring.el.contexts]
Reported by `IdeaUltimatePluginModuleDependenciesTest.testPluginModuleDependencies` for `intellij.ml.llm.javaee.spring.data` and `intellij.ml.llm.javaee.spring.mvc`
Add plugins/ultimate-plugin to executeOnChanges for RustRover Tests in .patronus/config.yaml (IJI-1562)
Merge remote-tracking branch 'origin/master' into singleDistro252
# Conflicts:
# community/platform/platform-api/resources/messages/IdeBundle.properties
# community/platform/platform-impl/src/com/intellij/ide/plugins/newui/PluginDetailsPageComponent.kt
# licenseCommon/source/com/intellij/ide/license/impl/UnifiedLicenseManager.java
# platform/trialPromotion/src/com/intellij/platform/trialPromotion/TrialStateService.kt
IJPL-183257: rename AutoTrialForNewUserProjectActivity to TrialProjectActivities
IJPL-183257: break AutoTrialForNewUserProjectActivity into separate activity classes
IJPL-183257: load paid plugins on the New project wizard opening in PyCharm
- for new users when trial is available
- for logged-in users when an active license was found
IJPL-183257: convert PyCharmNewProjectAction to Kotlin
Rename .java to .kt
IJPL-183257
IJPL-183257: load paid plugins on the New project wizard opening in IDEA
- for new users when trial is available
- for logged-in users when an active license was found
IJPL-183257: try loading paid plugins on the Licenses dialog closing
If the Ultimate plugin is still enabled on close (there's an active license), the plugins will be loaded if needed
IJPL-183257: execute trial check as early as possible
Make TrialStateService an applicationService that is preloaded on app start instead of a light service that is loaded on first access from the widget after the project opening
IJPL-187204 Disable the "Enable" btn in the Marketplace tab for Ultimate plugins
IJPL-187743 Force choice dialog should reappear if Manage Subscriptions is closed without activating
Merge remote-tracking branch 'origin/master' into singleDistro252
# Conflicts:
# community/platform/platform-api/resources/messages/IdeBundle.properties
# community/platform/platform-impl/src/com/intellij/openapi/application/ConfigImportHelper.java
IJPL-187740: move project activity into DynamicPaidPluginsService, get rid of PropertiesComponent usages
IJPL-187733 Manage subscription dialog is opened multiple times after closing plugin manager
IJPL-187763 Wrap the message in Plugin available with subscription
IJPL-187740: rename DynamicPluginsService to indicate that it is about paid plugins
IJPL-187740: move DynamicPluginsService to the platform
IJPL-183257: add more logs for loadPaidPlugins
IJPL-187412: do not show the Licenses dialog right after enabling the Ultimate plugin
No delay resulted in showing the dialog while issuing a trial license. Successful trial acquisition should be "silent"
Related ticket: IJPL-177912 - Add an action to activate paid mode
IJPL-187412: execute an anonymous trial dry-run when userId is null (not logged in)
IJPL-182435: make pluginKey `@NotNull` in `shouldObtainLicenseAutomatically`
Avoid possible NPEs on pluginKey if the subclass doesn't check it
Merge remote-tracking branch 'origin/master' into singleDistro252
SID-87, IJPL-187565 Fix Activate subscription buttons to call an action instead of URL
SID-87: Update vision pages to new design
IJPL-182252: extract trial availability check to a separate function
IJPL-182435, IJPL-182252: add logs for trial availability check and auto-trial
IJPL-187424: remove got-it tooltip for trial grace period state
IJ-CR-161922: put all method parameters on separate lines
IJPL-183891 UI: Adjust license management dialog to work with subscription
Adjust trial days message logic and tooltip handling
Unified message formatting for trial days left. Replaced distinct messages for "1 day" and "0 days" with a single format using choice logic. Updated tooltip logic to ensure `remainedDays` is always non-negative.
IJPL-182235, IJPL-187253: schedule paid plugins loading synchronously with the non-modal modality state
If invoked in the background, it might lead to races between Ultimate plugin unloading on Continue for free and scheduled loading on activate/restore license
IJPL-186903: fix an exception on plugin unloading when the Licenses dialog is shown
IJPL-186901: fix exceptions on plugin loading when the Licenses dialog is shown
IJPL-182235, IJ-CR-161922: add an overload for `DynamicPluginEnabler.enable` to pass a progress title
Simply wrapping the call in `withModalProgress` doesn't show the progress
IJPL-186920: activate a license if it is found during the trial availability check in the free mode
IJPL-183891 UI: Adjust license management dialog to work with subscription
IJPL-186844: do not process non-optional module dependencies when onlyOptional is true in processDependenciesOnPlugin
Co-authored-by: Vadim Salavatov <vadim.salavatov@jetbrains.com>
Merge remote-tracking branch 'origin/master' into singleDistro252
# Conflicts:
# platform/trialPromotion/src/com/intellij/platform/trialPromotion/TrialStateUtils.kt
IJPL-182435, PY-79495: remove commercial.license dependency from trialPromotion
IJPL-182435, PY-79495: make register Pro/Ultimate trial silent action when possible
IJPL-182435: automatically start a trial for a completely new user
IJPL-182435: factor out ConfigImportHelper.getConfigLastModifiedTime utility function
IJPL-183132 Trial widget: non customizable action
Merge IJ-MR-161630: IJPL-182252: Do not propose trial if the user had any other license active during the last 4 months
IJPL-186755 Add exit app option to restart dialog
PY-79495 Start Free Trial action on the Trial Widget
PY-79495 make register Pro/Ultimate trial silent action when possible
IJPL-186172 UI: Changes in plugin manager
IJPL-182235: load paid plugins after the project opening
IJPL-182235: extract dynamic loading of the paid plugins to a separate service
IJPL-182235: load paid plugins when valid license is restored
If the IDE is started in free mode, the user is logged in and clicked on Manage Subscriptions; a valid license might be restored (e.g.: JetprofileSource). In this case LicenseEntryModel.activateLicense is not called.
IJPL-183846: show the force choice dialog after the project opening
If no project is open yet, save the verification state for later
IJPL-183846: show the force choice dialog if IDE is started with an expired subscription
IJPL-182235 IDEA should start with paid plugins unloaded when no license is available [spring.data] -> [spring.el.contexts]
IJPL-184018 UI: Implement Subscription expiration dialog (force choice)
IJPL-182252: if the server returns any license that was active during the last 4 months, consider trial as not available
IJPL-182252: add getLicenses to JBAccountInfoService
Similar to getAvailableLicenses but includes licenses that have been expired for less than the specified expiredLicenseDays
Merge remote-tracking branch 'origin/master' into singleDistro252
Merge remote-tracking branch 'origin/master' into singleDistro252
# Conflicts:
# build/expected/ultimate-content-platform.yaml
IJPL-182736: automatically open an editor tab on the first opening of the day when the trial state is EXPIRING
IJPL-182736: do not show the GotIt tooltip for EXPIRING trial state
IJPL-182736: add a separate content kind for the trial expiring today
IJPL-182252: perform trial availability check no more than once a day
IJPL-184020 Rename Register... to Manage subscriptions
IJPL-184020 Rename Register... to Manage subscriptions
IJPL-184020 Rename Register... to Manage subscriptions
IJPL-182235: load paid plugins when valid license is activated
Try to enable and load paid plugins without a restart. If there are plugins that cannot be loaded, do not enable these plugins. Show a notification suggesting enabling these plugins with a restart.
IJPL-182235: start IDE with paid plugins unloaded
- If this is a first start:
- load all paid functionality if there is a license file
- disable the Ultimate plugin and don't load plugins that depend on it if there's no license file in the config
- On later starts load in free mode if Ultimate plugin is disabled
Merge remote-tracking branch 'origin/master' into singleDistro252
# Conflicts:
# community/platform/core-impl/src/com/intellij/ide/plugins/PluginManagerCore.kt
# platform/trialPromotion/src/com/intellij/platform/trialPromotion/TrialStateService.kt
# ultimate/min/resources/META-INF/plugin.xml
IJPL-184020 Rename Register... to Manage subscriptions
IJPL-184018 UI: Implement Subscription expiration dialog (force choice)
IJPL-184018 UI: Implement Subscription expiration dialog (force choice) - extract dialog
Merge remote-tracking branch 'origin/master' into singleDistro252
IJPL-183884: remove loading errors for plugins that were successfully loaded dynamically
Merge remote-tracking branch 'origin/master' into singleDistro252
IJPL-182740: open an editor tab when clicking the trial widget in the TRIAL_AVAILABLE state in IDEA
Add StartTrial action that can be referenced in the Vision file;
Add a sample Vision JSON: vision-trial-available.json for IDEA;
Keep the current behaviour in PyCharm: start trial on click instead of opening an editor tab.
IJPL-182740: add a trial widget got-it tooltip for TRIAL_AVAILABLE state
IJPL-182740: remove the trial widget button tooltip when the state is TRIAL_AVAILABLE
Don't show "0 days of trial left"
Merge remote-tracking branch 'origin/master' into singleDistro252
# Conflicts:
# platform/trialPromotion/src/com/intellij/platform/trialPromotion/TrialStateService.kt
# ultimate/ultimate-resources/resources/META-INF/plugin.xml
Merge remote-tracking branch 'origin/master' into singleDistro252
# Conflicts:
# platform/trialPromotion/src/com/intellij/platform/trialPromotion/TrialStateService.kt
IJPL-176012 Trial widget: incorrect popup position
IJPL-183132 Trial widget: non customizable action
Revert "IJPL-176012 Trial widget: incorrect popup position"
This reverts commit e85f8ce81bf003c3be4e564b96e185e9d02e8223.
Merge remote-tracking branch 'origin/master' into singleDistro252
# Conflicts:
# platform/trialPromotion/src/com/intellij/platform/trialPromotion/TrialStateService.kt
IJPL-176012 Trial widget: incorrect popup position
IJPL-182734 Widget: remove the Restart required state
IJPL-179915: don't suggest Ultimate plugin in Required plugins list
SID-132: Revert "temporarily bring back GeneralLicenseManager for IDEA (IJPL-179152)"
This reverts commit 71f2205b
SID-132: Revert "[trial] IJPL-179154: remove trial widget for IDEA"
This reverts commit f74bb96b
[license] update eua.html to 2.0 Legal-3233
Co-authored-by: Alexander Lobas <Alexander.Lobas@jetbrains.com>
Co-authored-by: Andrey Vokin <andrey.vokin@jetbrains.com>
Co-authored-by: Dmitriy Smirnov <Dmitriy.Smirnov@jetbrains.com>
Co-authored-by: Dmitry Yudin <Dmitry.Yudin@jetbrains.com>
Co-authored-by: Eugene Morozov <Eugene.Morozov@jetbrains.com>
Co-authored-by: Sergey Vasilyev <Sergey.Vasiliev@jetbrains.com>
Co-authored-by: Timur Aliberdov <Timur.Aliberdov@jetbrains.com>
Merge-request: IJ-MR-162974
Merged-by: Timur Aliberdov <Timur.Aliberdov@jetbrains.com>
GitOrigin-RevId: e2b4e7079c7de7f8ca046b9ddf8ed1de0215c5c2
This coordinate contributor resolver library and module bridges. That gives negative performance impact on the dependency substitution.
### Issues
* IDEA-370483 Maven performance degradation related to library dependency substitution
GitOrigin-RevId: d6dc66dd184b995432c49c52d3e69c6eba7567b3
These coordinates are expected to be used only for global library and module identification during the dependency substitution.
### Issues
* IDEA-370483 Maven performance degradation related to library dependency substitution
GitOrigin-RevId: 27df0b5ad9b51ce22bf4a88c850591ab600cdaaf
This inspection detects code like `map { it.await() }`
and proposes to replace it with `awaitAll()`
Inspection is enabled by default because
it is considered to be pretty safe
^KTIJ-34236 Fixed
GitOrigin-RevId: b18f39c8a933f7ed17c74ad1879e41ca081ed901
This inspection allows detecting the usages or `CoroutineScope`s
in a potentially different suspension context.
Note 1: This implementation is DISABLED by default and pushed to gather
the feedback regarding the current implementation, messages,
description, options and so on.
Note 2: Currently the implementation does not provide any quick fixes.
This is done explicitly, because it is not yet clear what would be
the best quickfix, and if adding an explicit receiver would be enough.
Related tickets: KTIJ-16542, KTIJ-12307
GitOrigin-RevId: ab69f291e8ecd4121f176f2c6865123984ede47d
+ if `IdIndexer` (`IdIndex` sub-indexer) implements `FileTypeIndexingHint` -- it is used by `IdInputFilter` to customize input files filtering
+ this feature is used to re-implement `index.ids.from.java.sources.in.jar` (instead of extension points)
+ test for `JavaIdIndexer` filtering
+ adjust `IdIndex`: processes .class-files only conditionally
+ rename registry keys (unify naming):
+ `ide.index.id.skip.java.sources.in.libs`: enables/disables indexing of java sources in libraries (index .class-files instead)
+ `ide.index.trigram.enable.exclude.extensions`: enable/disable excluding of .java-sources in libraries from trigram index
GitOrigin-RevId: 8b8e40d621e01466854364c282d00a4731d5f4de