@@ -66,7 +66,8 @@ parsePackage (Dhall.RecordLit ks') = do
6666 let ks = Dhall. extractRecordValues ks'
6767 repo <- Dhall. requireTypedKey ks " repo" (Dhall. auto :: Dhall. Decoder Repo )
6868 version <- Dhall. requireTypedKey ks " version" Dhall. strictText
69- dependencies <- Dhall. requireTypedKey ks " dependencies" dependenciesType
69+ dependenciesList <- Dhall. requireTypedKey ks " dependencies" dependenciesType
70+ let dependencies = Set. fromList dependenciesList
7071 let location = Remote {.. }
7172 pure Package {.. }
7273parsePackage (Dhall. App
@@ -77,7 +78,7 @@ parsePackage (Dhall.App
7778 True -> pure $ Text. dropEnd 12 spagoConfigPath
7879 False -> die [ display $ Messages. failedToParseLocalRepo spagoConfigPath ]
7980 rawConfig <- liftIO $ Dhall. readRawExpr spagoConfigPath
80- dependencies <- case rawConfig of
81+ dependenciesList <- case rawConfig of
8182 Nothing -> die [ display $ Messages. cannotFindConfigLocalPackage spagoConfigPath ]
8283 Just (_header, expr) -> do
8384 newExpr <- transformMExpr (pure . filterDependencies . addSourcePaths) expr
@@ -89,6 +90,7 @@ parsePackage (Dhall.App
8990 (set Dhall. rootDirectory (Text. unpack localPath) Dhall. defaultInputSettings)
9091 dependenciesType
9192 (pretty newExpr)
93+ let dependencies = Set. fromList dependenciesList
9294 let location = Local {.. }
9395 pure Package {.. }
9496parsePackage expr = die [ display $ Messages. failedToParsePackage $ pretty expr ]
@@ -135,6 +137,12 @@ parseConfig = do
135137 pure PublishConfig {.. }
136138 publishConfig <- try ensurePublishConfig
137139
140+ let ensureMigrateConfig = do
141+ migrateLicense <- Dhall. requireTypedKey ks " license" Dhall. strictText
142+ migrateVersion <- Dhall. requireTypedKey ks " version" Dhall. strictText
143+ pure MigrateConfig {.. }
144+ migrateConfig <- try ensureMigrateConfig
145+
138146 packageSet <- Dhall. requireKey ks " packages" (\ case
139147 Dhall. RecordLit pkgs -> parsePackageSet (Dhall. extractRecordValues pkgs)
140148 something -> throwM $ Dhall. PackagesIsNotRecord something)
@@ -185,6 +193,7 @@ makeTempConfig dependencies alternateBackend configSourcePaths maybeTag = do
185193 let ks = Dhall. extractRecordValues ks'
186194 packageSet <- parsePackageSet ks
187195 let publishConfig = Left $ Dhall. RequiredKeyMissing " license" ks
196+ let migrateConfig = Left $ Dhall. RequiredKeyMissing " license" ks
188197 pure $ Config { name = " " , .. }
189198 _ -> die [ " Failed to parse package set" ]
190199
0 commit comments