mirror of
https://github.com/dashpay/dash.git
synced 2024-12-25 12:02:48 +01:00
merge bitcoin#24849: Convert lint-logs.sh to Python
This commit is contained in:
parent
dbfd0b04e1
commit
fe165168ba
@ -14,7 +14,7 @@
|
|||||||
#include <compat.h> // for Windows API
|
#include <compat.h> // for Windows API
|
||||||
#include <wincrypt.h>
|
#include <wincrypt.h>
|
||||||
#endif
|
#endif
|
||||||
#include <logging.h> // for LogPrintf()
|
#include <logging.h>
|
||||||
#include <randomenv.h>
|
#include <randomenv.h>
|
||||||
#include <support/allocators/secure.h>
|
#include <support/allocators/secure.h>
|
||||||
#include <span.h>
|
#include <span.h>
|
||||||
|
34
test/lint/lint-logs.py
Executable file
34
test/lint/lint-logs.py
Executable file
@ -0,0 +1,34 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
#
|
||||||
|
# Copyright (c) 2018-2022 The Bitcoin Core developers
|
||||||
|
# Distributed under the MIT software license, see the accompanying
|
||||||
|
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
||||||
|
#
|
||||||
|
# Check that all logs are terminated with '\n'
|
||||||
|
#
|
||||||
|
# Some logs are continued over multiple lines. They should be explicitly
|
||||||
|
# commented with /* Continued */
|
||||||
|
|
||||||
|
import re
|
||||||
|
import sys
|
||||||
|
|
||||||
|
from subprocess import check_output
|
||||||
|
|
||||||
|
|
||||||
|
def main():
|
||||||
|
logs_list = check_output(["git", "grep", "--extended-regexp", r"(LogPrintLevel|LogPrintf?)\(", "--", "*.cpp"], universal_newlines=True, encoding="utf8").splitlines()
|
||||||
|
|
||||||
|
unterminated_logs = [line for line in logs_list if not re.search(r'(\\n"|/\* Continued \*/)', line)]
|
||||||
|
|
||||||
|
if unterminated_logs != []:
|
||||||
|
print("All calls to LogPrintf(), LogPrint(), LogPrintLevel(), and WalletLogPrintf() should be terminated with \"\\n\".")
|
||||||
|
print("")
|
||||||
|
|
||||||
|
for line in unterminated_logs:
|
||||||
|
print(line)
|
||||||
|
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
@ -1,29 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
#
|
|
||||||
# Copyright (c) 2018-2019 The Bitcoin Core developers
|
|
||||||
# Distributed under the MIT software license, see the accompanying
|
|
||||||
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
||||||
#
|
|
||||||
# Check that all logs are terminated with '\n'
|
|
||||||
#
|
|
||||||
# Some logs are continued over multiple lines. They should be explicitly
|
|
||||||
# commented with /* Continued */
|
|
||||||
#
|
|
||||||
# There are some instances of LogPrintf() in comments. Those can be
|
|
||||||
# ignored
|
|
||||||
|
|
||||||
export LC_ALL=C
|
|
||||||
|
|
||||||
UNTERMINATED_LOGS=$(git grep --extended-regexp "(LogPrintLevel|LogPrintf?)\(" -- "*.cpp" | \
|
|
||||||
grep -v '\\n"' | \
|
|
||||||
grep -v '\.\.\.' | \
|
|
||||||
grep -v "/\* Continued \*/" | \
|
|
||||||
grep -v "LogPrint()" | \
|
|
||||||
grep -v "LogPrintf()")
|
|
||||||
if [[ ${UNTERMINATED_LOGS} != "" ]]; then
|
|
||||||
# shellcheck disable=SC2028
|
|
||||||
echo "All calls to LogPrintf(), LogPrint(), LogPrintLevel(), and WalletLogPrintf() should be terminated with \\n"
|
|
||||||
echo
|
|
||||||
echo "${UNTERMINATED_LOGS}"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
Loading…
Reference in New Issue
Block a user