Commit Graph
3554 Commits
Author SHA1 Message Date
Bart van Helvertandintellij-monorepo-bot d73104e8fa [tests] Don't steal focus when automatically rerunning tests
Prevents the build toolwindow from stealing the focus when an automatic build is triggered by the automatic test runner when the code is uncompilable. #IDEA-335769 Fixed


(cherry picked from commit d6bd1f9fade4fab3c91b25bbe788f870aaf123bc)

IJ-CR-180263

GitOrigin-RevId: e5ff8f040d27d4a1686289af4a1158a6ee38c633
2025-10-28 14:51:35 +00:00
Alexander Koshevoyandintellij-monorepo-bot 6e297dc81d [jps] IDEA-376790 Do not fall back to IDE runtime JDK for non‑local builds
Stop using the local IDE runtime JDK as a fallback when the project builds remotely (Docker/SSH/WSL). This avoids launching the build with a JDK that cannot run on the target machine and prevents hard‑to‑diagnose failures. When no compatible remote JDK is found, we now fail fast. Existing local and WSL‑specific behavior remains unchanged.


(cherry picked from commit 3e27c308520d3522572fdfc2ee57e4d6c4e2ab63)

IJ-CR-179667

GitOrigin-RevId: a3958d861960083811dee737e11a7450009a5863
2025-10-24 21:59:36 +00:00
Alexander Koshevoyandintellij-monorepo-bot 6afeb32486 [jps] IDEA-376790 Respect Eel machine when filtering SDKs
SDK selection now accounts for the project's Eel environment rather than only WSL paths, so only SDKs runnable on the target machine are considered. When Eel is available, filtering uses compatibility checks against the project/Eel context to support generic non‑WSL remote setups. If the "wsl.use.remote.agent.for.nio.filesystem" registry key is `false`, WSL‑over‑Eel remains disabled and the legacy WslDistribution matching continues to be used.


(cherry picked from commit 43723999a07be66da6fc6facda079c7a70b86fc8)

IJ-CR-179667

GitOrigin-RevId: 72b304214d4c8361d64925eae3079012e78b27d2
2025-10-24 21:59:36 +00:00
Alexander Koshevoyandintellij-monorepo-bot fbd2efb203 [jps] IDEA-376790 Store system build files on Eel for all non‑local projects
Routes the build system directory and project system hashing to Eel storage whenever Eel is available, and the project is non‑local, not just for WSL. This unifies remote handling so non‑local, non‑WSL projects now keep JPS-build-related files on the remote Eel side instead of the local machine.

The previous WSL‑specific logic is preserved and continues to be used for WSL projects or when Eel isn't applicable. Local projects remain in the local build system directory with no behavioral changes. This reduces cross‑machine path mismatches and keeps build state co‑located with remote sources for more reliable builds.


(cherry picked from commit 602fa5f5f9f2bc4649bdb37431485997d380617a)

IJ-CR-179667

GitOrigin-RevId: 69d02be22a9bb48b989f84d196aba35ac294300b
2025-10-24 21:59:36 +00:00
Alexander Koshevoyandintellij-monorepo-bot 313180c930 [jps] IDEA-376790 Generalize path mapping for WSL and non‑local Eel projects
Unifies path‑mapper selection so builds work consistently for remote Eel projects in addition to WSL. When the "wsl.use.remote.agent.for.nio.filesystem" registry key is `false`, WSL‑over‑Eel is disabled, and we intentionally fall back to legacy `WslDistribution` mapping. This preserves existing local/WSL behavior while enabling remote Eel workflows.

These changes also address a likely issue in `com.intellij.compiler.server.BuildManager.scheduleBuild()` method where `currentFSChanges` previously relied on a WSL‑only mapper. It now uses the unified mapper that supports both Eel and the alternate WSL path conversion.


(cherry picked from commit ff5c0ad873f513c0e34b3dc01a8b79904c8e7650)

IJ-CR-179667

GitOrigin-RevId: d106a542c08ac8ca2565f7691db6c3a9e9d8702a
2025-10-24 21:59:36 +00:00
Alexander Koshevoyandintellij-monorepo-bot c387d5039b [jps] IDEA-381056 Remove unused build option inactive since 2021.1
The option was introduced as a Registry flag in `aba75dc4a9c7d6c33f8aa96a83d5505304e5e0b2` and later replaced with a system property in `63439ad1d476dda6f6d7640d3fb19f1dcc63917e` due to Fleet’s inability to access the Registry. The property is read but never set anywhere in the product or in `ultimate-teamcity-config`, so the behavior has effectively been disabled since 2021.1. This change removes the property handling and related code paths. No functional change is expected.


(cherry picked from commit a06a298f8776f3e2d648176198b30d56c1fd7021)

IJ-CR-179667

GitOrigin-RevId: 08e1f054ad61be423f98e0af9f97995ea5293858
2025-10-24 21:59:36 +00:00
Alexander Koshevoyandintellij-monorepo-bot 45a9739557 [jps] IJPL-178632 Transfer specific jdk.table.xml and applicationLibraries.xml applicable to build environment
(cherry picked from commit 25d4720032f25c39540879659c122eadf3cb1018)

IJ-CR-179667

GitOrigin-RevId: 5ce16248d708949495be72b33c0226e0a76adeec
2025-10-24 21:59:36 +00:00
Eugene Zhuravlevandintellij-monorepo-bot d5e6f3277b fixup: simplify code
(cherry picked from commit eb9d9d7cab7b0d54daeed2a1dc3795c3f6b56d77)

IJ-CR-179279

GitOrigin-RevId: bcb44b64044fea8648d30992c3c7af4834ef3969
2025-10-21 14:18:35 +00:00
Eugene Zhuravlevandintellij-monorepo-bot 56854f775e support 'productionOnTests' dependencies in ModuleCompileScope (IDEA-377309)
(cherry picked from commit a8be6439d3e0d1f08714105eb3accc89a243149e)

IJ-CR-179279

GitOrigin-RevId: bca838021c775000db3bf88212ab5ac829953f73
2025-10-21 14:18:35 +00:00
Alexander Koshevoyandintellij-monorepo-bot 5043d94087 [wsm] IJPL-178632 Seal InternalEnvironmentName, add constant for local environment and introduce friendly factory
GitOrigin-RevId: b7639353fe9713ab29b43e7cf35966f5fe61db3e
2025-10-14 00:22:42 +00:00
Max Medvedevandintellij-monorepo-bot 6ef13aa11e [completion] IJPL-207762 nullability for LookupElement
GitOrigin-RevId: 31357e8a2d4e661cbc91a5642fe689cd3179a7e5
2025-10-12 11:39:37 +00:00
Vladimir Krivosheevandintellij-monorepo-bot 67a6dac7f8 IJPL-209476 IJ-CR-146078 kotlinx-datetime-jvm, kotlinx-document-store-mvstore, kotlinx-html-jvm, kotlinx-serialization-protobuf, kotlinx-collections-immutable
GitOrigin-RevId: 058331a1e834d7780456f98d003afe56abfc36a0
2025-10-12 11:10:47 +00:00
Vladimir Krivosheevandintellij-monorepo-bot 30413b84c9 IJPL-209476 IJ-MR-175479 extract jettison, jaxen, bouncy-castle
GitOrigin-RevId: d9f6e8e745fbfb69604eb02d0f95cad976d4d7f9
2025-10-09 21:36:26 +00:00
Alexander Koshevoyandintellij-monorepo-bot 666c4f449f [projectModel] Partition "Global Libraries" per eel environment and select via Project (IJPL-175311)
Application‑level libraries ("Global Libraries" in UI) must be isolated by the environment, so each EEL environment sees only its own library set. This prevents cross‑environment leakage and aligns library scoping with SDK scoping.

Notes
- Environment choice is derived from the passed `Project` (carrier of the already‑resolved `EelMachine`), so selection is synchronous and safe for this API surface.
- API names stay as they are; documentation clarifies that the `Project` parameter selects the environment for the application‑level table and does not turn it into a project‑level table.
- In the Project Structure UI, the existing environment‑scoped modifiable model remains owned by the UI; outside the UI, callers get a standalone modifiable model for the chosen environment.

GitOrigin-RevId: e88445929d19012d029e79d44f09f694aba8df6f
2025-10-06 22:52:56 +00:00
Vladimir Krivosheevandintellij-monorepo-bot 4b619431c2 IJ-MR-175479 IJ-CR-146078 IJPL-209476 fast-util
GitOrigin-RevId: 87af2a3aad6e264a9b332c20ff572ec735f741f2
2025-10-06 16:34:02 +00:00
Vladimir Krivosheevandintellij-monorepo-bot 0272d6a0c7 IJ-MR-175479 IJ-CR-146078 IJPL-209476 miglayout-swing, mvstore, proxy-vole, rhino, winp
GitOrigin-RevId: 18f6ef6f31cc80b26bca98a7ab025e2ade284102
2025-10-06 16:34:02 +00:00
Vladimir Krivosheevandintellij-monorepo-bot 026e9d1fab IJ-MR-175479 IJ-CR-146078 IJPL-209476 kotlin-reflect, xz and lz4-java
GitOrigin-RevId: f49b6210864a95ca6540bade8e3fcca02c2fcecc
2025-10-06 16:34:02 +00:00
Vladimir Krivosheevandintellij-monorepo-bot aef6fcfb61 IJ-MR-175479 IJ-CR-146078 IJPL-209476 intellij.libraries.kotlinx.coroutines.slf4j, icu4j, jackson, ion as product module
GitOrigin-RevId: 6ec3fc109676944133e91aff3a82c51572bf4dbc
2025-10-04 19:03:47 +00:00
Vladimir Krivosheevandintellij-monorepo-bot ec3242285e IJ-MR-175479 IJ-CR-146078 IJPL-209476 caffeine as product lib
GitOrigin-RevId: a4585825ed7a9f49d9c74266ea2ebd4323d6405e
2025-10-04 19:03:47 +00:00
Vladimir Krivosheevandintellij-monorepo-bot 9f425c84ea IJ-MR-175479 IJ-CR-146078 IJPL-209476 guava as product module (part 2)
GitOrigin-RevId: 22ee846c39d44cd481ad55d11889ff43ad3b389a
2025-10-04 19:03:47 +00:00
Nikolay Chashnikovandintellij-monorepo-bot 093d3214f4 [java] API cleanup: mark for removal and as internal deprecated API without external usages (IJPL-190638)
APIs, which were marked as deprecated in 251 or earlier and don't have external usages, are marked as internal. Also, if there are no internal usages, it's also marked for removal.

GitOrigin-RevId: ffd772fc41738cdf3bcf5a122756936383184866
2025-10-03 23:44:30 +00:00
Ilia Kirianovskiiandintellij-monorepo-bot ff1fa7481d [build-scripts] Don't use multiple output roots in ArchivedCompilationContextUtil#getArchivedCompiledClassesMapping (IJI-3011)
Partly reverts commit f3ba70cad4845ef3bf50754aaf1cf6b9959fbcd2.

GitOrigin-RevId: b8e715e75b0331dff2865f77cb91fdd7f089b907
2025-09-29 13:03:34 +00:00
Stanislau Palynandintellij-monorepo-bot e1f9a37e9b [vcs] Improve UnloadedModulesCompilationCheckinHandler logic to determine whether it should be performed
GitOrigin-RevId: 5befac9a15ef4b1478d38400662222d6e3218ea0
2025-09-24 13:45:47 +00:00
Nikolay Chashnikovandintellij-monorepo-bot 42fa033d50 cleanup: migrate usages of deprecated AppMode.isDevServer to AppMode.isRunningFromDevBuild
GitOrigin-RevId: 4abc0e74544ec77c4f543720b91abbe5989468c4
2025-09-23 13:22:31 +00:00
Vladimir Krivosheevandintellij-monorepo-bot 7e547b4d43 BAZEL-2160 JavacConfiguration should be as a light service - it is PSC, but project-level one
GitOrigin-RevId: 66552adea34221b53a78060831bbc5683bf2fba0
2025-09-18 15:14:17 +00:00
Ilia Kirianovskiiandintellij-monorepo-bot b8dc8eb715 [build-scripts] Use kotlinx-serialization (not gson library) in ArchivedCompilationContextUtil (IJI-3011)
Also converts ArchivedCompilationContextUtil.java file to ArchivedCompilationContextUtil.kt file.

GitOrigin-RevId: 2e08a242bda539415467d17ae86e01140e84ce9d
2025-09-15 16:01:12 +00:00
Ilia Kirianovskiiandintellij-monorepo-bot 741459a2ef [build-scripts] Move PathManager.getArchivedCompliedClassesLocation()/.getArchivedCompliedClassesMapping() to a new ArchivedCompilationContextUtil (IJI-3011)
Also renames ArchivedCompilationContextUtil.getArchivedCompiledClassesLocation()/.getArchivedCompiledClassesLocationIfIsRunningFromBazelOut().

GitOrigin-RevId: dd5d8b65f46ead13e53f0fdf9b99a6e999b3a9e7
2025-09-15 16:01:12 +00:00
Ilia Kirianovskiiandintellij-monorepo-bot 3cfb6d294f [build-scripts] Use compiled classes from jars when running under Bazel in PathManager.getArchivedCompliedClassesLocation()/.getArchivedCompiledClassesMapping() (IJI-3011)
GitOrigin-RevId: f3ba70cad4845ef3bf50754aaf1cf6b9959fbcd2
2025-09-15 16:01:12 +00:00
Tagir Valeevandintellij-monorepo-bot 53489602f1 [java] cleanup: use getLast/getFirst/etc.
GitOrigin-RevId: e77d2952e8d83aedd00784a2b3290c6c92460717
2025-09-15 08:54:13 +00:00
Tagir Valeevandintellij-monorepo-bot 2bc43dfd13 [java] cleanup: try using enhanced switch instead of instanceof in Java plugin
GitOrigin-RevId: 10d311406ce7774656f85abb26f7854ae3f3abd7
2025-09-15 08:54:13 +00:00
Vladimir Krivosheevandintellij-monorepo-bot cea2e2e7be BAZEL-2160 cleanup
GitOrigin-RevId: 7d96e5f37c28adf8651a57ebc23b295da9b4f24d
2025-09-12 16:34:47 +00:00
Tagir Valeevandintellij-monorepo-bot b01686a3f5 [java-compiler] Add NonNls
GitOrigin-RevId: cc45d21b70ff1302b81262bc7a9085a9313882af
2025-09-08 13:49:57 +00:00
Alexander.Glukhovandintellij-monorepo-bot 417dcc7336 [maven][eel][jps][IDEA-375248] fix stale JPS compilation cache on a remote target
The error was caused by reusing the old cache for compilation. As a result, the file with the compiler settings did not match the current state of the project. This led to the module being compiled with the version of the target Java bytecode that was used for the first compilation.

GitOrigin-RevId: 3a5e40192f664ca842750b2d276b7b4b44d67eaa
2025-09-04 15:52:02 +00:00
Gregory.Shragoandintellij-monorepo-bot 4f472c9f9d drop some remaining Unsafe usages
GitOrigin-RevId: eefefea2ffe01053115aaae389c722e8bbacab64
2025-08-25 18:42:40 +00:00
Eugene Zhuravlevandintellij-monorepo-bot 67bc554792 Provide a convenient way to configure 'fallback JDK' to compile projects using older JVM targets, e.g. java 7 (IDEA-370407)
this commit also changes the policy of choosing the fallback JDK for the forked javac, which is now the oldest available in the JDK table, but not older than the minimal supported JDK version for running javac

GitOrigin-RevId: 1c757fc1faa0aff36ecac04b8d12a8a2f7e313a6
2025-08-11 19:25:25 +00:00
Ilya.Kazakevichandintellij-monorepo-bot 633da30a54 IJPL-180687: Various BuildManager fixes to support eel
GitOrigin-RevId: 365796a2c0a54b6b605b0af55233117093456565
2025-08-08 23:21:15 +00:00
Andrei.Kuznetsovandintellij-monorepo-bot bef90557b8 IJPL-15953 deprecate CompilerProjectExtension.{getCompilerOutputPointer and setCompilerOutputPointer}
We want to get rid of VirtualFilePointer's and eventually replace all of them with the VirtualFileUrl.

GitOrigin-RevId: 6c97578069744188945d04ace32d9ae6a68aa0be
2025-08-06 13:27:19 +00:00
Roman Shevchenkoandintellij-monorepo-bot f107566eaf Cleanup (inlining pointless property)
GitOrigin-RevId: 8ae0758bf6f8b99a56e28962efc18d8fcbe3b3e5
2025-08-06 10:43:02 +00:00
Ilya Kazakevichandintellij-monorepo-bot 88f7126f81 IJPL-194951: Make BuildManager support eel.
1. It is `java`, not `java.exe` (see `JavaSdkImpl`)
2. Various options were also unaware of eel


Merge-request: IJ-MR-171187
Merged-by: Ilya Kazakevich <ilya.kazakevich@jetbrains.com>

GitOrigin-RevId: 1ade6505d9fc912e3da097f7f94de654fd0fddb4
2025-08-04 13:35:13 +00:00
Ilya.Kazakevichandintellij-monorepo-bot 6fb9193560 Reformat code:
GitOrigin-RevId: 97a1a3f5dab989dcbf019e0d5a4710867519c748
2025-08-03 19:38:24 +00:00
Roman Shevchenkoandintellij-monorepo-bot 584f4563b9 [platform] making Path-based PathManager getters a bit faster; obsoleting String-based counterparts
GitOrigin-RevId: 3e0ec7453e864f22a2891d74054ddc01a7b40278
2025-07-31 11:08:10 +00:00
Roman Shevchenkoandintellij-monorepo-bot f0396467f7 [platform] dropping obsolete/repetitive/needlessly exposed parts of PathManager API
GitOrigin-RevId: 515de04f933baefb7591bbf4d548b0a27ed2ca24
2025-07-30 22:05:22 +00:00
Ruslan Chereminandintellij-monorepo-bot 4232396663 [vfs][refactoring] more helper methods to CaseSensitivity enum
GitOrigin-RevId: 37bcb5c411f85db3cc69b289e9e2b8bd0cb12e5b
2025-07-27 15:22:38 +00:00
Ilia Kirianovskiiandintellij-monorepo-bot 9e27bcd099 [bazel] Update build files (IJI-2878)
GitOrigin-RevId: a5fdf299fa5a3e00803e0d9ded8e5c73fae65004
2025-07-22 12:40:37 +00:00
Ruslan Chereminandintellij-monorepo-bot 7f76ca88d7 [performance] different interner for path segments
+ implement simplest MRU-like interner, instead of Caffeine -- Caffeine seems to be an overkill for such a simple task.
+ Use `-Dcompiler.InternedPath.USE_CAFFEINE_INTERNER=true` to return Caffeine-based interner

GitOrigin-RevId: 4b95e28dc2c4303d9078be445ee8f94e593ac176
2025-07-14 19:54:03 +00:00
Alexandr Evstigneevandintellij-monorepo-bot b47056beb9 IJPL-196468 Added new classpath to the jps module jar
Additionally, properly handle content modules when running from source

GitOrigin-RevId: e7a9badcd531785d120901a320f49db36a413c05
2025-07-11 06:18:44 +00:00
Andrii Zinchenkoandintellij-monorepo-bot 2626753245 [platform-eel] EelBuildCommandLineBuilder: pass eel env vars in to the PathManager.getDefaultSystemPathFor
- add `getSystemFolder` in to the `EelPathUtils`

GitOrigin-RevId: e4f41cb3a107352ecab1c3fe9dd92583effebe53
2025-07-05 11:12:54 +00:00
Konstantin Nishtandintellij-monorepo-bot a8c6da86ad [threading] IJPL-195357: Make resetThreadContext a real higher-order function
GitOrigin-RevId: c833513327dc1fd4fd0b9a755af6df2d478946d8
2025-07-03 20:28:31 +00:00
Vladimir Lagunovandintellij-monorepo-bot 4f4c7584a7 i18n-ize some strings in BuildManager
GitOrigin-RevId: 330a3e9308ad586aed31c92b029f7a4aeaa8cc58
2025-06-27 08:00:33 +00:00
Nikolay Chashnikovandintellij-monorepo-bot 70dc7ee0e3 [java compiler] API cleanup: mark CompileContext.isRebuildRequested and related methods as deprecated and remove implementations
This is needed to avoid confusion since these methods aren't called by the compilation engine anymore.

GitOrigin-RevId: 203140c584e7ed667751468002c89cba4479e4d7
2025-06-25 10:01:46 +00:00