awslabs / smithy-kotlin
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 245 files with 14,290 lines of code.
    • 0 very long files (0 lines of code)
    • 1 long files (814 lines of code)
    • 12 medium size files (3,087 lines of codeclsfd_ftr_w_mp_ins)
    • 29 small files (3,917 lines of code)
    • 203 very small files (6,472 lines of code)
0% | 5% | 21% | 27% | 45%
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
kt0% | 5% | 22% | 27% | 43%
kts0% | 0% | 0% | 18% | 81%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
smithy-kotlin-codegen/src0% | 12% | 28% | 28% | 30%
runtime/serde0% | 0% | 42% | 29% | 27%
runtime/io0% | 0% | 30% | 12% | 56%
runtime/runtime-core0% | 0% | 0% | 43% | 56%
runtime/protocol0% | 0% | 0% | 23% | 76%
ROOT0% | 0% | 0% | 74% | 25%
runtime/utils0% | 0% | 0% | 21% | 78%
runtime/testing0% | 0% | 0% | 0% | 100%
runtime/logging0% | 0% | 0% | 0% | 100%
smithy-kotlin-codegen0% | 0% | 0% | 0% | 100%
runtime0% | 0% | 0% | 0% | 100%
ktlint-rules/src0% | 0% | 0% | 0% | 100%
dokka-smithy/src0% | 0% | 0% | 0% | 100%
runtime/smithy-test0% | 0% | 0% | 0% | 100%
ktlint-rules0% | 0% | 0% | 0% | 100%
dokka-smithy0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
HttpBindingProtocolGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/protocol
814 8
SerializeStructGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/serde
384 9
DeserializeStructGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/serde
346 7
JsonLexer.kt
in runtime/serde/serde-json/common/src/aws/smithy/kotlin/runtime/serde/json
300 4
FormUrlSerializer.kt
in runtime/serde/serde-form-url/common/src/aws/smithy/kotlin/runtime/serde/formurl
259 16
StructureGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering
254 1
SdkByteBuffer.kt
in runtime/io/common/src/aws/smithy/kotlin/runtime/io
244 26
XmlSerializer.kt
in runtime/serde/serde-xml/common/src/aws/smithy/kotlin/runtime/serde/xml
243 21
XmlDeserializer.kt
in runtime/serde/serde-xml/common/src/aws/smithy/kotlin/runtime/serde/xml
228 8
KotlinWriter.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/core
211 6
ShapeValueGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering
208 7
PaginatorGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering
206 1
GradleGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering
204 4
JsonSerializer.kt
in runtime/serde/serde-json/common/src/aws/smithy/kotlin/runtime/serde/json
198 46
XmlStreamReaderXmlPull.kt
in runtime/serde/serde-xml/jvm/src/aws/smithy/kotlin/runtime/serde/xml
191 7
KotlinSymbolProvider.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/core
188 12
HttpProtocolClientGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/protocol
188 10
ParserCombinators.kt
in runtime/runtime-core/common/src/aws/smithy/kotlin/runtime/time
169 -
ClientConfigProperty.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering
169 3
Parsers.kt
in runtime/runtime-core/common/src/aws/smithy/kotlin/runtime/time
153 -
CodegenVisitor.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen
141 6
HttpStatusCode.kt
in runtime/protocol/http/common/src/aws/smithy/kotlin/runtime/http
140 -
HttpProtocolUnitTestResponseGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/protocol
140 6
RuntimeTypes.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/core
138 -
InstantJVM.kt
in runtime/runtime-core/jvm/src/aws/smithy/kotlin/runtime/time
134 1
HttpProtocolUnitTestRequestGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/protocol
134 2
SdkOperationExecution.kt
in runtime/protocol/http/common/src/aws/smithy/kotlin/runtime/http/operation
128 2
build.gradle.kts
in root
124 -
KotlinSettings.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen
124 2
ClientConfigGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering
124 2
Base64.kt
in runtime/utils/common/src/aws/smithy/kotlin/runtime/util
122 -
HttpStringValuesMapSerializer.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/protocol
120 1
JsonDeserializer.kt
in runtime/serde/serde-json/common/src/aws/smithy/kotlin/runtime/serde/json
119 8
KtorEngine.kt
in runtime/protocol/http-client-engines/http-client-engine-ktor/jvm/src/aws/smithy/kotlin/runtime/http/engine/ktor
115 4
ServiceGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering
114 1
XmlSerdeDescriptorGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/serde
112 2
XmlNode.kt
in runtime/serde/serde-xml/common/src/aws/smithy/kotlin/runtime/serde/xml/dom
110 3
Url.kt
in runtime/protocol/http/common/src/aws/smithy/kotlin/runtime/http
110 1
JsonEncoder.kt
in runtime/serde/serde-json/common/src/aws/smithy/kotlin/runtime/serde/json
107 1
SdkByteReadChannel.kt
in runtime/io/common/src/aws/smithy/kotlin/runtime/io
102 2
HttpProtocolTestGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/protocol
102 1
StandardRetryStrategy.kt
in runtime/runtime-core/common/src/aws/smithy/kotlin/runtime/retries/impl
101 -
UnionGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering
96 1
KotlinDelegator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/core
90 5
StandardRetryTokenBucket.kt
in runtime/runtime-core/common/src/aws/smithy/kotlin/runtime/retries/impl
89 4
AbstractSerdeDescriptorGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/serde
87 3
RecordingConnection.kt
in runtime/protocol/http-test/common/src/aws/smithy/kotlin/runtime/httptest
86 2
KtorRequestAdapter.kt
in runtime/protocol/http-client-engines/http-client-engine-ktor/jvm/src/aws/smithy/kotlin/runtime/http/engine/ktor
86 2
StringValuesMap.kt
in runtime/protocol/http/common/src/aws/smithy/kotlin/runtime/http/util
85 11
build.gradle.kts
in smithy-kotlin-codegen
85 -
Files With Most Units (Top 20)
File# lines# units
Serializer.kt
in runtime/serde/common/src/aws/smithy/kotlin/runtime/serde
75 47
JsonSerializer.kt
in runtime/serde/serde-json/common/src/aws/smithy/kotlin/runtime/serde/json
198 46
SdkByteBuffer.kt
in runtime/io/common/src/aws/smithy/kotlin/runtime/io
244 26
XmlSerializer.kt
in runtime/serde/serde-xml/common/src/aws/smithy/kotlin/runtime/serde/xml
243 21
Deserializer.kt
in runtime/serde/common/src/aws/smithy/kotlin/runtime/serde
45 19
FormUrlSerializer.kt
in runtime/serde/serde-form-url/common/src/aws/smithy/kotlin/runtime/serde/formurl
259 16
KotlinSymbolProvider.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/core
188 12
StringValuesMap.kt
in runtime/protocol/http/common/src/aws/smithy/kotlin/runtime/http/util
85 11
KotlinLoggingAdapter.kt
in runtime/logging/common/src/aws/smithy/kotlin/runtime/logging
39 11
LoggerExt.kt
in runtime/logging/common/src/aws/smithy/kotlin/runtime/logging
23 10
MutableBuffer.kt
in runtime/io/common/src/aws/smithy/kotlin/runtime/io
22 10
Buffer.kt
in runtime/io/common/src/aws/smithy/kotlin/runtime/io
24 10
HttpProtocolClientGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/protocol
188 10
SerializeStructGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/serde
384 9
JsonDeserializer.kt
in runtime/serde/serde-json/common/src/aws/smithy/kotlin/runtime/serde/json
119 8
XmlDeserializer.kt
in runtime/serde/serde-xml/common/src/aws/smithy/kotlin/runtime/serde/xml
228 8
SymbolBuilder.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/model
81 8
HttpBindingProtocolGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/protocol
814 8
XmlStreamWriterXmlPull.kt
in runtime/serde/serde-xml/jvm/src/aws/smithy/kotlin/runtime/serde/xml
68 7
XmlStreamReaderXmlPull.kt
in runtime/serde/serde-xml/jvm/src/aws/smithy/kotlin/runtime/serde/xml
191 7
Files With Long Lines (Top 20)

There are 67 files with lines longer than 120 characters. In total, there are 216 long lines.

File# lines# units# long lines
HttpBindingProtocolGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/protocol
814 8 29
SerializeStructGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/serde
384 9 18
XmlDeserializer.kt
in runtime/serde/serde-xml/common/src/aws/smithy/kotlin/runtime/serde/xml
228 8 17
KotlinDependency.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/core
66 2 16
DeserializeStructGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/serde
346 7 12
XmlPrimitiveDeserializer.kt
in runtime/serde/serde-xml/common/src/aws/smithy/kotlin/runtime/serde/xml
32 1 8
PaginatorGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering
206 1 7
RuntimeTypes.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/core
138 - 6
HttpStringValuesMapSerializer.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/protocol
120 1 6
StructureGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering
254 1 6
SdkByteBuffer.kt
in runtime/io/common/src/aws/smithy/kotlin/runtime/io
244 26 5
EnumGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering
83 1 4
Serializer.kt
in runtime/serde/common/src/aws/smithy/kotlin/runtime/serde
75 47 3
Deserializer.kt
in runtime/serde/common/src/aws/smithy/kotlin/runtime/serde
45 19 3
FormUrlSerializer.kt
in runtime/serde/serde-form-url/common/src/aws/smithy/kotlin/runtime/serde/formurl
259 16 3
KotlinWriter.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/core
211 6 3
SerdeExt.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/serde
73 - 3
HttpProtocolUnitTestRequestGenerator.kt
in smithy-kotlin-codegen/src/main/kotlin/software/amazon/smithy/kotlin/codegen/rendering/protocol
134 2 3
JsonLexer.kt
in runtime/serde/serde-json/common/src/aws/smithy/kotlin/runtime/serde/json
300 4 2
JsonDeserializer.kt
in runtime/serde/serde-json/common/src/aws/smithy/kotlin/runtime/serde/json
119 8 2