11 stable releases
2.7.0 | Feb 14, 2024 |
---|---|
2.6.0 | Feb 14, 2024 |
2.5.1 | Mar 14, 2023 |
2.3.0 | Feb 27, 2023 |
1.0.1 | Feb 15, 2023 |
#5 in #sets
21KB
218 lines
Cheat-checker
Detects similarities between sets of files, intended to detect academic dishonesty.
Installation
- Install rust, either directly through your system's package manager, or by installing
rustup
and runningrustup install stable
. - Run
cargo install cheat_checker
. - Done! Run
cheat_checker --help
for usage instructions.
Speed
Yeah, it's quite slow. The reason for making this was mostly the UX, not the speed, but I did try to optimize it. I did some benchmarks, and it turns out the python-Levenshtein
library for python is about 16 times faster than eddie
(which is what this program uses) and strsim
. It's written in C or C++, and pretty arcane C/C++ at that. I did what I could and added some multithreading, but on my 4-core laptop, it's still about 8 times slower than using python-Levenshtein
single-threaded.
Heavily inspired by copy_checker. Licensed under the GNU General Public License V3.0.
Dependencies
~12–21MB
~324K SLoC