@@ -47,11 +47,8 @@ module UnitTests.Distribution.Solver.Modular.DSL
47
47
, runProgress
48
48
, mkSimpleVersion
49
49
, mkVersionRange
50
- , exQualToQPN
51
- , sortedGoalsToSortOrder
52
50
) where
53
51
54
- import Data.List (elemIndex )
55
52
import Distribution.Solver.Compat.Prelude
56
53
import Distribution.Utils.Generic
57
54
import Prelude ()
@@ -87,7 +84,6 @@ import qualified Distribution.Client.SolverInstallPlan as CI.SolverInstallPlan
87
84
import Distribution.Client.Types
88
85
89
86
import Distribution.Solver.Types.ComponentDeps (ComponentDeps )
90
- import qualified Distribution.Solver.Types.ComponentDeps as C
91
87
import qualified Distribution.Solver.Types.ComponentDeps as CD
92
88
import Distribution.Solver.Types.ConstraintSource
93
89
import Distribution.Solver.Types.Flag
@@ -827,7 +823,7 @@ exResolve
827
823
-> OnlyConstrained
828
824
-> EnableBackjumping
829
825
-> SolveExecutables
830
- -> Maybe [ ExampleVar ]
826
+ -> Maybe ( Variable P. QPN -> Variable P. QPN -> Ordering )
831
827
-> [ExConstraint ]
832
828
-> [ExPreference ]
833
829
-> C. Verbosity
@@ -872,28 +868,13 @@ exResolve
872
868
}
873
869
enableTests
874
870
| asBool enableAllTests =
875
- nub $
876
- -- We need to traverse the explicit goals and introduce the tests for each in the corresponding scope,
877
- -- because some may be qualified and simply introducing them at the top-level would not be correct
878
- map
879
- ( \ var ->
880
- PackageConstraint
881
- ( case case var of
882
- P qual pkgname -> exQualToQPN qual pkgname
883
- F qual pkgname _ -> exQualToQPN qual pkgname
884
- S qual pkgname _ -> exQualToQPN qual pkgname of
885
- P. Q (P. PackagePath ns ql) pkgname -> ScopeQualified ns ql pkgname
886
- )
887
- (PackagePropertyStanzas [TestStanzas ])
888
- )
889
- (fromMaybe [] goalOrder)
890
- <> fmap
891
- ( \ p ->
892
- PackageConstraint
893
- (scopeToplevel (C. mkPackageName p))
894
- (PackagePropertyStanzas [TestStanzas ])
895
- )
896
- (exDbPkgs db)
871
+ fmap
872
+ ( \ p ->
873
+ PackageConstraint
874
+ (scopeToplevel (C. mkPackageName p))
875
+ (PackagePropertyStanzas [TestStanzas ])
876
+ )
877
+ (exDbPkgs db)
897
878
| otherwise = []
898
879
targets' = fmap (\ p -> NamedPackage (C. mkPackageName p) [] ) targets
899
880
params =
@@ -911,7 +892,7 @@ exResolve
911
892
setOnlyConstrained onlyConstrained $
912
893
setEnableBackjumping enableBj $
913
894
setSolveExecutables solveExes $
914
- setGoalOrder (sortedGoalsToSortOrder <$> goalOrder) $
895
+ setGoalOrder goalOrder $
915
896
setSolverVerbosity verbosity $
916
897
standardInstallPolicy instIdx avaiIdx targets'
917
898
toLpc pc = LabeledPackageConstraint pc ConstraintSourceUnknown
@@ -951,41 +932,3 @@ runProgress = go
951
932
go (Step s p) = let (ss, result) = go p in (s : ss, result)
952
933
go (Fail e) = ([] , Left e)
953
934
go (Done a) = ([] , Right a)
954
-
955
- exQualToQPN :: ExampleQualifier -> ExamplePkgName -> P. QPN
956
- exQualToQPN q pn = P. Q pp (C. mkPackageName pn)
957
- where
958
- pp = case q of
959
- QualNone -> P. PackagePath P. DefaultNamespace P. QualToplevel
960
- QualIndep p ->
961
- P. PackagePath
962
- (P. Independent $ C. mkPackageName p)
963
- P. QualToplevel
964
- QualSetup s ->
965
- P. PackagePath
966
- (P. IndependentComponent (C. mkPackageName s) C. ComponentSetup )
967
- (P. QualToplevel )
968
- QualExe p1 p2 ->
969
- P. PackagePath
970
- (P. IndependentBuildTool (C. mkPackageName p1) (C. mkPackageName p2))
971
- P. QualToplevel
972
-
973
- sortedGoalsToSortOrder :: [ExampleVar ] -> Variable P. QPN -> Variable P. QPN -> Ordering
974
- sortedGoalsToSortOrder = sortGoals where
975
- sortGoals
976
- :: [ExampleVar ]
977
- -> Variable P. QPN
978
- -> Variable P. QPN
979
- -> Ordering
980
- sortGoals = orderFromList . map toVariable
981
-
982
- -- Sort elements in the list ahead of elements not in the list. Otherwise,
983
- -- follow the order in the list.
984
- orderFromList :: Eq a => [a ] -> a -> a -> Ordering
985
- orderFromList xs =
986
- comparing $ \ x -> let i = elemIndex x xs in (isNothing i, i)
987
-
988
- toVariable :: ExampleVar -> Variable P. QPN
989
- toVariable (P q pn) = PackageVar (exQualToQPN q pn)
990
- toVariable (F q pn fn) = FlagVar (exQualToQPN q pn) (C. mkFlagName fn)
991
- toVariable (S q pn stanza) = StanzaVar (exQualToQPN q pn) stanza
0 commit comments