aws / smithy-go
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:
    • 13,054 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 748 duplicated lines
  • 86 duplicates
system5% (748 lines)
Duplication per Extension
java7% (609 lines)
go3% (139 lines)
Duplication per Component (primary)
codegen7% (609 lines)
encoding8% (92 lines)
transport6% (33 lines)
document1% (14 lines)
time0% (0 lines)
ROOT0% (0 lines)
sync0% (0 lines)
waiter0% (0 lines)
testing0% (0 lines)
middleware0% (0 lines)
logging0% (0 lines)
rand0% (0 lines)
io0% (0 lines)
ptr0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 86 duplicates...
Size#FoldersFilesLinesCode
27 x 2 encoding/xml
encoding/xml
escape.go
escape.go
50:79 (29%)
99:130 (29%)
view
17 x 2 codegen/smithy-go-codege.../go/codegen/integration
codegen/smithy-go-codege.../go/codegen/integration
HttpBindingProtocolGenerator.java
HttpRpcProtocolGenerator.java
129:165 (1%)
88:124 (8%)
view
13 x 2 encoding/json
encoding/xml
value.go
value.go
127:145 (20%)
272:290 (10%)
view
13 x 2 codegen/smithy-go-codege...mazon/smithy/go/codegen
codegen/smithy-go-codege...mazon/smithy/go/codegen
GoValueAccessUtils.java
GoValueAccessUtils.java
52:67 (10%)
190:203 (10%)
view
12 x 2 codegen/smithy-go-codege.../go/codegen/integration
codegen/smithy-go-codege.../go/codegen/integration
ProtocolUtils.java
ProtocolUtils.java
141:154 (13%)
187:200 (13%)
view
11 x 2 codegen/smithy-go-codege.../go/codegen/integration
codegen/smithy-go-codege.../go/codegen/integration
DocumentShapeDeserVisitor.java
DocumentShapeSerVisitor.java
458:480 (14%)
372:394 (14%)
view
11 x 2 codegen/smithy-go-codege...mazon/smithy/go/codegen
codegen/smithy-go-codege...mazon/smithy/go/codegen
GoValueAccessUtils.java
GoValueAccessUtils.java
152:162 (8%)
296:306 (8%)
view
11 x 2 codegen/smithy-go-codege.../go/codegen/integration
codegen/smithy-go-codege.../go/codegen/integration
Waiters.java
Waiters.java
285:297 (1%)
343:355 (1%)
view
10 x 2 codegen/smithy-go-codege.../go/codegen/integration
codegen/smithy-go-codege.../go/codegen/integration
Waiters.java
Waiters.java
327:337 (1%)
492:501 (1%)
view
10 x 2 codegen/smithy-go-codege.../go/codegen/integration
codegen/smithy-go-codege.../go/codegen/integration
HttpProtocolUnitTestResponseErrorGene...
HttpProtocolUnitTestResponseGenerator...
101:111 (8%)
91:101 (12%)
view
10 x 2 codegen/smithy-go-codege.../go/codegen/integration
codegen/smithy-go-codege.../go/codegen/integration
Waiters.java
Waiters.java
272:281 (1%)
324:333 (1%)
view
10 x 2 codegen/smithy-go-codege.../go/codegen/integration
codegen/smithy-go-codege.../go/codegen/integration
HttpBindingProtocolGenerator.java
HttpRpcProtocolGenerator.java
1417:1441 (1%)
392:416 (5%)
view
9 x 2 codegen/smithy-go-codege...hy/go/codegen/knowledge
codegen/smithy-go-codege...hy/go/codegen/knowledge
GoPointableIndex.java
GoPointableIndex.java
66:78 (8%)
83:95 (8%)
view
9 x 2 codegen/smithy-go-codege.../go/codegen/integration
codegen/smithy-go-codege.../go/codegen/integration
ClientMember.java
ConfigField.java
106:130 (18%)
127:151 (13%)
view
9 x 2 codegen/smithy-go-codege.../go/codegen/integration
codegen/smithy-go-codege.../go/codegen/integration
Waiters.java
Waiters.java
122:132 (1%)
496:506 (1%)
view
8 x 2 codegen/smithy-go-codege.../go/codegen/integration
codegen/smithy-go-codege.../go/codegen/integration
ClientMember.java
ConfigFieldResolver.java
64:74 (16%)
61:71 (13%)
view
8 x 2 codegen/smithy-go-codege.../go/codegen/integration
codegen/smithy-go-codege.../go/codegen/integration
Paginators.java
Waiters.java
45:52 (3%)
52:59 (1%)
view
8 x 2 codegen/smithy-go-codege.../go/codegen/integration
codegen/smithy-go-codege.../go/codegen/integration
ClientMember.java
ConfigField.java
64:74 (16%)
82:92 (11%)
view
8 x 2 codegen/smithy-go-codege.../go/codegen/integration
codegen/smithy-go-codege.../go/codegen/integration
ConfigField.java
ConfigFieldResolver.java
82:92 (11%)
61:71 (13%)
view
8 x 2 codegen/smithy-go-codege.../go/codegen/integration
codegen/smithy-go-codege.../go/codegen/integration
ClientMemberResolver.java
ConfigField.java
41:51 (29%)
82:92 (11%)
view
Duplicated Units
The list of top 6 duplicated units.
See data for all 6 unit duplicates...
Size#FoldersFilesLinesCode
9 x 2 codegen/smithy-go-codege.../go/codegen/integration
codegen/smithy-go-codege.../go/codegen/integration
HttpRpcProtocolGenerator.java
HttpBindingProtocolGenerator.java
392:402 
1417:1427 
view
8 x 2 codegen/smithy-go-codege...mazon/smithy/go/codegen
codegen/smithy-go-codege...mazon/smithy/go/codegen
ShapeValueGenerator.java
ShapeValueGenerator.java
721:729 
731:739 
view
8 x 2 codegen/smithy-go-codege...mazon/smithy/go/codegen
codegen/smithy-go-codege...mazon/smithy/go/codegen
GoStackStepMiddlewareGenerator.java
GoStackStepMiddlewareGenerator.java
58:66 
107:115 
view
7 x 2 codegen/smithy-go-codege...mazon/smithy/go/codegen
codegen/smithy-go-codege...mazon/smithy/go/codegen
GoStackStepMiddlewareGenerator.java
GoStackStepMiddlewareGenerator.java
75:82 
91:98 
view
7 x 2 codegen/smithy-go-codege.../go/codegen/integration
codegen/smithy-go-codege.../go/codegen/integration
ProtocolGenerator.java
ProtocolGenerator.java
205:212 
222:229 
view
6 x 2 ROOT
ROOT
errors.go
errors.go
71:77 
109:115 
view