on master help sign in
move toPossibleBumps to separate module for use in Publish
commitaa46422148876be0e19af13b559367c8a4a9b642 authorEvan Czaplicki <evancz@users.noreply.github.com> dateTue 4 Jun 2019, 11:29 (7 years ago) parent3973751
2 files changed+39−28
builder/src/Deps/Bump.hs+37 terminal/src/Bump.hs+2−28
builder/src/Deps/Bump.hsnew file+37
@@ -0,0 +1,37 @@
1+module Deps.Bump
2+ ( getPossibilities
3+ )
4+ where
5+
6+
7+import qualified Data.List as List
8+
9+import qualified Deps.Registry as Registry
10+import qualified Elm.Magnitude as M
11+import qualified Elm.Version as V
12+
13+
14+
15+-- GET POSSIBILITIES
16+
17+
18+getPossibilities :: Registry.KnownVersions -> [(V.Version, V.Version, M.Magnitude)]
19+getPossibilities (Registry.KnownVersions latest previous) =
20+ let
21+ allVersions = reverse (latest:previous)
22+ minorPoints = map last (List.groupBy sameMajor allVersions)
23+ patchPoints = map last (List.groupBy sameMinor allVersions)
24+ in
25+ (latest, V.bumpMajor latest, M.MAJOR)
26+ : map (\v -> (v, V.bumpMinor v, M.MINOR)) minorPoints
27+ ++ map (\v -> (v, V.bumpPatch v, M.PATCH)) patchPoints
28+
29+
30+sameMajor :: V.Version -> V.Version -> Bool
31+sameMajor (V.Version major1 _ _) (V.Version major2 _ _) =
32+ major1 == major2
33+
34+
35+sameMinor :: V.Version -> V.Version -> Bool
36+sameMinor (V.Version major1 minor1 _) (V.Version major2 minor2 _) =
37+ major1 == major2 && minor1 == minor2
terminal/src/Bump.hs+2−28
@@ -1,13 +1,13 @@
11{-# LANGUAGE OverloadedStrings #-}
22module Bump
33 ( run
4− , toPossibleBumps
54 )
65 where
76
87
98import qualified Data.List as List
109
10+import qualified Deps.Bump as Bump
1111import qualified Deps.Diff as Diff
1212import qualified Deps.Registry as Registry
1313import qualified Elm.Details as Details
@@ -83,7 +83,7 @@ bump env@(Env root _ _ registry outline) =
8383 Just knownVersions ->
8484 let
8585 bumpableVersions =
86− map (\(old, _, _) -> old) (toPossibleBumps knownVersions)
86+ map (\(old, _, _) -> old) (Bump.getPossibilities knownVersions)
8787 in
8888 if elem vsn bumpableVersions
8989 then suggestVersion env pkgOutline
@@ -96,32 +96,6 @@ bump env@(Env root _ _ registry outline) =
9696
9797
9898
99−-- VALID BUMPS
100−
101−
102−toPossibleBumps :: Registry.KnownVersions -> [(V.Version, V.Version, M.Magnitude)]
103−toPossibleBumps (Registry.KnownVersions latest previous) =
104− let
105− allVersions = reverse (latest:previous)
106− minorPoints = map last (List.groupBy sameMajor allVersions)
107− patchPoints = map last (List.groupBy sameMinor allVersions)
108− in
109− (latest, V.bumpMajor latest, M.MAJOR)
110− : map (\v -> (v, V.bumpMinor v, M.MINOR)) minorPoints
111− ++ map (\v -> (v, V.bumpPatch v, M.PATCH)) patchPoints
112−
113−
114−sameMajor :: V.Version -> V.Version -> Bool
115−sameMajor (V.Version major1 _ _) (V.Version major2 _ _) =
116− major1 == major2
117−
118−
119−sameMinor :: V.Version -> V.Version -> Bool
120−sameMinor (V.Version major1 minor1 _) (V.Version major2 minor2 _) =
121− major1 == major2 && minor1 == minor2
122−
123−
124−
12599-- CHECK NEW PACKAGE
126100
127101