1
+ {-# LANGUAGE CPP #-}
2
+
1
3
-----------------------------------------------------------------------------
2
4
-- |
3
5
-- Module : Distribution.Client.Status
@@ -77,14 +79,17 @@ import qualified Distribution.Simple.LocalBuildInfo as LBI
77
79
78
80
import qualified Paths_cabal_install ( version )
79
81
80
- import System.Environment ( getExecutablePath )
82
+ import Distribution.Client.Compat.ExecutablePath ( getExecutablePath )
81
83
import System.Directory ( doesFileExist )
82
84
import System.FilePath ( splitFileName
83
85
, combine
84
86
, splitPath
85
87
, joinPath
86
88
, takeDirectory
87
89
)
90
+ #if !MIN_VERSION_base(4,8,0)
91
+ import Data.Functor ( (<$) )
92
+ #endif
88
93
import Control.Monad ( when
89
94
, forM
90
95
, guard
@@ -94,8 +99,10 @@ import Data.Version ( showVersion
94
99
)
95
100
import Data.Maybe ( isJust
96
101
)
97
- import Data.List ( sortOn
98
- , groupBy
102
+ import Data.List ( groupBy
103
+ , sortBy
104
+ )
105
+ import Data.Ord ( comparing
99
106
)
100
107
import Text.PrettyPrint ( empty
101
108
, ($$)
@@ -106,7 +113,11 @@ import Text.PrettyPrint ( empty
106
113
, ($+$)
107
114
, (<+>)
108
115
)
109
- import Data.Monoid ( (<>) )
116
+ import Data.Monoid ( (<>)
117
+ #if !MIN_VERSION_base(4,8,0)
118
+ , mappend
119
+ #endif
120
+ )
110
121
import Data.List ( inits )
111
122
import Data.Foldable ( asum )
112
123
@@ -307,7 +318,9 @@ status verbosity globalFlags statusFlags = do
307
318
installedPackageIndex <- getInstalledPackages verbosity comp dbs conf
308
319
let pkgs = allPackages installedPackageIndex
309
320
pkgTuples = [ (root, disp $ sourcePackageId pkg) | pkg <- pkgs, root <- [x | Just x <- [pkgRoot pkg]]]
310
- grouped = groupBy (\ a b -> fst a == fst b) $ sortOn fst pkgTuples
321
+ grouped = groupBy (\ a b -> fst a == fst b)
322
+ $ sortBy (comparing fst )
323
+ $ pkgTuples
311
324
groups = [(fst (head x), map snd x) | x <- grouped]
312
325
let packageDoc ps = if Cabal. fromFlag (statusPackages statusFlags)
313
326
|| Cabal. fromFlag (statusAll statusFlags)
0 commit comments