aboutsummaryrefslogtreecommitdiffstats
path: root/common/src/Version.hs
diff options
context:
space:
mode:
authorLibravatar Alexander Foremny <aforemny@posteo.de>2025-02-20 12:29:35 +0100
committerLibravatar Alexander Foremny <aforemny@posteo.de>2025-02-20 18:36:23 +0100
commitcaf72faccc04e647c27e1b5eef85c515949d8210 (patch)
treeec32dda7b87c12712307d2d101368fed5888d4b9 /common/src/Version.hs
parent3c64b52017e7c16da0d017c033c77eee5d7a4340 (diff)
consolidate `backend, cli, common` -> `acms`
Diffstat (limited to 'common/src/Version.hs')
-rw-r--r--common/src/Version.hs47
1 files changed, 0 insertions, 47 deletions
diff --git a/common/src/Version.hs b/common/src/Version.hs
deleted file mode 100644
index 6970968..0000000
--- a/common/src/Version.hs
+++ /dev/null
@@ -1,47 +0,0 @@
-module Version
- ( Version (..),
- versionToString,
- versionFromText,
- versionFromString,
- )
-where
-
-import Data.Aeson qualified as A
-import Data.Aeson.Types qualified as A
-import Data.Function (on)
-import Data.List
-import Data.List.Split
-import Data.Maybe (fromMaybe)
-import Data.String (IsString (..))
-import Data.Text qualified as T
-
-data Version = Version Int Int Int
- deriving (Show, Eq)
-
-instance Ord Version where
- compare = compare `on` toTriple
-
-toTriple :: Version -> (Int, Int, Int)
-toTriple (Version major minor patch) = (major, minor, patch)
-
-instance A.ToJSON Version where
- toJSON = A.toJSON . versionToString
-
-instance A.FromJSON Version where
- parseJSON (A.String (versionFromText -> Just version)) = pure version
- parseJSON v = A.typeMismatch "version" v
-
-versionToString :: Version -> String
-versionToString (Version major minor patch) =
- intercalate "." (map show [major, minor, patch])
-
-versionFromString :: String -> Maybe Version
-versionFromString (map read . splitOn "." -> [major, minor, patch]) =
- Just (Version major minor patch)
-versionFromString _ = Nothing
-
-versionFromText :: T.Text -> Maybe Version
-versionFromText = versionFromString . T.unpack
-
-instance IsString Version where
- fromString = fromMaybe (error "") . versionFromString