on master help sign in
add solution to Details for packages

this is needed for showing docs in reactor for packages

commita537ed8c9dcd8e9ade69cf6489d746e686364abe authorEvan Czaplicki <evancz@users.noreply.github.com> dateMon 1 Jul 2019, 15:53 (7 years ago) parent43e2d0d
5 files changed+16−15
builder/src/Build.hs+1−1 builder/src/Elm/Details.hs+7−6 terminal/src/Diff.hs+1−1 terminal/src/Make.hs+1−1 terminal/src/Publish.hs+6−6
builder/src/Build.hs+1−1
@@ -78,7 +78,7 @@ makeEnv key root (Details.Details _ validOutline locals foreigns _) =
7878 Details.ValidApp srcDirs ->
7979 Env key root Pkg.dummyName (NE.toList srcDirs) locals foreigns
8080
81− Details.ValidPkg pkg _ ->
81+ Details.ValidPkg pkg _ _ ->
8282 Env key root pkg ["src"] locals foreigns
8383
8484
builder/src/Elm/Details.hs+7−6
@@ -15,7 +15,7 @@ module Elm.Details
1515
1616import Control.Concurrent (forkIO)
1717import Control.Concurrent.MVar (MVar, newEmptyMVar, newMVar, putMVar, readMVar, takeMVar)
18−import Control.Monad (liftM, liftM2, liftM4)
18+import Control.Monad (liftM, liftM2, liftM3, liftM4)
1919import Data.Binary (Binary, get, put, getWord8, putWord8)
2020import qualified Data.Either as Either
2121import qualified Data.Map as Map
@@ -73,7 +73,7 @@ data Details =
7373
7474data ValidOutline
7575 = ValidApp (NE.List FilePath)
76− | ValidPkg Pkg.Name [ModuleName.Raw]
76+ | ValidPkg Pkg.Name [ModuleName.Raw] (Map.Map Pkg.Name V.Version {- for docs in reactor -})
7777
7878
7979data Local =
@@ -212,7 +212,8 @@ verifyPkg env time (Outline.PkgOutline pkg _ _ _ exposed direct testDirect elm)
212212 then
213213 do solution <- verifyConstraints env =<< union noDups direct testDirect
214214 let exposedList = Outline.flattenExposed exposed
215− verifyDependencies env time (ValidPkg pkg exposedList) solution direct
215+ let exactDeps = Map.map (\(Solver.Details v _) -> v) solution -- for pkg docs in reactor
216+ verifyDependencies env time (ValidPkg pkg exposedList exactDeps) solution direct
216217 else
217218 Task.throw $ Exit.DetailsBadElmInPkg elm
218219
@@ -768,14 +769,14 @@ instance Binary Details where
768769instance Binary ValidOutline where
769770 put outline =
770771 case outline of
771− ValidApp a -> putWord8 0 >> put a
772− ValidPkg a b -> putWord8 1 >> put a >> put b
772+ ValidApp a -> putWord8 0 >> put a
773+ ValidPkg a b c -> putWord8 1 >> put a >> put b >> put c
773774
774775 get =
775776 do n <- getWord8
776777 case n of
777778 0 -> liftM ValidApp get
778− 1 -> liftM2 ValidPkg get get
779+ 1 -> liftM3 ValidPkg get get get
779780 _ -> error "binary encoding of ValidOutline was corrupted"
780781
781782
terminal/src/Diff.hs+1−1
@@ -178,7 +178,7 @@ generateDocs (Env maybeRoot _ _ _) =
178178 Details.ValidApp _ ->
179179 Task.throw $ Exit.DiffApplication
180180
181− Details.ValidPkg _ exposed ->
181+ Details.ValidPkg _ exposed _ ->
182182 case exposed of
183183 [] ->
184184 Task.throw $ Exit.DiffNoExposed
terminal/src/Make.hs+1−1
@@ -141,7 +141,7 @@ getExposed (Details.Details _ validOutline _ _ _) =
141141 Details.ValidApp _ ->
142142 Task.throw Exit.MakeAppNeedsFileNames
143143
144− Details.ValidPkg _ exposed ->
144+ Details.ValidPkg _ exposed _ ->
145145 case exposed of
146146 [] -> Task.throw Exit.MakePkgNeedsExposing
147147 m:ms -> return (NE.List m ms)
terminal/src/Publish.hs+6−6
@@ -177,9 +177,9 @@ verifyBuild root =
177177
178178 exposed <-
179179 case outline of
180− Details.ValidApp _ -> Task.throw Exit.PublishApplication
181− Details.ValidPkg _ [] -> Task.throw Exit.PublishNoExposed
182− Details.ValidPkg _ (e:es) -> return (NE.List e es)
180+ Details.ValidApp _ -> Task.throw Exit.PublishApplication
181+ Details.ValidPkg _ [] _ -> Task.throw Exit.PublishNoExposed
182+ Details.ValidPkg _ (e:es) _ -> return (NE.List e es)
183183
184184 Task.eio Exit.PublishBuildProblem $
185185 Build.fromExposed Reporting.silent root details Build.KeepDocs exposed
@@ -300,9 +300,9 @@ verifyZipBuild root =
300300
301301 exposed <-
302302 case outline of
303− Details.ValidApp _ -> Task.throw Exit.PublishZipApplication
304− Details.ValidPkg _ [] -> Task.throw Exit.PublishZipNoExposed
305− Details.ValidPkg _ (e:es) -> return (NE.List e es)
303+ Details.ValidApp _ -> Task.throw Exit.PublishZipApplication
304+ Details.ValidPkg _ [] _ -> Task.throw Exit.PublishZipNoExposed
305+ Details.ValidPkg _ (e:es) _ -> return (NE.List e es)
306306
307307 _ <- Task.eio Exit.PublishZipBuildProblem $
308308 Build.fromExposed Reporting.silent root details Build.KeepDocs exposed