kubernetes / repo-infra
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
  • 5% duplication:
    • 2,760 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 142 duplicated lines
  • 46 duplicates
system5% (142 lines)
Duplication per Extension
bzl7% (126 lines)
go1% (16 lines)
Duplication per Component (primary)
defs13% (76 lines)
ROOT2% (26 lines)
tools/build_tar4% (16 lines)
go7% (12 lines)
defs/private14% (12 lines)
defs/testgen0% (0 lines)
defs/testpkg0% (0 lines)
cmd/kazel0% (0 lines)
hack0% (0 lines)

Duplication Between Components (50+ lines)

G defs defs ROOT ROOT defs--ROOT 99 go go defs--go 84 defs/private defs/private defs--defs/private 84

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 46 duplicates...
Size#FoldersFilesLinesCode
13 x 2 defs
defs
build.bzl
go.bzl
1:13 (7%)
1:13 (10%)
view
13 x 2 defs
ROOT
rpm.bzl
load.bzl
1:13 (32%)
1:13 (11%)
view
13 x 2 ROOT
ROOT
load.bzl
repos.bzl
1:13 (11%)
1:13 (1%)
view
13 x 2 defs
defs
deb.bzl
go.bzl
1:13 (22%)
1:13 (10%)
view
13 x 2 defs
ROOT
rpm.bzl
repos.bzl
1:13 (32%)
1:13 (1%)
view
13 x 2 defs
defs
build.bzl
deb.bzl
1:13 (7%)
1:13 (22%)
view
12 x 2 go
ROOT
sdk_versions.bzl
load.bzl
2:13 (7%)
2:13 (10%)
view
12 x 2 defs
ROOT
pkg.bzl
repos.bzl
2:13 (40%)
2:13 (1%)
view
12 x 2 defs
defs
go.bzl
rpm.bzl
2:13 (10%)
2:13 (30%)
view
12 x 2 defs
defs
rpm.bzl
run_in_workspace.bzl
2:13 (30%)
2:13 (14%)
view
12 x 2 defs
defs
deb.bzl
run_in_workspace.bzl
2:13 (20%)
2:13 (14%)
view
12 x 2 defs
go
pkg.bzl
sdk_versions.bzl
2:13 (40%)
2:13 (7%)
view
12 x 2 defs
ROOT
pkg.bzl
load.bzl
2:13 (40%)
2:13 (10%)
view
12 x 2 defs/private
ROOT
gcilint_repository.bzl
repos.bzl
2:13 (14%)
2:13 (1%)
view
12 x 2 defs
defs/private
pkg.bzl
gcilint_repository.bzl
2:13 (40%)
2:13 (14%)
view
12 x 2 defs
defs
deb.bzl
pkg.bzl
2:13 (20%)
2:13 (40%)
view
12 x 2 defs
ROOT
deb.bzl
repos.bzl
2:13 (20%)
2:13 (1%)
view
12 x 2 defs/private
go
gcilint_repository.bzl
sdk_versions.bzl
2:13 (14%)
2:13 (7%)
view
12 x 2 defs
ROOT
build.bzl
load.bzl
2:13 (6%)
2:13 (10%)
view
12 x 2 defs
defs
deb.bzl
rpm.bzl
2:13 (20%)
2:13 (30%)
view