facebookresearch / tacto
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
  • 13% duplication:
    • 6,425 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 867 duplicated lines
  • 41 duplicates
system13% (867 lines)
Duplication per Extension
urdf80% (709 lines)
py6% (110 lines)
yml36% (48 lines)
Duplication per Component (primary)
experiments/grasp_stability/setup/robots77% (386 lines)
experiments/grasp_stability/setup/sawyer_robot96% (274 lines)
experiments/grasp_stability9% (66 lines)
tacto7% (48 lines)
experiments/rolling13% (44 lines)
meshes73% (25 lines)
experiments/rolling/setup/sensors100% (17 lines)
experiments/rolling/setup/objects<1% (7 lines)
experiments/grasp_stability/setup/objects0% (0 lines)
ROOT0% (0 lines)

Duplication Between Components (50+ lines)

G experiments/grasp_stability/setup/robots experiments/grasp_stability/setup/robots experiments/grasp_stability/setup/sawyer_robot experiments/grasp_stability/setup/sawyer_robot experiments/grasp_stability/setup/robots--experiments/grasp_stability/setup/sawyer_robot 548

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 41 duplicates...
Size#FoldersFilesLinesCode
32 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stabil...sawyer_description/urdf
urdf
sawyer_wsg50.urdf
sawyer.urdf
1:56 (6%)
1:50 (11%)
view
31 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stabil...sawyer_description/urdf
urdf
sawyer_wsg50.urdf
sawyer.urdf
335:373 (6%)
329:367 (10%)
view
29 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stabil...sawyer_description/urdf
urdf
sawyer_wsg50.urdf
sawyer.urdf
59:124 (5%)
53:118 (10%)
view
29 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stabil...sawyer_description/urdf
urdf
sawyer_wsg50.urdf
sawyer.urdf
295:332 (5%)
289:326 (10%)
view
29 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stabil...sawyer_description/urdf
urdf
sawyer_wsg50.urdf
sawyer.urdf
174:211 (5%)
168:205 (10%)
view
24 x 2 experiments/grasp_stability
experiments/rolling
grasp_data_collection.py
RollingEnv.py
31:60 (10%)
26:55 (11%)
view
24 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stabil...sawyer_description/urdf
urdf
sawyer_wsg50.urdf
sawyer.urdf
411:441 (4%)
405:435 (8%)
view
21 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stability/setup/robots
urdf
sawyer_wsg50.urdf
sawyer_wsg50.urdf
564:592 (4%)
714:742 (4%)
view
19 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stabil...sawyer_description/urdf
urdf
sawyer_wsg50.urdf
sawyer.urdf
268:292 (3%)
262:286 (6%)
view
19 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stabil...sawyer_description/urdf
urdf
sawyer_wsg50.urdf
sawyer.urdf
241:265 (3%)
235:259 (6%)
view
19 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stabil...sawyer_description/urdf
urdf
sawyer_wsg50.urdf
sawyer.urdf
147:171 (3%)
141:165 (6%)
view
19 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stability/setup/robots
urdf
sawyer_wsg50.urdf
sawyer_wsg50.urdf
615:643 (3%)
760:788 (3%)
view
19 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stabil...sawyer_description/urdf
urdf
sawyer_wsg50.urdf
sawyer.urdf
214:238 (3%)
208:232 (6%)
view
17 x 2 experiments/rolling/setup/sensors
meshes
urdf
digit.urdf
digit.urdf
1:21 (100%)
1:21 (100%)
view
16 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stability/setup/robots
urdf
sawyer_wsg50.urdf
sawyer_wsg50.urdf
517:540 (3%)
668:691 (3%)
view
13 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stabil...sawyer_description/urdf
urdf
sawyer_wsg50.urdf
sawyer.urdf
127:144 (2%)
121:138 (4%)
view
12 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stability/setup/robots
urdf
sawyer_wsg50.urdf
sawyer_wsg50.urdf
714:729 (2%)
760:775 (2%)
view
12 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stability/setup/robots
urdf
sawyer_wsg50.urdf
sawyer_wsg50.urdf
564:579 (2%)
760:775 (2%)
view
12 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stability/setup/robots
urdf
sawyer_wsg50.urdf
sawyer_wsg50.urdf
564:579 (2%)
615:630 (2%)
view
12 x 2 experiments/grasp_stability/setup/robots
experiments/grasp_stability/setup/robots
urdf
sawyer_wsg50.urdf
sawyer_wsg50.urdf
615:630 (2%)
714:729 (2%)
view
Duplicated Units
The list of top 1 duplicated units.
See data for all 1 unit duplicate
Size#FoldersFilesLinesCode
12 x 2 experiments/rolling
experiments/grasp_stability
RollingEnv.py
grasp_data_collection.py
0:0 
0:0 
view