Commit Graph
6042 Commits
Author SHA1 Message Date
Anna.Kozlova 95226c21c5 explicit right to left side assignment failure when inference breaks on return type (IDEA-152677) 2017-03-27 10:34:43 +02:00
Tagir Valeev a03fffe024 DFA Optional.orElse handling improved (splitting states) 2017-03-27 13:18:00 +07:00
Tagir Valeev 58dc190a9d IDEA-170136 Null analysis inspection misses orElse(null); 2017-03-27 13:06:30 +07:00
Tagir Valeev 93e35b7334 ExtractSetFromComparisonChainAction improvements (IDEA-CR-19606)
1. Fixed modifiers for interfaces
2. Replacement wrapped with Collections.unmodifiableSet
3. Supported Java 1.4 and lower
4. Supported Guava ImmutableSet
5. Supported comparisons like s.equals("xyz"), Objects.equals(s, "xyz")
2017-03-27 12:35:02 +07:00
Roman Shevchenko 9f3251a3da [java] drops support for incorrect (pre-b158) module-info.class attribute 2017-03-24 18:52:32 +01:00
Roman Shevchenko 5e5c14c57e [java] raises language level to Java 9 2017-03-24 18:35:57 +01:00
Pavel Dolgov 25afffeb70 Java: Filter by 'static' modifier in MethodHandle/VarHandle completion assistance (IDEA-167319, IDEA-CR-19610) 2017-03-24 15:45:42 +03:00
Roman Shevchenko 6bd1b92c6e [tests] prepares Java tests for the language level raise 2017-03-24 13:19:01 +01:00
Roman Shevchenko 1abffecba5 Cleanup (warnings, formatting) 2017-03-24 13:18:59 +01:00
Anna.Kozlova ca035634d1 warn if generics vararg method is called with 50+ poly args (IDEA-169240) 2017-03-23 15:49:44 +01:00
Tagir Valeev 3d216927b7 DataFlowInspection: do not report some common compile-time flag checks 2017-03-23 11:34:35 +07:00
Pavel Dolgov 7c3a2057df Java: Implemented completion of field types and method signatures in calls to findConstructor(), findVirtual(), findVarHandle(), etc (IDEA-167319) 2017-03-22 14:44:26 +03:00
Tagir Valeev d9702d7d8d ExtractSetFromComparisonChainAction: i18n, java9 test, disable in Java 1.4 or lower (as varargs and generics aren't available there) 2017-03-22 18:30:28 +07:00
Tagir Valeev b0c584a295 IDEA-170033 Support raw-types when converting Iterable.forEach to loop 2017-03-22 16:51:46 +07:00
Tagir Valeev 836c498178 IDEA-168201 Intention to extract a set from "foo".equals(xyz) || "bar".equals(xyz) 2017-03-22 16:35:33 +07:00
Anna.Kozlova 4184796590 support .class guard (IDEA-169707) 2017-03-21 17:21:27 +01:00
peter 7702812305 remove accidentally added unused testdata (IDEA-CR-19526) 2017-03-21 16:48:26 +01:00
Pavel Dolgov 815aeb4583 Java: Updated test data for "MethodHandle/VarHandle type mismatch" (IDEA-167318, IDEA-CR-19455) 2017-03-21 18:01:51 +03:00
Pavel Dolgov 4d60277ee6 Java: Implemented sorting the candidates pop-up and added icons in that pup-up for "MethodHandle/VarHandle type mismatch" (IDEA-167318), refactored upon review feedback (IDEA-CR-19455) 2017-03-21 14:37:01 +03:00
Anna.Kozlova 278d43dc00 enable static import quick fix on "method expected" error (IDEA-169966) 2017-03-21 12:18:45 +01:00
Anna.Kozlova e75f2f7860 make message closer to javac error (IDEA-169865) 2017-03-21 12:18:45 +01:00
Tagir Valeev f764692965 StreamToLoopInspection refactoring: strings replaced with actual PsiType's (as they are valid now); removed unnecessary code due to all PsiExpressions are also valid 2017-03-21 14:21:29 +07:00
peter ea75860ac8 IDEA-169520 Flow annotations visible in Collections interface methods 2017-03-20 17:09:05 +01:00
Anna.Kozlova 0a889aa880 distinguish usageInfos corresponding to one poly reference
static import on overload method should be updated when all overloads are renamed simultaneously (IDEA-142445)
2017-03-20 17:05:33 +01:00
Anna.Kozlova e30711cb87 inline constructor: allow inlining constructors with multiple statements in chained constructor calls (IDEA-168258) 2017-03-20 17:05:33 +01:00
peter b4f3d9d54e fix DataFlowInspectionTest 2017-03-20 16:42:50 +01:00
peter 09d6f71387 IDEA-169780 Show parameter types in implement/override popup 2017-03-20 13:32:19 +01:00
peter 2ef1a4bffb a test for how dfa treats static final string comparison (IDEA-169892) 2017-03-20 13:32:19 +01:00
peter 6271698a64 IDEA-169818 Completion for first argument of Map.getOrDefault should be same as for Map.get 2017-03-20 13:32:19 +01:00
Anna.Kozlova c482c21b29 create from usage: ensure type parameters are extracted from wildcards (IDEA-169857) 2017-03-20 11:45:14 +01:00
Dmitry Batkovich a9d1a227ad add javadoc intention: do not handle type parameter as comment owner IDEA-169732 2017-03-20 12:41:05 +03:00
Tagir Valeev efdfa0a22c IDEA-169518 Convert "Move assignment to field declaration" to the inspection 2017-03-20 16:26:40 +07:00
Anna.Kozlova 2159d803f8 add javac quirks case for object-primitive comparison (IDEA-168944) 2017-03-17 16:42:50 +01:00
Pavel Dolgov d81332e1f8 Java: Improved inspection "MethodHandle/VarHandle type mismatch" - show candidates for replacement of method/constructor in a separate pop-up menu (IDEA-167318) 2017-03-17 15:15:45 +03:00
Alexey Kudravtsev b346fc5e2e IDEA-169269 "Analyze dataflow to here" should process only implementations of current class when analyzing return values for a method call in instance method 2017-03-17 12:07:05 +03:00
Anna.Kozlova cd431e9763 completion for inherited after new: find corresponding type parameter when target type passes to another parameter (IDEA-157803) 2017-03-17 09:39:29 +01:00
Tagir Valeev 1b533c8f4d Improved optional.get/orElseThrow handling: now it's a special contract 2017-03-17 12:24:05 +07:00
Anna.Kozlova 9a3f46076c ensure redundant on demund imports are not created when shorten class refs would find a conflict with class in same package/implicitly imported package (IDEA-169190) 2017-03-16 15:03:15 +01:00
Dmitry Batrak 4ae6919940 IDEA-169556 Join Lines inserts redundant space in some cases 2017-03-16 15:26:23 +03:00
Alexey Kudravtsev ee62f51f3e IDEA-169542 'Analyze Dataflow to Here' misses assignment to variables passed to anonymous classes 2017-03-16 14:57:24 +03:00
Tagir Valeev 3ce24db8e1 Range analysis: support bitwise and (IDEA-157127) 2017-03-16 18:22:11 +07:00
Anna.Kozlova d8c140ae13 parameter info: current method preselection when there are varargs overloading (IDEA-168649) 2017-03-16 11:15:51 +01:00
Tagir Valeev 8f98750ae3 LongRangeKnownMethods test fixed 2017-03-16 16:19:27 +07:00
Tagir Valeev e27b0199fc CustomMethodHandlers: support Math.max, Math.min, Math.abs; LongRangeSet: useless methods removed; more tests 2017-03-16 14:48:40 +07:00
Tagir Valeev 22a28fd2cc IDEA-140478 Relatively simple method is "too complex to analyze" (test-case added, actually was fixed in 97cdb4cdd5) 2017-03-16 11:47:35 +07:00
Tagir Valeev 55466aeef1 IDEA-169678 "Replace Optional.isPresent() condition with functional style expression" breaks code in case of 'Collection' return type 2017-03-16 11:22:15 +07:00
Tagir Valeev 4f5cf3c65d FinalFieldsDifferentInstances test: initialize myRootPath with non-constant value (IDEA-CR-19319) 2017-03-16 09:55:56 +07:00
Anna.Kozlova d688a9a7a4 guess expected type like for completion if on the left side of assignment to functional expression which provides in this case no expected type (IDEA-169382) 2017-03-15 20:07:06 +01:00
Anna.Kozlova 02d25ac5f6 invert if: pass context to resolve to correct inner/local class (IDEA-169396) 2017-03-15 20:07:06 +01:00
Anna.Kozlova 1ff37a0c30 usage of inaccessible api: show language level where the api appeared; quickfix to increase language level (IDEA-168695) 2017-03-15 20:07:06 +01:00