mirror of
https://gitflic.ru/project/openide/openide.git
synced 2025-12-16 14:23:28 +07:00
IJPL-112 Propagate ClientId via platform thread contexts
Highlight the usages of CompletableFuture/CompletionStage methods that will lose client id. For Kotlin the inspection might be too 'greedy', as we cannot check the receiver's type currently (KTIJ-29646). GitOrigin-RevId: b01c897515af8cd49cd18fb2407152537e7f4fd7
This commit is contained in:
committed by
intellij-monorepo-bot
parent
246f9b179c
commit
06230823d3
57
.idea/inspectionProfiles/idea_default.xml
generated
57
.idea/inspectionProfiles/idea_default.xml
generated
@@ -1043,6 +1043,63 @@
|
||||
<constraint name="ref2" nameOfExprType="com\.jetbrains\.swift\.psi\.types\.SwiftType" exprTypeWithinHierarchy="true" within="" contains="" />
|
||||
<constraint name="ref1" nameOfExprType="com\.jetbrains\.swift\.psi\.types\.SwiftType" exprTypeWithinHierarchy="true" within="" contains="" />
|
||||
</searchConfiguration>
|
||||
<searchConfiguration name="CompletableFuture methods using default executor" description="If executor isn't specified explicitly, ForkJoinPool is used, which doesn't support the propagation of IntelliJ platform's thread context (e.g. modality state or remote development client id). Pass some platform executor as an additional method parameter or wrap the passed task in 'captureThreadContext'." suppressId="CompletableFuture.defaultExecutor" problemDescriptor="Platform's thread context (modality state, rem-dev client id, etc) is lost when the default executor (ForkJoinPool) is used. Pass some platform executor as an additional method parameter or wrap the passed task in 'captureThreadContext'." text="$Instance$.$MethodCall$($Parameter$)" recursive="true" caseInsensitive="true" type="JAVA" pattern_context="default">
|
||||
<constraint name="__context__" within="" contains="" />
|
||||
<constraint name="Instance" regexp="CompletableFuture" minCount="0" within="" contains="" />
|
||||
<constraint name="MethodCall" regexp="runAsync|supplyAsync" target="true" within="" contains="" />
|
||||
<constraint name="Parameter" regexp="captureThreadContext.*" negateName="true" within="" contains="" />
|
||||
</searchConfiguration>
|
||||
<searchConfiguration name="CompletableFuture methods using default executor" text="$Instance$.$MethodCall$($Parameter$)" recursive="true" caseInsensitive="true" type="Kotlin" pattern_context="default">
|
||||
<constraint name="__context__" within="" contains="" />
|
||||
<constraint name="MethodCall" regexp="runAsync|supplyAsync" target="true" within="" contains="" />
|
||||
<constraint name="Parameter" regexp="captureThreadContext.*" negateName="true" within="" contains="" />
|
||||
<constraint name="Instance" regexp="CompletableFuture" minCount="0" within="" contains="" />
|
||||
</searchConfiguration>
|
||||
<searchConfiguration name="CompletableFuture methods using default executor" text="$Instance$.$MethodCall${$Code$}" recursive="true" caseInsensitive="true" type="Kotlin" pattern_context="default">
|
||||
<constraint name="__context__" within="" contains="" />
|
||||
<constraint name="MethodCall" regexp="runAsync|supplyAsync" target="true" within="" contains="" />
|
||||
<constraint name="Code" minCount="0" maxCount="2147483647" within="" contains="" />
|
||||
<constraint name="Instance" regexp="CompletableFuture" minCount="0" within="" contains="" />
|
||||
</searchConfiguration>
|
||||
<searchConfiguration name="CompletableFuture methods using default executor" text="$Instance$.$MethodCall$($Parameter$)" recursive="true" caseInsensitive="true" type="JAVA" pattern_context="default">
|
||||
<constraint name="__context__" within="" contains="" />
|
||||
<constraint name="MethodCall" regexp="completeAsync|exceptionallyAsync|exceptionallyComposeAsync|handleAsync|thenAcceptAsync|thenApplyAsync|thenComposeAsync|thenRunAsync|whenCompleteAsync" target="true" within="" contains="" />
|
||||
<constraint name="Parameter" regexp="captureThreadContext.*" negateName="true" within="" contains="" />
|
||||
<constraint name="Instance" nameOfExprType="java\.util\.concurrent\.CompletionStage" exprTypeWithinHierarchy="true" minCount="0" within="" contains="" />
|
||||
</searchConfiguration>
|
||||
<searchConfiguration name="CompletableFuture methods using default executor" text="$Instance$.$MethodCall$($Parameter1$,$Parameter2$)" recursive="true" caseInsensitive="true" type="JAVA" pattern_context="default">
|
||||
<constraint name="__context__" within="" contains="" />
|
||||
<constraint name="Instance" nameOfExprType="java\.util\.concurrent\.CompletionStage" exprTypeWithinHierarchy="true" minCount="0" within="" contains="" />
|
||||
<constraint name="MethodCall" regexp="acceptEitherAsync|applyToEitherAsync|runAfterBothAsync|runAfterEitherAsync|thenAcceptBothAsync|thenCombineAsync" target="true" within="" contains="" />
|
||||
<constraint name="Parameter1" within="" contains="" />
|
||||
<constraint name="Parameter2" regexp="captureThreadContext.*" negateName="true" within="" contains="" />
|
||||
</searchConfiguration>
|
||||
<searchConfiguration name="CompletableFuture methods using default executor" text="$Instance$.$MethodCall$($Parameter$)" recursive="true" caseInsensitive="true" type="Kotlin" pattern_context="default">
|
||||
<constraint name="__context__" within="" contains="" />
|
||||
<constraint name="MethodCall" regexp="completeAsync|exceptionallyAsync|exceptionallyComposeAsync|handleAsync|thenAcceptAsync|thenApplyAsync|thenComposeAsync|thenRunAsync|whenCompleteAsync" target="true" within="" contains="" />
|
||||
<constraint name="Parameter" regexp="captureThreadContext.*" negateName="true" within="" contains="" />
|
||||
<constraint name="Instance" minCount="0" within="" contains="" />
|
||||
</searchConfiguration>
|
||||
<searchConfiguration name="CompletableFuture methods using default executor" text="$Instance$.$MethodCall${$Code$}" recursive="true" caseInsensitive="true" type="Kotlin" pattern_context="default">
|
||||
<constraint name="__context__" within="" contains="" />
|
||||
<constraint name="MethodCall" regexp="completeAsync|exceptionallyAsync|exceptionallyComposeAsync|handleAsync|thenAcceptAsync|thenApplyAsync|thenComposeAsync|thenRunAsync|whenCompleteAsync" target="true" within="" contains="" />
|
||||
<constraint name="Instance" minCount="0" within="" contains="" />
|
||||
<constraint name="Code" minCount="0" maxCount="2147483647" within="" contains="" />
|
||||
</searchConfiguration>
|
||||
<searchConfiguration name="CompletableFuture methods using default executor" text="$Instance$.$MethodCall$($Parameter1$,$Parameter2$)" recursive="true" caseInsensitive="true" type="Kotlin" pattern_context="default">
|
||||
<constraint name="__context__" within="" contains="" />
|
||||
<constraint name="MethodCall" regexp="acceptEitherAsync|applyToEitherAsync|runAfterBothAsync|runAfterEitherAsync|thenAcceptBothAsync|thenCombineAsync" target="true" within="" contains="" />
|
||||
<constraint name="Instance" minCount="0" within="" contains="" />
|
||||
<constraint name="Parameter1" within="" contains="" />
|
||||
<constraint name="Parameter2" regexp="captureThreadContext.*" negateName="true" within="" contains="" />
|
||||
</searchConfiguration>
|
||||
<searchConfiguration name="CompletableFuture methods using default executor" text="$Instance$.$MethodCall$($Parameter$){$Code$}" recursive="true" caseInsensitive="true" type="Kotlin" pattern_context="default">
|
||||
<constraint name="__context__" within="" contains="" />
|
||||
<constraint name="MethodCall" regexp="acceptEitherAsync|applyToEitherAsync|runAfterBothAsync|runAfterEitherAsync|thenAcceptBothAsync|thenCombineAsync" target="true" within="" contains="" />
|
||||
<constraint name="Instance" within="" contains="" />
|
||||
<constraint name="Parameter" minCount="0" maxCount="2147483647" within="" contains="" />
|
||||
<constraint name="Code" minCount="0" maxCount="2147483647" within="" contains="" />
|
||||
</searchConfiguration>
|
||||
<searchConfiguration name="Consider explicit delete when file is not needed any more" text="$file$.deleteOnExit()" recursive="false" caseInsensitive="true" type="JAVA">
|
||||
<constraint name="file" nameOfExprType="java.io.File" within="" contains="" />
|
||||
</searchConfiguration>
|
||||
|
||||
Reference in New Issue
Block a user