Resolve "CI Pipeline failing due to updated Flake8 configuration" (Root Cause Analysis)

This merge request adds code quality checking to the project by configuring Flake8, a Python code linting tool. The changes include:

  1. Added a comprehensive Flake8 configuration file that sets up automated code style and quality checks. This configuration specifies rules for code formatting, line length limits (100 characters), complexity thresholds, and which types of errors to catch or ignore. It's set to run checks in parallel for better performance and output detailed reports to both the console and a log file.

  2. Integrated Flake8 into the CI/CD pipeline by adding it as a required step that must pass before code can be merged. This ensures all code changes are automatically checked for style consistency and common programming errors.

The configuration is quite thorough, excluding certain folders like caches from checks, allowing some specific style rules that conflict with other formatting tools (like Black), and enabling docstring testing. This setup helps maintain consistent code quality across the project by catching issues like unused imports, overly complex functions, and style violations before they make it into the main codebase.

Merge request reports

Loading