mirror of
https://gitlab.com/fdroid/fdroidserver.git
synced 2024-09-17 10:40:12 +02:00
Added support for gradle flavor specific dependencies in usual suspects check.
This commit is contained in:
parent
d07bf0754a
commit
450409ef14
@ -31,6 +31,15 @@ config = None
|
|||||||
options = None
|
options = None
|
||||||
|
|
||||||
|
|
||||||
|
def get_gradle_compile_commands(thisbuild):
|
||||||
|
compileCommands = ['compile', 'releaseCompile']
|
||||||
|
if thisbuild['gradle'] != ['yes']:
|
||||||
|
compileCommands += [flavor + 'Compile' for flavor in thisbuild['gradle']]
|
||||||
|
compileCommands += [flavor + 'ReleaseCompile' for flavor in thisbuild['gradle']]
|
||||||
|
|
||||||
|
return [re.compile(r'\s*' + c, re.IGNORECASE) for c in compileCommands]
|
||||||
|
|
||||||
|
|
||||||
# Scan the source code in the given directory (and all subdirectories)
|
# Scan the source code in the given directory (and all subdirectories)
|
||||||
# and return the number of fatal problems encountered
|
# and return the number of fatal problems encountered
|
||||||
def scan_source(build_dir, root_dir, thisbuild):
|
def scan_source(build_dir, root_dir, thisbuild):
|
||||||
@ -114,6 +123,11 @@ def scan_source(build_dir, root_dir, thisbuild):
|
|||||||
d = f.read(1024)
|
d = f.read(1024)
|
||||||
return bool(d.translate(None, textchars))
|
return bool(d.translate(None, textchars))
|
||||||
|
|
||||||
|
gradle_compile_commands = get_gradle_compile_commands(thisbuild)
|
||||||
|
|
||||||
|
def is_used_by_gradle(line):
|
||||||
|
return any(command.match(line) for command in gradle_compile_commands)
|
||||||
|
|
||||||
# Iterate through all files in the source code
|
# Iterate through all files in the source code
|
||||||
for r, d, f in os.walk(build_dir, topdown=True):
|
for r, d, f in os.walk(build_dir, topdown=True):
|
||||||
|
|
||||||
@ -157,8 +171,9 @@ def scan_source(build_dir, root_dir, thisbuild):
|
|||||||
continue
|
continue
|
||||||
for i, line in enumerate(file(fp)):
|
for i, line in enumerate(file(fp)):
|
||||||
i = i + 1
|
i = i + 1
|
||||||
for name in suspects_found(line):
|
if is_used_by_gradle(line):
|
||||||
count += handleproblem('usual supect \'%s\' at line %d' % (name, i), fd, fp)
|
for name in suspects_found(line):
|
||||||
|
count += handleproblem('usual supect \'%s\' at line %d' % (name, i), fd, fp)
|
||||||
|
|
||||||
elif ext in ['', 'bin', 'out', 'exe']:
|
elif ext in ['', 'bin', 'out', 'exe']:
|
||||||
if is_binary(fp):
|
if is_binary(fp):
|
||||||
|
Loading…
Reference in New Issue
Block a user