hledger/hledger-ui/package.yaml
Stephen Morgan 603b2e9f09 ref: Use ExceptT String IO a instead of IO (Either String a).
This increases composability and avoids some ugly case handling. We
re-export runExceptT in Hledger.Read.

The final return types of the following functions has been changed from
IO (Either String a) to ExceptT String IO a. If this causes a problem,
you can get the old behaviour by calling runExceptT on the output:
readJournal, readJournalFiles, readJournalFile

Or, you can use the easy functions readJournal', readJournalFiles', and
readJournalFile', which assume default options and return in the IO
monad.
2022-03-25 14:23:27 -10:00

105 lines
2.7 KiB
YAML

name : hledger-ui
version : 1.25.99
synopsis : Curses-style terminal interface for the hledger accounting system
description : |
A simple curses-style terminal user interface for the hledger accounting system.
It can be a more convenient way to browse your accounts than the CLI.
This package currently does not support Microsoft Windows, except in WSL.
hledger is a robust, cross-platform set of tools for tracking money,
time, or any other commodity, using double-entry accounting and a
simple, editable file format, with command-line, terminal and web
interfaces. It is a Haskell rewrite of Ledger, and one of the leading
implementations of Plain Text Accounting. Read more at:
<https://hledger.org>
category : Finance, Console
license : GPL-3
author : Simon Michael <simon@joyful.com>
maintainer : Simon Michael <simon@joyful.com>
github : simonmichael/hledger
homepage : http://hledger.org
bug-reports : http://bugs.hledger.org
stability : stable
tested-with: GHC==8.6.5, GHC==8.8.4, GHC==8.10.4, GHC==9.0.1
extra-source-files:
- CHANGES.md
- README.md
- hledger-ui.1
- hledger-ui.txt
- hledger-ui.info
#data-files:
flags:
threaded:
description: Build with support for multithreaded execution
manual: false
default: true
cpp-options: -DVERSION="1.25.99"
dependencies:
- hledger-lib >=1.25.99 && <1.26
- hledger >=1.25.99 && <1.26
- ansi-terminal >=0.9
- async
- base >=4.11 && <4.17
- cmdargs >=0.8
- containers >=0.5.9
- data-default
- directory
- doclayout >=0.3 && <0.4
- extra >=1.6.3
- filepath
- fsnotify >=0.2.1.2 && <0.4
- microlens >=0.4
- microlens-platform >=0.2.3.1
- megaparsec >=7.0.0 && <9.3
- mtl >=2.2.1
- process >=1.2
- safe >=0.2
- split >=0.1
- text >=1.2
- text-zipper >=0.4
- time >=1.5
- transformers
- vector
# not installable on windows, cf buildable flag below
- brick >=0.23
- vty >=5.15
- unix
when:
# curses is required to build terminfo for vty for hledger-ui.
# On POSIX systems it might be not present.
# On windows it's very likely not present, but possibly it could be.
# Ideally we'd like to
# on POSIX: give a clear error ("install your system libcurses-dev package") if not present
# on windows: quietly skip building if not present, build if it is present
# curses
# default: True
# description:
# For now, just don't build hledger-ui on windows
- condition: os(windows)
then:
buildable: false
else:
buildable: true
executables:
hledger-ui:
source-dirs: .
main: hledger-ui.hs
ghc-options:
-Wall
-fno-warn-unused-do-bind
-fno-warn-name-shadowing
-fno-warn-missing-signatures
-fno-warn-type-defaults
-fno-warn-orphans
when:
- condition: flag(threaded)
ghc-options: -threaded