packages feed

stgi-1.1: .hlint.yaml

# Avoiding lambdas is not always a good idea if you keep in mind that GHC's
# inliner will only consider fully applied functions.
- ignore: {name: "Avoid lambda"}

# Naming can be useful
- ignore: {name: "Eta reduce"}
- ignore: {name: "Redundant lambda"}
- ignore: {name: "Use const"}

# Sometimes, it can make code more readable if underscores are allowed as a
# form of a "large" separator. For example, one might give all tests the prefix
# "test_", followed by a camel-case test name.
- ignore: {name: "Use camelCase"}

# Sometimes a »case« can be clearer
- ignore: {name: "Use fromMaybe"}
- ignore: {name: "Use if"}

# Obfuscation much?
- ignore: {name: "Use uncurry"}
- ignore: {name: "Use first"}
- ignore: {name: "Use second"}

# I don’t like $
- error:
    name: Use parentheses instead of $
    lhs: f $ x
    rhs: f (x)

# AMP fallout
- error:
    name: generalize mapM
    lhs: mapM
    rhs: traverse
- error:
    name: generalize mapM_
    lhs: mapM_
    rhs: traverse_
- error:
    name: generalize forM
    lhs: forM
    rhs: for
- error:
    name: generalize forM_
    lhs: forM_
    rhs: for_
- error:
    name: Avoid return
    lhs: return
    rhs: pure