ndmitchell/hlint

"ignore: {}" causes restricted functions and imports to be ignored

Open

#748 opened on Aug 23, 2019

View on GitHub
 (7 comments) (0 reactions) (0 assignees)Haskell (208 forks)batch import
good first issue

Repository metrics

Stars
 (1,594 stars)
PR merge metrics
 (No merged PRs in 30d)

Description

In HLint 2.2.2, the following config:

- ignore: {}
- functions:
  - {name: putStrLn, within: []}
- modules:
  - {name: [Data.List], as: List}

causes no warning to be issued on the following module:

module Main where
import Data.List as L
main :: IO ()
main = putStrLn $ L.intercalate " " ["hlint", "is", "awesome"]

whereas the appropriate warnings are raised without the ignore: {}. This is counterintuitive to me, because the README says:

These directives are applied in the order they are given, with later hints overriding earlier ones.

Contributor guide