cdklabs / construct-hub
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:
    • 7,745 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 584 duplicated lines
  • 215 duplicates
system7% (584 lines)
Duplication per Extension
ts7% (584 lines)
Duplication per Component (primary)
src/backend8% (325 lines)
src8% (135 lines)
src/package-sources7% (110 lines)
src/codeartifact6% (14 lines)
src/webapp0% (0 lines)
src/package-tag0% (0 lines)
src/monitoring0% (0 lines)
src/s30% (0 lines)
src/package-tag-group0% (0 lines)
src/monitored-certificate0% (0 lines)
src/preload-file0% (0 lines)
ROOT0% (0 lines)

Duplication Between Components (50+ lines)

G src src src/package-sources src/package-sources src--src/package-sources 68 src/backend src/backend src/backend--src/package-sources 62

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 215 duplicates...
Size#FoldersFilesLinesCode
20 x 2 src
src
backend-dashboard.ts
backend-dashboard.ts
189:208 (3%)
248:270 (3%)
view
12 x 2 src/backend/orchestration
src/backend/orchestration
index.ts
index.ts
483:494 (2%)
533:544 (2%)
view
12 x 2 src/backend/orchestration
src/backend/orchestration
index.ts
index.ts
470:481 (2%)
520:531 (2%)
view
10 x 2 src/package-sources
src/package-sources
npmjs.ts
npmjs.ts
369:378 (2%)
389:399 (2%)
view
9 x 2 src/package-sources
src/package-sources
code-artifact.ts
code-artifact.ts
229:237 (4%)
248:256 (4%)
view
9 x 2 src/package-sources
src/package-sources
code-artifact.ts
code-artifact.ts
229:237 (4%)
266:274 (4%)
view
9 x 2 src/package-sources
src/package-sources
code-artifact.ts
code-artifact.ts
248:256 (4%)
266:274 (4%)
view
8 x 2 src/backend/ingestion
src/backend/ingestion
index.ts
index.ts
116:123 (2%)
179:187 (2%)
view
8 x 2 src/backend/orchestration
src/backend/orchestration
index.ts
index.ts
520:527 (1%)
562:569 (1%)
view
8 x 2 src/backend/ingestion
src/backend/ingestion
ingestion.lambda.ts
ingestion.lambda.ts
249:256 (2%)
268:275 (2%)
view
8 x 2 src
src
backend-dashboard.ts
backend-dashboard.ts
487:494 (1%)
531:538 (1%)
view
8 x 2 src/backend/orchestration
src/backend/orchestration
index.ts
index.ts
470:477 (1%)
562:569 (1%)
view
7 x 2 src/backend/inventory
src/backend/inventory
index.ts
index.ts
245:251 (2%)
349:355 (2%)
view
7 x 2 src/backend/inventory
src/backend/inventory
index.ts
index.ts
366:372 (2%)
432:438 (2%)
view
7 x 2 src/backend/inventory
src/backend/inventory
index.ts
index.ts
383:389 (2%)
432:438 (2%)
view
7 x 2 src/backend/inventory
src/backend/inventory
index.ts
index.ts
263:269 (2%)
448:454 (2%)
view
7 x 2 src/backend/inventory
src/backend/inventory
index.ts
index.ts
245:251 (2%)
366:372 (2%)
view
7 x 2 src/backend/inventory
src/backend/inventory
index.ts
index.ts
366:372 (2%)
416:422 (2%)
view
7 x 2 src/backend/inventory
src/backend/inventory
index.ts
index.ts
383:389 (2%)
416:422 (2%)
view
7 x 2 src/backend/inventory
src/backend/inventory
index.ts
index.ts
263:269 (2%)
280:286 (2%)
view
Duplicated Units
The list of top 2 duplicated units.
See data for all 2 unit duplicates...
Size#FoldersFilesLinesCode
8 x 16 src/monitoring
src/monitored-certificate
src/package-sources/npmjs
src/package-sources/npmjs
src/package-sources/npmjs/canary
src/package-sources/codeartifact
src/backend/version-tracker
src/backend/ingestion
src/backend/ingestion
src/backend/inventory
...
http-get-function.ts
certificate-monitor.ts
stage-and-notify.ts
npm-js-follower.ts
npmjs-package-canary.ts
code-artifact-forwarder.ts
version-tracker.ts
ingestion.ts
re-ingest.ts
canary.ts
...
10:18 
10:18 
10:18 
10:18 
10:18 
10:18 
10:18 
10:18 
10:18 
10:18 
...
view
8 x 2 src/backend/orchestration
src/backend/orchestration
index.ts
index.ts
368:376 
378:386 
view