summaryrefslogtreecommitdiff
path: root/source/Version.hs
diff options
context:
space:
mode:
Diffstat (limited to 'source/Version.hs')
-rw-r--r--source/Version.hs22
1 files changed, 22 insertions, 0 deletions
diff --git a/source/Version.hs b/source/Version.hs
new file mode 100644
index 0000000..2293e3c
--- /dev/null
+++ b/source/Version.hs
@@ -0,0 +1,22 @@
+{-# LANGUAGE NoImplicitPrelude #-}
+
+
+module Version (info, infoBuilder) where
+
+import Data.Functor
+import Data.Semigroup
+import Data.Text (Text)
+import Data.Version
+import Paths_zf qualified as ZF
+import Text.Builder
+
+
+-- | Informational text about the version number (extracted from the cabal file).
+info :: Text
+info = run infoBuilder
+
+infoBuilder :: Builder
+infoBuilder = text "Version " <> versionToBuilder ZF.version
+
+versionToBuilder :: Version -> Builder
+versionToBuilder ver = intercalate (char '.') (decimal <$> versionBranch ver)