aws-cloudformation / cfn-lint
File Size

The distribution of size of files (measured in lines of code).

Intro
  • File size measurements show the distribution of size of files.
  • Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
  • It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
File Size Overall
  • There are 234 files with 13,121 lines of code.
    • 0 very long files (0 lines of code)
    • 1 long files (744 lines of code)
    • 11 medium size files (3,603 lines of codeclsfd_ftr_w_mp_ins)
    • 23 small files (3,370 lines of code)
    • 199 very small files (5,404 lines of code)
0% | 5% | 27% | 25% | 41%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: zoomable circles | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
py0% | 5% | 27% | 25% | 41%
yml0% | 0% | 0% | 0% | 100%
cfg0% | 0% | 0% | 0% | 100%
in0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
src/cfnlint0% | 26% | 53% | 11% | 8%
src/cfnlint/rules/resources0% | 0% | 15% | 29% | 54%
src/cfnlint/decode0% | 0% | 71% | 28% | 0%
src/cfnlint/rules0% | 0% | 91% | 0% | 8%
src/cfnlint/formatters0% | 0% | 100% | 0% | 0%
src/cfnlint/rules/functions0% | 0% | 0% | 48% | 51%
scripts0% | 0% | 0% | 95% | 4%
src/cfnlint/rules/custom0% | 0% | 0% | 72% | 27%
src/cfnlint/rules/parameters0% | 0% | 0% | 21% | 78%
src/cfnlint/rules/outputs0% | 0% | 0% | 0% | 100%
src/cfnlint/rules/conditions0% | 0% | 0% | 0% | 100%
src/cfnlint/rules/mappings0% | 0% | 0% | 0% | 100%
src/cfnlint/rules/templates0% | 0% | 0% | 0% | 100%
src/cfnlint/rules/metadata0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
src/cfnlint/data/ExtendedSpecs0% | 0% | 0% | 0% | 100%
src/cfnlint/decorators0% | 0% | 0% | 0% | 100%
src/cfnlint/data0% | 0% | 0% | 0% | 100%
src/cfnlint/data/Serverless0% | 0% | 0% | 0% | 100%
src/cfnlint/data/AdditionalSpecs0% | 0% | 0% | 0% | 100%
src/cfnlint/data/CloudSpecs0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
template.py
in src/cfnlint
744 34
config.py
in src/cfnlint
469 43
cfn_json.py
in src/cfnlint/decode
451 19
__init__.py
in src/cfnlint/rules
398 33
helpers.py
in src/cfnlint
388 20
conditions.py
in src/cfnlint
324 14
Properties.py
in src/cfnlint/rules/resources/properties
309 7
maintenance.py
in src/cfnlint
309 6
CodepipelineStageActions.py
in src/cfnlint/rules/resources/codepipeline
284 5
__init__.py
in src/cfnlint/formatters
259 15
node.py
in src/cfnlint/decode
209 5
RecordSet.py
in src/cfnlint/rules/resources/route53
203 12
Configuration.py
in src/cfnlint/rules/resources/updatepolicy
200 4
Policy.py
in src/cfnlint/rules/resources/iam
198 4
update_specs_from_pricing.py
in scripts
197 8
core.py
in src/cfnlint
192 10
update_specs_services_from_ssm.py
in scripts
186 6
ValueRefGetAtt.py
in src/cfnlint/rules/resources/properties
177 7
Cidr.py
in src/cfnlint/rules/functions
171 6
cfn_yaml.py
in src/cfnlint/decode
159 12
Operators.py
in src/cfnlint/rules/custom
156 9
ValuePrimitiveType.py
in src/cfnlint/rules/resources/properties
155 8
Sub.py
in src/cfnlint/rules/functions
147 5
Configuration.py
in src/cfnlint/rules/parameters
144 2
Elb.py
in src/cfnlint/rules/resources/elb
143 7
Permissions.py
in src/cfnlint/rules/resources/iam
143 6
Join.py
in src/cfnlint/rules/functions
134 7
StateMachine.py
in src/cfnlint/rules/resources/stepfunctions
125 6
Configuration.py
in src/cfnlint/rules/resources
119 2
transform.py
in src/cfnlint
112 7
JsonSize.py
in src/cfnlint/rules/resources/properties
104 6
FindInMap.py
in src/cfnlint/rules/functions
103 5
DynamicReferenceSecureString.py
in src/cfnlint/rules/functions
102 8
CodepipelineStages.py
in src/cfnlint/rules/resources/codepipeline
102 6
__init__.py
in src/cfnlint/decode
101 4
Default.py
in src/cfnlint/rules/parameters
99 7
BasedOnValue.py
in src/cfnlint/rules/resources/properties
95 6
AllowedPattern.py
in src/cfnlint/rules/parameters
91 5
graph.py
in src/cfnlint
90 5
CacheClusterFailover.py
in src/cfnlint/rules/resources/elasticache
90 5
RetentionPeriodOnResourceTypesWithAutoExpiringContent.py
in src/cfnlint/rules/resources
89 2
Configuration.py
in src/cfnlint/rules/outputs
89 3
AllowedValue.py
in src/cfnlint/rules/parameters
88 5
GetAtt.py
in src/cfnlint/rules/functions
83 3
SubNeeded.py
in src/cfnlint/rules/functions
81 6
AllowedPattern.py
in src/cfnlint/rules/resources/properties
79 6
Required.py
in src/cfnlint/rules/resources/properties
79 7
HardCodedArnProperties.py
in src/cfnlint/rules/resources
76 4
InstanceSize.py
in src/cfnlint/rules/resources/rds
74 4
ListSize.py
in src/cfnlint/rules/resources/properties
74 5
Files With Most Units (Top 20)
File# lines# units
config.py
in src/cfnlint
469 43
template.py
in src/cfnlint
744 34
__init__.py
in src/cfnlint/rules
398 33
helpers.py
in src/cfnlint
388 20
cfn_json.py
in src/cfnlint/decode
451 19
__init__.py
in src/cfnlint/formatters
259 15
conditions.py
in src/cfnlint
324 14
RecordSet.py
in src/cfnlint/rules/resources/route53
203 12
cfn_yaml.py
in src/cfnlint/decode
159 12
core.py
in src/cfnlint
192 10
Operators.py
in src/cfnlint/rules/custom
156 9
DynamicReferenceSecureString.py
in src/cfnlint/rules/functions
102 8
ValuePrimitiveType.py
in src/cfnlint/rules/resources/properties
155 8
update_specs_from_pricing.py
in scripts
197 8
Join.py
in src/cfnlint/rules/functions
134 7
Default.py
in src/cfnlint/rules/parameters
99 7
Elb.py
in src/cfnlint/rules/resources/elb
143 7
Properties.py
in src/cfnlint/rules/resources/properties
309 7
ValueRefGetAtt.py
in src/cfnlint/rules/resources/properties
177 7
Required.py
in src/cfnlint/rules/resources/properties
79 7
Files With Long Lines (Top 20)

There are 83 files with lines longer than 120 characters. In total, there are 161 long lines.

File# lines# units# long lines
RetentionPeriodOnResourceTypesWithAutoExpiringContent.py
in src/cfnlint/rules/resources
89 2 13
helpers.py
in src/cfnlint
388 20 13
Properties.py
in src/cfnlint/rules/resources/properties
309 7 8
Operators.py
in src/cfnlint/rules/custom
156 9 7
__init__.py
in src/cfnlint/rules/custom
59 1 6
maintenance.py
in src/cfnlint
309 6 5
update_specs_from_pricing.py
in scripts
197 8 5
Cidr.py
in src/cfnlint/rules/functions
171 6 4
AllowedPattern.py
in src/cfnlint/rules/parameters
91 5 4
Configuration.py
in src/cfnlint/rules/resources
119 2 3
HardCodedArnProperties.py
in src/cfnlint/rules/resources
76 4 3
DomainValidationOptions.py
in src/cfnlint/rules/resources/certificatemanager
44 3 3
Elb.py
in src/cfnlint/rules/resources/elb
143 7 3
RecordSetName.py
in src/cfnlint/rules/resources/route53
46 2 3
ApproachingLimitDescription.py
in src/cfnlint/rules/templates
16 1 2
__init__.py
in src/cfnlint/rules
398 33 2
ApproachingLimitAttributes.py
in src/cfnlint/rules/mappings
18 1 2
GetAtt.py
in src/cfnlint/rules/functions
83 3 2
AllowedValue.py
in src/cfnlint/rules/parameters
88 5 2
InstanceSize.py
in src/cfnlint/rules/resources/rds
74 4 2