microsoft / AIforEarth-API-Platform
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
  • 37% duplication:
    • 2,079 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 778 duplicated lines
  • 38 duplicates
system37% (778 lines)
Duplication per Extension
yaml63% (555 lines)
tpl100% (124 lines)
py20% (81 lines)
yml30% (18 lines)
Duplication per Component (primary)
APIs/Charts82% (679 lines)
APIs/1.09% (34 lines)
Containers/base-py79% (27 lines)
Containers/Common30% (20 lines)
Cluster/networking56% (18 lines)
APIManagement0% (0 lines)
Cluster/config0% (0 lines)
Cluster/monitoring0% (0 lines)
Cluster/policy0% (0 lines)
Containers/base-r0% (0 lines)
ProcessManager/BackendQueueProcessor0% (0 lines)
ProcessManager/BackendWebhook0% (0 lines)
ProcessManager/CacheManager0% (0 lines)
ProcessManager/Classes0% (0 lines)
ProcessManager/Libraries0% (0 lines)
ProcessManager/RequestReporter0% (0 lines)
ProcessManager/TaskProcessLogger0% (0 lines)

Duplication Between Components (50+ lines)

G APIs/1.0 APIs/1.0 Containers/base-py Containers/base-py APIs/1.0--Containers/base-py 54

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 38 duplicates...
Size#FoldersFilesLinesCode
69 x 2 APIs/Charts/camera-trap/detection-async/templates
APIs/Charts/camera-trap/detection-sync/templates
deployment.yaml
deployment.yaml
1:69 (100%)
1:69 (100%)
view
55 x 2 APIs/Charts/templates/async-gpu/templates
APIs/Charts/templates/sync-cpu/templates
deployment.yaml
deployment.yaml
1:55 (100%)
1:55 (100%)
view
31 x 2 APIs/Charts/camera-trap/detection-async/templates
APIs/Charts/templates/sync-cpu/templates
tpl
_helpers.tpl
_helpers.tpl
1:34 (100%)
1:34 (100%)
view
31 x 2 APIs/Charts/camera-trap/detection-async/templates
APIs/Charts/camera-trap/detection-sync/templates
tpl
_helpers.tpl
_helpers.tpl
1:34 (100%)
1:34 (100%)
view
31 x 2 APIs/Charts/camera-trap/detection-sync/templates
APIs/Charts/templates/sync-cpu/templates
tpl
_helpers.tpl
_helpers.tpl
1:34 (100%)
1:34 (100%)
view
31 x 2 APIs/Charts/camera-trap/detection-async/templates
APIs/Charts/templates/async-gpu/templates
tpl
_helpers.tpl
_helpers.tpl
1:34 (100%)
1:34 (100%)
view
31 x 2 APIs/Charts/camera-trap/detection-sync/templates
APIs/Charts/templates/async-gpu/templates
tpl
_helpers.tpl
_helpers.tpl
1:34 (100%)
1:34 (100%)
view
31 x 2 APIs/Charts/templates/async-gpu/templates
APIs/Charts/templates/sync-cpu/templates
tpl
_helpers.tpl
_helpers.tpl
1:34 (100%)
1:34 (100%)
view
25 x 2 APIs/Charts/camera-trap/detection-sync/templates
APIs/Charts/templates/async-gpu/templates
deployment.yaml
deployment.yaml
1:25 (36%)
1:25 (45%)
view
25 x 2 APIs/Charts/camera-trap/detection-async/templates
APIs/Charts/templates/async-gpu/templates
deployment.yaml
deployment.yaml
1:25 (36%)
1:25 (45%)
view
25 x 2 APIs/Charts/camera-trap/detection-async/templates
APIs/Charts/templates/sync-cpu/templates
deployment.yaml
deployment.yaml
1:25 (36%)
1:25 (45%)
view
25 x 2 APIs/Charts/camera-trap/detection-sync/templates
APIs/Charts/templates/sync-cpu/templates
deployment.yaml
deployment.yaml
1:25 (36%)
1:25 (45%)
view
21 x 2 APIs/Charts/templates/async-gpu
APIs/Charts/templates/sync-cpu
autoscaler.yaml
autoscaler.yaml
1:21 (100%)
1:21 (100%)
view
21 x 2 APIs/Charts/templates/async-gpu
APIs/Charts/templates/sync-cpu
prod-values.yaml
prod-values.yaml
1:21 (50%)
1:21 (65%)
view
17 x 2 APIs/Charts/camera-trap/detection-sync/templates
APIs/Charts/templates/async-gpu/templates
service.yaml
service.yaml
1:17 (100%)
1:17 (100%)
view
17 x 2 APIs/Charts/camera-trap/detection-async/templates
APIs/Charts/templates/sync-cpu/templates
service.yaml
service.yaml
1:17 (100%)
1:17 (100%)
view
17 x 2 APIs/Charts/templates/async-gpu/templates
APIs/Charts/templates/sync-cpu/templates
service.yaml
service.yaml
1:17 (100%)
1:17 (100%)
view
17 x 2 APIs/Charts/camera-trap/detection-async/templates
APIs/Charts/templates/async-gpu/templates
service.yaml
service.yaml
1:17 (100%)
1:17 (100%)
view
17 x 2 APIs/Charts/camera-trap/detection-sync/templates
APIs/Charts/templates/sync-cpu/templates
service.yaml
service.yaml
1:17 (100%)
1:17 (100%)
view
17 x 2 APIs/Charts/camera-trap/detection-async/templates
APIs/Charts/camera-trap/detection-sync/templates
service.yaml
service.yaml
1:17 (100%)
1:17 (100%)
view
Duplicated Units
The list of top 2 duplicated units.
See data for all 2 unit duplicates...
Size#FoldersFilesLinesCode
11 x 2 ProcessManager/Libraries
ProcessManager/Libraries
AppInsightsLogger.cs
AppInsightsLogger.cs
43:55 
57:69 
view
7 x 2 APIs/1.0/base-py/task_management
Containers/base-py/task_management
api_task.py
api_task.py
0:0 
0:0 
view