The latest version of hgrev is 0.2.6-0.
hgrev
Version 0.1.2 revision 2 uploaded by LukeHoersten.
Package meta
- Synopsis
- Compile Mercurial (hg) version info into Haskell code
- Description
- Overview
hgrev provides two modules: - Development.HgRev - Mercurial (hg) Haskell API - Development.HgRev.TH - Template Haskell splice to compile version info into Haskell code
Use
$(hgRevStateTH defFormat)
with Template Haskell enabled to insert the formatted version string.- Requirements
hgrev requires the hg binary is installed and available on the system. Development.HgRev.HgRev and Development.HgRev.HgState are obtained via two separate calls to hg because working directory state isn't available programmatically.
- Usage Example
module Example where import Data.Monoid ((<>)) import Data.Text (Text, pack) import Development.HgRev.TH (defFormat, hgRevStateTH, jsonFormat) import Options.Applicative (Parser, ParserInfo, execParser, fullDesc, help, helper, info, infoOption, long, progDesc, short) main :: IO () main = execParser parserInfo >> return () verSwitch :: Parser (a -> a) verSwitch = infoOption ("HG rev: " <> $(hgRevStateTH defFormat)) $ long "version" <> short 'v' <> help "Display version information" jsonSwitch :: Parser (a -> a) jsonSwitch = infoOption $(hgRevStateTH jsonFormat) $ long "json" <> short 'J' <> help "Display JSON version information" parserInfo :: ParserInfo (a -> a) parserInfo = info (helper <*> verSwitch <* jsonSwitch) fullDesc
Check out the gitrev package for similar git functionality.
- Author
- Luke Hoersten
- Bug reports
- https://github.com/LukeHoersten/hgrev/issues
- Category
- Development
- Copyright
- n/a
- Homepage
- https://github.com/LukeHoersten/hgrev
- Maintainer
- luke@hoersten.org
- Package URL
- n/a
- Stability
- n/a