awslabs / smithy-ruby
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 247 files with 28,609 lines of code.
    • 3 very long files (7,557 lines of code)
    • 5 long files (4,050 lines of code)
    • 26 medium size files (7,238 lines of codeclsfd_ftr_w_mp_ins)
    • 28 small files (4,036 lines of code)
    • 185 very small files (5,728 lines of code)
26% | 14% | 25% | 14% | 20%
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
rb35% | 19% | 10% | 11% | 22%
java0% | 0% | 69% | 19% | 10%
kts0% | 0% | 0% | 58% | 41%
gemspec0% | 0% | 0% | 0% | 100%
yml0% | 0% | 0% | 0% | 100%
erb0% | 0% | 0% | 0% | 100%
ru0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
codegen/projections46% | 24% | 8% | 9% | 10%
codegen/smithy-ruby-codegen0% | 0% | 67% | 22% | 9%
codegen/smithy-ruby-rails-codegen0% | 0% | 81% | 0% | 18%
seahorse/spec0% | 0% | 30% | 15% | 53%
codegen/smithy-ruby-codegen-test0% | 0% | 0% | 59% | 40%
codegen0% | 0% | 0% | 93% | 6%
seahorse/lib0% | 0% | 0% | 9% | 90%
sample-service/config0% | 0% | 0% | 0% | 100%
codegen/smithy-ruby-rails-codegen-test0% | 0% | 0% | 0% | 100%
sample-service/app0% | 0% | 0% | 0% | 100%
sample-service/db0% | 0% | 0% | 0% | 100%
seahorse0% | 0% | 0% | 0% | 100%
sample-service0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
protocol_spec.rb
in codegen/projections/rails_json/spec
5006 -
stubs.rb
in codegen/projections/rails_json/lib/rails_json
1296 148
client.rb
in codegen/projections/rails_json/lib/rails_json
1255 39
builders.rb
in codegen/projections/rails_json/lib/rails_json
890 76
params.rb
in codegen/projections/rails_json/lib/rails_json
847 76
types.rb
in codegen/projections/rails_json/lib/rails_json
784 20
parsers.rb
in codegen/projections/rails_json/lib/rails_json
779 78
validators.rb
in codegen/projections/rails_json/lib/rails_json
750 86
RestBuilderGeneratorBase.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
453 32
StubsGeneratorBase.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
360 31
HttpProtocolTestGenerator.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
346 22
ValidatorsGenerator.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
335 30
BuilderGenerator.java
in codegen/smithy-ruby-rails-codegen/src/main/java/software/amazon/smithy/ruby/codegen/protocol/railsjson/generators
333 32
StubsGenerator.java
in codegen/smithy-ruby-rails-codegen/src/main/java/software/amazon/smithy/ruby/codegen/protocol/railsjson/generators
316 29
types.rb
in codegen/projections/weather/lib/weather
315 34
ParserGenerator.java
in codegen/smithy-ruby-rails-codegen/src/main/java/software/amazon/smithy/ruby/codegen/protocol/railsjson/generators
309 32
poller_spec.rb
in seahorse/spec/seahorse/waiters
303 -
ParamsGenerator.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
302 20
RestParserGeneratorBase.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
278 25
node_spec.rb
in seahorse/spec/seahorse/xml
277 -
client.rb
in codegen/projections/weather/lib/weather
275 11
RubySymbolProvider.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen
270 30
RestStubsGeneratorBase.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
261 21
ClientGenerator.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
256 12
ParamsToHash.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/util
254 22
WaitersGenerator.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
251 18
TypesGenerator.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
241 12
Middleware.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/middleware
230 29
protocol_spec.rb
in codegen/projections/weather/spec
224 -
CodegenOrchestrator.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen
221 13
client_spec.rb
in seahorse/spec/seahorse/http
209 -
stubs.rb
in codegen/projections/weather/lib/weather
209 26
client.rb
in codegen/projections/high_score_service/lib/high_score_service
205 9
client.rb
in codegen/projections/white_label/lib/white_label
205 9
validators_spec.rb
in codegen/smithy-ruby-codegen-test/integration-specs
194 -
validators_spec.rb
in codegen/projections/white_label/spec
194 -
PaginatorsGenerator.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
184 12
ErrorsGeneratorBase.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
182 12
ParserGeneratorBase.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
172 11
middleware_builder_spec.rb
in seahorse/spec/seahorse
170 1
ApplicationTransport.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen
170 12
stubs.rb
in codegen/projections/white_label/lib/white_label
166 22
types.rb
in codegen/projections/white_label/lib/white_label
164 9
build.gradle.kts
in codegen
160 -
BuilderGeneratorBase.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
157 10
params.rb
in codegen/projections/white_label/lib/white_label
146 13
params_spec.rb
in codegen/smithy-ruby-codegen-test/integration-specs
145 -
params_spec.rb
in codegen/projections/white_label/spec
145 -
RubyDependency.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen
145 19
MiddlewareBuilder.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/middleware
140 7
Files With Most Units (Top 20)
File# lines# units
stubs.rb
in codegen/projections/rails_json/lib/rails_json
1296 148
validators.rb
in codegen/projections/rails_json/lib/rails_json
750 86
parsers.rb
in codegen/projections/rails_json/lib/rails_json
779 78
params.rb
in codegen/projections/rails_json/lib/rails_json
847 76
builders.rb
in codegen/projections/rails_json/lib/rails_json
890 76
client.rb
in codegen/projections/rails_json/lib/rails_json
1255 39
types.rb
in codegen/projections/weather/lib/weather
315 34
BuilderGenerator.java
in codegen/smithy-ruby-rails-codegen/src/main/java/software/amazon/smithy/ruby/codegen/protocol/railsjson/generators
333 32
ParserGenerator.java
in codegen/smithy-ruby-rails-codegen/src/main/java/software/amazon/smithy/ruby/codegen/protocol/railsjson/generators
309 32
RestBuilderGeneratorBase.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
453 32
StubsGeneratorBase.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
360 31
RubySymbolProvider.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen
270 30
ValidatorsGenerator.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
335 30
StubsGenerator.java
in codegen/smithy-ruby-rails-codegen/src/main/java/software/amazon/smithy/ruby/codegen/protocol/railsjson/generators
316 29
Middleware.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/middleware
230 29
stubs.rb
in codegen/projections/weather/lib/weather
209 26
RestParserGeneratorBase.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
278 25
stubs.rb
in codegen/projections/white_label/lib/white_label
166 22
ParamsToHash.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/util
254 22
HttpProtocolTestGenerator.java
in codegen/smithy-ruby-codegen/src/main/java/software/amazon/smithy/ruby/codegen/generators
346 22
Files With Long Lines (Top 20)

There are 20 files with lines longer than 120 characters. In total, there are 415 long lines.

File# lines# units# long lines
validators.rb
in codegen/projections/rails_json/lib/rails_json
750 86 70
client.rb
in codegen/projections/rails_json/lib/rails_json
1255 39 70
params.rb
in codegen/projections/rails_json/lib/rails_json
847 76 63
builders.rb
in codegen/projections/rails_json/lib/rails_json
890 76 51
protocol_spec.rb
in codegen/projections/rails_json/spec
5006 - 36
stubs.rb
in codegen/projections/rails_json/lib/rails_json
1296 148 33
parsers.rb
in codegen/projections/rails_json/lib/rails_json
779 78 28
client.rb
in codegen/projections/weather/lib/weather
275 11 14
client.rb
in codegen/projections/high_score_service/lib/high_score_service
205 9 10
client.rb
in codegen/projections/white_label/lib/white_label
205 9 10
validators.rb
in codegen/projections/white_label/lib/white_label
138 16 8
params.rb
in codegen/projections/white_label/lib/white_label
146 13 7
validators.rb
in codegen/projections/weather/lib/weather
91 12 3
validators.rb
in codegen/projections/high_score_service/lib/high_score_service
41 6 2
params.rb
in codegen/projections/high_score_service/lib/high_score_service
54 6 2
params_spec.rb
in codegen/projections/high_score_service/spec
112 - 2
validators_spec.rb
in codegen/projections/high_score_service/spec
97 - 2
params.rb
in codegen/projections/weather/lib/weather
110 10 2
stubs_spec.rb
in codegen/projections/high_score_service/spec
62 - 1
stubs.rb
in codegen/projections/weather/lib/weather
209 26 1