hledger/hledger-lib/package.yaml

180 lines
4.0 KiB
YAML

name: hledger-lib
version: '1.10.99'
synopsis: Core data types, parsers and functionality for the hledger accounting tools
description: |
This is a reusable library containing hledger's core functionality.
hledger is a cross-platform program for tracking money, time, or
any other commodity, using double-entry accounting and a simple,
editable file format. It is inspired by and largely compatible
with ledger(1). hledger provides command-line, curses and web
interfaces, and aims to be a reliable, practical tool for daily
use.
category: Finance
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==7.10.3, GHC==8.0.2, GHC==8.2.2, GHC==8.4.1
extra-source-files:
- CHANGES
- README
- hledger_csv.5
- hledger_csv.txt
- hledger_csv.info
- hledger_journal.5
- hledger_journal.txt
- hledger_journal.info
- hledger_timedot.5
- hledger_timedot.txt
- hledger_timedot.info
- hledger_timeclock.5
- hledger_timeclock.txt
- hledger_timeclock.info
#data-files:
dependencies:
- base >=4.8 && <4.12
- base-compat-batteries >=0.10.1 && <0.11
- ansi-terminal >=0.6.2.3
- array
- blaze-markup >=0.5.1
- bytestring
- cmdargs >=0.10
- containers
- csv
- data-default >=0.5
- Decimal
- deepseq
- directory
- filepath
- hashtables >=1.2.3.1
- megaparsec >=6.4.1
- mtl
- mtl-compat
- old-time
- parsec >=3
- parser-combinators >=0.4.0
- pretty-show >=1.6.4
- regex-tdfa
- safe >=0.2
- split >=0.1
- tabular >=0.2
- text >=1.2
- time >=1.5
- transformers >=0.2
- uglymemo
- utf8-string >=0.3.5
- HUnit
- extra
- Glob >= 0.9
# for ledger-parse:
#- parsers >=0.5
#- system-filepath
#- trifecta >=0.91
when:
- condition: (!impl(ghc >= 8.0))
dependencies:
- semigroups == 0.18.*
ghc-options:
- -Wall
- -fno-warn-unused-do-bind
- -fno-warn-name-shadowing
- -fno-warn-missing-signatures
- -fno-warn-type-defaults
- -fno-warn-orphans
source-dirs:
#- other/ledger-parse
- .
library:
exposed-modules:
- Hledger
- Hledger.Data
- Hledger.Data.Account
- Hledger.Data.AccountName
- Hledger.Data.Amount
- Hledger.Data.Commodity
- Hledger.Data.Dates
- Hledger.Data.Journal
- Hledger.Data.Ledger
- Hledger.Data.MarketPrice
- Hledger.Data.Period
- Hledger.Data.PeriodicTransaction
- Hledger.Data.StringFormat
- Hledger.Data.Posting
- Hledger.Data.RawOptions
- Hledger.Data.Timeclock
- Hledger.Data.Transaction
- Hledger.Data.TransactionModifier
- Hledger.Data.Types
- Hledger.Query
- Hledger.Read
- Hledger.Read.Common
- Hledger.Read.CsvReader
- Hledger.Read.JournalReader
# - Hledger.Read.LedgerReader
- Hledger.Read.TimedotReader
- Hledger.Read.TimeclockReader
- Hledger.Reports
- Hledger.Reports.ReportOptions
- Hledger.Reports.ReportTypes
- Hledger.Reports.BalanceHistoryReport
- Hledger.Reports.BalanceReport
- Hledger.Reports.BudgetReport
- Hledger.Reports.EntriesReport
- Hledger.Reports.MultiBalanceReports
- Hledger.Reports.PostingsReport
- Hledger.Reports.TransactionsReports
- Hledger.Utils
- Hledger.Utils.Color
- Hledger.Utils.Debug
- Hledger.Utils.Parse
- Hledger.Utils.Regex
- Hledger.Utils.String
- Hledger.Utils.Test
- Hledger.Utils.Text
- Hledger.Utils.Tree
- Hledger.Utils.UTF8IOCompat
- Text.Tabular.AsciiWide
# other-modules:
# - Ledger.Parser.Text
tests:
doctests:
main: doctests.hs
source-dirs: tests
dependencies:
- doctest >=0.8
- Glob >=0.7
# doctest with ghc 8.4 on mac requires a workaround, but we'll leave it enabled
# https://ghc.haskell.org/trac/ghc/ticket/15105#comment:10
# https://github.com/sol/doctest/issues/199
# when:
# - condition: impl(ghc >= 8.4) && os(darwin)
# buildable: false
hunittests:
main: hunittests.hs
source-dirs: tests
dependencies:
- hledger-lib
- test-framework
- test-framework-hunit
easytests:
main: easytests.hs
source-dirs: tests
dependencies:
- hledger-lib
- easytest