aws / aws-dynamodb-encryption-python
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
  • 7% duplication:
    • 3,203 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 237 duplicated lines
  • 30 duplicates
system7% (237 lines)
Duplication per Extension
py4% (143 lines)
yml40% (94 lines)
Duplication per Component (primary)
src/dynamodb_encryption_sdk/materials23% (55 lines)
codebuild54% (50 lines)
codebuild/release32% (38 lines)
src/dynamodb_encryption_sdk/material_providers4% (34 lines)
src/dynamodb_encryption_sdk/internal2% (24 lines)
src/dynamodb_encryption_sdk/delegated_keys8% (12 lines)
src/dynamodb_encryption_sdk/encrypted2% (12 lines)
codebuild/coverage50% (6 lines)
src/dynamodb_encryption_sdk2% (6 lines)
ROOT0% (0 lines)
doc0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 30 duplicates...
Size#FoldersFilesLinesCode
19 x 2 codebuild/release
codebuild/release
prod-release.yml
test-release.yml
10:28 (50%)
10:28 (48%)
view
16 x 2 src/dynamodb_encryption_sdk/material_providers
src/dynamodb_encryption_sdk/materials
wrapped.py
wrapped.py
67:88 (32%)
69:90 (14%)
view
10 x 2 src/dynamodb_encryption_sdk/materials
src/dynamodb_encryption_sdk/materials
raw.py
wrapped.py
60:70 (11%)
64:74 (9%)
view
10 x 2 codebuild
codebuild
python3.10.yml
python3.8.yml
6:16 (55%)
6:16 (55%)
view
10 x 2 codebuild
codebuild
python3.6.yml
python3.7.yml
6:16 (55%)
6:16 (55%)
view
10 x 2 codebuild
codebuild
python3.10.yml
python3.9.yml
6:16 (55%)
6:16 (55%)
view
10 x 2 codebuild
codebuild
python3.8.yml
python3.9.yml
6:16 (55%)
6:16 (55%)
view
10 x 2 codebuild
codebuild
python3.10.yml
python3.7.yml
6:16 (55%)
6:16 (55%)
view
10 x 2 codebuild
codebuild
python3.7.yml
python3.9.yml
6:16 (55%)
6:16 (55%)
view
10 x 2 codebuild
codebuild
python3.7.yml
python3.8.yml
6:16 (55%)
6:16 (55%)
view
10 x 2 codebuild
codebuild
python3.6.yml
python3.8.yml
6:16 (55%)
6:16 (55%)
view
10 x 2 codebuild
codebuild
python3.6.yml
python3.9.yml
6:16 (55%)
6:16 (55%)
view
10 x 2 codebuild
codebuild
python3.10.yml
python3.6.yml
6:16 (55%)
6:16 (55%)
view
9 x 2 src/dynamodb_encryption_sdk/materials
src/dynamodb_encryption_sdk/materials
raw.py
raw.py
60:69 (10%)
146:155 (10%)
view
9 x 2 src/dynamodb_encryption_sdk/materials
src/dynamodb_encryption_sdk/materials
raw.py
wrapped.py
146:155 (10%)
64:73 (8%)
view
6 x 2 src/dynamodb_encryption_sdk/material_providers
src/dynamodb_encryption_sdk/materials
wrapped.py
wrapped.py
60:65 (12%)
61:66 (5%)
view
6 x 2 src/dynamodb_encryption_sdk/materials
src/dynamodb_encryption_sdk/materials
raw.py
raw.py
93:106 (6%)
179:192 (6%)
view
6 x 2 src/dynamodb_encryption_...ernal/crypto/jce_bridge
src/dynamodb_encryption_...ernal/crypto/jce_bridge
primitives.py
primitives.py
121:130 (2%)
147:156 (2%)
view
6 x 2 src/dynamodb_encryption_sdk/delegated_keys
src/dynamodb_encryption_sdk/delegated_keys
jce.py
jce.py
166:171 (5%)
181:186 (5%)
view
6 x 2 codebuild/coverage
codebuild
coverage.yml
python3.7.yml
7:12 (50%)
11:16 (33%)
view
Duplicated Units
The list of top 2 duplicated units.
See data for all 2 unit duplicates...
Size#FoldersFilesLinesCode
6 x 2 src/dynamodb_encryption_...ernal/crypto/jce_bridge
src/dynamodb_encryption_...ernal/crypto/jce_bridge
primitives.py
primitives.py
0:0 
0:0 
view
6 x 2 src/dynamodb_encryption_sdk/materials
src/dynamodb_encryption_sdk/materials
wrapped.py
raw.py
0:0 
0:0 
view