golang / pkgsite
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
  • 3% duplication:
    • 35,946 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 1,263 duplicated lines
  • 1,719 duplicates
system3% (1,263 lines)
Duplication per Extension
go3% (1,067 lines)
css3% (118 lines)
yaml23% (78 lines)
Duplication per Component (primary)
internal/godoc10% (697 lines)
internal/postgres5% (229 lines)
static/frontend3% (92 lines)
deploy38% (78 lines)
internal/frontend1% (37 lines)
internal/worker2% (33 lines)
internal/fetch<1% (30 lines)
static/shared1% (26 lines)
cmd/frontend7% (13 lines)
cmd/worker9% (13 lines)
internal1% (8 lines)
devtools/cmd1% (7 lines)
cmd/internal0% (0 lines)
cmd/pkgsite0% (0 lines)
static0% (0 lines)
static/worker0% (0 lines)
ROOT0% (0 lines)
devtools/docker0% (0 lines)
internal/fetchdatasource0% (0 lines)
internal/secrets0% (0 lines)
internal/licenses0% (0 lines)
internal/xcontext0% (0 lines)
internal/proxy0% (0 lines)
internal/static0% (0 lines)
internal/stdlib0% (0 lines)
internal/testing0% (0 lines)
internal/middleware0% (0 lines)
internal/memory0% (0 lines)
internal/derrors0% (0 lines)
internal/index0% (0 lines)
internal/log0% (0 lines)
internal/auth0% (0 lines)
internal/version0% (0 lines)
internal/source0% (0 lines)
internal/cookie0% (0 lines)
internal/poller0% (0 lines)
internal/database0% (0 lines)
internal/dcensus0% (0 lines)
internal/queue0% (0 lines)
internal/experiment0% (0 lines)
internal/symbol0% (0 lines)
internal/config0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 1,719 duplicates...
Size#FoldersFilesLinesCode
26 x 2 deploy
deploy
deploy-env.yaml
deploy.yaml
6:32 (53%)
6:32 (29%)
view
23 x 2 internal/postgres/search
internal/postgres/search
query.gen.go
query.gen.go
24:47 (19%)
68:91 (19%)
view
21 x 2 internal/postgres/search
internal/postgres/search
query.gen.go
query.gen.go
27:47 (18%)
115:135 (18%)
view
21 x 2 internal/postgres/search
internal/postgres/search
query.gen.go
query.gen.go
71:91 (18%)
115:135 (18%)
view
19 x 2 internal/postgres/search
internal/postgres/search
query.gen.go
symbolsearch.go
73:91 (16%)
100:118 (23%)
view
19 x 2 internal/postgres/search
internal/postgres/search
query.gen.go
symbolsearch.go
29:47 (16%)
100:118 (23%)
view
19 x 2 internal/postgres/search
internal/postgres/search
query.gen.go
symbolsearch.go
117:135 (16%)
100:118 (23%)
view
13 x 2 internal/frontend
internal/worker
server.go
server.go
542:558 (2%)
350:366 (2%)
view
13 x 2 internal/godoc
internal/godoc
encode_ast.gen.go
encode_ast.gen.go
1372:1385 (<1%)
3383:3396 (<1%)
view
13 x 2 static/shared/color
static/shared/color
color.css
color.css
69:81 (15%)
84:96 (15%)
view
12 x 2 static/frontend/styleguide
static/frontend/styleguide
styleguide.css
styleguide.css
52:63 (9%)
70:81 (9%)
view
11 x 2 internal/godoc
internal/godoc
encode_ast.gen.go
encode_ast.gen.go
170:181 (<1%)
280:291 (<1%)
view
11 x 2 internal/godoc
internal/godoc
encode_ast.gen.go
encode_ast.gen.go
170:181 (<1%)
225:236 (<1%)
view
11 x 2 internal/godoc
internal/godoc
encode_ast.gen.go
encode_ast.gen.go
2105:2116 (<1%)
2855:2866 (<1%)
view
11 x 2 internal/godoc
internal/godoc
encode_ast.gen.go
encode_ast.gen.go
1975:1986 (<1%)
3182:3193 (<1%)
view
11 x 2 internal/godoc
internal/godoc
encode_ast.gen.go
encode_ast.gen.go
225:236 (<1%)
280:291 (<1%)
view
11 x 2 internal/godoc
internal/godoc
encode_ast.gen.go
encode_ast.gen.go
3044:3055 (<1%)
3251:3262 (<1%)
view
11 x 2 internal/postgres/search
internal/postgres/search
query.gen.go
query.gen.go
13:23 (9%)
53:63 (9%)
view
11 x 2 internal/godoc
internal/godoc
encode_ast.gen.go
encode_ast.gen.go
1336:1349 (<1%)
3347:3360 (<1%)
view
11 x 2 static/frontend/unit/main
static/frontend/unit/main
_readme_gen.css
_readme_gen.css
104:114 (2%)
204:214 (2%)
view
Duplicated Units
The list of top 4 duplicated units.
See data for all 4 unit duplicates...
Size#FoldersFilesLinesCode
15 x 2 internal/frontend
internal/worker
server.go
server.go
542:559 
350:367 
view
13 x 2 internal/godoc
internal/godoc
encode_ast.gen.go
encode_ast.gen.go
145:158 
200:213 
view
12 x 2 internal
internal/fetch
latest.go
fetch.go
50:63 
251:264 
view
9 x 2 internal/godoc
internal/godoc
encode_ast.gen.go
encode_ast.gen.go
3473:3482 
3502:3511 
view