From aa47e2462611d3cf66ec292f4f91ac537465fe66 Mon Sep 17 00:00:00 2001 From: Danila Danko Date: Mon, 16 Sep 2024 22:11:57 +0300 Subject: [PATCH 1/3] feat(cli): add the "--version" option --- eo-phi-normalizer/app/Main.hs | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/eo-phi-normalizer/app/Main.hs b/eo-phi-normalizer/app/Main.hs index 24eb6081..fbe5bc8b 100644 --- a/eo-phi-normalizer/app/Main.hs +++ b/eo-phi-normalizer/app/Main.hs @@ -38,6 +38,7 @@ import Data.List (intercalate, isPrefixOf) import Data.Maybe (fromMaybe) import Data.Text.Internal.Builder (toLazyText) import Data.Text.Lazy as TL (unpack) +import Data.Version (showVersion) import Data.Yaml (decodeFileThrow) import GHC.Generics (Generic) import Language.EO.Phi (Binding (..), Bytes (Bytes), Object (..), Program (Program), parseProgram, printTree) @@ -59,6 +60,7 @@ import Language.EO.Phi.ToLaTeX import Main.Utf8 import Options.Applicative hiding (metavar) import Options.Applicative qualified as Optparse (metavar) +import Paths_eo_phi_normalizer (version) import PyF (fmt, fmtTrim) import System.Directory (createDirectoryIfMissing, doesFileExist) import System.FilePath (takeDirectory) @@ -375,10 +377,10 @@ cli = <> command commandNames.printRules commandParserInfo.printRules ) -cliOpts :: ParserInfo CLI -cliOpts = +cliOpts :: String -> ParserInfo CLI +cliOpts version = info - (cli <**> helper) + (cli <**> helper <**> simpleVersioner version) (fullDesc <> progDesc "Work with PHI expressions.") data StructuredJSON = StructuredJSON @@ -520,7 +522,7 @@ wrapRawBytesIn = \case main :: IO () main = withUtf8 do - opts <- customExecParser pprefs cliOpts + opts <- customExecParser pprefs (cliOpts (showVersion version)) let printAsProgramOrAsObject = \case Formation bindings' -> printTree $ Program bindings' x -> printTree x From ceacfee502f69a5a48583817e9ff954751a27b5f Mon Sep 17 00:00:00 2001 From: Danila Danko Date: Fri, 4 Oct 2024 00:15:58 +0500 Subject: [PATCH 2/3] refactor(normalizer): rename argument to make stack happy --- eo-phi-normalizer/app/Main.hs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eo-phi-normalizer/app/Main.hs b/eo-phi-normalizer/app/Main.hs index fbe5bc8b..b79d0920 100644 --- a/eo-phi-normalizer/app/Main.hs +++ b/eo-phi-normalizer/app/Main.hs @@ -378,9 +378,9 @@ cli = ) cliOpts :: String -> ParserInfo CLI -cliOpts version = +cliOpts version' = info - (cli <**> helper <**> simpleVersioner version) + (cli <**> helper <**> simpleVersioner version') (fullDesc <> progDesc "Work with PHI expressions.") data StructuredJSON = StructuredJSON From f450625cb90a31a71f4e0ceb88348019b1cc05cb Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 3 Oct 2024 19:22:10 +0000 Subject: [PATCH 3/3] Update Markdown files --- site/docs/src/contributing.md | 2 ++ site/docs/src/normalizer.md | 1 + 2 files changed, 3 insertions(+) diff --git a/site/docs/src/contributing.md b/site/docs/src/contributing.md index 076066ae..56d41bbe 100644 --- a/site/docs/src/contributing.md +++ b/site/docs/src/contributing.md @@ -53,6 +53,7 @@ Usage: normalizer COMMAND Available options: -h,--help Show this help text + --version Show version information Available commands: transform Transform a PHI program. @@ -75,6 +76,7 @@ Usage: normalizer COMMAND Available options: -h,--help Show this help text + --version Show version information Available commands: transform Transform a PHI program. diff --git a/site/docs/src/normalizer.md b/site/docs/src/normalizer.md index 3f928f70..b07c2be8 100644 --- a/site/docs/src/normalizer.md +++ b/site/docs/src/normalizer.md @@ -13,6 +13,7 @@ Usage: normalizer COMMAND Available options: -h,--help Show this help text + --version Show version information Available commands: transform Transform a PHI program.