mirror of
https://github.com/GaloisInc/what4.git
synced 2024-11-29 13:55:51 +03:00
0abea61459
This makes it easier to tell if a build is failing or if linting is failing, and speeds up the build+test jobs by about 2 minutes. Fixes #244.
76 lines
2.5 KiB
YAML
76 lines
2.5 KiB
YAML
# HLint configuration file
|
|
# https://github.com/ndmitchell/hlint
|
|
##########################
|
|
|
|
- modules:
|
|
- {name: [Data.Set, Data.HashSet], as: Set} # if you import Data.Set qualified, it must be as 'Set'
|
|
- {name: [Data.List], as: List}
|
|
- {name: [Data.Sequence], as: Seq}
|
|
|
|
# Add custom hints for this project
|
|
#
|
|
# Will suggest replacing "wibbleMany [myvar]" with "wibbleOne myvar"
|
|
# - error: {lhs: "wibbleMany [x]", rhs: wibbleOne x}
|
|
|
|
# We should use "panic", not "error".
|
|
# - error:
|
|
# lhs: "error x"
|
|
# rhs: 'panic "nameOfFunction" [x, "more lines of details"]'
|
|
|
|
# TODO: specialize these to the modules they are needed
|
|
- ignore: {name: 'Use :'}
|
|
- ignore: {name: Avoid lambda using `infix`}
|
|
- ignore: {name: Avoid lambda}
|
|
- ignore: {name: Avoid restricted qualification}
|
|
- ignore: {name: Eta reduce}
|
|
- ignore: {name: Functor law}
|
|
- ignore: {name: Move brackets to avoid $}
|
|
- ignore: {name: Parse error}
|
|
- ignore: {name: Reduce duplication}
|
|
- ignore: {name: Redundant $}
|
|
- ignore: {name: Redundant ==}
|
|
- ignore: {name: Redundant bracket}
|
|
- ignore: {name: Redundant case}
|
|
- ignore: {name: Redundant do}
|
|
- ignore: {name: Redundant flip}
|
|
- ignore: {name: Redundant guard}
|
|
- ignore: {name: Redundant lambda}
|
|
- ignore: {name: Redundant return}
|
|
- ignore: {name: Unused LANGUAGE pragma}
|
|
- ignore: {name: Use $>}
|
|
- ignore: {name: Use &&}
|
|
- ignore: {name: Use ++}
|
|
- ignore: {name: Use .}
|
|
- ignore: {name: Use <$>}
|
|
- ignore: {name: Use <=<}
|
|
- ignore: {name: Use =<<}
|
|
- ignore: {name: Use ==}
|
|
- ignore: {name: Use >=>}
|
|
- ignore: {name: Use String}
|
|
- ignore: {name: Use asks}
|
|
- ignore: {name: Use camelCase}
|
|
- ignore: {name: Use const}
|
|
- ignore: {name: Use fewer imports}
|
|
- ignore: {name: Use fmap}
|
|
- ignore: {name: Use forM_}
|
|
- ignore: {name: Use fromMaybe, within: [Lang.Crucible.Analysis.Shape, Lang.Crucible.JVM.Class, Lang.Crucible.JVM.Translation.Class]}
|
|
- ignore: {name: Use record patterns, within: [Lang.Crucible.Simulator.EvalStmt, Lang.Crucible.Simulator.Profiling, Lang.Crucible.CFG.Core]}
|
|
- ignore: {name: Use guards}
|
|
- ignore: {name: Use hPrint}
|
|
- ignore: {name: Use if}
|
|
- ignore: {name: Use isNothing}
|
|
- ignore: {name: Use lambda-case}
|
|
- ignore: {name: Use list comprehension}
|
|
- ignore: {name: Use maybe}
|
|
- ignore: {name: Use newtype instead of data}
|
|
- ignore: {name: Use record patterns}
|
|
- ignore: {name: Use otherwise}
|
|
- ignore: {name: Use section}
|
|
- ignore: {name: Use sortOn}
|
|
- ignore: {name: Use tuple-section}
|
|
- ignore: {name: Use uncurry}
|
|
- ignore: {name: Use unless}
|
|
- ignore: {name: Use unwords}
|
|
- ignore: {name: Use void}
|
|
- ignore: {name: Use when}
|