facebookresearch / off-belief-learning
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
  • 9% duplication:
    • 11,835 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 1,150 duplicated lines
  • 102 duplicates
system9% (1,150 lines)
Duplication per Extension
py13% (907 lines)
cc6% (213 lines)
h1% (30 lines)
Duplication per Component (primary)
pyhanabi21% (560 lines)
pyhanabi/tools12% (253 lines)
hanabi-learning-environment5% (100 lines)
rlcc7% (90 lines)
hanabi-learning-environment/hanabi_lib4% (87 lines)
hanabi-learning-environment/agents/rainbow3% (32 lines)
rela2% (28 lines)
hanabi-learning-environment/agents0% (0 lines)
pyhanabi/common_utils0% (0 lines)

Duplication Between Components (50+ lines)

G pyhanabi pyhanabi pyhanabi/tools pyhanabi/tools pyhanabi--pyhanabi/tools 140

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 102 duplicates...
Size#FoldersFilesLinesCode
30 x 2 pyhanabi
pyhanabi
net.py
net.py
192:227 (10%)
339:374 (10%)
view
29 x 2 pyhanabi
pyhanabi
net.py
net.py
151:188 (9%)
294:331 (9%)
view
22 x 2 pyhanabi
pyhanabi/tools
belief_model.py
convert_model.py
89:113 (12%)
108:132 (10%)
view
19 x 2 pyhanabi
pyhanabi
net.py
supervised_model.py
279:299 (6%)
76:96 (8%)
view
16 x 2 pyhanabi
pyhanabi
net.py
net.py
125:143 (5%)
259:277 (5%)
view
16 x 2 pyhanabi/tools
pyhanabi/tools
print_pickle_game.py
sandbox.py
10:27 (19%)
29:46 (19%)
view
15 x 2 pyhanabi
pyhanabi
net.py
net.py
234:255 (5%)
383:404 (5%)
view
14 x 2 pyhanabi
pyhanabi
supervised_model.py
supervised_model.py
27:41 (6%)
91:106 (6%)
view
13 x 2 hanabi-learning-environment
hanabi-learning-environment
rl_env.py
rl_env.py
553:565 (6%)
571:583 (6%)
view
13 x 2 pyhanabi/tools
pyhanabi/tools
parse_handshake.py
parse_handshake.py
136:152 (3%)
272:289 (3%)
view
12 x 2 pyhanabi
pyhanabi
net.py
net.py
47:60 (4%)
262:275 (4%)
view
12 x 2 pyhanabi
pyhanabi
net.py
net.py
92:103 (4%)
208:219 (4%)
view
12 x 2 pyhanabi
pyhanabi
legacy_agent.py
net.py
28:41 (8%)
146:159 (4%)
view
12 x 2 pyhanabi
pyhanabi
net.py
net.py
92:103 (4%)
355:366 (4%)
view
12 x 2 pyhanabi
pyhanabi
net.py
net.py
47:60 (4%)
128:141 (4%)
view
11 x 2 rlcc
rlcc
cc
utils.cc
utils.cc
43:55 (8%)
112:123 (8%)
view
11 x 2 hanabi-learning-environment/hanabi_lib
hanabi-learning-environment/hanabi_lib
cc
hanabi_observation.cc
hanabi_state.cc
148:159 (8%)
352:363 (3%)
view
10 x 2 pyhanabi/tools
pyhanabi/tools
extract_human_data.py
extract_human_data.py
158:167 (4%)
181:190 (4%)
view
10 x 2 pyhanabi
pyhanabi
supervised_learn.py
train_belief.py
162:174 (3%)
202:214 (4%)
view
10 x 2 pyhanabi/tools
pyhanabi/tools
parse_handshake.py
parse_handshake.py
88:98 (2%)
202:212 (2%)
view
Duplicated Units
The list of top 1 duplicated units.
See data for all 1 unit duplicate
Size#FoldersFilesLinesCode
6 x 2 pyhanabi
pyhanabi
net.py
net.py
0:0 
0:0 
view