Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 30 additions & 17 deletions Setup.hs
Original file line number Diff line number Diff line change
@@ -1,23 +1,36 @@
{-# OPTIONS_GHC -fno-warn-warnings-deprecations #-}

module Main (main) where
module Main
( main
) where

import Data.List ( nub, sortBy )
import Data.Ord ( comparing )
import Distribution.Package ( PackageId, UnitId, packageVersion, packageName )
import Distribution.PackageDescription ( PackageDescription(), Executable(..) )
import Distribution.InstalledPackageInfo (sourcePackageId, installedUnitId)
import Distribution.Simple ( defaultMainWithHooks, UserHooks(..), simpleUserHooks )
import Distribution.Simple.Utils ( rewriteFileEx, createDirectoryIfMissingVerbose )
import Distribution.Simple.BuildPaths ( autogenPackageModulesDir )
import Distribution.Simple.PackageIndex (allPackages, dependencyClosure)
import Distribution.Simple.Setup ( BuildFlags(buildVerbosity), fromFlag )
import Distribution.Simple.LocalBuildInfo ( installedPkgs, withLibLBI, withExeLBI, LocalBuildInfo(), ComponentLocalBuildInfo(componentPackageDeps) )
import Distribution.Types.PackageName (PackageName, unPackageName)
import Distribution.Types.UnqualComponentName (unUnqualComponentName)
import Distribution.Verbosity ( Verbosity, normal )
import Distribution.Pretty ( prettyShow )
import System.FilePath ( (</>) )
import Data.List ( nub, sortBy )
import Data.Ord ( comparing )
import Distribution.InstalledPackageInfo
( sourcePackageId, installedUnitId )
import Distribution.Package
( PackageId, UnitId, packageVersion, packageName )
import Distribution.PackageDescription
( PackageDescription (), Executable (..) )
import Distribution.Pretty ( prettyShow )
import Distribution.Simple
( defaultMainWithHooks, UserHooks(..), simpleUserHooks )
import Distribution.Simple.BuildPaths ( autogenPackageModulesDir )
import Distribution.Simple.LocalBuildInfo
( installedPkgs, withLibLBI, withExeLBI, LocalBuildInfo ()
, ComponentLocalBuildInfo (componentPackageDeps)
)
import Distribution.Simple.PackageIndex
( allPackages, dependencyClosure )
import Distribution.Simple.Setup
( BuildFlags (buildVerbosity), fromFlag )
import Distribution.Simple.Utils
( rewriteFileEx, createDirectoryIfMissingVerbose )
import Distribution.Types.PackageName ( PackageName, unPackageName )
import Distribution.Types.UnqualComponentName
( unUnqualComponentName )
import Distribution.Verbosity ( Verbosity, normal )
import System.FilePath ( (</>) )

main :: IO ()
main = defaultMainWithHooks simpleUserHooks
Expand Down
2 changes: 1 addition & 1 deletion src/Control/Concurrent/Execute.hs
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ module Control.Concurrent.Execute
, ActionId (..)
, ActionContext (..)
, Action (..)
, Concurrency(..)
, Concurrency (..)
, runActions
) where

Expand Down
2 changes: 1 addition & 1 deletion src/Data/Attoparsec/Args.hs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
-- | Parsing of Stack command line arguments

module Data.Attoparsec.Args
( EscapingMode(..)
( EscapingMode (..)
, argsParser
, parseArgs
, parseArgsFromString
Expand Down
9 changes: 7 additions & 2 deletions src/Data/Attoparsec/Combinators.hs
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,14 @@

-- | More readable combinators for writing parsers.

module Data.Attoparsec.Combinators where
module Data.Attoparsec.Combinators
( alternating
, appending
, concating
, pured
) where

import Stack.Prelude
import Stack.Prelude

-- | Concatenate two parsers.
appending :: (Applicative f,Semigroup a)
Expand Down
2 changes: 1 addition & 1 deletion src/Options/Applicative/Builder/Extra.hs
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ module Options.Applicative.Builder.Extra
, fileCompleter
, fileExtCompleter
, dirCompleter
, PathCompleterOpts(..)
, PathCompleterOpts (..)
, defaultPathCompleterOpts
, pathCompleterWith
, unescapeBashArg
Expand Down
28 changes: 14 additions & 14 deletions src/Path/Extra.hs
Original file line number Diff line number Diff line change
Expand Up @@ -4,25 +4,25 @@
-- | Extra Path utilities.

module Path.Extra
(toFilePathNoTrailingSep
,dropRoot
,parseCollapsedAbsDir
,parseCollapsedAbsFile
,concatAndCollapseAbsDir
,rejectMissingFile
,rejectMissingDir
,pathToByteString
,pathToLazyByteString
,pathToText
,tryGetModificationTime
( toFilePathNoTrailingSep
, dropRoot
, parseCollapsedAbsDir
, parseCollapsedAbsFile
, concatAndCollapseAbsDir
, rejectMissingFile
, rejectMissingDir
, pathToByteString
, pathToLazyByteString
, pathToText
, tryGetModificationTime
) where

import Data.Time (UTCTime)
import Data.Time ( UTCTime )
import Path
import Path.IO
import Path.Internal (Path(..))
import Path.Internal ( Path (..) )
import RIO
import System.IO.Error (isDoesNotExistError)
import System.IO.Error ( isDoesNotExistError )
import qualified Data.ByteString.Char8 as BS
import qualified Data.ByteString.Lazy.Char8 as BSL
import qualified Data.Text as T
Expand Down
21 changes: 11 additions & 10 deletions src/Path/Find.hs
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,19 @@
-- | Finding files.

module Path.Find
(findFileUp
,findDirUp
,findFiles
,findInParents)
where
( findFileUp
, findDirUp
, findFiles
, findInParents
) where

import RIO
import System.IO.Error (isPermissionError)
import qualified Data.List as L
import Path
import Path.IO hiding (findFiles)
import System.PosixCompat.Files (getSymbolicLinkStatus, isSymbolicLink)
import Path
import Path.IO hiding (findFiles)
import RIO
import System.IO.Error ( isPermissionError )
import System.PosixCompat.Files
( getSymbolicLinkStatus, isSymbolicLink )

-- | Find the location of a file matching the given predicate.
findFileUp :: (MonadIO m,MonadThrow m)
Expand Down
43 changes: 21 additions & 22 deletions src/Stack/Build.hs
Original file line number Diff line number Diff line change
Expand Up @@ -8,48 +8,47 @@
-- | Build the project.

module Stack.Build
(build
,buildLocalTargets
,loadPackage
,mkBaseConfigOpts
,queryBuildInfo
,splitObjsWarning
,CabalVersionException(..))
where

import Stack.Prelude hiding (loadPackage)
import Data.Aeson (Value (Object, Array), (.=), object)
( build
, buildLocalTargets
, loadPackage
, mkBaseConfigOpts
, queryBuildInfo
, splitObjsWarning
, CabalVersionException (..)
) where

import Data.Aeson ( Value (Object, Array), (.=), object )
import qualified Data.Aeson.Key as Key
import qualified Data.Aeson.KeyMap as KeyMap
import Data.List ((\\), isPrefixOf)
import Data.List.Extra (groupSort)
import Data.List ( (\\), isPrefixOf )
import Data.List.Extra ( groupSort )
import qualified Data.List.NonEmpty as NE
import qualified Data.Map as Map
import qualified Data.Set as Set
import qualified Data.Text as T
import Data.Text.Encoding (decodeUtf8)
import Data.Text.Encoding ( decodeUtf8 )
import qualified Data.Text.IO as TIO
import Data.Text.Read (decimal)
import Data.Text.Read ( decimal )
import qualified Data.Vector as V
import qualified Data.Yaml as Yaml
import qualified Distribution.PackageDescription as C
import Distribution.Types.Dependency (depLibraries)
import Distribution.Version (mkVersion)
import Path (parent)
import Distribution.Types.Dependency ( depLibraries )
import Distribution.Version ( mkVersion )
import Path ( parent )
import Stack.Build.ConstructPlan
import Stack.Build.Execute
import Stack.Build.Installed
import Stack.Build.Source
import Stack.Package
import Stack.Setup (withNewLocalBuildTargets)
import Stack.Prelude hiding ( loadPackage )
import Stack.Setup ( withNewLocalBuildTargets )
import Stack.Types.Build
import Stack.Types.Compiler ( compilerVersionText, getGhcVersion )
import Stack.Types.Config
import Stack.Types.NamedComponent
import Stack.Types.Package
import Stack.Types.SourceMap

import Stack.Types.Compiler (compilerVersionText, getGhcVersion)
import System.Terminal (fixCodePage)
import System.Terminal ( fixCodePage )

data CabalVersionException
= AllowNewerNotSupported Version
Expand Down
17 changes: 9 additions & 8 deletions src/Stack/Build/Cache.hs
Original file line number Diff line number Diff line change
Expand Up @@ -30,31 +30,32 @@ module Stack.Build.Cache
, writePrecompiledCache
, readPrecompiledCache
-- Exported for testing
, BuildCache(..)
, BuildCache (..)
) where

import Stack.Prelude
import Crypto.Hash (hashWith, SHA256(..))
import qualified Data.ByteArray as Mem (convert)
import Data.ByteString.Builder (byteString)
import Crypto.Hash ( hashWith, SHA256 (..) )
import qualified Data.ByteArray as Mem ( convert )
import Data.ByteString.Builder ( byteString )
import qualified Data.Map as M
import qualified Data.Set as Set
import qualified Data.Text as T
import qualified Data.Yaml as Yaml
import Foreign.C.Types (CTime)
import Foreign.C.Types ( CTime )
import Path
import Path.IO
import Stack.Constants
import Stack.Constants.Config
import Stack.Prelude
import Stack.Storage.Project
import Stack.Storage.User
import Stack.Types.Build
import Stack.Types.Cache
import Stack.Types.Config
import Stack.Types.GhcPkgId
import Stack.Types.NamedComponent
import Stack.Types.SourceMap (smRelDir)
import System.PosixCompat.Files (modificationTime, getFileStatus, setFileTimes)
import Stack.Types.SourceMap ( smRelDir )
import System.PosixCompat.Files
( modificationTime, getFileStatus, setFileTimes )

-- | Directory containing files to mark an executable as installed
exeInstalledDir :: (HasEnvConfig env)
Expand Down
4 changes: 2 additions & 2 deletions src/Stack/Build/Execute.hs
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ module Stack.Build.Execute
, ExecuteEnv
, withExecuteEnv
, withSingleContext
, ExcludeTHLoading(..)
, KeepOutputOpen(..)
, ExcludeTHLoading (..)
, KeepOutputOpen (..)
) where

import Control.Concurrent.Execute
Expand Down
30 changes: 15 additions & 15 deletions src/Stack/Build/Target.hs
Original file line number Diff line number Diff line change
Expand Up @@ -58,28 +58,28 @@
-- Finally, we upgrade the snapshot by using
-- calculatePackagePromotion.
module Stack.Build.Target
( -- * Types
Target (..)
, NeedTargets (..)
, PackageType (..)
, parseTargets
-- * Convenience helpers
, gpdVersion
-- * Test suite exports
, parseRawTarget
, RawTarget (..)
, UnresolvedComponent (..)
) where
( -- * Types
Target (..)
, NeedTargets (..)
, PackageType (..)
, parseTargets
-- * Convenience helpers
, gpdVersion
-- * Test suite exports
, parseRawTarget
, RawTarget (..)
, UnresolvedComponent (..)
) where

import Stack.Prelude
import qualified Data.Map as Map
import qualified Data.Set as Set
import qualified Data.Text as T
import Path
import Path.Extra (rejectMissingDir)
import Path.Extra ( rejectMissingDir )
import Path.IO
import RIO.Process (HasProcessContext)
import RIO.Process ( HasProcessContext )
import Stack.SourceMap
import Stack.Prelude
import Stack.Types.Config
import Stack.Types.NamedComponent
import Stack.Types.Build
Expand Down
2 changes: 1 addition & 1 deletion src/Stack/BuildPlan.hs
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ module Stack.BuildPlan
( BuildPlanException (..)
, BuildPlanCheck (..)
, checkSnapBuildPlan
, DepError(..)
, DepError (..)
, DepErrors
, removeSrcPkgDefaultFlags
, selectBestSnapshot
Expand Down
18 changes: 9 additions & 9 deletions src/Stack/Clean.hs
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,17 @@

-- | Clean a project.
module Stack.Clean
(clean
,CleanOpts(..)
,CleanCommand(..)
) where
( clean
, CleanOpts (..)
, CleanCommand (..)
) where

import Stack.Prelude
import Data.List ((\\),intercalate)
import Data.List ( (\\), intercalate )
import qualified Data.Map.Strict as Map
import Path.IO (ignoringAbsence, removeDirRecur)
import Stack.Config (withBuildConfig)
import Stack.Constants.Config (rootDistDirFromDir, workDirFromDir)
import Path.IO ( ignoringAbsence, removeDirRecur )
import Stack.Config ( withBuildConfig )
import Stack.Constants.Config ( rootDistDirFromDir, workDirFromDir )
import Stack.Prelude
import Stack.Types.Config
import Stack.Types.SourceMap

Expand Down
2 changes: 1 addition & 1 deletion src/Stack/Config/Build.hs
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@
-- | Build configuration
module Stack.Config.Build where

import Distribution.Verbosity ( normal )
import Stack.Prelude
import Stack.Types.Config
import Distribution.Verbosity (normal)

-- | Interprets BuildOptsMonoid options.
buildOptsFromMonoid :: BuildOptsMonoid -> BuildOpts
Expand Down
6 changes: 3 additions & 3 deletions src/Stack/Config/Docker.hs
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@
-- | Docker configuration
module Stack.Config.Docker where

import Stack.Prelude
import Data.List (find)
import Data.List ( find )
import qualified Data.Text as T
import Distribution.Version (simplifyVersionRange)
import Distribution.Version ( simplifyVersionRange )
import Stack.Prelude
import Stack.Types.Version
import Stack.Types.Config
import Stack.Types.Docker
Expand Down
Loading