stack-all 0.1.1 → 0.1.2
raw patch · 4 files changed
+16/−5 lines, 4 files
Files
- ChangeLog.md +5/−0
- Main.hs +6/−2
- README.md +1/−1
- stack-all.cabal +4/−2
ChangeLog.md view
@@ -1,5 +1,10 @@ # Revision history for stack-all +## 0.1.2 (2021-02-05)+- --create-config comment line mentions older version+- show error for unversioned "stack-lts.yaml"+- add lts-17+ ## 0.1.1 (2020-12-04) - fix ordering of stack-lts-*.yaml - allow --newest to override oldest lts config
Main.hs view
@@ -44,7 +44,7 @@ defaultOldest = LTS 11 allSnaps :: [Snapshot]-allSnaps = [Nightly, LTS 16, LTS 14, LTS 13, LTS 12, LTS 11,+allSnaps = [Nightly, LTS 17, LTS 16, LTS 14, LTS 13, LTS 12, LTS 11, LTS 10, LTS 9, LTS 8, LTS 6, LTS 5, LTS 4, LTS 2, LTS 1] data VersionSpec = DefaultVersions | Oldest Snapshot | AllVersions | VersionList [Snapshot]@@ -90,6 +90,7 @@ mapM_ (stackBuild configs debug mcmd) (newestFilter versions) where readStackConf :: FilePath -> Maybe Snapshot+ readStackConf "stack-lts.yaml" = error' "unversioned stack-lts.yaml is unsupported" readStackConf f = stripPrefix "stack-" f >>= stripSuffix ".yaml" >>= readCompactSnap @@ -101,8 +102,11 @@ exists <- doesFileExist stackAllFile if exists then error' $ stackAllFile ++ " already exists" else do+ let older =+ let molder = listToMaybe $ dropWhile (>= snap) allSnaps+ in maybe "" (\s -> showSnap s ++ " too old") molder writeFile stackAllFile $- "[versions]\n# reason comment\noldest = " ++ showSnap snap ++ "\n"+ "[versions]\n# " ++ older ++ "\noldest = " ++ showSnap snap ++ "\n" readOldestLTS :: IO (Maybe Snapshot) readOldestLTS = do
README.md view
@@ -9,7 +9,7 @@ `stack-all` runs `stack build` over recent Stackage LTS major versions and Nightly: by default currently: nightly, lts-16, ..., lts-11. -Note that stack-all will automatically use `stack-ltsXX.yaml`, even for older lts releases: eg say you have `stack-lts13.yaml` in your project, then it will also be used for building lts-12 (unless you have a `stack-lts12.yaml` config file of course).+Note that stack-all will automatically use `stack-ltsXX.yaml`, even for older lts releases: eg say you have `stack-lts13.yaml` in your project, then it will also be used for building lts-12 (unless you have a `stack-lts12.yaml` config file of course). (Other versioned stack.yaml filenames like stack-ghc-8.8.yaml are not supported currently.) You can specify the oldest working LTS for a project with `stack-all -o lts-13` or set it in a `.stack-all` file containing: ```
stack-all.cabal view
@@ -1,5 +1,5 @@ name: stack-all-version: 0.1.1+version: 0.1.2 synopsis: CLI tool for building across Stackage major versions description: Build your Haskell project over Stackage major versions.@@ -7,7 +7,7 @@ license-file: LICENSE author: Jens Petersen <juhpetersen@gmail.com> maintainer: Jens Petersen <juhpetersen@gmail.com>-copyright: 2020 Jens Petersen <juhpetersen@gmail.com>+copyright: 2020-2021 Jens Petersen <juhpetersen@gmail.com> category: Distribution homepage: https://github.com/juhp/stack-all bug-reports: https://github.com/juhp/stack-all/issues@@ -46,3 +46,5 @@ if impl(ghc >= 8.4) ghc-options: -Wmissing-export-lists -Wpartial-fields+ if impl(ghc >= 8.10)+ ghc-options: -Wunused-packages