kubernetes / kube-openapi
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 106 files with 11,383 lines of code.
    • 1 very long files (1,047 lines of code)
    • 1 long files (679 lines of code)
    • 12 medium size files (3,915 lines of codeclsfd_ftr_w_mp_ins)
    • 21 small files (3,076 lines of code)
    • 71 very small files (2,666 lines of code)
9% | 5% | 34% | 27% | 23%
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
go9% | 5% | 34% | 27% | 23%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
pkg/validation20% | 0% | 30% | 29% | 20%
pkg/generators0% | 47% | 0% | 32% | 20%
pkg/util0% | 0% | 49% | 30% | 19%
pkg/schemamutation0% | 0% | 100% | 0% | 0%
pkg/builder0% | 0% | 91% | 0% | 8%
pkg/schemaconv0% | 0% | 100% | 0% | 0%
pkg/builder30% | 0% | 93% | 0% | 6%
pkg/aggregator0% | 0% | 68% | 31% | 0%
pkg/handler0% | 0% | 0% | 100% | 0%
pkg/handler30% | 0% | 0% | 100% | 0%
pkg/spec30% | 0% | 0% | 18% | 81%
pkg/common0% | 0% | 0% | 0% | 100%
cmd/openapi-gen0% | 0% | 0% | 0% | 100%
pkg/internal0% | 0% | 0% | 0% | 100%
cmd/openapi2smd0% | 0% | 0% | 0% | 100%
pkg/idl0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
default.go
in pkg/validation/strfmt
1047 169
openapi.go
in pkg/generators
679 39
schema.go
in pkg/validation/errors
481 27
walker.go
in pkg/schemamutation
432 10
openapi.go
in pkg/builder
395 15
smd.go
in pkg/schemaconv
380 20
openapi.go
in pkg/builder3
366 14
schema.go
in pkg/validation/spec
362 55
values.go
in pkg/validation/validate
282 22
aggregator.go
in pkg/aggregator
277 13
document.go
in pkg/util/proto
275 18
format.go
in pkg/validation/strfmt
243 12
types.go
in pkg/util/proto/validation
219 25
swagger.go
in pkg/validation/spec
203 13
schema_props.go
in pkg/validation/validate
198 4
handler.go
in pkg/handler
198 13
schema.go
in pkg/validation/validate
197 13
openapi.go
in pkg/util/proto
176 22
handler.go
in pkg/handler3
170 12
default_pruning.go
in pkg/handler
170 2
union.go
in pkg/generators
161 8
validator.go
in pkg/validation/validate
160 9
extension.go
in pkg/generators
154 11
api_linter.go
in pkg/generators
148 13
response.go
in pkg/spec3
141 8
string.go
in pkg/util/sets
129 20
walker.go
in pkg/aggregator
127 6
type.go
in pkg/validation/validate
127 4
duration.go
in pkg/validation/strfmt
125 11
result.go
in pkg/validation/validate
124 12
info.go
in pkg/validation/spec
123 10
time.go
in pkg/validation/strfmt
116 12
object_validator.go
in pkg/validation/validate
114 4
ref.go
in pkg/validation/spec
114 10
helpers.go
in pkg/validation/validate
104 4
common.go
in pkg/common
99 4
path.go
in pkg/spec3
97 4
enum.go
in pkg/generators
91 9
slice_validator.go
in pkg/validation/validate
82 3
items.go
in pkg/validation/spec
79 2
objectid.go
in pkg/validation/strfmt/bson
78 6
names_match.go
in pkg/generators/rules
77 5
security_scheme.go
in pkg/spec3
72 4
responses.go
in pkg/validation/spec
68 4
bson.go
in pkg/validation/strfmt
65 10
server.go
in pkg/spec3
64 4
date.go
in pkg/validation/strfmt
63 9
config.go
in pkg/generators
60 4
operation.go
in pkg/validation/spec
60 3
parameter.go
in pkg/validation/spec
58 2
Files With Most Units (Top 20)
File# lines# units
default.go
in pkg/validation/strfmt
1047 169
schema.go
in pkg/validation/spec
362 55
openapi.go
in pkg/generators
679 39
schema.go
in pkg/validation/errors
481 27
types.go
in pkg/util/proto/validation
219 25
openapi.go
in pkg/util/proto
176 22
values.go
in pkg/validation/validate
282 22
string.go
in pkg/util/sets
129 20
smd.go
in pkg/schemaconv
380 20
document.go
in pkg/util/proto
275 18
openapi.go
in pkg/builder
395 15
openapi.go
in pkg/builder3
366 14
aggregator.go
in pkg/aggregator
277 13
api_linter.go
in pkg/generators
148 13
schema.go
in pkg/validation/validate
197 13
swagger.go
in pkg/validation/spec
203 13
handler.go
in pkg/handler
198 13
handler.go
in pkg/handler3
170 12
result.go
in pkg/validation/validate
124 12
format.go
in pkg/validation/strfmt
243 12
Files With Long Lines (Top 20)

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

File# lines# units# long lines
openapi.go
in pkg/builder3
366 14 7
openapi.go
in pkg/generators
679 39 5
openapi.go
in pkg/builder
395 15 5
smd.go
in pkg/schemaconv
380 20 4
handler.go
in pkg/handler
198 13 4
schema.go
in pkg/validation/validate
197 13 3
object_validator.go
in pkg/validation/validate
114 4 3
type.go
in pkg/validation/validate
127 4 3
args.go
in cmd/openapi-gen/args
38 3 2
aggregator.go
in pkg/aggregator
277 13 2
slice_validator.go
in pkg/validation/validate
82 3 2
schema_props.go
in pkg/validation/validate
198 4 2
api_linter.go
in pkg/generators
148 13 1
union.go
in pkg/generators
161 8 1
handler.go
in pkg/handler3
170 12 1
util.go
in pkg/builder
34 6 1
values.go
in pkg/validation/validate
282 22 1
validator.go
in pkg/validation/validate
160 9 1
default.go
in pkg/validation/strfmt
1047 169 1
util.go
in pkg/builder3
27 5 1