Bart van Helvert
265ec5fb37
[java] Add chooser fix for division that could change semantics
...
Adds a chooser to `ReplaceShiftWithMultiplyIntention` which allows to choose between regular division that changes semantics and floor division. By default floor division is chosen. This changes also makes it so regular division is suggested when the language level is lower than 8. #IDEA-384124
(cherry picked from commit 3e5c5bb4852098ba7b8639c2d887f7cf1298cd93)
IJ-MR-189843
GitOrigin-RevId: db19634d66f5a91282536b4c1b41fb0f8ccfcd5e
2026-02-12 15:57:26 +00:00
Marcin Mikosik
afdcd299a3
IDEA-381552 [java]: Override method: do not add redundant @NonNull under @NullMarked
...
Merge-request: IJ-MR-190042
Merged-by: Marcin Mikosik <marcin.mikosik@jetbrains.com >
GitOrigin-RevId: 2e35a6c573d175a66b09cf8894954f0f90b7b61f
2026-02-12 14:53:59 +00:00
Mikhail Pyltsin
c6ca035622
[java-inspections] IDEA-349198 IJ-CR-190983 Catch deconstruction on null value
...
- use dfa
GitOrigin-RevId: 19cdc3be30263c4b3dbbfff173c557c62c376d67
2026-02-11 14:51:17 +00:00
Mikhail Pyltsin
b873ed5577
IJ-CR-191105 [java-inspections] IDEA-379303 Nullable incompatibilities in constructor calls
...
- just super call
GitOrigin-RevId: 973220a3b1af7f8aca00881abe9c1664e50b5e37
2026-02-11 10:31:04 +00:00
Mikhail Pyltsin
31b5a6a950
[java-inspections] IDEA-379303 Nullable incompatibilities in constructor calls
...
GitOrigin-RevId: 927bd8ab332fe6f7c6c122d7670592c7ca141b5a
2026-02-10 16:25:48 +00:00
Mikhail Pyltsin
6d178d8680
[java-inspections] IDEA-349198 Catch deconstruction on null value
...
GitOrigin-RevId: 6eac3a29ad4cefa69c3a7fa69a85c46d98187eb6
2026-02-09 19:50:58 +00:00
Tagir Valeev
ace33e3656
IDEA-385449 [java-inspections] Follow-up cleanup
...
GitOrigin-RevId: 30861d30b340099ca9a268e81c374b77cb95eba9
2026-02-04 18:23:47 +00:00
Tagir Valeev
466473c654
IDEA-385449 [java-inspections] ExpressionUtils.isEvaluatedAtCompileTime may cause stackoverflow
...
GitOrigin-RevId: b54864f2e62a2d38f75f4b7d86e006b779ce5cd5
2026-02-03 14:08:29 +00:00
Leonid Shalupov
188b7ef96f
IJI-3282 Optimize imports
...
GitOrigin-RevId: 3b5c00d8ff20b8d0bb6005bc450921085d2da9b2
2026-01-31 17:03:42 +00:00
Mikhail Pyltsin
438c4e4b5b
[java-frontend] IDEA-366600 Get rid of additional "Java for JetBrains Client" plugin
...
- java dependencies
Space-RevId: 7d4700ee0761048bb85d3b0a9471b74511f62fc0
GitOrigin-RevId: 9f080945a3c7b361b89c6743ec07ef9163f3e017
2026-01-29 11:31:00 +00:00
Nikolay Chashnikov
9718731f33
IJPL-212619 Java: remove deprecated API, which was marked for removal and has no usages
...
Space-RevId: 03757d83c4ac1f0aba4d7dd2b1c94e065cf161d0
GitOrigin-RevId: fcb1a89583973b2cd6d5e06e53c7ee5cab957836
2026-01-26 20:01:33 +00:00
Nikolay Chashnikov
175f4430dc
cleanup [java]: introduce data class instead of Pair in ClassAncestorResolver to make code more readable (IJ-CR-188646)
...
Space-RevId: 677557d66e2954f5d2996fc4adab14e87f919679
GitOrigin-RevId: c9b74011da8647de7054f18f5f77b8db347caada
2026-01-22 16:41:09 +00:00
Georgii Ustinov
5539f3af78
[Java] IDEA-384756 Handle incorrect resolve to parameter and field when detecting optimize imports intention
...
Space-RevId: 7d5d281c8a8e96e61eeb068b8149a5d98cfc52c1
GitOrigin-RevId: edc24ae68af9ff7e0ca1e1939bb6670672b63dc3
2026-01-22 09:58:45 +00:00
Nikolay Chashnikov
f2425bec74
IDEA-268316 Java: provide API in JvmBytecodeAnalysis to collect implicit superclass references
...
Before, JvmBytecodeAnalysis processed only references explicitly mentioned in *.class files. However, javac requires having all superclasses of the classes being compiled and the classes methods from which are called in the classpath. In such cases, 'Extract Module' action and a quick-fix for extracting module in DevKit (IJPL-227635) didn't add required dependencies to the extracted module, so code fails to compile.
Here a new API JvmBytecodeAnalysis.createReferenceAnalyzerWithImplicitSuperclassReferences is introduced which can be used to take into account such implicit references as well.
GitOrigin-RevId: e4dec4e63d3a5ed70012747d386a48628275b6cb
2026-01-20 00:00:24 +00:00
Georgii Ustinov
ae1cf47d13
[Java] IDEA-384756 Do not highlight unresolved static imports as unused if there is method call in class body
...
GitOrigin-RevId: 7993fc10670ee16dffa38177a1dd99ca42ac5cbb
2026-01-19 18:18:58 +00:00
Mikhail Pyltsin
ccc1e2f2d7
IJ-CR-188329 [java-inspections] IDEA-377682 JSpecify. Nullable incompatibilities. Calls with generics
...
- delete unused filters
- simplify switch expression
GitOrigin-RevId: 994435ac31851461cbb2b51144b734dd7a0b2c34
2026-01-19 17:27:06 +00:00
Nikolay Chashnikov
e43677aa86
refactor [java]: move code which processes class-files from ExtractModuleService to ClassFileAnalyzer interface
...
This is needed to reuse it to improve quick-fix for DevKit inspection (IJPL-227635).
GitOrigin-RevId: a2f46e87c16d4111160ec3d9eafa09303fb7d46e
2026-01-19 15:40:48 +00:00
Nikolay Chashnikov
30d93c30a2
refactor [java]: extract implementation of methods from ClassFileAnalyzerImpl to a separate class
...
This is needed to add more methods here to improve quick-fix for DevKit insspection (IJPL-227635).
GitOrigin-RevId: 40d0480a4d6503b31a683a9eb1390cdc4ac34aec
2026-01-19 15:40:48 +00:00
Nikolay Chashnikov
63cd89510f
refactor [java]: rename ClassFileAnalyzer.processData to processFileContent for clarity
...
GitOrigin-RevId: e7a6c8fe98f626948ebd7e54c0b42f94907dbf2f
2026-01-19 15:40:48 +00:00
Mikhail Pyltsin
76d276b20d
[java-inspections] IDEA-377682 JSpecify. Nullable incompatibilities. Calls with generics
...
GitOrigin-RevId: 5b501cf6f6e99a675ad2e78283000a0be86fb3ff
2026-01-16 17:07:48 +00:00
Bas Leijdekkers
bf54a73345
IDEA-381887 [java]: improve messages of Java 8 inspections
...
GitOrigin-RevId: 088ce28eb3b8cbbce9aa1cfc1b073fef2dab12ce
2026-01-16 13:57:13 +00:00
Mikhail Pyltsin
0780f14038
[java-frontend] IDEA-366600 Get rid of additional "Java for JetBrains Client" plugin
...
- move extension points where they are defined
GitOrigin-RevId: ab4db1b7557d6ce5b0a10fcde96be3f01f15b539
2026-01-16 10:52:27 +00:00
Mikhail Pyltsin
a43daddb89
[java-frontend] IDEA-366600 Get rid of additional "Java for JetBrains Client" plugin
...
- add comments and check structure, disable dependencies, disable remote servers
GitOrigin-RevId: 02ce5ef35d4ea84eb376f773fce1910583a3e3fa
2026-01-15 16:28:43 +00:00
Mikhail Pyltsin
6c3ad84680
[java-frontend] IDEA-366600 Get rid of additional "Java for JetBrains Client" plugin
...
- java backend
GitOrigin-RevId: fce68683d12e29cf35b179f848704dbe074f4d76
2026-01-15 16:28:43 +00:00
Mikhail Pyltsin
fd36687a77
IJ-CR-187719 [java-inspection] IDEA-382441 jspecify inspection doesn't highlight assignments
...
- fix using labels
GitOrigin-RevId: 59f30bc05372fec687d713dbb7c6d596fd324ee5
2026-01-15 10:34:07 +00:00
Bartek Pacia
d5042e8d62
LSP-407 ContractInferenceIndexKt: extract contract inference gist to a service class
...
GitOrigin-RevId: e064a340a5fc3576d7fa482d9c68ff545bfae68a
2026-01-14 17:34:06 +00:00
Bartek Pacia
527e4b4d8c
LSP-390 BytecodeAnalysisGist: tiny Javadoc improvement
...
GitOrigin-RevId: 2e7428358948d24fd85ccb9fd7c6325ede426255
2026-01-14 17:34:05 +00:00
Bartek Pacia
08e1fb3327
cleanup [java-analysis-impl]: reformat ContractInferenceIndex
...
GitOrigin-RevId: 379dd428a6c0201509df77b3c5c1cca37423c325
2026-01-14 17:34:05 +00:00
Mikhail Filippov
500bd97eed
[build] IJI-2993 fix compilation errors in progressive mode
...
GitOrigin-RevId: 7cc14b9ab0ccb9e66a74b4c67eccc7b235f2be32
2026-01-14 11:00:39 +00:00
Mikhail Filippov
ea41f7932a
[build] IJI-2993 enable progressive mode for Kotlin
...
GitOrigin-RevId: f506021c20fc3b3e5ef692c9092592e3bf247036
2026-01-14 11:00:39 +00:00
Mikhail Pyltsin
6097eb7fb1
IJ-CR-187719 [java-inspection] IDEA-382441 jspecify inspection doesn't highlight assignments
...
- delete REPORT_CONFLICT_IN_ASSIGNMENTS
GitOrigin-RevId: f654c30fbb08d3a7ec7b5359fa95b4f12ef6d018
2026-01-14 10:22:44 +00:00
Bartek Pacia
427a1cb8f3
LSP-390 EquationsExternalizer: make a singleton to prevent externalizer hashcode mismatch errors in LSP
...
LSP creates "a new copy of the world" for each request, and this caused EquationsExternalizer to be recreated too.
GitOrigin-RevId: 3f56d2a933d3d96533f5afd4c206fcecde04a716
2026-01-13 18:51:52 +00:00
Bartek Pacia
fa34bb71df
LSP-390 ClassDataIndexer: extract bytecode analysis gist to a service class
...
GitOrigin-RevId: d025f80292cca8a7ca9961be1e7318961a9dc3cf
2026-01-13 18:51:52 +00:00
Mikhail Pyltsin
453ca78ef1
[java-inspection] IDEA-382441 jspecify inspection doesn't highlight assignments
...
GitOrigin-RevId: 29497c955c64040544a3bf4af0af0edd08763201
2026-01-13 12:40:21 +00:00
Aleksey Dobrynin
2b71f8e416
[junit, inspection, quickfix] IDEA-384337 handle @Suite without selectors
...
GitOrigin-RevId: 50f4e3a5d19ff94a7b9d6a27e4d2af30d8459d73
2026-01-08 17:54:06 +00:00
Mathias
c0d4370bd9
IDEA-382919 Javadoc: Improve the markdown conversion of Javadoc
...
Links (and their plain variant) are much more accurate than before.
GitOrigin-RevId: ab7ce1f578191b5c8543dc820e513a0f7363be24
2026-01-07 11:56:07 +00:00
Bart van Helvert
b9b383c76e
[java] Don't use project as disposable
...
Introduces `JavaPluginDisposable` and migrates existing project disposables to the new project level service. #IDEA-383890 Fixed
GitOrigin-RevId: 762429b8f44959e127324d19053a8b05a818f414
2026-01-07 11:33:05 +00:00
Bart van Helvert
cfbf199e71
[java] Add ReplaceAllNonRegex inspection
...
Adds an inspection with a quickfix that suggests replacing `String#replaceAll` that doesn't pass regular expressions with `String#replace`. #IDEA-288385 Fixed
(cherry picked from commit e4bf212ae5693754c5a3dd51d9f5c578a5490e39)
IJ-MR-186138
GitOrigin-RevId: 8e2ad43e460b08f02529093e3f0d61a31e7d4efd
2025-12-24 10:54:58 +00:00
Mikhail Filippov
7744eca84a
[build] IJPL-220367 bump Kotlin language and API versions
...
GitOrigin-RevId: c58c2f2ca3e4fbbe5116bd19119345174b7db32f
2025-12-20 13:35:48 +00:00
Bas Leijdekkers
f335e07320
IDEA-383698 [java]: shorten generated fully-qualified name
...
GitOrigin-RevId: 6ec8829ee9a1b1b156cf1d04b6661080e1a1eb75
2025-12-19 13:53:53 +00:00
Bas Leijdekkers
ddaea40aba
IDEA-354817 [java]: find constructors correctly with both "Usages" and "Usages of constructors" is selected
...
GitOrigin-RevId: 3f75d7e0a6ace0dd4124fc0a9dd1d4e67be6e9b6
2025-12-17 13:19:23 +00:00
Tagir Valeev
45b0441d33
IDEA-382366 [android] Move AndroidAnnotationSupport to android plugin
...
Also: non-null return type for getNullabilityAnnotations
GitOrigin-RevId: 6a3c05c665dc4a301c4ed580e58d7dfb9d9272af
2025-12-16 15:07:11 +00:00
Tagir Valeev
9786f35b95
IDEA-383336 [java] Remove java.annotations.inference.nullable.method.* registry keys
...
GitOrigin-RevId: e7e7c24a0038d45690d668f1cf9ef831ba10b4eb
2025-12-15 10:16:32 +00:00
Mikhail Pyltsin
8424fe1ac9
[java] IDEA-382236 Support JEP 530: Primitive Types in Patterns, instanceof, and switch (Fourth Preview)
...
GitOrigin-RevId: 2d9475f4da52a641e7ab1e23d5a5643a10c9017a
2025-12-13 20:50:37 +00:00
Georgii Ustinov
54eecf6340
[Java] LSP-301 Refactoring Unused import command provider
...
- Renamings
- Move converters of ProblemHighlightingType and HighlightSeverity to separate util class
GitOrigin-RevId: c80a6b3771f03c1bf3357e706935bf8f590d1d4c
2025-12-11 19:00:38 +00:00
Bas Leijdekkers
02891da6f8
IDEA-382971 [java]: replace call to generic vararg parameter correctly
...
- reuses quick fix code in "Wrap vararg arguments with explicit array creation" intention
- keeps comments nicely
GitOrigin-RevId: 8113ec4059b853b0c7b2057e6948b95ed95e7c90
2025-12-09 20:51:45 +00:00
Georgii Ustinov
9f32788699
[Java] LSP-301 Support optimize imports intention action
...
GitOrigin-RevId: 5ed72c782122f5517c31d3886970976661d72ae1
2025-12-08 13:21:28 +00:00
Mathias
5795bfdd27
IDEA-361338 IDEA-375512 IDEA-375514 IDEA-375513 IDEA-360964 javadoc: fix various conversion issues
...
#IDEA-361338 Fixed
#IDEA-375512 Fixed
#IDEA-375514 Fixed
#IDEA-375513 Fixed
#IDEA-360964 Fixed
GitOrigin-RevId: df24bc5e397b813f2bef463300ac8696cd7994c3
2025-12-02 21:30:15 +00:00
Georgii Ustinov
25b869f770
[Java. Inspections] IDEA-381448 Expose strong type in API inside NullableStuffInspectionUtil
...
GitOrigin-RevId: 7cf8611ae51933fc86060731611b19a16e8f7730
2025-12-02 19:16:38 +00:00
Tagir Valeev
67d404a6f3
IDEA-372145 [java-intentions] follow-up: use different nullity annotations in AnnotateOverriddenMethodParameterFix
...
Also: simplify via delegation to ModCommand
GitOrigin-RevId: 59f6cbdbfbee2995036b802b0a3add9f2360122f
2025-12-01 19:48:04 +00:00