aws / aws-iot-device-sdk-embedded-C
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
  • 8% duplication:
    • 4,199 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 343 duplicated lines
  • 100 duplicates
system8% (343 lines)
Duplication per Extension
c8% (249 lines)
yml48% (87 lines)
h2% (7 lines)
Duplication per Component (primary)
platform/posix7% (242 lines)
tools/cmock45% (87 lines)
integration-test/custom_test_runner25% (14 lines)
tools/cmake0% (0 lines)
tools/doxygen0% (0 lines)
tools/release0% (0 lines)
tools0% (0 lines)
platform/include0% (0 lines)
ROOT0% (0 lines)
integration-test/shadow0% (0 lines)
integration-test/mqtt0% (0 lines)
integration-test/http0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 100 duplicates...
Size#FoldersFilesLinesCode
28 x 2 tools/cmock
tools/cmock
project.yml
transport.yml
6:34 (87%)
7:35 (71%)
view
26 x 2 tools/cmock
tools/cmock
ota.yml
transport.yml
1:27 (83%)
1:27 (66%)
view
21 x 2 tools/cmock
tools/cmock
ota.yml
project.yml
7:27 (67%)
6:26 (65%)
view
16 x 2 platform/posix/transport/src
platform/posix/transport/utest
openssl_posix.c
openssl_utest.c
206:228 (4%)
153:175 (3%)
view
8 x 2 platform/posix/transport/utest
platform/posix/transport/utest
openssl_utest.c
openssl_utest.c
646:653 (1%)
657:664 (1%)
view
8 x 2 platform/posix/transport/utest
platform/posix/transport/utest
openssl_utest.c
openssl_utest.c
634:641 (1%)
646:653 (1%)
view
8 x 2 platform/posix/transport/utest
platform/posix/transport/utest
openssl_utest.c
openssl_utest.c
634:641 (1%)
657:664 (1%)
view
7 x 2 platform/posix/ota_pal/utest
platform/posix/ota_pal/utest
ota_pal_posix_utest.c
ota_pal_posix_utest.c
601:608 (1%)
650:658 (1%)
view
7 x 2 platform/posix/ota_pal/utest
platform/posix/ota_pal/utest
ota_pal_posix_utest.c
ota_pal_posix_utest.c
670:677 (1%)
739:746 (1%)
view
7 x 2 platform/posix/ota_pal/utest
platform/posix/ota_pal/utest
ota_pal_posix_utest.c
ota_pal_posix_utest.c
688:696 (1%)
789:796 (1%)
view
7 x 2 platform/posix/ota_pal/utest
platform/posix/ota_pal/utest
ota_pal_posix_utest.c
ota_pal_posix_utest.c
582:589 (1%)
789:796 (1%)
view
7 x 2 platform/posix/ota_pal/utest
platform/posix/ota_pal/utest
ota_pal_posix_utest.c
ota_pal_posix_utest.c
650:658 (1%)
805:812 (1%)
view
7 x 2 platform/posix/transport/utest
platform/posix/transport/utest
openssl_utest.c
openssl_utest.c
535:541 (1%)
614:620 (1%)
view
7 x 2 platform/posix/transport/utest
platform/posix/transport/utest
openssl_utest.c
openssl_utest.c
476:482 (1%)
496:502 (1%)
view
7 x 2 platform/posix/ota_pal/utest
platform/posix/ota_pal/utest
ota_pal_posix_utest.c
ota_pal_posix_utest.c
601:608 (1%)
670:677 (1%)
view
7 x 2 platform/posix/ota_pal/utest
platform/posix/ota_pal/utest
ota_pal_posix_utest.c
ota_pal_posix_utest.c
582:589 (1%)
805:812 (1%)
view
7 x 2 platform/posix/ota_pal/utest
platform/posix/ota_pal/utest
ota_pal_posix_utest.c
ota_pal_posix_utest.c
705:713 (1%)
828:835 (1%)
view
7 x 2 platform/posix/ota_pal/utest
platform/posix/ota_pal/utest
ota_pal_posix_utest.c
ota_pal_posix_utest.c
650:658 (1%)
828:835 (1%)
view
7 x 2 platform/posix/ota_pal/utest
platform/posix/ota_pal/utest
ota_pal_posix_utest.c
ota_pal_posix_utest.c
789:796 (1%)
805:812 (1%)
view
7 x 2 platform/posix/ota_pal/utest
platform/posix/ota_pal/utest
ota_pal_posix_utest.c
ota_pal_posix_utest.c
722:730 (1%)
739:746 (1%)
view