Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
83 commits
Select commit Hold shift + click to select a range
c3a0cd0
Exclude shell scripts from CRLF line ending rule
natiiix Jul 16, 2019
6e9bc18
Begin implementing web UI server
natiiix Jul 16, 2019
67ead15
Add web server credentials file to .gitignore
natiiix Jul 16, 2019
4f73e0c
Add script for running web server in debug mode
natiiix Jul 16, 2019
0f19897
Merge branch 'master' into web-interface
natiiix Jul 22, 2019
458577f
Slightly improve web UI and its server
natiiix Jul 23, 2019
ad97a17
Add Windows batch script for running web server
natiiix Jul 23, 2019
0e9b294
Make necessary changes to type 1 check algorithm
natiiix Jul 23, 2019
486760e
Fix element name
natiiix Jul 23, 2019
417ce92
Redesign detected clone list in HTML
natiiix Jul 23, 2019
853ff0f
Generate detected clone lists using HTML lists
natiiix Jul 23, 2019
d851c58
Merge branch 'master' into web-interface
natiiix Jul 23, 2019
de4714e
Write detection results to JSON file
natiiix Jul 23, 2019
6f7489f
Return results using new classes made for results
natiiix Jul 23, 2019
14e47af
Merge branch 'master' into web-interface
natiiix Jul 23, 2019
e44a29b
Change .output to .results in fast_check
natiiix Jul 23, 2019
84114a7
Merge branch 'master' into web-interface
natiiix Jul 23, 2019
ff098c7
Merge branch 'master' into web-interface
natiiix Jul 23, 2019
c24b586
Exclude shell scripts from CRLF line ending rule
natiiix Jul 16, 2019
0bf6790
Begin implementing web UI server
natiiix Jul 16, 2019
e67b5e8
Add web server credentials file to .gitignore
natiiix Jul 16, 2019
289ca9f
Add script for running web server in debug mode
natiiix Jul 16, 2019
c654aad
Slightly improve web UI and its server
natiiix Jul 23, 2019
227164d
Add Windows batch script for running web server
natiiix Jul 23, 2019
ac484c1
Make necessary changes to type 1 check algorithm
natiiix Jul 23, 2019
cb5a7fa
Fix element name
natiiix Jul 23, 2019
fac6aca
Redesign detected clone list in HTML
natiiix Jul 23, 2019
18a4ead
Generate detected clone lists using HTML lists
natiiix Jul 23, 2019
05d9233
Write detection results to JSON file
natiiix Jul 23, 2019
aa9609a
Return results using new classes made for results
natiiix Jul 23, 2019
73980d3
Change .output to .results in fast_check
natiiix Jul 23, 2019
e5a536f
Merge branch 'web-interface' of https://github.com/natiiix/codeDuplic…
natiiix Jul 23, 2019
5a7810a
Disable centering on clone list heading
natiiix Jul 23, 2019
0fe97e1
Improve clone header format in HTML output
natiiix Jul 23, 2019
5398f98
Use TreeNode.value instead of skeleton string
natiiix Jul 23, 2019
76c9b02
Change repo submit button text for clarity
natiiix Jul 23, 2019
69617c9
Make repo URL input box more self-descriptive
natiiix Jul 23, 2019
43ae307
Update reference to repo URL value in web app code
natiiix Jul 23, 2019
bb09785
Merge pull request #19 from calebdehaan/master
dentonmwood Jul 24, 2019
096e5ed
Moved iodine algorithm into its own place
dentonmwood Jul 24, 2019
3589b89
Change clone sorting metric in DetectionResult
natiiix Jul 24, 2019
3435f2e
Update secondary algorithm to use result classes
natiiix Jul 24, 2019
b396dd8
Move recursive collection of children to TreeNode
natiiix Jul 24, 2019
619b159
Move flatten() to utils.list_tools module
natiiix Jul 24, 2019
e793ac8
Remove old code for printing found clones
natiiix Jul 24, 2019
ce37a33
Merge branch 'master' into web-interface
natiiix Jul 24, 2019
c1e6ff4
Require Git repo specifier, not necessarily URL
natiiix Jul 24, 2019
7d0b045
Add checks to repo_cloner to avoid weird behavior
natiiix Jul 24, 2019
5ec3222
Modify fast_check to work with new result classes
natiiix Jul 24, 2019
a999011
Adjust lists to reflect changes to result classes
natiiix Jul 24, 2019
3b28ecc
Merge pull request #14 from dentonmwood/master
natiiix Jul 24, 2019
17ad9be
Update repository path formats in usage text
natiiix Jul 24, 2019
56e9044
Create module for 3rd algorithm; now called Oxygen
natiiix Jul 24, 2019
4ae4422
Move code from fast_check to oxygen module
natiiix Jul 24, 2019
928e075
Reorganize oxygen algorithm code change names
natiiix Jul 24, 2019
378240f
Add module for abstraction / executing algorithms
natiiix Jul 24, 2019
d2bd7e3
Remove unnecessary imports from oxygen.py
natiiix Jul 24, 2019
e0c215b
Fix GitHub short URL regex in repo_cloner
natiiix Jul 24, 2019
f2faa27
Add func for easily getting modules from repo path
natiiix Jul 24, 2019
c043087
Update web/app.py to use latest code
natiiix Jul 24, 2019
0e48955
Remove fast analysis from main()
natiiix Jul 24, 2019
c2c4b3c
Create module for chlorine algorithm (secondary)
natiiix Jul 24, 2019
e5cb5f8
Move comparer.py to chlorine module
natiiix Jul 24, 2019
7188470
Delete secondary_algorithm module
natiiix Jul 24, 2019
c526fad
Rename chlorine and fix imports
natiiix Jul 24, 2019
257376e
Standardize two-repo comparison via chlorine
natiiix Jul 24, 2019
bcdbca7
Standardize single-repo mode in chlorine
natiiix Jul 24, 2019
780fbcd
Add single-repo chlorine to algorithm runner
natiiix Jul 24, 2019
6921d31
Add func for running algorithms on two repos
natiiix Jul 24, 2019
feebc98
Add "returns" to chlorine's docstrings
natiiix Jul 24, 2019
59e3576
Add "returns" to oxygen's docstring
natiiix Jul 24, 2019
16bbe4a
Add docstrings to algorithm_runner
natiiix Jul 24, 2019
73d52d1
Remove JSON file save code from web app
natiiix Jul 24, 2019
c5c82bb
Add batch script for running profiler
natiiix Jul 24, 2019
95f92d4
Update SetupTools config
natiiix Jul 24, 2019
c6688f2
Move everything where it belongs
natiiix Jul 24, 2019
8e63d73
Udpate list of dirs for QA scripts
natiiix Jul 24, 2019
216487a
Update imports in CLI app.py
natiiix Jul 24, 2019
8d5f970
Fix import in CLI __main__.py
natiiix Jul 24, 2019
f0dbf05
Fix imports in web app.py
natiiix Jul 24, 2019
1609ce1
Fix imports in repo_cloner
natiiix Jul 24, 2019
c9d5b82
Add __init__.py to errors module
natiiix Jul 25, 2019
ddef246
Separate index.html into multiple files
natiiix Jul 25, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 12 additions & 9 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
root = true

[*]
indent_style = space
indent_size = 4
charset = utf-8
end_of_line = crlf
trim_trailing_whitespace = true
insert_final_newline = true
root = true

[*]
indent_style = space
indent_size = 4
charset = utf-8
end_of_line = crlf
trim_trailing_whitespace = true
insert_final_newline = true

[*.sh]
end_of_line = lf
19 changes: 10 additions & 9 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
.idea/
.vscode/
*.pyc
code_duplication/build/
code_duplication/code_duplication_scanner.egg-info/
code_duplication/dist/
code_duplication/env/
code_duplication/repos/
venv/
.idea/
.vscode/
*.pyc
code_duplication/build/
code_duplication/code_duplication_scanner.egg-info/
code_duplication/dist/
code_duplication/env/
code_duplication/repos/
venv/
web/credentials.py
8 changes: 4 additions & 4 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
[submodule "code_duplication/test/repos/CodeDuplicateTest1"]
path = code_duplication/test/repos/CodeDuplicateTest1
[submodule "test/repos/CodeDuplicateTest1"]
path = test/repos/CodeDuplicateTest1
url = https://github.com/SchaefferDuncan/CodeDuplicateTest1
branch = master
[submodule "code_duplication/test/repos/CodeDuplicateTest2"]
path = code_duplication/test/repos/CodeDuplicateTest2
[submodule "test/repos/CodeDuplicateTest2"]
path = test/repos/CodeDuplicateTest2
url = https://github.com/SchaefferDuncan/CodeDuplicateTest2
branch = master
File renamed without changes.
4 changes: 4 additions & 0 deletions cli/__main__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
from .app import main

if __name__ == "__main__":
main()
32 changes: 6 additions & 26 deletions code_duplication/src/app.py → cli/app.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
import sys
from .preprocessing.args_handler import handle_args
from .preprocessing.module_parser import get_modules_from_dir
from .primary_algorithm.pattern_collection import pattern_collection
from .utils.benchmark import time_snap
from .secondary_algorithm.fast_check import type1_check
from engine.preprocessing.args_handler import handle_args
from engine.preprocessing.module_parser import get_modules_from_dir
from engine.algorithms.iodine.iodine import iodine
from engine.utils.benchmark import time_snap
from fastlog import log
from .errors.UserInputError import UserInputError
from engine.errors.UserInputError import UserInputError


def main():
Expand Down Expand Up @@ -37,28 +36,9 @@ def main():

time_snap("Parsed second repository")

log.info("Beginning fast analysis...")
type1_check(module_list_1)
time_snap("Type 1 check for first repository")

type1_check(module_list_2)
time_snap("Type 1 check for second repository")

log.info("Beginning full analysis...")
clusters = []
for module_tree_1 in module_list_1:
for module_tree_2 in module_list_2:
clusters.append(pattern_collection(
module_tree_1, module_tree_2))

iodine(module_list_1, module_list_2)
time_snap("Analysis completed")
log.info("")

log.info("Possible clones:")
for cluster_list in clusters:
for pattern in cluster_list:
if pattern:
log.info(pattern)

except UserInputError as ex:
if ex.message:
Expand Down
4 changes: 0 additions & 4 deletions code_duplication/__main__.py

This file was deleted.

7 changes: 0 additions & 7 deletions code_duplication/setup.py

This file was deleted.

251 changes: 0 additions & 251 deletions code_duplication/src/secondary_algorithm/comparer.py

This file was deleted.

Loading