microsoft / QuantumLibraries
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
  • 6% duplication:
    • 3,969 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 260 duplicated lines
  • 23 duplicates
system6% (260 lines)
Duplication per Extension
cs6% (236 lines)
yml9% (12 lines)
py6% (12 lines)
Duplication per Component (primary)
Chemistry/src3% (102 lines)
Standard/src6% (42 lines)
MachineLearning/Common100% (19 lines)
Standard/Common100% (19 lines)
Numerics/Common100% (19 lines)
Visualization/Common100% (19 lines)
Chemistry/Common84% (16 lines)
Build2% (6 lines)
ROOT12% (6 lines)
Python/qsharp-chemistry4% (6 lines)
Python/qsharp26% (6 lines)
Build/props0% (0 lines)
Design/notes0% (0 lines)
Visualization/src0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 23 duplicates...
Size#FoldersFilesLinesCode
19 x 2 MachineLearning/Common
Numerics/Common
DelaySign.cs
DelaySign.cs
1:23 (100%)
1:23 (100%)
view
19 x 2 Numerics/Common
Standard/Common
DelaySign.cs
DelaySign.cs
1:23 (100%)
1:23 (100%)
view
19 x 2 MachineLearning/Common
Standard/Common
DelaySign.cs
DelaySign.cs
1:23 (100%)
1:23 (100%)
view
19 x 2 Numerics/Common
Visualization/Common
DelaySign.cs
DelaySign.cs
1:23 (100%)
1:23 (100%)
view
19 x 2 Standard/Common
Visualization/Common
DelaySign.cs
DelaySign.cs
1:23 (100%)
1:23 (100%)
view
19 x 2 MachineLearning/Common
Visualization/Common
DelaySign.cs
DelaySign.cs
1:23 (100%)
1:23 (100%)
view
16 x 2 Chemistry/Common
Standard/Common
DelaySign.cs
DelaySign.cs
6:23 (84%)
6:23 (84%)
view
16 x 2 Chemistry/Common
Numerics/Common
DelaySign.cs
DelaySign.cs
6:23 (84%)
6:23 (84%)
view
16 x 2 Chemistry/Common
MachineLearning/Common
DelaySign.cs
DelaySign.cs
6:23 (84%)
6:23 (84%)
view
16 x 2 Chemistry/Common
Visualization/Common
DelaySign.cs
DelaySign.cs
6:23 (84%)
6:23 (84%)
view
12 x 2 Standard/src/Canon
Standard/src/Canon
And.cs
And.cs
20:44 (41%)
55:79 (41%)
view
9 x 2 Chemistry/src/Jupyter
Chemistry/src/Jupyter
FermionHamiltonianMagic.cs
WavefunctionMagic.cs
30:55 (17%)
24:49 (29%)
view
9 x 2 Chemistry/src/DataModel/...lization/JsonConverters
Chemistry/src/DataModel/...lization/JsonConverters
FermionWavefunctionJsonConverter.cs
HamiltonianTermsJsonConverter.cs
31:49 (32%)
31:49 (32%)
view
9 x 2 Chemistry/src/DataModel/...lization/JsonConverters
Chemistry/src/DataModel/...lization/JsonConverters
FermionWavefunctionJsonConverter.cs
HamiltonianTermsJsonConverter.cs
58:75 (32%)
57:74 (32%)
view
6 x 2 Chemistry/src/Tools
Chemistry/src/Tools
Convert.cs
Normalize.cs
52:58 (8%)
47:53 (20%)
view
6 x 2 Standard/src/Canon
Standard/src/Canon
CommonGates.cs
CommonGates.cs
20:25 (17%)
36:41 (17%)
view
6 x 2 Chemistry/src/Tools
Chemistry/src/Tools
Convert.cs
Normalize.cs
37:43 (8%)
33:39 (20%)
view
6 x 2 Standard/src/Canon
Standard/src/Canon
CommonGates.cs
CommonGates.cs
20:25 (17%)
52:57 (17%)
view
6 x 2 Standard/src/Canon
Standard/src/Canon
CommonGates.cs
CommonGates.cs
36:41 (17%)
52:57 (17%)
view
6 x 2 Python/qsharp-chemistry
Python/qsharp
setup.py
setup.py
58:63 (17%)
45:50 (26%)
view
Duplicated Units
The list of top 7 duplicated units.
See data for all 7 unit duplicates...
Size#FoldersFilesLinesCode
11 x 2 Standard/src/Canon
Standard/src/Canon
CommonGates.cs
CommonGates.cs
14:25 
30:41 
view
8 x 2 Chemistry/src/Jupyter
Chemistry/src/Jupyter
FermionHamiltonianMagic.cs
WavefunctionMagic.cs
92:102 
91:101 
view
7 x 2 Standard/src/Canon
Standard/src/Canon
And.cs
And.cs
28:36 
63:71 
view
7 x 2 Visualization/src
Visualization/src
CallSiteEncoders.cs
DisplayableUnitaryEncoders.cs
50:57 
49:56 
view
6 x 2 Chemistry/src/DataModel/GenericHamiltonian
Chemistry/src/DataModel/GenericHamiltonian
Hamiltonian.cs
Hamiltonian.cs
106:112 
132:138 
view
6 x 4 Chemistry/src/Jupyter
Chemistry/src/Jupyter
Chemistry/src/Jupyter
Chemistry/src/Jupyter
BroombridgeMagic.cs
ChemistryEncodeMagic.cs
FermionHamiltonianMagic.cs
WavefunctionMagic.cs
16:22 
17:23 
26:32 
20:26 
view
6 x 2 Standard/src/Arrays
Standard/src/Canon/Combinators
ForEach.cs
ApplyToEach.cs
11:17 
11:17 
view