Merge master into BETA_JAVA27 branch#2993
Merged
Merged
Conversation
…2956) This PR fixes an issue where @link inside Javadoc {@snippet} tags was applied to the wrong substring during HTML rendering in Javadoc hover/view. The anchor tag is now correctly mapped to the intended target text instead of wrapping an incorrect partial sequence caused by index ordering during tag insertion. Fix: #2944
Adds support for automatically inserting a closing triple backtick when typing ``` in Markdown comments, improving the typing experience. This behavior is controlled by a new preference so users can enable or disable it as needed. Fix: #2529
Add a new option that collectively enable or disable all Code Mining preferences all at once. The checkbox will also reflect according to the individual preference selections.
JUnit Platform Console Standalone jars expose the platform version in Specification-Version, while the bundled Jupiter engine version is stored in Engine-Version-junit-jupiter. Prefer that Jupiter engine version for junit-platform-console-standalone jars so JUnit 5 and JUnit 6 detection uses the version of the test engine rather than the platform artifact. Fall back to Specification-Version for the existing non-standalone cases and leave annotation lookup/access restriction behavior unchanged. Fixes: #2959
…#2966) * Fix Unresolved type to ignore a guessed type binding to Object - add check in UnresolvedElementsBaseSubProcessor.addSimilarTypeProposal method to ignore a guessed binding of Object for unresolved type when there are possible types to look at - fix relevance when importing and adding to module so it will be offered sooner - for eclipse-jdt/eclipse.jdt.core#5039
…ertEqualPositions() SemanticTokensProviderTest.disabledHighlightingNoError can fail due to mismatched expected and actual arrays sizes. This change adds the arrays to the fail message, as the actual elements are currently missing from the fail information. See: #1432
* Add option for new formatter in ui * Add sample text block to preview for newlines --------- Co-authored-by: Jeff Johnston <jjohnstn@redhat.com>
- fix logic so that when a match is found that is accessible, return false instead of continuing to look through other access rules - add new test to ImportOrganizeTest1d8 - fixes #2972
This commit removes unwanted single quotes from label links in the Preference pages and makes links across Preference pages consistent.
Similar to the refactoring wizard, JUnit diff order was always NOT following "traditional" Eclipse compare editor diff order (left is "new", right is "old"), so that "natural" order expected / actual was inconsistent with the compare editor preference, but it was based on this preference (via CompareConfiguration). Now the "natural" order is default, swap the sides in JUNit diff pane to keep same order in as before left: expected, right: actual. As expected "side effect", this patch fixes exact same problem refactoring wizard had with wrong colors applied, where deletion and addition were using wrong colors. See eclipse-platform/eclipse.platform#2566 See eclipse-platform/eclipse.platform.ui#3777 See eclipse-platform/eclipse.platform.ui#3776 (comment)
Allow a -testNameFile to contain lines of the form 'ClassName:methodName' so that an arbitrary set of methods (potentially across multiple classes) can be discovered and executed inside a single test JVM. This avoids the per-method setup/teardown cycles that currently occur when a user runs more than one method via Eclipse's Test Explorer (or via vscode-java-test, which sits on top of this protocol). * ITestLoader gains a default loadTests(LinkedHashMap<Class<?>, List<String>>, ...) method that pair-wise delegates to the legacy single-method overload, so every existing loader keeps working unchanged. * RemoteTestRunner.readTestNames() recognises ':' separated lines and routes through the new dispatch when present; class-only lines keep their previous semantics so older clients are unaffected. * JUnit5TestLoader builds one LauncherDiscoveryRequest with multiple selectMethod selectors, letting JUnit Platform run the entire selection natively within a single test JVM. * JUnit4TestLoader composes a Request.classWithoutSuiteMethod(c).filterWith() using a new MultiMethodFilter to express the same selection on JUnit 4. * Both JUnitLaunchConfigurationDelegate variants relax createTestNamesFile() to also write IMethod elements as 'Class:method' lines, allowing the new behaviour to be reached via the existing -testNameFile path without any new protocol parameters.
- fix JUnitLaunchConfigurationTab to check for the project being closed to avoid causing exceptions when closed projects are not filtered out and instead issue error message for the configuration - fixes #2969
The XXX comments referenced com.ibm.icu.lang.UCharacter and java.lang.Character behavior on Java 1.4. ICU is no longer a dependency, and the surrogate branches contained no actual logic, so fold the surrogate check into the outer condition and drop the stale comments.
React to change from eclipse-jdt/eclipse.jdt.core#5054 Fixes #2982
* Use contributed search participants in call hierarchy
Incoming calls (CallerMethodWrapper):
Replace hardcoded `new SearchParticipant[] { getDefaultSearchParticipant() }`
with `SearchEngine.getSearchParticipants()` so that incoming call searches
include results from contributed search participants registered via the
`org.eclipse.jdt.core.derivedSourceSearchParticipant` extension point. For
contributed (non-Java) elements, accept A_INACCURATE matches since JDT's
MatchLocator cannot resolve type bindings for types not compiled by ECJ.
Outgoing calls (CalleeMethodWrapper):
When the member has no Java AST (i.e. `getCompilationUnitNode()` returns
null), fall back to `DerivedSourceSearchParticipant.locateCallees()` on all
contributed participants. Each participant can report call sites within the
member's body. Returned callees are resolved to full declarations via
`resolveCallee()`, which handles METHOD, FIELD, and TYPE element types.
Outgoing calls from Java to non-Java targets (CalleeAnalyzerVisitor):
When a Java method invocation has a null ECJ binding (receiver type is from
a contributed language, not compiled by ECJ), fall back to resolveViaSearch()
which uses SearchEngine.getSearchParticipants() to find METHOD DECLARATIONS
matching the method name across all contributed participants.
Non-standard ICompilationUnit handling (CallHierarchyCore):
Guard getCompilationUnitNode() with isJavaLikeFileName() check so non-Java
source files (e.g. .kt) are not parsed as Java AST, which would produce
broken results and false positives in outgoing call analysis.
Dependency:
Bump `org.eclipse.jdt.core` dependency to `[3.46.0,4.0.0)` for the
`SearchEngine.getSearchParticipants()` and
`DerivedSourceSearchParticipant.locateCallees()` APIs added in
eclipse-jdt/eclipse.jdt.core#4938.
Depends on eclipse-jdt/eclipse.jdt.core#4938.
Companion to eclipse-jdtls/eclipse.jdt.ls#3732.
ICU is no longer a dependency of this repo, so the entries in the 'should not be loaded/activated' bundle lists are dead and can be removed.
) - in JavaWorkingSetUpdater.elementChange() make sure that the Other Projects working set is processed either as part of the local list or by searching for it - for eclipse-platform/eclipse.platform.ui#2250 (comment)
The perform() method mixed pm.worked() with SubMonitor.convert() on the same monitor, and called SubMonitor.convert(pm, 1) inside a loop. Both patterns corrupt progress reporting: convert() resets the monitor's remaining work, so repeated calls in a loop or after worked() discard already-reported progress. Replace pm.beginTask/worked/done and the in-loop SubMonitor.convert() calls with a single SubMonitor.convert() up front, then split() for each unit of work.
Member
Author
|
Same ECA validation issue as in #2958 (comment). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
FIxes #2992
What it does
How to test
Author checklist