From 926bc53d2e5f6a9f66c98baa1624ad809edb1456 Mon Sep 17 00:00:00 2001 From: Tor Norbye Date: Fri, 23 Aug 2013 08:59:39 -0700 Subject: Snapshot c27b4f50fbcb2a71ca2c7f2d85e67debfea58f27 from master branch of git://git.jetbrains.org/idea/community.git c27b4f5: 2013-08-23 Bas Leijdekkers - don't report on final fields because those will already be highlighted as error 3422c86: 2013-08-23 Alexey Kudravtsev - stress gc to force collection 6ab46dc: 2013-08-23 nik - jps model: serialization for custom module source roots ab676f6: 2013-08-23 Alexey Kudravtsev - Merge remote-tracking branch 'origin/master' 6e02b38: 2013-08-23 Anna Kozlova - Merge remote-tracking branch 'origin/master' c0c7f84: 2013-08-23 Maxim.Mossienko - fixed typo 832256e: 2013-08-23 Anna Kozlova - extract enum: ensure normalized fields (IDEA-112590) d0fb95d: 2013-08-23 Anna Kozlova - override/implement: allow members to be in primary/secondary sets at the same time - filter them from the result; preselect first element when no selection was set before (IDEA-112563) 09e8df0: 2013-08-23 Anna Kozlova - IDEA-112551 "Expand lambda" does not add imports f095c6d: 2013-08-23 nik - deprecated methods and classes removed from API eab9f6d: 2013-08-23 Roman Shevchenko - Restore Windows FS loading for tests b68f03b: 2013-08-23 Alexey Kudravtsev - sometimes weak references are not collected under linux, try to stress gc to force them d005b15: 2013-08-23 Sergey Evdokimov - EA-48997 - UOE: MvcFramework.addJavaHome 67c6b67: 2013-08-23 Roman Shevchenko - Typo ee9f323: 2013-08-23 Sergey Evdokimov - EA-48888 - NPE: MavenModelPropertiesPatcher.patch 3a303b4: 2013-08-23 Gregory.Shrago - move Editor-based cell renderer to platform 40d766c: 2013-08-23 Sergey Simonchik - WEB-1887 Error run node from command window 295a5d8: 2013-08-23 Alexey Kudravtsev - cleanup 06a1d59: 2013-08-23 Alexey Kudravtsev - renamed 6b35c9d: 2013-08-23 Roman Shevchenko - test diagnostic 3f7e6c6: 2013-08-23 Roman Shevchenko - platform: unified loading of system libraries d0b8432: 2013-08-22 Roman Shevchenko - platform: URL class loader builder 2a785d2: 2013-08-22 Roman Shevchenko - platform: class cache logging centralized; obsolete timing dropped 1dc531f: 2013-08-22 Roman Shevchenko - platform: typos and cleanup a2e1fb4: 2013-08-23 Oleg Sukhodolsky - RUBY-14033: setShowFlattenMode() propagated to ChangesViewI so we could you it 52bffa9: 2013-08-23 Mikhail Golubev - Merge remote-tracking branch 'origin/master' 766a3a0: 2013-08-23 nik - manifest extensions extracted to separate file and moved to 'manifest' module so tests which don't depend on manifest support won't try to load its extensions 0d23c76: 2013-08-23 nik - remote servers: java-dependent classes extracted to separate modules 268559e: 2013-08-23 nik - set 'test' scope for dependencies on testFramework 524db30: 2013-08-22 nik - use API instead of impl 8d7b831: 2013-08-23 Dmitry Avdeev - IDEA-60895 No completion for enumerated and boolean values of xml tags: XmlEnumerationDescriptor introduced 58b6aca: 2013-08-22 Bas Leijdekkers - Respect code style "Use fully qualified names in javadoc" setting (for IDEA-111023) 23338f1: 2013-08-22 Max Medvedev - fix test data 3e6b3ff: 2013-08-22 Sergey Simonchik - One big read lock is splitted into several small read locks. WEB-8936 Karma: read access throwable exception for Coverage (attempt#2) 425a1e0: 2013-08-22 Anna Kozlova - avoid warnings on super abstract methods that they try to assign weaker access (IDEA-67584) 5ee69d4: 2013-08-22 Anna Kozlova - check overridden methods with different type params numbers for thrown exceptions (IDEA-67860) 1c787f1: 2013-08-22 Max Medvedev - IDEA-111192 Groovy: In-Place Introduce Field: Throwable GrIntroduceHandlerBase$4$1.run() 5130a52: 2013-08-22 Max Medvedev - Groovy: shorten references in completed types in templates 2004de2: 2013-08-22 Max Medvedev - Groovy: correct type template for introduce variable e8c1b32: 2013-08-22 Max Medvedev - shorten references in completed type elements in groovy files ffcc5d1: 2013-08-22 Bas Leijdekkers - IDEA-47151 (Settings of "Result of method call ignored" inspection should have choosers and/or completion for class and method names) a4d1018: 2013-08-22 Gregory.Shrago - EA-48983 - E: SwingUtilities.convertPoint a3b7858: 2013-08-22 peter - completion should insert qualified names in javadoc according to the code style settings (IDEA-111023) 3182137: 2013-08-22 Dmitry Trofimov - Updated libs. fb1408a: 2013-08-22 Dmitry Trofimov - Merge remote-tracking branch 'origin/master' ec043d6: 2013-08-22 Denis Fokin - IDEA-112130 Cannot type '{', '}' and '>' in editor when using a Czech keyboard a4b1aec: 2013-08-22 Dmitry Trofimov - Draw image override. 64059a6: 2013-08-22 Dmitry Trofimov - Action handling fixed. 471882a: 2013-08-22 Dmitry Avdeev - IDEA-112519 Do not check enumerated xml attribute value in case of injection cc07980: 2013-08-22 peter - correct javadoc completion test 6b486fd: 2013-08-22 Dmitry Avdeev - IDEA-64561 Provide navigation for XSD enum values: fix RNG fc9843e: 2013-08-22 Mikhail Golubev - IDEA-110012 Not all Redmine Issues Available on "Open Task" (Limited to 100?) b37c6d0: 2013-08-22 Maxim.Mossienko - do check cancelled during building file map / scanning file 1ff158b: 2013-08-22 Dmitry Trofimov - Fixed font selection. 48580bd: 2013-08-22 Dmitry Trofimov - Merge remote-tracking branch 'origin/master' e622120: 2013-08-22 Dmitry Trofimov - Updated lib. 814a6ac: 2013-08-22 Bas Leijdekkers - separate warning for constructors 81ff306: 2013-08-22 Maxim.Mossienko - synchronized collection cc869b4: 2013-08-22 Mikhail Golubev - Remove unused method 7e971f2: 2013-08-22 Maxim.Mossienko - proper caret position update on bulk mode end b2b87f5: 2013-08-22 Mikhail Golubev - Adjust completion to suggest variants not only on word boundaries 9d36545: 2013-08-22 Anton Makeev - Platform: restrict initial frame size to reasonable value (IDEA-96644) +review CR-IC @kb 9758bfe: 2013-08-22 Bas Leijdekkers - IDEA-112442 (False positive 'Result of method call ignored') fa1879e: 2013-08-22 Dmitry Avdeev - IDEA-64561 Provide navigation for XSD enum values 6ec1eb8: 2013-08-22 Dmitry Batkovich - CompilerOutputIndexer is enabled only in corresponding tests e33a3e8: 2013-08-22 Mikhail Golubev - Use JPasswordTextField for rendering values of hidden template variables 2405d26: 2013-08-22 Dmitry Avdeev - IDEA-64561 Provide navigation for XSD enum values: documentation 0aafeeb: 2013-08-22 Mikhail Golubev - Add EditorTextField as cell editor in HighlightedSelectorsTable e38a6a3: 2013-08-22 Nadya Zabrodina - Cosmetics 2ef0358: 2013-08-22 Evgeny Pasynkov - +prepend(byte, byte[]) 74932df: 2013-08-22 Denis Fokin - IDEA-108265. Multiple recent tasks at once could be provided. Minor issues are fixed. AppId is now one per process. 4860452: 2013-08-22 Mikhail Golubev - Merge remote-tracking branch 'origin/master' bc29214: 2013-08-22 Oleg Sukhodolsky - testFramework should not depend on remote-servers-impl (which depends on testFramework-java) 1b24edc: 2013-08-22 Roman Shevchenko - CR-IC-2008 (mock JRE update) 36e54e9: 2013-08-22 Dmitry Trofimov - Updated libs. 279fd2e: 2013-08-22 Dmitry Trofimov - Use dump aware actions. d73433c: 2013-08-22 Dmitry Trofimov - Merge remote-tracking branch 'origin/master' 100257e: 2013-08-22 Dmitry Trofimov - Libs updated. 0801a5f: 2013-08-22 Dmitry Trofimov - Use idea action system. 1a172fe: 2013-08-21 Mikhail Golubev - Remove remaining references to selector names via string literals 8330324: 2013-08-21 Mikhail Golubev - Add support of 'Download tasks in separate requests' feature in GenericRepository 0f241d4: 2013-08-21 Dmitry Trofimov - Actions should work while indexing. 38fc2f4: 2013-08-21 Mikhail Golubev - Refactored common handlers functionality to SelectorBasedResponse Handler. Add max parameter support to JsonPath and Regex response handlers. 98fb926: 2013-08-21 Dmitry Trofimov - Don't close tab on remote terminal logout. e4d5ad3: 2013-08-21 Mikhail Golubev - Results number limiting in GenericRepository and ResponseHandlers ec92ca6: 2013-08-21 Mikhail Golubev - NotNull check in TaskManagerImpl 0b9e2be: 2013-08-21 Mikhail Golubev - Update XPathResponseHandler: add lazy XPath expressions compiling, make selectors names constants 1614c5d: 2013-08-21 Dmitry Trofimov - Hide terminal view on last tab close. e49aa6c: 2013-08-20 Mikhail Golubev - Merge branch 'generic' d9fc248: 2013-08-20 Mikhail Golubev - Update response handlers of GenericRepository Change-Id: I84fdb10c62c68bfcd45967e9fdc4245052c31928 --- .../com/siyeh/InspectionGadgetsBundle.properties | 2 ++ .../ig/abstraction/BooleanParameterInspection.java | 14 ++++++--- .../ig/bugs/IgnoreResultOfCallInspectionBase.java | 25 +++++++++++----- .../StaticVariableInitializationInspection.java | 34 +++++++++------------- 4 files changed, 43 insertions(+), 32 deletions(-) (limited to 'plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh') diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/InspectionGadgetsBundle.properties b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/InspectionGadgetsBundle.properties index 694189a8ad01..f62b033c85c8 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/InspectionGadgetsBundle.properties +++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/InspectionGadgetsBundle.properties @@ -2034,4 +2034,6 @@ inner.class.referenced.via.subclass.quickfix=Rationalize inner class access boolean.parameter.display.name='public' method with 'boolean' parameter boolean.parameter.problem.descriptor='public' method #ref with 'boolean' parameter boolean.parameters.problem.descriptor='public' method #ref with 'boolean' parameters +boolean.parameter.constructor.problem.descriptor='public' constructor #ref with 'boolean' parameter +boolean.parameters.constructor.problem.descriptor='public' constructor #ref with 'boolean' parameters boolean.parameter.only.report.multiple.option=Only report methods with multiple boolean parameters \ No newline at end of file diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/abstraction/BooleanParameterInspection.java b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/abstraction/BooleanParameterInspection.java index 5513f421793b..d328f49b1cbf 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/abstraction/BooleanParameterInspection.java +++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/abstraction/BooleanParameterInspection.java @@ -45,11 +45,17 @@ public class BooleanParameterInspection extends BaseInspection { @NotNull @Override protected String buildErrorString(Object... infos) { - if (((Integer)infos[0]).intValue() == 1) { - return InspectionGadgetsBundle.message("boolean.parameter.problem.descriptor"); + final PsiMethod method = (PsiMethod)infos[0]; + final int booleanParameterCount = ((Integer)infos[1]).intValue(); + if (booleanParameterCount == 1) { + return method.isConstructor() + ? InspectionGadgetsBundle.message("boolean.parameter.constructor.problem.descriptor") + : InspectionGadgetsBundle.message("boolean.parameter.problem.descriptor"); } else { - return InspectionGadgetsBundle.message("boolean.parameters.problem.descriptor"); + return method.isConstructor() + ? InspectionGadgetsBundle.message("boolean.parameters.constructor.problem.descriptor") + : InspectionGadgetsBundle.message("boolean.parameters.problem.descriptor"); } } @@ -96,7 +102,7 @@ public class BooleanParameterInspection extends BaseInspection { if (count == 0 || onlyReportMultiple && count == 1) { return; } - registerMethodError(method, Integer.valueOf(count)); + registerMethodError(method, method, Integer.valueOf(count)); } } } diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/bugs/IgnoreResultOfCallInspectionBase.java b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/bugs/IgnoreResultOfCallInspectionBase.java index 7e197d9a167d..da52a98e6d70 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/bugs/IgnoreResultOfCallInspectionBase.java +++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/bugs/IgnoreResultOfCallInspectionBase.java @@ -47,17 +47,28 @@ public class IgnoreResultOfCallInspectionBase extends BaseInspection { /** * @noinspection PublicField */ - @NonNls public String callCheckString = "java.io.InputStream,read," + - "java.io.InputStream,skip," + - "java.lang.StringBuffer,toString," + - "java.lang.StringBuilder,toString," + + @NonNls public String callCheckString = "java.io.File,.*," + + "java.io.InputStream,read|skip|available|markSupported," + + "java.io.Writer,read|skip|ready|markSupported," + + "java.lang.Boolean,.*," + + "java.lang.Byte,.*," + + "java.lang.Character,.*," + + "java.lang.Double,.*," + + "java.lang.Float,.*," + + "java.lang.Integer,.*," + + "java.lang.Long,.*," + + "java.lang.Math,.*," + + "java.lang.Object,equals|hashCode|toString," + + "java.lang.Short,.*," + + "java.lang.StrictMath,.*," + "java.lang.String,.*," + "java.math.BigInteger,.*," + "java.math.BigDecimal,.*," + "java.net.InetAddress,.*," + - "java.io.File,.*," + - "java.lang.Object,equals|hashCode," + - "java.util.regex.Matcher,.*"; + "java.net.URI,.*," + + "java.util.UUID,.*," + + "java.util.regex.Matcher,pattern|toMatchResult|start|end|group|groupCount|matches|find|lookingAt|quoteReplacement|replaceAll|replaceFirst|regionStart|regionEnd|hasTransparantBounds|hasAnchoringBounds|hitEnd|requireEnd," + + "java.util.regex.Pattern,.*"; Map patternCache = null; public IgnoreResultOfCallInspectionBase() { diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/initialization/StaticVariableInitializationInspection.java b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/initialization/StaticVariableInitializationInspection.java index 9886f1c01c57..a1497d80c46d 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/initialization/StaticVariableInitializationInspection.java +++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/initialization/StaticVariableInitializationInspection.java @@ -1,5 +1,5 @@ /* - * Copyright 2003-2009 Dave Griffith, Bas Leijdekkers + * Copyright 2003-2013 Dave Griffith, Bas Leijdekkers * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -44,22 +44,18 @@ public class StaticVariableInitializationInspection extends BaseInspection { @Override @NotNull public String getDisplayName() { - return InspectionGadgetsBundle.message( - "static.variable.may.not.be.initialized.display.name"); + return InspectionGadgetsBundle.message("static.variable.may.not.be.initialized.display.name"); } @Override @NotNull public String buildErrorString(Object... infos) { - return InspectionGadgetsBundle.message( - "static.variable.may.not.be.initialized.problem.descriptor"); + return InspectionGadgetsBundle.message("static.variable.may.not.be.initialized.problem.descriptor"); } @Override public JComponent createOptionsPanel() { - return new SingleCheckboxOptionsPanel(InspectionGadgetsBundle.message( - "primitive.fields.ignore.option"), - this, "m_ignorePrimitives"); + return new SingleCheckboxOptionsPanel(InspectionGadgetsBundle.message("primitive.fields.ignore.option"), this, "m_ignorePrimitives"); } @Override @@ -77,17 +73,14 @@ public class StaticVariableInitializationInspection extends BaseInspection { @Override public void visitField(@NotNull PsiField field) { - if (!field.hasModifierProperty(PsiModifier.STATIC)) { + if (!field.hasModifierProperty(PsiModifier.STATIC) || field.hasModifierProperty(PsiModifier.FINAL)) { return; } if (field.getInitializer() != null) { return; } final PsiClass containingClass = field.getContainingClass(); - if (containingClass == null) { - return; - } - if (containingClass.isEnum()) { + if (containingClass == null || containingClass.isEnum()) { return; } if (m_ignorePrimitives) { @@ -96,15 +89,14 @@ public class StaticVariableInitializationInspection extends BaseInspection { return; } } - final PsiClassInitializer[] initializers = - containingClass.getInitializers(); + final PsiClassInitializer[] initializers = containingClass.getInitializers(); for (final PsiClassInitializer initializer : initializers) { - if (initializer.hasModifierProperty(PsiModifier.STATIC)) { - final PsiCodeBlock body = initializer.getBody(); - if (InitializationUtils.blockAssignsVariableOrFails(body, - field)) { - return; - } + if (!initializer.hasModifierProperty(PsiModifier.STATIC)) { + continue; + } + final PsiCodeBlock body = initializer.getBody(); + if (InitializationUtils.blockAssignsVariableOrFails(body, field)) { + return; } } registerFieldError(field); -- cgit v1.2.3