CloneWorks vs Duplo
CloneWorks
github.comDuplo
github.comSide by side
| Figure | CloneWorks | Duplo |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Code Clone Detection Tools | 7.9 (#4) | 7.9 (#5) |
| Purpose | CloneWorks prepares source code and detects code clones in the prepared fragments. | Duplo finds duplicated code blocks in large codebases. |
| Support | Jeffrey Svajlenko invites questions and bug reports by email and says he is happy to assist with using CloneWorks. | The maintainer asks users to open an issue for feedback, feature requests, and bug reports. |
Plans
In their own words
CloneWorks
CloneWorks prepares source code into fragments and detects code clones in those fragments. It supports Linux, macOS, and Windows, with a token-based detection method and repository-level scan scope. Its input builder supports Java, C, C++, C#, and Python, and can extract blocks, functions, or files. The detector accepts a minimum similarity threshold from 0.0 to 1.0; the repository describes a Type-3 clone-detection test run. When an index exceeds available memory, a partitioned partial-index mode is available, though the README says its partition size must be determined experimentally. CloneWorks requires FreeTXL 10.6 or later, gcc, make, and Java 7 or later. The input builder runs more slowly on Cygwin because process creation is slower on Windows. It is free to use, with acknowledgement required; copies, modifications, and derivatives must remain under the license and be distributed without charge. The license also provides the software as-is without warranty.
Duplo
Duplo is a free tool for locating duplicated source-code blocks in large codebases. It has built-in language support for C/C++, Java, C#, VB, GCC assembly, Ada, Erlang, TypeScript and Swift, and can also scan arbitrary text files, including for duplicates within one file. For supported languages, it can filter comments, preprocessor directives and other syntax before checking for repeated code. Files can be provided through standard input or a separate file list. Duplo produces text reports as well as JSON and XML output. The project describes XML reports as usable in continuous integration tools such as GitHub Actions and TeamCity, and links to a GitHub Actions extension that can fail a build when duplicates are found. That extension has settings for minimum duplicate lines, minimum line length and maximum files reported. Prebuilt binaries are available for Alpine Linux, macOS and Windows; it can also be built from source. Duplo is free under GNU GPL version 2 or later, and is provided without warranty.