From 4788d6f46f8f19774fb122245fb268f4df5366ff Mon Sep 17 00:00:00 2001 From: Franco Cipollone Date: Fri, 3 May 2024 17:16:30 -0300 Subject: [PATCH] Adds linter for launch files. Signed-off-by: Franco Cipollone --- andino_gz/.flake8 | 76 ++++++++++++++++++++++++++++++++++++++++ andino_gz/CMakeLists.txt | 6 ++++ 2 files changed, 82 insertions(+) create mode 100644 andino_gz/.flake8 diff --git a/andino_gz/.flake8 b/andino_gz/.flake8 new file mode 100644 index 0000000..1887502 --- /dev/null +++ b/andino_gz/.flake8 @@ -0,0 +1,76 @@ +# .flake8 +# +# DESCRIPTION +# Configuration file for the python linter flake8. +# +[flake8] + +################### PROGRAM ################################ + +# Specify the number of subprocesses that Flake8 will use to run checks in parallel. +jobs = auto + + +################### OUTPUT ################################# + +########## FORMATTING ########## + +# Select the formatter used to display errors to the user. +format = pylint +# Print the total number of errors. +count = True +# Print the source code generating the error/warning in question. +show-source = True +# Count the number of occurrences of each error/warning code and print a report. +statistics = False + +################### FILE PATTERNS ########################## + +# Provide a comma-separated list of glob patterns to exclude from checks. +exclude = + +# Provide a comma-separate list of glob patterns to include for checks. +filename = + *.py + + +################### LINTING ################################ + +########## ENVIRONMENT ########## + +# Provide a custom list of builtin functions, objects, names, etc. +builtins = + + +########## OPTIONS ########## + +# Set the maximum length that any line (with some exceptions) may be. +max-line-length = 120 +# Set the maximum allowed McCabe complexity value for a block of code. +max-complexity = 10 +# Toggle whether pycodestyle should enforce matching the indentation of the opening bracket’s line. +# incluences E131 and E133 +hang-closing = True + + +########## RULES ########## + +# ERROR CODES +# +# E/W - PEP8 errors/warnings (pycodestyle) +# F - linting errors (pyflakes) +# C - McCabe complexity error (mccabe) +# +# E133 - Closing bracket is missing indentation. +# E226 - Missing whitespace around arithmetic operator. + +# Specify a list of codes to ignore. +ignore = + E133, + E226, +# Specify the list of error codes you wish Flake8 to report. +select = + E, + W, + F, + C diff --git a/andino_gz/CMakeLists.txt b/andino_gz/CMakeLists.txt index c63b8d0..1c42d67 100644 --- a/andino_gz/CMakeLists.txt +++ b/andino_gz/CMakeLists.txt @@ -16,4 +16,10 @@ install( share/${PROJECT_NAME}/ ) +if(BUILD_TESTING) + find_package(ament_cmake_flake8 REQUIRED) + enable_testing() + ament_flake8("--config" ${CMAKE_CURRENT_SOURCE_DIR}/.flake8) +endif() + ament_package()