packages feed

salve 0.0.7 → 0.0.8

raw patch · 3 files changed

+57/−1 lines, 3 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Salve: fromBaseVersion :: Version -> Version
+ Salve: toBaseVersion :: Version -> Version
+ Salve.Internal: fromBaseVersion :: Version -> Version
+ Salve.Internal: toBaseVersion :: Version -> Version

Files

library/Salve.hs view
@@ -181,6 +181,10 @@ isUnstable, isStable, +-- * Conversions+fromBaseVersion,+toBaseVersion,+ -- * Helpers bumpMajor, bumpMinor,
library/Salve/Internal.hs view
@@ -9,6 +9,7 @@ import qualified Data.Maybe as Maybe import qualified Data.Monoid as Monoid import qualified Data.Ord as Ord+import qualified Data.Version as Version import qualified Data.Word as Word import qualified Text.ParserCombinators.ReadP as ReadP @@ -398,6 +399,57 @@ -- Just False isStable :: Version -> Bool isStable v = not (isUnstable v)++-- | Converts from a 'Version.Version' from the @base@ package.+--+-- >>> renderVersion . fromBaseVersion $ Version.makeVersion [1, 2, 3]+-- "1.2.3"+--+-- Missing version components are set to zero.+--+-- >>> renderVersion . fromBaseVersion $ Version.makeVersion []+-- "0.0.0"+-- >>> renderVersion . fromBaseVersion $ Version.makeVersion [1]+-- "1.0.0"+-- >>> renderVersion . fromBaseVersion $ Version.makeVersion [1, 2]+-- "1.2.0"+--+-- Extra version components are ignored.+--+-- >>> renderVersion . fromBaseVersion $ Version.makeVersion [1, 2, 3, 4]+-- "1.2.3"+--+-- Tags are ignored.+--+-- >>> renderVersion . fromBaseVersion $ Version.Version [] ["ignored"]+-- "0.0.0"+fromBaseVersion :: Version.Version -> Version+fromBaseVersion v = case Version.versionBranch v of+  (m : n : p : _) -> mkV (fromIntegral m) (fromIntegral n) (fromIntegral p)+  (m : n : _) -> mkV (fromIntegral m) (fromIntegral n) 0+  (m : _) -> mkV (fromIntegral m) 0 0+  _ -> mkV 0 0 0++-- | Converts to a 'Version.Version' from the @base@ package.+--+-- >>> toBaseVersion <$> parseVersion "1.2.3"+-- Just (Version {versionBranch = [1,2,3], versionTags = []})+--+-- Pre-releases and builds are converted to tags.+--+-- >>> toBaseVersion <$> parseVersion "1.2.3-pre+build"+-- Just (Version {versionBranch = [1,2,3], versionTags = ["pre","build"]})+toBaseVersion :: Version -> Version.Version+toBaseVersion v = Version.Version+  (map fromIntegral+    [ versionMajor v+    , versionMinor v+    , versionPatch v+    ])+  (concat+    [ map renderPreRelease (versionPreReleases v)+    , map renderBuild (versionBuilds v)+    ])  -- | Increments the major version number. --
salve.cabal view
@@ -3,7 +3,7 @@ -- see: https://github.com/sol/hpack  name:           salve-version:        0.0.7+version:        0.0.8 synopsis:       Semantic version numbers and constraints. description:    Salve provides semantic version (SemVer) numbers and constraints (ranges). category:       Distribution