`repeated-isinstance-calls` is a duplicate rule of `duplicate-isinstance-call`
These two rules do the exact same thing but, have slightly different logic. They should be an alias of one another but appear to each be there own rule: https://docs.astral.sh/ruff/rules/repeated-isinstance-calls/ and https://docs.astral.sh/ruff/rules/duplicate-isinstance-call/ do the same thing, and have the same autofix implemented. Seems like this wasn't notice when the PR was merged https://github.com/astral-sh/ruff/pull/4792
I prefer the original logic that always converted the isinstance call to check against a type tuple. While the new Union logic is really snazzy in Python 3.11, it is a little bit slower in practice and having the pyupgrade rule take care of it means we can opt out of it which is not possible with the PyLint check
Thanks, will dedupe!
@charliermarsh do we want to deprecate one of them? which one?
@zanieb - I'd vote to keep the flake8-simplify version since we're more closely anchored to that ecosystem and it came first.
Resolved in #12021