mirror of
https://github.com/simonmichael/hledger.git
synced 2025-01-04 08:13:20 +03:00
4576f8effd
POSIXTime. This eliminates old-time, which has been deprecated for a while, from our dependencies. This introduces a slight incompatibility, as a small number of functions now take/return POSIXTime instead of ClockTime. Generally you will be using the current time, in which case you should use getPOSIXTime from Data.Time.Clock.POSIX instead of getClockTime. utcTimeToClockTime has been removed, as it is now equivalent to utcTimeToPOSIXSeconds from Data.Time.Clock.POSIX.
183 lines
4.9 KiB
YAML
183 lines
4.9 KiB
YAML
name: hledger-lib
|
|
version: 1.22.99
|
|
synopsis: A reusable library providing the core functionality of hledger
|
|
description: |
|
|
A reusable library containing hledger's core functionality.
|
|
This is used by most hledger* packages so that they support the same
|
|
common file formats, command line options, reports etc.
|
|
|
|
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
|
|
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
|
|
- test/unittest.hs
|
|
- test/doctests.hs
|
|
|
|
#data-files:
|
|
|
|
dependencies:
|
|
- base >=4.11 && <4.16
|
|
- base-compat-batteries >=0.10.1 && <0.12
|
|
- aeson >=1
|
|
- aeson-pretty
|
|
- ansi-terminal >=0.9
|
|
- array
|
|
- blaze-markup >=0.5.1
|
|
- bytestring
|
|
- call-stack
|
|
- cmdargs >=0.10
|
|
- containers >=0.5.9
|
|
- cassava
|
|
- cassava-megaparsec
|
|
- data-default >=0.5
|
|
- Decimal >=0.5.1
|
|
- directory
|
|
- file-embed >=0.0.10
|
|
- filepath
|
|
- hashtables >=1.2.3.1
|
|
- megaparsec >=7.0.0 && <9.2
|
|
- microlens >=0.4
|
|
- mtl >=2.2.1
|
|
- parser-combinators >=0.4.0
|
|
- pretty-simple >4 && <5
|
|
- regex-tdfa
|
|
- safe >=0.2
|
|
- tabular >=0.2
|
|
- tasty >=1.2.3
|
|
- tasty-hunit >=0.10.0.2
|
|
- template-haskell
|
|
- text >=1.2
|
|
- time >=1.5
|
|
- timeit
|
|
- transformers >=0.2
|
|
- unordered-containers >=0.2
|
|
- uglymemo
|
|
- utf8-string >=0.3.5
|
|
- extra >=1.6.3
|
|
- Glob >= 0.9
|
|
# for ledger-parse:
|
|
#- parsers >=0.5
|
|
#- system-filepath
|
|
#- trifecta >=0.91
|
|
|
|
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.Read.InputOptions
|
|
- Hledger.Data.Journal
|
|
- Hledger.Data.Json
|
|
- Hledger.Data.Ledger
|
|
- 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.Data.Valuation
|
|
- 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.AccountTransactionsReport
|
|
- Hledger.Reports.BalanceReport
|
|
- Hledger.Reports.BudgetReport
|
|
- Hledger.Reports.EntriesReport
|
|
- Hledger.Reports.MultiBalanceReport
|
|
- Hledger.Reports.PostingsReport
|
|
- 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
|
|
|
|
# "cabal test hledger-lib" currently fails, see doctest suite below
|
|
tests:
|
|
|
|
unittest:
|
|
buildable: true
|
|
source-dirs: test
|
|
main: unittest.hs
|
|
other-modules: [] # prevent double compilation, https://github.com/sol/hpack/issues/188
|
|
dependencies:
|
|
- hledger-lib
|
|
|
|
# Note when run by cabal, doctest requires a ghc environment file,
|
|
# so we ensure this is generated, see cabal.project.
|
|
# https://github.com/simonmichael/hledger/issues/1139
|
|
doctest:
|
|
source-dirs: test
|
|
main: doctests.hs # can't call it doctest.hs ("File name does not match module name")
|
|
other-modules: [] # prevent double compilation, https://github.com/sol/hpack/issues/188
|
|
dependencies:
|
|
# prefer the latest doctest
|
|
- doctest >=0.18.1
|
|
- Glob >=0.7
|
|
|
|
# disable doctest with GHC 9 for now, https://github.com/sol/doctest/issues/301
|
|
when:
|
|
- condition: impl(ghc >= 9.0)
|
|
buildable: false
|
|
|
|
# ghc 8.4+ on mac needs this workaround. See
|
|
# https://github.com/sol/doctest/issues/199
|
|
# https://ghc.haskell.org/trac/ghc/ticket/15105#comment:10 :
|
|
# ~$ locate HSinteger-gmp-1.0.2.0.o
|
|
# /Users/simon/.stack/programs/x86_64-osx/ghc-8.4.3/lib/ghc-8.4.2/integer-gmp-1.0.2.0/HSinteger-gmp-1.0.2.0.o
|
|
# ~$ mv /Users/simon/.stack/programs/x86_64-osx/ghc-8.4.3/lib/ghc-8.4.2/integer-gmp-1.0.2.0/HSinteger-gmp-1.0.2.0.o{,_DISABLE_GHC_ISSUE_15105}
|
|
# Should probably disable it by default:
|
|
#when:
|
|
# - condition: os(darwin) && impl(ghc >= 8.4)
|
|
# buildable: false
|