git.iko.soy/typeable/octopod
on nixify-control-scripts help sign in
typeable/octopod/.hlint.yaml
55 lines 1.8 kB history raw
1# HLint configuration file
2# https://github.com/ndmitchell/hlint
3##########################
5# This file contains a template configuration file, which is typically
6# placed as .hlint.yaml in the root of your project
8# Specify additional command line arguments
9#
10# - arguments: [--color, --cpp-simple, -XQuasiQuotes]
12# Control which extensions/flags/modules/functions can be used
14# - extensions:
15# - default: false # all extension are banned by default
16# - name: [PatternGuards, ViewPatterns] # only these listed extensions can be used
17# - {name: CPP, within: CrossPlatform} # CPP can only be used in a given module
19# - flags:
20# - {name: -w, within: []} # -w is allowed nowhere
22# - modules:
23# - {name: [Data.Set, Data.HashSet], as: Set} # if you import Data.Set qualified, it must be as 'Set'
24# - {name: Control.Arrow, within: []} # Certain modules are banned entirely
26# - functions:
27# - {name: unsafePerformIO, within: []} # unsafePerformIO can only appear in no modules
29# Add custom hints for this project
31# Will suggest replacing "wibbleMany [myvar]" with "wibbleOne myvar"
32# - error: {lhs: "wibbleMany [x]", rhs: wibbleOne x}
34# Turn on hints that are off by default
36# Ban "module X(module X) where", to require a real export list
37# - warn: {name: Use explicit module export list}
39# Replace a $ b $ c with a . b $ c
40# - group: {name: dollar, enabled: true}
42# Generalise map to fmap, ++ to <>
43# - group: {name: generalise, enabled: true}
45# Ignore some builtin hints
46# - ignore: {name: Use let}
47# - ignore: {name: Use const, within: SpecialModule} # Only within certain modules
49- ignore: { name: Replace case with maybe }
50- ignore: { name: Use if }
51# Define some custom infix operators
52# - fixity: infixr 3 ~^#^~
54# To generate a suitable file for HLint do:
55# $ hlint --default > .hlint.yaml