Nicer intersect

This commit is contained in:
Michael Snoyman 2014-12-07 12:57:12 +02:00
parent a073ec04ff
commit fe1df2935d
3 changed files with 5 additions and 2 deletions

View File

@ -12,7 +12,6 @@ import Stackage2.Prelude
import Stackage2.BuildPlan
import Stackage2.PackageDescription
import Control.Monad.Writer.Strict (execWriter, Writer, tell)
import Distribution.Version (intersectVersionRanges, withinRange)
checkBuildPlan :: MonadThrow m => BuildPlan FlatComponent -> m ()
checkBuildPlan BuildPlan {..}

View File

@ -17,7 +17,6 @@ module Stackage2.PackageDescription
import Distribution.Package (Dependency (..))
import Distribution.PackageDescription
import Distribution.Version (withinRange, intersectVersionRanges)
import Stackage2.CorePackages
import Stackage2.PackageConstraints
import Stackage2.PackageIndex

View File

@ -18,6 +18,8 @@ import qualified Distribution.Text as DT
import Distribution.Version as X (Version (..), VersionRange)
import System.Exit (ExitCode (ExitSuccess))
import Data.Aeson (ToJSON, FromJSON)
import qualified Distribution.Version as C
import Distribution.Version as X (withinRange)
unPackageName :: PackageName -> Text
unPackageName (PackageName str) = pack str
@ -82,3 +84,6 @@ newtype Maintainer = Maintainer { unMaintainer :: Text }
-- | Name of an executable.
newtype ExeName = ExeName { unExeName :: Text }
deriving (Show, Eq, Ord, Hashable, ToJSON, FromJSON, IsString)
intersectVersionRanges :: VersionRange -> VersionRange -> VersionRange
intersectVersionRanges x y = C.simplifyVersionRange $ C.intersectVersionRanges x y