mcp-server-semgrep
Version:
MCP Server for Semgrep Integration - static code analysis with AI
34 lines (33 loc) • 995 B
YAML
rules:
- id: uncaught-executor-exceptions
patterns:
- pattern-inside: |
with concurrent.futures.thread.ThreadPoolExecutor(...) as $EXECUTOR:
...
- pattern-not-inside: |
$VAR = $EXECUTOR.map(...)
...
for ... in $VAR:
...
- pattern-not-inside: |
$VAR = $EXECUTOR.map(...)
...
[... for ... in $VAR]
- pattern-not-inside: |
[... for ... in $EXECUTOR.map(...)]
- pattern-not-inside: |
for $IT in $EXECUTOR.map(...):
...
- pattern: $EXECUTOR.map(...)
message: >-
Values returned by thread pool map must be read in order to raise exceptions.
Consider using `for _ in $EXECUTOR.map(...): pass`.
severity: WARNING
languages:
- python
metadata:
references:
- https://superfastpython.com/threadpoolexecutor-exception-handling/
category: correctness
technology:
- python