dejafu/.hlint.yaml

52 lines
2.1 KiB
YAML
Raw Normal View History

# HLint configuration file
# https://github.com/ndmitchell/hlint
##########################
# Module export lists should generally be preferred, but may be
# omitted if the module is small or internal.
- ignore: {name: Use module export list}
# Record patterns are just ugly.
- ignore: {name: Use record patterns}
2018-06-17 13:21:31 +03:00
# Don't prefer TupleSections
- ignore: {name: Use tuple-section}
2018-07-08 13:38:37 +03:00
# I don't think this helps
- ignore: {name: "Avoid lambda using `infix`"}
2018-06-17 13:21:31 +03:00
# Inapplicable
- ignore: {name: Use readTVarIO, within: Control.Monad.Conc.Class}
# GHC treats infix $ specially wrt type checking, so that things like
# "runST $ do ..." work even though they're impredicative.
# Unfortunately, this means that HLint's "avoid lambda" warning for
# this module would lead to code which no longer compiles!
- ignore: {name: Avoid lambda, within: Test.DejaFu.Conc.Internal.Program}
# Prefer applicative operators over monadic ones.
- suggest: {name: Generalise monadic functions, lhs: return, rhs: pure}
2018-02-13 03:33:19 +03:00
# The whole point of this example is to test class laws
- ignore: {name: Functor law, within: Examples.ClassLaws}
- ignore: {name: Generalise monadic functions, within: Examples.ClassLaws}
# These test names are copied straight from the async package
- ignore: {name: Use camelCase, within: Integration.Async}
# I don't think these help.
- ignore: {name: Avoid lambda, within: Integration.Refinement}
- ignore: {name: Reduce duplication, within: Unit.Properties}
- ignore: {name: Use nonTermination, within: Unit.Properties}
2018-02-13 03:33:19 +03:00
- ignore: {name: Reduce duplication, within: Integration.Litmus}
- ignore: {name: Reduce duplication, within: Integration.MultiThreaded}
2018-03-05 14:10:17 +03:00
- ignore: {name: Reduce duplication, within: Integration.SCT}
2018-02-13 03:33:19 +03:00
- ignore: {name: Reduce duplication, within: Integration.SingleThreaded}
2019-10-04 20:06:40 +03:00
# These are tests of the laws
- ignore: {name: "Use <$>", within: Examples.ClassLaws}
- ignore: {name: "Use fmap", within: Examples.ClassLaws}
2019-10-04 20:06:40 +03:00
- ignore: {name: "Alternative law, right identity", within: Examples.ClassLaws}
- ignore: {name: "Alternative law, left identity", within: Examples.ClassLaws}
- ignore: {name: "Monoid law, right identity", within: Unit.Properties}