mirror of
https://github.com/nextcloud/desktop.git
synced 2024-11-27 09:30:13 +03:00
3e3c124af1
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
40 lines
1.1 KiB
Python
Executable file
40 lines
1.1 KiB
Python
Executable file
#!/usr/bin/env python3
|
|
|
|
# Small script that counts the warnings which the compiler emits
|
|
# and takes care that not more warnings are added.
|
|
|
|
import sys
|
|
import re
|
|
import requests
|
|
|
|
|
|
if len(sys.argv) != 2:
|
|
print(f"Usage: {sys.argv[0]} REPOSITORY_PATH")
|
|
sys.exit(1)
|
|
|
|
repository_path = sys.argv[1]
|
|
warning_regex = re.compile(r'warning:', re.M)
|
|
max_allowed_warnings_count_response = requests.get(
|
|
"https://nextclouddesktopwarningscount.felixweilbach.de")
|
|
|
|
if max_allowed_warnings_count_response.status_code != 200:
|
|
print('Can not get maximum number of allowed warnings')
|
|
sys.exit(1)
|
|
|
|
max_allowed_warnings_count = int(max_allowed_warnings_count_response.content)
|
|
|
|
print("Max number of allowed warnings:", max_allowed_warnings_count)
|
|
|
|
warnings_count = 0
|
|
|
|
for line in sys.stdin:
|
|
if warning_regex.findall(line):
|
|
warnings_count += 1
|
|
|
|
print(line, end="")
|
|
|
|
if warnings_count > max_allowed_warnings_count:
|
|
print("Error: Too many warnings! You probably introduced a new warning!")
|
|
sys.exit(1)
|
|
|
|
print("Total number of warnings:", warnings_count)
|