From d326946dca1bc28666dae562f8d0413b2c9097ee Mon Sep 17 00:00:00 2001 From: Krzysztof kuhy Rudnicki Date: Sun, 30 Nov 2025 16:26:08 +0100 Subject: [PATCH] fix(lint): remove C901, N803, N999 from global ignores C901 per-file ignores: - PYTHON/lichess_bot/main.py: Complex run_bot and handle_game functions - PYTHON/stockfish_analysis/analyze_chess_game.py: Complex main() function N999 per-file ignores (module naming): - PYTHON/**/__init__.py: Uppercase PYTHON folder naming - PYTHON/randomJPG/generateJpeg.py: camelCase filename - PYTHON/tagDivider/tagDivider.py: camelCase filename N803 removed (no violations currently) --- pyproject.toml | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index e65f574..d26e707 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -35,12 +35,9 @@ ignore = [ "ISC001", # Implicit string concatenation (conflicts with formatter) # Relaxed for script-heavy repository "PTH", # Use pathlib instead of os.path - too invasive for existing code - "C901", # Function is too complex - many scripts have complex logic "BLE001", # Blind except - will fix critical ones manually "S603", # subprocess without shell - known pattern "S607", # start-process with partial path - acceptable - "N803", # invalid-argument-name - chess notation uses uppercase - "N999", # invalid-module-name - PYTHON folder name "LOG015", # root-logger-call - common in scripts "G004", # logging-f-string - common pattern "S311", # suspicious-non-cryptographic-random - not security critical @@ -76,6 +73,16 @@ unfixable = [] "D100", # Allow missing module docstring "D103", # Allow missing function docstring ] +# N999 ignores for PYTHON folder naming (uppercase folder) +"PYTHON/**/__init__.py" = [ + "N999", # Invalid module name due to PYTHON folder naming +] +"PYTHON/randomJPG/generateJpeg.py" = [ + "N999", # camelCase filename preserved for compatibility +] +"PYTHON/tagDivider/tagDivider.py" = [ + "N999", # camelCase filename preserved for compatibility +] "poker-modifier-app/*.py" = [ "INP001", # Folder has hyphen, can't be a valid Python package ] @@ -83,11 +90,13 @@ unfixable = [] "PERF203", # Try-except needed for download resilience in loop ] "PYTHON/lichess_bot/main.py" = [ + "C901", # Complex functions handling game lifecycle (run_bot, handle_game) "PERF203", # Try-except needed for stream/move error handling in loops "PLR0912", # Complex nested game event handling with many branches "PLR0915", # Long function handling complete game lifecycle ] "PYTHON/stockfish_analysis/analyze_chess_game.py" = [ + "C901", # Complex main() with many argument combinations and analysis modes "PLR0912", # Complex main() with many argument combinations and analysis modes "PLR0915", # Long main() handling complete analysis workflow ]