[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [eclipse-dev] Minimal compiler severity for the Eclipse project
|
Teams can raise the bar as much as they want. I believe the releng settings
should set some minimal expectations.
Teams being stricter than releng should be fine, but we shouldn't be
tolerating some of the diagnostics to be turned off, when we think these
are important from a development quality standpoint.
Martin
Aeschlimann/Zuric
h/IBM@IBMCH To
Sent by: eclipse-dev@xxxxxxxxxxx
eclipse-dev-bounc cc
es@xxxxxxxxxxx
Subject
Re: [eclipse-dev] Minimal compiler
02/23/2006 01:16 severity for the Eclipse project
PM
Please respond to
"General
development
mailing list of
the Eclipse
project."
Wouldn't it be possible that releng uses the settings as defined per
project? This would give teams freedom and save us from surprises of
non-matching settings.
Martin
Philippe P Mulet/France/IBM@IBMFR
Sent by: eclipse-dev-bounces@xxxxxxxxxxx
To
eclipse-dev@xxxxxxxxxx
22.02.2006 17:03 g
cc
Please respond to Subject
"General development mailing list of [eclipse-dev] Minimal
the Eclipse project." compiler severity for
<eclipse-dev@xxxxxxxxxxx> the Eclipse project
It appears that not all teams are tuning the compiler settings in a similar
way, resulting sometimes in a few glitches during the build process. During
the arch call, we agreed that teams should ensure they follow the settings
used by Releng during the build process at a minimum.
Then we can discuss further on whether we want to raise the bar or not. As
the compiler owner, I wouldn't change its defaults but rather have dev
teams agree on custom settings; since changing defaults has some
implications for tools generating source code; i.e. they could start
getting flagged with problems from now on.
To initiate the discussion, here are the extra warnings we activate in
JDT/Core (compared to defaults).
Classfile Generation
- Inline finally blocks: ON (to match Releng setting for improved startup
time)
CodeStyle
- Indirect access to static member
- Undocumented empty block
- Non externalized Strings
Potential programming problems
- Possible accidental bool assign
- Empty statements
Name shadowing and conflicts
- Field declaration hides another field or variable
- Local variable declaration hides another field or variable
Deprecated and restricted API
- Deprecated API
- Forbidden reference (ERROR)
- Discouraged reference
Unnecessary code
- Unnecessary cast or 'instanceof' operation
Javadoc
- Malformed Javadoc comments: Warning
- Only consider members as visible as: Private
- Report errors in tags: ON
- Report non visible references: ON
- Report deprecated references: ON
You can find below the corresponding .settings/org.eclipse.jdt.core.prefs
(you can simply paste the contents into your project settings to see the
consequences if you cause a rebuild, i.e. no need to go through the UI).
#Fri Feb 17 16:48:15 CET 2006
eclipse.preferences.version=1
org.eclipse.jdt.core.builder.cleanOutputFolder=clean
org.eclipse.jdt.core.builder.duplicateResourceTask=warning
org.eclipse.jdt.core.builder.invalidClasspath=abort
org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
org.eclipse.jdt.core.circularClasspath=error
org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=1.4
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.doc.comment.support=enabled
org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
org.eclipse.jdt.core.compiler.problem.deprecation=warning
org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=
disabled
org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=
warning
org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=
warning
org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning
org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=enabled
org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=
enabled
org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=
enabled
org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private
org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=
enabled
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=
public
org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=
warning
org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=
warning
org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=
disabled
org.eclipse.jdt.core.compiler.problem.unusedImport=warning
org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=
disabled
org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=
disabled
org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
org.eclipse.jdt.core.compiler.source=1.3
org.eclipse.jdt.core.incompatibleJDKLevel=ignore
org.eclipse.jdt.core.incompleteClasspath=error
_______________________________________________
eclipse-dev mailing list
eclipse-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
https://dev.eclipse.org/mailman/listinfo/eclipse-dev
_______________________________________________
eclipse-dev mailing list
eclipse-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
https://dev.eclipse.org/mailman/listinfo/eclipse-dev