@@ -72,7 +72,7 @@ getEnv =
7272 do maybeRoot <- Task.io $ Stuff.findRoot
7373 cache <- Task.io $ Stuff.getPackageCache
7474 manager <- Task.io $ Http.getManager
75− registry <- Task.eio Exit.DiffBadRegistry $ Registry.latest manager cache
75+ registry <- Task.eio Exit.DiffMustHaveLatestRegistry $ Registry.latest manager cache
7676 return (Env maybeRoot cache manager registry)
7777
7878
@@ -104,13 +104,15 @@ diff env@(Env _ _ _ registry) args =
104104 writeDiff oldDocs newDocs
105105
106106 CodeVsLatest ->
107− do (newDocs, name, vsns) <- generateDocs env
107+ do (name, vsns) <- readOutline env
108108 oldDocs <- getLatestDocs env name vsns
109+ newDocs <- generateDocs env
109110 writeDiff oldDocs newDocs
110111
111112 CodeVsExactly version ->
112− do (newDocs, name, vsns) <- generateDocs env
113+ do (name, vsns) <- readOutline env
113114 oldDocs <- getDocs env name vsns version
115+ newDocs <- generateDocs env
114116 writeDiff oldDocs newDocs
115117
116118
@@ -161,8 +163,8 @@ readOutline (Env maybeRoot _ _ registry) =
161163-- GENERATE DOCS
162164
163165
164−generateDocs :: Env -> Task (Docs.Documentation, Pkg.Name, Registry.KnownVersions)
165−generateDocs (Env maybeRoot _ _ registry) =
166+generateDocs :: Env -> Task Docs.Documentation
167+generateDocs (Env maybeRoot _ _ _) =
166168 case maybeRoot of
167169 Nothing ->
168170 Task.throw $ Exit.DiffNoOutline
@@ -177,20 +179,13 @@ generateDocs (Env maybeRoot _ _ registry) =
177179 Task.throw $ Exit.DiffApplication
178180
179181 Details.ValidPkg pkg exposed ->
180− case Registry.getVersions pkg registry of
181− Just vsns ->
182− case exposed of
183− [] ->
184− Task.throw Exit.DiffNoExposed
185−
186− e:es ->
187− do docs <-
188− Task.eio Exit.DiffBadBuild $
189− Build.fromExposed Reporting.silent root details Build.KeepDocs (NE.List e es)
190− return ( docs, pkg, vsns )
191−
192− Nothing ->
193− Task.throw Exit.DiffUnpublished
182+ case exposed of
183+ [] ->
184+ Task.throw $ Exit.DiffNoExposed pkg
185+
186+ e:es ->
187+ Task.eio Exit.DiffBadBuild $
188+ Build.fromExposed Reporting.silent root details Build.KeepDocs (NE.List e es)
194189
195190
196191