git.iko.soy/typeable/cabal2nix
on master help sign in
Fix hlint warnings.
a0d172dPeter Simons
src/Cabal2Nix/HackageGit.hs+7−8
@@ -2,23 +2,22 @@
2
2
3module Cabal2Nix.HackageGit ( Hackage, readHackage, module Data.Map ) where
3module Cabal2Nix.HackageGit ( Hackage, readHackage, module Data.Map ) where
4
4
5+import Control.Monad
6+import Data.Aeson
5import Data.ByteString.Char8 ( ByteString )
7import Data.ByteString.Char8 ( ByteString )
6import qualified Data.ByteString.Char8 as BS8 ( readFile )
8import qualified Data.ByteString.Char8 as BS8 ( readFile )
7import Data.ByteString.Lazy.Char8 ( fromStrict )
9import Data.ByteString.Lazy.Char8 ( fromStrict )
10+import Data.Digest.Pure.SHA ( sha256, showDigest )
8import Data.Map
11import Data.Map
9−import Data.Aeson
10import Data.Maybe ( fromMaybe )
12import Data.Maybe ( fromMaybe )
13+import Data.String.UTF8 ( toString, fromRep )
11import Data.Version
14import Data.Version
12−import Distribution.Text ( simpleParse )
13−import System.FilePath
14−import System.Directory
15−import Control.Monad
16import Distribution.Package
15import Distribution.Package
17import Distribution.PackageDescription
16import Distribution.PackageDescription
18import Distribution.PackageDescription.Parse ( parsePackageDescription, ParseResult(..) )
17import Distribution.PackageDescription.Parse ( parsePackageDescription, ParseResult(..) )
19−import Distribution.Text ( display )
18+import Distribution.Text ( simpleParse, display )
20−import Data.String.UTF8 ( toString, fromRep )
19+import System.Directory
21−import Data.Digest.Pure.SHA ( sha256, showDigest )
20+import System.FilePath
22
21
23-- | A 'Map' representation of the Hackage database. Every package name
22-- | A 'Map' representation of the Hackage database. Every package name
24-- maps to a non-empty set of version, and for every version there is a
23-- maps to a non-empty set of version, and for every version there is a
src/hackage2nix.hs+8−7
@@ -6,20 +6,21 @@ import Cabal2Nix.Flags ( configureCabalFlags )
6import Cabal2Nix.Generate ( cabal2nix' )
6import Cabal2Nix.Generate ( cabal2nix' )
7import Cabal2Nix.HackageGit ( readHackage, Hackage )
7import Cabal2Nix.HackageGit ( readHackage, Hackage )
8import Cabal2Nix.Package
8import Cabal2Nix.Package
9−import Data.List
9+import Cabal2Nix.Version
10+import Control.Arrow ( second )
10import Control.Lens
11import Control.Lens
11−import Data.Function
12import Control.Monad
12import Control.Monad
13import Control.Monad.Par.Combinator
13import Control.Monad.Par.Combinator
14import Control.Monad.Par.IO
14import Control.Monad.Par.IO
15import Control.Monad.Trans ( liftIO )
15import Control.Monad.Trans ( liftIO )
16+import Data.Function
17+import Data.List
16import Data.Map.Strict ( Map )
18import Data.Map.Strict ( Map )
17import qualified Data.Map.Strict as Map
19import qualified Data.Map.Strict as Map
18import Data.Maybe
20import Data.Maybe
19import Data.Monoid
21import Data.Monoid
20import Data.Set ( Set )
22import Data.Set ( Set )
21import qualified Data.Set as Set
23import qualified Data.Set as Set
22−import Language.Nix.Identifier
23import Distribution.Compiler
24import Distribution.Compiler
24import Distribution.Nixpkgs.Fetch
25import Distribution.Nixpkgs.Fetch
25import Distribution.Nixpkgs.Haskell
26import Distribution.Nixpkgs.Haskell
@@ -32,8 +33,8 @@ import Distribution.PackageDescription.Configuration
32import Distribution.System
33import Distribution.System
33import Distribution.Text
34import Distribution.Text
34import Distribution.Version
35import Distribution.Version
36+import Language.Nix.Identifier
35import Options.Applicative
37import Options.Applicative
36−import Cabal2Nix.Version
37
38
38type Nixpkgs = PackageMap -- Map String (Set [String])
39type Nixpkgs = PackageMap -- Map String (Set [String])
39type PackageSet = Map String Version
40type PackageSet = Map String Version
@@ -89,8 +90,8 @@ data Options = Options
89
90
90options :: Parser Options
91options :: Parser Options
91options = Options
92options = Options
92− <$> (strOption $ long "hackage" <> help "path to Hackage git repository" <> value "hackage" <> showDefault <> metavar "PATH")
93+ <$> strOption (long "hackage" <> help "path to Hackage git repository" <> value "hackage" <> showDefault <> metavar "PATH")
93− <*> (strOption $ long "nixpkgs" <> help "path to Nixpkgs repository" <> value "<nixpkgs>" <> showDefault <> metavar "PATH")
94+ <*> strOption (long "nixpkgs" <> help "path to Nixpkgs repository" <> value "<nixpkgs>" <> showDefault <> metavar "PATH")
94
95
95pinfo :: ParserInfo Options
96pinfo :: ParserInfo Options
96pinfo = info
97pinfo = info
@@ -264,7 +265,7 @@ cabal2nix resolver cabal = (missingDeps, flags, drv)
264 cabal' = cabal { condTestSuites = flaggedTests }
265 cabal' = cabal { condTestSuites = flaggedTests }
265
266
266 flaggedTests :: [(String, CondTree ConfVar [Dependency] TestSuite)]
267 flaggedTests :: [(String, CondTree ConfVar [Dependency] TestSuite)]
267− flaggedTests = map (\(n, t) -> (n, mapTreeData enableTest t)) (condTestSuites cabal)
268+ flaggedTests = map (second (mapTreeData enableTest)) (condTestSuites cabal)
268
269
269 enableTest :: TestSuite -> TestSuite
270 enableTest :: TestSuite -> TestSuite
270 enableTest t = t { testEnabled = True }
271 enableTest t = t { testEnabled = True }