Anna.Kozlova
4290a37a08
new inference: check intersection type of upper bound to detect substitution (IDEA-165011)
2016-12-07 18:44:34 +01:00
Dmitry Batkovich
4ac9d4360e
create constructor parameter should consider context (e.g.: type parameter name == some class name from java.lang)
2016-12-07 18:23:14 +03:00
Anna.Kozlova
5732b8fb81
ensure static fields/static initializers are evaluated before instance fields (IDEA-165084)
2016-12-07 11:18:47 +01:00
Tagir Valeev
54f7edf064
StreamApiMigrationInspection: use collect when computeIfAbsent is used; VariableAccessUtils#variableIsUsed instead of ReferenceSearch (IDEA-CR-16490)
2016-12-07 12:51:54 +07:00
Tagir Valeev
95fac58f03
ExcessiveLambdaUsageInspection: support JUnit5 assertions; regex as lambdaMethod, minor improvements (IDEA-CR-16398)
2016-12-07 12:13:02 +07:00
Anna.Kozlova
e55fbf3f1d
isEffectivelyFinal: disallow effectively final variables to be initialized twice (IDEA-165060)
2016-12-06 17:54:19 +01:00
Pavel Dolgov
05744d1ffd
Java: Merged ConfusingElseInspection and RemoveRedundantElseAction into RedundantElseInspection, made it an INFORMATION-level inspection (IDEA-162191)
2016-12-06 17:42:37 +03:00
Anna.Kozlova
81e49151ff
don't insert braces around single lambda parameter
2016-12-06 12:35:48 +01:00
Anna.Kozlova
57ec346668
precise rethrow: special case for catch Exception (IDEA-164241)
2016-12-06 12:13:22 +01:00
Tagir Valeev
f0c8802a27
StreamToLoop inspection: simplify toMap mergers (a,b)->a (use putIfAbsent) and (a,b)->b (use put)
2016-12-06 12:23:06 +07:00
Tagir Valeev
f3d41d8a3c
InlineStreamMapAction: restore comments
2016-12-06 12:23:06 +07:00
Tagir Valeev
d7cb4edc8d
IDEA-164880 Refactoring to function composition methods
2016-12-06 12:23:05 +07:00
Roman Shevchenko
9aef1ccba3
[java] allows @author tag on method Javadoc (IDEA-159020)
2016-12-02 20:29:33 +01:00
Anna.Kozlova
382b78aeca
unrelated defaults: check if current class contains explicit method (IDEA-164732)
2016-12-02 11:51:07 +01:00
Tagir Valeev
203c11fca6
IDEA-164822 Migrate to Stream API: support toMap/groupingBy scenarios
2016-12-02 16:30:57 +07:00
Anna.Kozlova
936294e05d
allow functional expressions in nested conditional expressions (IDEA-164828)
2016-12-01 16:52:02 +01:00
Anna.Kozlova
1732f58088
disable method reference replacement with qualifier (IDEA-164723)
2016-12-01 10:39:31 +01:00
Anna.Kozlova
a17be30b79
include package local methods into method hierarchy (IDEA-164557)
2016-12-01 10:39:31 +01:00
Dmitry Batrak
e6a6f609ea
IDEA-164610 Quick documentation should escape angle brackets at the value of a String field referred via @value (javadoc tag)
...
also add quotes to string value, and convert value into a link to corresponding field's javadoc, like javadoc tool does
2016-11-30 18:01:44 +03:00
Tagir Valeev
4e919302c7
StreamToLoopInspection: support inside single-expression lambdas
2016-11-30 17:36:09 +07:00
Pavel Dolgov
2f5e954770
Java: Fixed false positive "unreachable statement" in the control flow analysis (IDEA-164442)
2016-11-30 13:04:34 +03:00
Tagir Valeev
d749f3dc5a
IDEA-163909 Inspection to replace computeIfAbsent returning a constant with putIfAbsent
2016-11-30 15:15:58 +07:00
Roman Shevchenko
cfffd966fb
[java] resolve into multi-release modular libs
2016-11-29 15:04:19 +01:00
Anna.Kozlova
5098bf49fc
completion for private modifier in java 9 interfaces, hide 'static' from completion in java 6
2016-11-28 15:38:48 +01:00
Anna.Kozlova
d4a9f70ca8
private modifier in interfaces: check for modifier combinations, body (IDEA-164596)
2016-11-28 15:38:48 +01:00
Roman Shevchenko
e7fd8b0fef
[java] tolerates ambiguous modules in readability analysis (IDEA-164553)
2016-11-25 20:42:50 +01:00
Anna.Kozlova
57bd0325ef
copy also nullable annotations when create constructor parameter from field (IDEA-164493)
2016-11-25 12:50:54 +01:00
Anna.Kozlova
df3abfd8c3
check constructor only implicitly called constructor (IDEA-164500)
2016-11-25 12:50:54 +01:00
Anna.Kozlova
261e309dd7
import static: insert single-static-import if multiple on-demand imports with corresponding constants are available leading to ambiguity reference
2016-11-25 09:56:52 +01:00
Anna.Kozlova
83bb640734
ensure inserted single-static-import when conflicting on-demand imports are presented (IDEA-155031)
2016-11-25 09:56:52 +01:00
Tagir Valeev
c2e815fc97
IDEA-163405 Migration from Stream API back to for loops: iteration#2
2016-11-24 18:15:51 +07:00
Anna.Kozlova
e201eee547
warn if lambda -> method ref fix can change semantics (IDEA-CR-16052)
2016-11-23 14:31:13 +01:00
Anna.Kozlova
049a253fdf
inference: don't erase types when target type is parameterized with unbounded wildcards only, in this case no unchecked warning would be generated and the types won't be affected by unchecked warning clause
2016-11-23 11:53:29 +01:00
Bas Leijdekkers
ad8c623aca
add parentheses to quick fix presentation
2016-11-23 11:31:36 +01:00
Tagir Valeev
0f7c78a5a6
IDEA-163991 ifPresent is not suggested when value is not used inside expression; OptionalIsPresentInspection uses CommentTracker now
2016-11-23 17:26:57 +07:00
Anna.Kozlova
2514f10f0e
lambda -> method ref: allow conversion with any qualifier, show warning only for trivial qualifiers; same for anonymous -> method ref (IDEA-CR-16052)
2016-11-22 20:22:29 +01:00
Anna.Kozlova
becb6c7387
inference: mark call unchecked required when proper types are compared (IDEA-164243)
2016-11-21 19:33:20 +01:00
peter
7a8bd02590
IDEA-163834 Smart completion for stream.toArray(..) arg loses "[]" after accepting - when array is of non-static inner class
2016-11-21 18:11:28 +01:00
Bas Leijdekkers
eae8f18550
Report default annotation parameters in more cases
2016-11-21 17:09:17 +01:00
peter
60e0db2a5c
IDEA-163989 IDEA reports Object.getClass() with wrong return type for generic parameters
2016-11-21 16:41:08 +01:00
peter
53a517d779
completion preselection: choose the most relevant among exact prefix items (IDEA-163441)
2016-11-21 16:41:08 +01:00
Anna.Kozlova
7d1f9d1e7b
lambda -> method ref: allow pure method call chain (IDEA-164223)
2016-11-21 16:28:18 +01:00
Anna.Kozlova
7ffa9bd6ca
override/implement annotation settings (IDEA-58379)
...
annotations are removed by default for both return and parameters, custom OverrideImplementHandlers can provide predefined annotations which must be repeat in overriders, custom annotations can be configured by the user
2016-11-21 11:02:15 +01:00
Tagir Valeev
3fa339e3dd
IDEA-164016 Replace Optional.isPresent() checks with functional-style expressions fix produces non-compilable code
2016-11-21 14:47:02 +07:00
Tagir Valeev
f60c60c661
IDEA-164144 Intention offers change to comparingInt for long fields
2016-11-21 13:08:30 +07:00
Anna.Kozlova
ec82847b4e
resolve for method reference qualifier should prefer classes in case of constructor refs (IDEA-164165)
2016-11-18 17:58:54 +01:00
Anna.Kozlova
ccb61093af
overload resolution: don't choose most specific method based on boxing property for vararg position (IDEA-163597)
2016-11-17 17:10:53 +01:00
Anna.Kozlova
39aa837db3
inference: don't distinguish parameterizations with 2 different interfaces (IDEA-163950)
2016-11-15 18:11:31 +01:00
Anna.Kozlova
3e9370f451
substitute base class according to resolve place
...
EA-90836 - assert: InferenceSession.collectApplicabilityConstraints
2016-11-14 19:05:03 +01:00
Anna.Kozlova
6fd0b34f8f
fix negative testdata
2016-11-14 11:22:36 +01:00