@@ -65,15 +65,16 @@ export const A4D_SUPPORTED_RULES: Map<string, ViolationContextScope> = new Map([
65
65
// ==== Rules from rule selector: 'pmd:ErrorProne:Apex'
66
66
// =======================================================================
67
67
[ 'AvoidDirectAccessTriggerMap' , ViolationContextScope . MethodScope ] ,
68
+ [ 'AvoidStatefulDatabaseResult' , ViolationContextScope . ClassScope ] ,
68
69
[ 'InaccessibleAuraEnabledGetter' , ViolationContextScope . MethodScope ] ,
69
70
[ 'MethodWithSameNameAsEnclosingClass' , ViolationContextScope . MethodScope ] ,
70
71
[ 'OverrideBothEqualsAndHashcode' , ViolationContextScope . ViolationScope ] ,
71
72
[ 'TestMethodsMustBeInTestClasses' , ViolationContextScope . ClassScope ] ,
73
+ [ 'TypeShadowsBuiltInNamespace' , ViolationContextScope . ViolationScope ] ,
72
74
// NOTE: We have decided that the following `ErrorProne` rules either do not get any value from A4D Quick Fix
73
75
// suggestions or that the model currently gives back poor suggestions:
74
76
// AvoidHardcodingId, AvoidNonExistentAnnotations, EmptyCatchBlock, EmptyIfStmt, EmptyStatementBlock,
75
77
// EmptyTryOrFinallyBlock, EmptyWhileStmt
76
- // NOTE: New rules like AvoidStatefulDatabaseResult and TypeShadowsBuiltInNamespace have yet to be evaluated.
77
78
78
79
79
80
// =======================================================================
@@ -83,7 +84,7 @@ export const A4D_SUPPORTED_RULES: Map<string, ViolationContextScope> = new Map([
83
84
84
85
85
86
// =======================================================================
86
- // ==== Rules from rule selector: 'pmd:Security:Apex'
87
+ // ==== Rules from rule selector: 'pmd:Security:Apex' (except AppExchange rules)
87
88
// =======================================================================
88
89
[ 'ApexBadCrypto' , ViolationContextScope . MethodScope ] ,
89
90
[ 'ApexCRUDViolation' , ViolationContextScope . MethodScope ] ,
@@ -94,9 +95,30 @@ export const A4D_SUPPORTED_RULES: Map<string, ViolationContextScope> = new Map([
94
95
[ 'ApexSOQLInjection' , ViolationContextScope . MethodScope ] ,
95
96
[ 'ApexSuggestUsingNamedCred' , ViolationContextScope . MethodScope ] ,
96
97
[ 'ApexXSSFromEscapeFalse' , ViolationContextScope . MethodScope ] ,
97
- [ 'ApexXSSFromURLParam' , ViolationContextScope . ViolationScope ]
98
+ [ 'ApexXSSFromURLParam' , ViolationContextScope . ViolationScope ] ,
98
99
// NOTE: We have decided that the following `Security` rule(s) either do not get any value from A4D Quick Fix
99
100
// suggestions or that the model currently gives back poor suggestions:
100
101
// ApexOpenRedirect
101
- // NOTE: AppExchange rules have not been evaluated.
102
+
103
+ // =======================================================================
104
+ // ==== Rules from rule selector: 'pmd:Performance:Apex'
105
+ // =======================================================================
106
+ [ 'EagerlyLoadedDescribeSObjectResult' , ViolationContextScope . ViolationScope ] ,
107
+ [ 'OperationWithHighCostInLoop' , ViolationContextScope . MethodScope ] ,
108
+ [ 'OperationWithLimitsInLoop' , ViolationContextScope . MethodScope ] ,
109
+ // NOTE: We have decided that the following `Performance` rule(s) either do not get any value from A4D Quick Fix
110
+ // suggestions or that the model currently gives back poor suggestions:
111
+ // AvoidDebugStatements, AvoidNonRestrictiveQueries
112
+
113
+ // =======================================================================
114
+ // ==== Rules from rule selector: 'pmd:AppExchange:Apex'
115
+ // =======================================================================
116
+ [ 'AvoidGlobalInstallUninstallHandlers' , ViolationContextScope . ClassScope ]
117
+ // NOTE: We have decided that the following `AppExchange` rule(s) either do not get any value from A4D Quick Fix
118
+ // suggestions or that the model currently gives back poor suggestions:
119
+ // AvoidChangeProtectionUnprotected, AvoidGetInstanceWithTaint, AvoidHardcodedCredentialsInFieldDecls,
120
+ // AvoidHardcodedCredentialsInHttpHeader, AvoidHardcodedCredentialsInSetPassword,
121
+ // AvoidHardcodedCredentialsInVarAssign, AvoidHardcodedCredentialsInVarDecls, AvoidInvalidCrudContentDistribution,
122
+ // AvoidSecurityEnforcedOldApiVersion, AvoidUnauthorizedApiSessionIdInApex, AvoidUnauthorizedGetSessionIdInApex,
123
+ // AvoidUnsafePasswordManagementUse
102
124
] ) ;
0 commit comments