kubernetes / cri-api
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
  • 96% duplication:
    • 58,449 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 56,438 duplicated lines
  • 668,643 duplicates
system96% (56,438 lines)
Duplication per Extension
go96% (53,712 lines)
proto99% (2,726 lines)
Duplication per Component (primary)
pkg/apis/runtime/v1alpha297% (28,211 lines)
pkg/apis/runtime/v197% (28,211 lines)
pkg/apis/testing3% (16 lines)
pkg/errors0% (0 lines)
pkg/apis0% (0 lines)
ROOT0% (0 lines)

Duplication Between Components (50+ lines)

G pkg/apis/runtime/v1 pkg/apis/runtime/v1 pkg/apis/runtime/v1alpha2 pkg/apis/runtime/v1alpha2 pkg/apis/runtime/v1--pkg/apis/runtime/v1alpha2 56422

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 668,643 duplicates...
Size#FoldersFilesLinesCode
21567 x 2 pkg/apis/runtime/v1
pkg/apis/runtime/v1alpha2
api.pb.go
api.pb.go
9655:38917 (78%)
9657:38919 (78%)
view
1737 x 2 pkg/apis/runtime/v1
pkg/apis/runtime/v1alpha2
api.pb.go
api.pb.go
5109:7923 (6%)
5109:7923 (6%)
view
1542 x 2 pkg/apis/runtime/v1
pkg/apis/runtime/v1alpha2
api.pb.go
api.pb.go
2110:4706 (5%)
2110:4706 (5%)
view
1351 x 2 pkg/apis/runtime/v1
pkg/apis/runtime/v1alpha2
proto
api.proto
api.proto
23:1513 (98%)
23:1513 (98%)
view
536 x 2 pkg/apis/runtime/v1
pkg/apis/runtime/v1alpha2
api.pb.go
api.pb.go
875:1765 (1%)
875:1765 (1%)
view
231 x 2 pkg/apis/runtime/v1
pkg/apis/runtime/v1alpha2
api.pb.go
api.pb.go
39:434 (<1%)
39:434 (<1%)
view
206 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1alpha2
api.pb.go
api.pb.go
25705:25982 (<1%)
37805:38082 (<1%)
view
206 x 2 pkg/apis/runtime/v1
pkg/apis/runtime/v1alpha2
api.pb.go
api.pb.go
37803:38080 (<1%)
25705:25982 (<1%)
view
206 x 2 pkg/apis/runtime/v1
pkg/apis/runtime/v1
api.pb.go
api.pb.go
25703:25980 (<1%)
37803:38080 (<1%)
view
206 x 2 pkg/apis/runtime/v1
pkg/apis/runtime/v1alpha2
api.pb.go
api.pb.go
25703:25980 (<1%)
37805:38082 (<1%)
view
147 x 2 pkg/apis/runtime/v1
pkg/apis/runtime/v1alpha2
api.pb.go
api.pb.go
610:868 (<1%)
610:868 (<1%)
view
131 x 2 pkg/apis/runtime/v1
pkg/apis/runtime/v1alpha2
api.pb.go
api.pb.go
4892:5105 (<1%)
4892:5105 (<1%)
view
111 x 2 pkg/apis/runtime/v1
pkg/apis/runtime/v1alpha2
api.pb.go
api.pb.go
23985:24135 (<1%)
32839:32989 (<1%)
view
111 x 2 pkg/apis/runtime/v1
pkg/apis/runtime/v1alpha2
api.pb.go
api.pb.go
23985:24135 (<1%)
36519:36669 (<1%)
view
111 x 2 pkg/apis/runtime/v1
pkg/apis/runtime/v1
api.pb.go
api.pb.go
23985:24135 (<1%)
32837:32987 (<1%)
view
111 x 2 pkg/apis/runtime/v1
pkg/apis/runtime/v1alpha2
api.pb.go
api.pb.go
36517:36667 (<1%)
23987:24137 (<1%)
view
111 x 2 pkg/apis/runtime/v1
pkg/apis/runtime/v1
api.pb.go
api.pb.go
23985:24135 (<1%)
36517:36667 (<1%)
view
111 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1alpha2
api.pb.go
api.pb.go
23987:24137 (<1%)
32839:32989 (<1%)
view
111 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1alpha2
api.pb.go
api.pb.go
23987:24137 (<1%)
36519:36669 (<1%)
view
111 x 2 pkg/apis/runtime/v1
pkg/apis/runtime/v1alpha2
api.pb.go
api.pb.go
32837:32987 (<1%)
23987:24137 (<1%)
view
Duplicated Units
The list of top 20 duplicated units.
See data for all 572 unit duplicates...
Size#FoldersFilesLinesCode
736 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
29596:30333 
29594:30331 
view
663 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
32113:32777 
32111:32775 
view
596 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
28027:28624 
28025:28622 
view
544 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
21930:22475 
21928:22473 
view
512 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
23412:23925 
23410:23923 
view
508 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
31417:31926 
31415:31924 
view
440 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
24539:24980 
24537:24978 
view
412 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
20933:21346 
20931:21344 
view
387 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
27213:27601 
27211:27599 
view
370 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
25612:25983 
25610:25981 
view
370 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
37712:38083 
37710:38081 
view
315 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
21448:21764 
21446:21762 
view
287 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
34524:34812 
34522:34810 
view
283 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
38419:38703 
38417:38701 
view
279 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
32991:33271 
32989:33269 
view
275 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
31054:31330 
31052:31328 
view
243 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
24208:24452 
24206:24450 
view
240 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
35216:35457 
35214:35455 
view
239 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
37387:37627 
37385:37625 
view
226 x 2 pkg/apis/runtime/v1alpha2
pkg/apis/runtime/v1
api.pb.go
api.pb.go
26142:26369 
26140:26367 
view