Commit Graph

56 Commits

Author SHA1 Message Date
Tagir Valeev
2350d69472 [java-highlighting] JavaCompilationErrorBundle.properties proofreading (DOC-34381)
GitOrigin-RevId: 05bdca159a63027ea0d1e3d767d4adb9b258f47e
2025-02-14 12:45:24 +00:00
Mikhail Pyltsin
5a13709bf9 IJ-CR-153901 [java-parser] IDEA-366391 Inconsistent doc comment association after markdown support
- fix naming

GitOrigin-RevId: 26986a580dbe2d963c390fe850ad71ba393fde7c
2025-02-07 17:48:54 +00:00
Bas Leijdekkers
ccc23ffa86 Java: rename feature to the currently correct name (IDEA-364189)
Statements before super() -> Flexible Constructor Bodies

GitOrigin-RevId: 8878101b0b2cef4d149c8f0819919ae5393c1e74
2025-02-05 10:21:50 +00:00
Mikhail Pyltsin
1d0c8692a3 [java-parser] IJ-CR-153901 IDEA-366391 Inconsistent doc comment association after markdown support
- use language level to predict the order of comments

GitOrigin-RevId: e7986fcb2302dde7ad80fae9346f6a27edb576ae
2025-02-03 17:48:25 +00:00
Nikolay Chashnikov
3c560d0268 [java] cleanup: get rid of fake packages in content modules of Java Frontend plugin (IDEA-366600)
Fake packages were used to ensure that the main plugin classloader is used to load the classes from content modules. Now the same can be achieved explicitly with loading="embedded" attribute. This is also needed to ensure that the classpath for content modules can be properly specified (this is needed for IJPL-165692).

Also, it's possible to use auto-layout for the plugin, so there is no need to specify it explicitly.

GitOrigin-RevId: 6a75b4868b796215018d230949752bc978c60476
2025-01-31 17:23:22 +00:00
Bart van Helvert
0a6eb487d1 Fix broken property key
GitOrigin-RevId: d6637b139efa8dde3075a295a71ec63f9a6ea6bf
2025-01-19 01:29:27 +00:00
Tagir Valeev
d016a592c8 [java-highlighting] Finish moving annotation-related errors
Part of IDEA-365344 Create a new Java error highlighter with minimal dependencies (PSI only)

GitOrigin-RevId: 21317f34d9e16b4169c56ad957c90fb07d943355
2025-01-09 12:30:34 +00:00
Tagir Valeev
d49d42c5d5 [java] annotation.target.* messages moved to JavaPsiBundle.properties
GitOrigin-RevId: ae0914063db552bdbd24b10348ad6e92e9e83636
2025-01-03 19:17:43 +00:00
Bas Leijdekkers
0ed14734d9 Java: add configuration for a separate color for record components (IDEA-350397)
GitOrigin-RevId: d3efcc3d50a2641306c32775ab356c188330f8e8
2024-12-19 19:09:44 +00:00
Bas Leijdekkers
3c2a0901cc Java: add configuration for a separate color for record classes (IDEA-338018)
GitOrigin-RevId: 45ef46717d9d49575a3a207fbeacd2ea3759fb83
2024-12-19 19:09:44 +00:00
Bas Leijdekkers
9890175ff5 Java: remove some unused properties
GitOrigin-RevId: 2739086d0d81a6d836c12a5080764de139ad7d16
2024-12-19 19:09:44 +00:00
Bas Leijdekkers
2b32d9bb56 Java: basic support for Valhalla Value Classes (IDEA-364548)
GitOrigin-RevId: 93b0394866aae35772ccc90e7de822af8a94c6ce
2024-12-18 18:05:29 +00:00
Mikhail Pyltsin
99171bedb6 [java-highlighting] IDEA-363617 Support JEP 494: Module Import Declarations (Second Preview)
- support transitive for dependencies on 'java.base' module

GitOrigin-RevId: a364934e96592ae3a8244ae68b2fb5372e7f5a30
2024-12-05 01:17:54 +00:00
Mikhail Pyltsin
9e62b515e2 [java-highlighting] IDEA-363617 Support JEP 494: Module Import Declarations (Second Preview)
- support shadowing module imports by package-on-demand

GitOrigin-RevId: 643fc10bcbfee2f1d41ec02e624b30bc3a48e4bb
2024-12-05 01:17:54 +00:00
Tagir Valeev
5a10f2e424 [java] IDEA-364190 Create language level 24
GitOrigin-RevId: 500c9a05f48e6c1d43c2019a1a9620df42a2adf4
2024-12-03 14:25:33 +00:00
Bas Leijdekkers
54f80ad00b [java] define "record header" element kind
GitOrigin-RevId: 91f02e6ab23e47e05612413074ef30eb31dd854d
2024-11-02 01:09:48 +00:00
Mikhail Pyltsin
7e9f1978a2 [java-highlighting] IDEA-357214 'Module' is highlighted as an error when module name is expected
GitOrigin-RevId: c7ca9de1821e79b96a05ab74a3cbad7052ceb827
2024-10-10 15:17:07 +00:00
Aleksey Dobrynin
9aac209c72 [properties, inspection, fix] non-ISO 8859-1 characters for java 1.8 and below IDEA-360007
GitOrigin-RevId: 7a45cac5966b251a5db6759c16f3709392c5a3fc
2024-10-09 10:36:06 +00:00
Bas Leijdekkers
1bdb332af2 Java: better error recovery on annotation parsing (IDEA-209573)
GitOrigin-RevId: a600121ecbd9fa6338237f0d3802486c7f8a5656
2024-07-30 22:37:25 +00:00
Mikhail Pyltsin
0273a7bcdb [java] IJ-CR-140268 IDEA-356446 Support module imports
- return `getAllImportStatements`
- fix naming

GitOrigin-RevId: fcb975ca20bb3ea2c05c3e1491f1e10b4b6fcb06
2024-07-18 20:11:33 +00:00
Mikhail Pyltsin
d0c8d95e30 [java] IDEA-356446 Support module imports
- Support keyword completion

GitOrigin-RevId: 10dcdc049838efa601e6bf0bbaf180ab4a8556de
2024-07-17 18:18:57 +00:00
Bas Leijdekkers
828021ab55 Java: shorten language level 23 text and add Oxford commas (IJ-CR-139738)
GitOrigin-RevId: 406e18f936bea2fe83bd0b48ac47609e995e7251
2024-07-15 11:40:27 +00:00
Mikhail Pyltsin
c437caf780 [java] IDEA-355892 JEP 477 JEP 477. Problems with run gutters
- new java features are introduced (for main methods)
- `mainCandidateComparator` is moved to `PsiMethodUtil`
- `PsiMethodUtil.findMainMethod` can compare methods and not only return first
- ApplicationRunLineMarkerProvider works with `getSlowInfo` in dumb mode
- ApplicationRunLineMarkerProvider uses the same logic for classes and methods

GitOrigin-RevId: e2c20e8690ac032b52c7de742cdb39933ef1d1d3
2024-07-04 20:24:54 +00:00
Mikhail Pyltsin
07178b990f [java-highlighting] IDEA-355777 Support JEP 477: implicit imports
- support implicit import for java.io.IO
- reimplement implicit static imports

GitOrigin-RevId: 3e2650128d43b1cff40c21c0539869070c6094d0
2024-07-03 22:08:38 +00:00
Bas Leijdekkers
14315c7ca4 [java] introduce language level for Java 23
GitOrigin-RevId: d64d154c243f5c1810bf08790a1df44a6ac948cb
2024-07-03 10:13:47 +00:00
Mikhail Pyltsin
c8995f3cc8 [java-highlighting] IDEA-352187 Support JEP 455: highlighting for instanceof with primitives
GitOrigin-RevId: cbd688d0945b03bffb05af85825c610889383fc4
2024-04-29 21:17:42 +00:00
Roman Ivanov
4a4ec64d2e Create java module file type
GitOrigin-RevId: 57870035dccbd5d35c331a4ddfc3d088edcf8aba
2024-04-19 14:19:04 +00:00
Bas Leijdekkers
f96bb8f6d4 [java] define "type parameters" element kind
GitOrigin-RevId: 883cd7f25b3ca5a3eac311b3c9b8b90fc3334653
2024-04-03 14:14:32 +00:00
Bas Leijdekkers
e39319e784 [java] define "permits list" element kind (IDEA-350501)
GitOrigin-RevId: bd1126512effdbf9e202d7cb68c5ab15ad78d761
2024-04-03 14:14:02 +00:00
Tagir Valeev
3ed2f12a89 [java] JavaFeature.OBJECTS_CLASS
GitOrigin-RevId: 99e54a5f42368279b20fca9388f420cd6e24dee2
2024-03-14 19:34:45 +00:00
Tagir Valeev
92ac3066cb [java] JavaFeature.OVERRIDE_INTERFACE; isLanguageLevel6OrHigher usages removed
GitOrigin-RevId: 5d1bedeee34435ecbfc0d4bda6245a50c9ac24d7
2024-02-15 17:28:26 +00:00
Tagir Valeev
487057d926 [java] Remove unused property
GitOrigin-RevId: 8f4d22e4ae4e4c8416bf81bfccd3721d464d1012
2024-02-13 15:29:30 +00:00
Tagir Valeev
eb13469d1f [java] Fix typo
GitOrigin-RevId: 76b6a38a5f41aaa8fa594c20e87c61e27dff6cf1
2024-02-13 15:29:25 +00:00
Tagir Valeev
bf85acba82 [java] More JavaFeature uses
Also: new JavaFeatures (ASSERTIONS, ENUMS, PRIVATE_INTERFACE_METHODS)

GitOrigin-RevId: f073845a77730b486afa56317e2c12ff044f5425
2024-02-12 19:12:43 +00:00
Tagir Valeev
d0cf7b359a [java] IDEA-345498 Remove explicit Java 20-preview support and parenthesized patterns
GitOrigin-RevId: 8d646035979e3ec0a7de3c6f58a4e6ec9967bdbd
2024-02-12 19:12:36 +00:00
Tagir Valeev
8f28141888 [java] JavaFeature.JAVADOC_SNIPPETS
GitOrigin-RevId: ef0b325549f0d804d3d7549862663482e34e16fa
2024-02-08 10:08:24 +00:00
Tagir Valeev
2b41a7f753 [java] A little bit more of JavaFeature uses
GitOrigin-RevId: ffb3c336a16500a53000a8fbd6aa793fffd6befc
2024-02-08 10:08:19 +00:00
Tagir Valeev
ea2b70a2d1 [java] IDEA-345355 Refactor HighlightingFeature (in progress)
JavaFeature.EFFECTIVELY_FINAL

GitOrigin-RevId: d52ab73d7d24745b149b5a4704f1dee55e4179f0
2024-02-08 10:08:09 +00:00
Tagir Valeev
72890668ad [java] IDEA-345355 Refactor HighlightingFeature (in progress)
Rename STREAMS to STREAM_OPTIONAL; use features instead of isLanguageLevel8OrHigher

GitOrigin-RevId: 36f56560f6c7ca626a268d8b07da86497f2501a0
2024-02-08 10:08:04 +00:00
Tagir Valeev
d0d82eba52 [java] IDEA-345355 Refactor HighlightingFeature (in progress)
Declare new features: SERIAL_ANNOTATION, NESTMATES, ALWAYS_STRICTFP, COLLECTION_FACTORIES, INNER_NOT_CAPTURE_THIS, STRING_SWITCH
Use more features instead of explicit Java levels

GitOrigin-RevId: e90a96501c218ed44faebb7c882770b50477b6e1
2024-02-08 10:07:38 +00:00
Tagir Valeev
7625b3c7a2 [java] IDEA-345355 Refactor HighlightingFeature (in progress)
Merge JavaLanguageFeature into JavaFeature

GitOrigin-RevId: 212b31d072450df03fc9eeeeb2cf0861b2b32bc1
2024-02-08 10:07:28 +00:00
Tagir Valeev
a7674dca70 [java] IDEA-345355 Refactor HighlightingFeature (in progress)
Create JavaLanguageFeature; move HighlightingFeature functionality there; move preview highlighting related utilities to new PreviewFeatureUtil class

GitOrigin-RevId: 116bcc9feb6fb40a0bd6a25ba10c2f35b41ffea6
2024-02-08 10:07:12 +00:00
Bas Leijdekkers
db09a65955 Java: add quick fix to remove to package statement in implicit class (IDEA-343977)
GitOrigin-RevId: 58660c335331489dd416bd4979f6a5f89c1d51fa
2024-01-24 20:02:54 +00:00
Tagir Valeev
c74bfa2e57 [java] IDEA-341317 Navigation into multi-release JARs
GitOrigin-RevId: 43612b6950fca72ab58af9b1eb5dc4940f90c501
2023-12-19 16:48:57 +00:00
Mikhail Pyltsin
45b4e8e23c [java-intentions] IDEA-340601 allow creating methods in ImplicitClass
GitOrigin-RevId: 1e0cd613359f27e889df5cf03ce535c1a1a99ca7
2023-12-12 20:14:00 +00:00
Tagir Valeev
2a4fc312fb [java] IDEA-327241 Enable compilation and running Java projects with configured unsupported preview versions
GitOrigin-RevId: df85f51ac1d4249ec3baf34f5ce7d150e06d2a13
2023-12-09 13:20:33 +00:00
Bas Leijdekkers
0b59d209aa Introduce language levels for Java 22
GitOrigin-RevId: cbc48e46a05c15e13d3c5e23cf32ae5f958ef615
2023-12-07 00:58:17 +00:00
Nikolay Chashnikov
055febd921 [java rd] use fake root packages for modules included in com.intellij.java.frontend plugin (IDEA-322563)
We need to have root packages for module xml files in plugin model v2, but if we specify packages with real classes in these modules, they'll fail to load with "must not be requested from main classloader" error, because inter-module dependencies aren't specified for these files. If we specify module dependencies, the big 'com.intellij.java' plugin will fail to load because it isn't migrated to plugin model v2 yet and includes contents of these module descriptors via xi:include tag. So it seems that we need to use fake packages without real classes until 'com.intellij.java' plugin is migrated to plugin model v2.

Check in InterfaceExtensionImplementationClassResolver is suppressed for 'com.intellij.java.frontend' plugin as well for now.

GitOrigin-RevId: 7b2321835becc9f4589ddae09a40160bf735044e
2023-11-06 19:58:09 +00:00
Nikolay Chashnikov
0675f3c131 [java rd] include required modules in plugin.xml for com.intellij.java.frontend plugin (IDEA-322563)
This is necessary to load these modules with ModuleBasedProductLoadingStrategy, which is used to start JetBrains Client.

GitOrigin-RevId: 1dd18b9786e71630f3c2779c557b8661ea89bf85
2023-11-06 08:49:02 +00:00
vladimir.petrenko
bd349939e2 RDCT-555 Sync language level to the client: modules and dependencies refactor
remove unnecessary dependency on kotlin serialization module from `intellij.platform.core` module (it is an OpenAPI module, some test failed)

move all changes from `intellij.java.frontback.psi` module to `intellij.java.frontback.psi.impl` module so that there will no be a dependency on kotlin serialization modules in the `intellij.java.frontback.psi` module because `intellij.java.frontback.psi` module is an OpenAPI module (some test failed)

(cherry picked from commit a3fa1ab533734442fb6691b0162b3f930a66d9bc)

IJ-MR-116786

GitOrigin-RevId: 81bf0153f9528d9ec58e6b557fa0b7aee80a2c46
2023-11-03 15:16:59 +00:00