case-sensitive-email
Email comparison without case normalization causes missed matches
Applies to: JavaScript, Python, TypeScript
Why this matters
Email addresses are case-insensitive per RFC 5321. Comparing emails without lowercasing first causes duplicate accounts, failed lookups, and login issues when users capitalize their email differently.
Catch it before it ships
pip install stablestack # or: npx stablestackstablestack # scans your project, QUAL014 includedstablestack explain QUAL014QUAL014 is part of the Pro rule set. See pricing — the free tier ships 24 checks with no signup.
False positive in your codebase? Suppress a single line with # noqa: QUAL014
More Code Quality checks
exception-swallowing
Silently swallowed exceptions hide bugs and make debugging hard
QUAL002unnamed-thread
Threads without names are hard to identify in debugging tools
QUAL003complex-tuple
Tuples with 3+ elements are hard to understand - use a dataclass instead
QUAL004mutable-default-argument
Mutable default arguments are shared between calls and cause bugs
QUAL005print-statement
Print statements are typically debugging code that shouldn't be committed
QUAL006todo-comment
TODO/FIXME comments indicate incomplete or problematic code
QUAL007broad-exception
Catching all exceptions hides bugs and makes debugging hard
QUAL008magic-number
Magic numbers make code hard to understand and maintain