kubernetes / code-generator
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 12% duplication:
    • 7,071 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 849 duplicated lines
  • 101 duplicates
system12% (849 lines)
Duplication per Extension
go12% (849 lines)
Duplication per Component (primary)
cmd/client-gen18% (441 lines)
cmd/informer-gen10% (85 lines)
cmd/conversion-gen9% (81 lines)
cmd/lister-gen25% (75 lines)
cmd/applyconfiguration-gen6% (54 lines)
cmd/prerelease-lifecycle-gen8% (25 lines)
cmd/defaulter-gen54% (18 lines)
cmd/deepcopy-gen54% (18 lines)
cmd/register-gen11% (18 lines)
cmd/go-to-protobuf<1% (12 lines)
cmd/set-gen57% (8 lines)
cmd/import-boss61% (8 lines)
cmd/openapi-gen37% (6 lines)
pkg/namer0% (0 lines)
pkg/util0% (0 lines)
ROOT0% (0 lines)

Duplication Between Components (50+ lines)

G cmd/informer-gen cmd/informer-gen cmd/lister-gen cmd/lister-gen cmd/informer-gen--cmd/lister-gen 94

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 101 duplicates...
Size#FoldersFilesLinesCode
23 x 2 cmd/client-gen/generators/fake
cmd/client-gen/generators
generator_fake_for_type.go
generator_for_type.go
231:258 (5%)
254:281 (4%)
view
19 x 2 cmd/client-gen/generators
cmd/client-gen/generators
generator_for_type.go
generator_for_type.go
95:118 (3%)
254:275 (3%)
view
19 x 2 cmd/client-gen/generators/fake
cmd/client-gen/generators
generator_fake_for_type.go
generator_for_type.go
231:252 (4%)
95:118 (3%)
view
18 x 2 cmd/deepcopy-gen
cmd/defaulter-gen
main.go
main.go
56:82 (100%)
55:81 (100%)
view
17 x 2 cmd/client-gen/generators/fake
cmd/client-gen/generators
generator_fake_for_type.go
generator_for_type.go
272:303 (4%)
297:329 (3%)
view
14 x 2 cmd/informer-gen
cmd/lister-gen
main.go
main.go
42:60 (63%)
39:57 (73%)
view
14 x 2 cmd/applyconfiguration-gen/args
cmd/client-gen/args
externaltypes.go
gvpackages.go
90:107 (22%)
155:172 (15%)
view
14 x 2 cmd/informer-gen/generators
cmd/lister-gen/generators
packages.go
lister.go
64:85 (6%)
162:184 (5%)
view
14 x 2 cmd/client-gen/generators
cmd/client-gen/generators
generator_for_type.go
generator_for_type.go
678:694 (2%)
707:725 (2%)
view
13 x 2 cmd/informer-gen/generators
cmd/lister-gen/generators
packages.go
lister.go
38:60 (6%)
37:59 (5%)
view
12 x 2 cmd/deepcopy-gen
cmd/register-gen
main.go
main.go
66:82 (66%)
35:50 (70%)
view
12 x 2 cmd/applyconfiguration-gen/generators
cmd/informer-gen/generators
util.go
generic.go
64:80 (13%)
68:84 (11%)
view
12 x 2 cmd/client-gen/generators/fake
cmd/client-gen/generators
generator_fake_for_clientset.go
generator_for_clientset.go
44:62 (12%)
42:60 (9%)
view
12 x 2 cmd/defaulter-gen
cmd/prerelease-lifecycle-gen
main.go
main.go
55:74 (66%)
46:65 (66%)
view
12 x 2 cmd/deepcopy-gen
cmd/prerelease-lifecycle-gen
main.go
main.go
56:75 (66%)
46:65 (66%)
view
12 x 2 cmd/defaulter-gen
cmd/register-gen
main.go
main.go
65:81 (66%)
35:50 (70%)
view
11 x 2 cmd/conversion-gen/generators
cmd/conversion-gen/generators
conversion.go
conversion.go
986:997 (1%)
1022:1033 (1%)
view
11 x 2 cmd/conversion-gen/generators
cmd/conversion-gen/generators
conversion.go
conversion.go
986:997 (1%)
1007:1018 (1%)
view
11 x 2 cmd/conversion-gen/generators
cmd/conversion-gen/generators
conversion.go
conversion.go
1007:1018 (1%)
1022:1033 (1%)
view
11 x 2 cmd/applyconfiguration-gen
cmd/register-gen
main.go
main.go
40:55 (57%)
36:50 (64%)
view
Duplicated Units
The list of top 10 duplicated units.
See data for all 10 unit duplicates...
Size#FoldersFilesLinesCode
20 x 2 cmd/deepcopy-gen
cmd/defaulter-gen
main.go
main.go
56:83 
55:82 
view
17 x 2 cmd/lister-gen/generators
cmd/informer-gen/generators
lister.go
packages.go
162:180 
64:81 
view
10 x 2 cmd/client-gen/args
cmd/client-gen/args
gvpackages.go
gvtype.go
88:98 
70:80 
view
9 x 2 cmd/lister-gen/generators
cmd/informer-gen/generators
lister.go
packages.go
37:46 
38:47 
view
9 x 2 cmd/client-gen/args
cmd/applyconfiguration-gen/args
gvpackages.go
externaltypes.go
164:173 
99:108 
view
7 x 2 cmd/client-gen/args
cmd/applyconfiguration-gen/args
gvpackages.go
externaltypes.go
155:162 
90:97 
view
6 x 2 cmd/deepcopy-gen/args
cmd/defaulter-gen/args
args.go
args.go
31:37 
31:37 
view
6 x 2 cmd/deepcopy-gen/args
cmd/defaulter-gen/args
args.go
args.go
46:54 
46:54 
view
6 x 2 cmd/client-gen/generators
cmd/client-gen/generators/fake
generator_for_group.go
generator_fake_for_group.go
51:57 
50:56 
view
6 x 7 cmd/informer-gen/generators
cmd/informer-gen/generators
cmd/informer-gen/generators
cmd/informer-gen/generators
cmd/informer-gen/generators
cmd/applyconfiguration-gen/generators
cmd/applyconfiguration-gen/generators
generic.go
versioninterface.go
factoryinterface.go
groupinterface.go
factory.go
internal.go
util.go
45:51 
41:47 
41:47 
42:48 
46:52 
42:49 
44:51 
view