Comment by jbmchuck
Should be easily doable with a semgrep rule, e.g.:
~> cat semgrep.yaml
rules:
- id: no-pattern-matching
pattern: |
match ...:
message: |
I'm not a fan of the pattern matching in Python
severity: ERROR
languages:
- python
... ~> cat test.py
#!/usr/bin/env python3
foo = 1
match foo:
case 1:
print("one")
... ~> semgrep --config semgrep.yaml test.py
no-pattern-matching
I'm not a fan of the pattern matching in Python
4┆ match foo:
5┆ case 1:
6┆ print("one")
(exits non-0)
You need to make that exclude match = ... since match can also be a variable name. This is because people used to write code like match = re.search(...)