Commit Graph

639 Commits

Author SHA1 Message Date
Simon Michael
414a33f3e4 merge changelog updates 2015-03-15 13:20:55 -07:00
Simon Michael
c47463332a allow utf8-string-1 (fix fpco/stackage/#426) 2015-03-15 11:06:53 -07:00
Simon Michael
adf10c238d update changelogs 2015-02-27 08:37:16 -08:00
Simon Michael
592ae9a28e timelog: show hours with 2 decimal places, not 1 2015-02-27 08:37:16 -08:00
Simon Michael
099a1de3b6 clarify built-in commodities rounding 2015-02-27 08:37:16 -08:00
Simon Michael
d2877a919a add some type signatures in Utils, helps ghci-web 2015-02-09 17:42:51 +00:00
Simon Michael
3d5b269b3d fix rendering of week 52 heading in weekly reports 2015-01-18 09:32:14 -08:00
Julien Moutinho
af56ced3b0 lib: add eof parsing checks 2015-01-11 09:45:55 -08:00
Simon Michael
fabf8a743d changelogs 2015-01-10 22:28:36 -08:00
Simon Michael
257ce57383 fix balance accumulation across assertions (#195)
A sequence of balance assertions asserting first one commodity, then
another, then the first again, was not working.
2015-01-10 22:17:19 -08:00
Simon Michael
6543f44d82 doc: forgot add release date to changelogs 2015-01-10 17:03:44 -08:00
Simon Michael
6da4942633 balance: tweak flags a bit; we now use -N and -T
-N doesn't seem to be used by Ledger currently; we'll
use it as shortcut for --no-total.

-T is used by Ledger to set a custom value expression for the final
total. I'm going to take it as a shortcut for --row-total instead.
2014-12-27 15:34:23 -08:00
Simon Michael
ba0623165f balance: row totals/averages in multicolumn mode 2014-12-27 15:24:45 -08:00
Simon Michael
e794412a8f fix JournalReader ctx warning 2014-12-27 15:24:02 -08:00
Simon Michael
9c68944c79 journal, csv: comment lines can also start with *
As in Ledger. This means you can embed emacs org/outline-mode nodes in
your journal file and manipulate it like an outline.
2014-12-27 14:41:28 -08:00
Simon Michael
a719cb8f6e bump version to 0.25-unreleased 2014-12-26 11:08:20 -08:00
Simon Michael
e77225038f bump version to 0.24 2014-12-25 11:42:39 -08:00
Simon Michael
62bad65e5b tighten up status: docs and behaviour a bit (fix #227)
A status: query term no longer accepts * as a synonym for 1,
which was a bit confusing since 1 matches both * and !.
For now, it takes a value of 1 (true) or anything else (false).
2014-12-24 23:48:23 -08:00
Simon Michael
c138c35d3b register: support date:/date2:/--date2 better (fix #201, #221, #222) 2014-12-24 16:11:30 -08:00
Simon Michael
d1404adf3f note lack of date2 support in (eg) postingsReport 2014-12-24 14:54:56 -08:00
Simon Michael
6780c63ab3 simplify null Date2 queries too 2014-12-24 14:54:56 -08:00
Simon Michael
77c2c90290 cli: parse date2: correctly (#222) 2014-12-24 14:54:56 -08:00
Simon Michael
68a4adb0bd doc: draft changelogs for all three packages 2014-12-21 12:01:11 -08:00
Julien Moutinho
c65fea2b4b lib: fix combineJournalUpdates folding order
NOTE: this is important to correctly build JournalContext
NOTE: currently a list reverse must done at the end,
      maybe using a Data.Queue would be more efficient.
2014-12-11 04:37:10 +01:00
Simon Michael
855d4e1131 balance: with --tree and --flat, use the last (fix #219) 2014-12-05 12:56:33 -08:00
Simon Michael
d352bbedd2 cli: with a repeated flag, the last takes precedence
This is helpful eg for customising your reporting command aliases on the fly.
2014-12-04 12:41:47 -08:00
Simon Michael
bd39e5df99 showDateSpan: handle boundary-crossing 1-day spans
Eg recognise that 2014/11/30-2014/12/1 can be abbreviated to
2014/11/30d, similarly 2014/12/31-2015/1/1. Doesn't handle feb 29th
correctly, so eg 2000/2/28-2000/3/1 is wrongly abbreviated to
2000/2/28d.
2014-12-03 18:18:05 -08:00
Simon Michael
1708f0b441 csv: try to preserve order of same-day transactions
If the CSV records appear to have been in reverse date order,
we'll now reverse them all before also sorting by transaction date,
so that the original order of same-day transactions is preserved.
We detect this using a simple heuristic: if the first converted
transaction's date is later than the last's.
2014-12-02 11:16:51 -08:00
Simon Michael
733a7b12ef csv: include path is relative to current (close #198) 2014-12-02 10:50:31 -08:00
Julien Moutinho
cf28985cf2 lib: move from Text.ParserCombinators.Parsec to Text.Parsec
NOTE: required to use liftIO in includedirective
SEE: http://www.vex.net/~trebla/haskell/parsec-generally.xhtml#IO
2014-11-20 10:08:30 +01:00
Simon Michael
23fb4ffd84 export failIfInvalidMonth/Day (fixes #216) 2014-10-30 07:58:15 -07:00
Simon Michael
a2612f17c6 tweak wording 2014-10-29 08:27:52 -07:00
Simon Michael
d25fe21834 apply all matching account aliases, not just one directive and one option 2014-10-29 08:20:27 -07:00
Simon Michael
9fa22e0398 account aliases (and regexReplace) now support backreferences 2014-10-29 07:46:49 -07:00
Simon Michael
69636f70fb extract debug helpers into a module 2014-10-28 18:40:22 -07:00
Gergely Risko
6e4a7dff8c Add support for ledger3 style multi-line comments 2014-10-26 19:20:46 +01:00
Simon Michael
e892fdc6d5 parsing: aliases now match by regular expression
alias match patterns (the part left of the =) are now case-insensitive
regular expressions matching anywhere in the account name. The
replacement string (the part right of the =) can replace multiple
matches within the account name. The replacement string does not yet
support any of the usual syntax like backreferences.
2014-10-24 15:05:10 -07:00
Simon Michael
be9b637e0c fix a regexReplaceCI bug 2014-10-24 15:04:21 -07:00
Simon Michael
bfedf367c4 export Regexp types, disambiguate CsvReader's 2014-10-24 14:30:49 -07:00
Simon Michael
f064ecf138 fix a splitAtElement bug with adjacent separators 2014-10-24 14:30:00 -07:00
Simon Michael
b6774f47a3 balance, print: add -o and CSV output here too
Not very elegant yet, but works.
2014-10-21 12:02:23 -07:00
Simon Michael
7f6cf1f849 balance, register, register-csv: depth 0 shows summary items (#206)
Previously, a depth:0 query produced an empty report (since there are no
level zero accounts). Now, it aggregates all data into one summary item
with account name "...".

This makes it easier to see the kind of data Gwern was looking for from
register-csv (net worth over time). Eg this shows one line per month
summarising the total of assets and liabilities:

hledger register-csv -- -MHE ^assets ^liabilities depth:0

Single and multi-column balance reports behave similarly.
2014-10-19 17:53:20 -07:00
Simon Michael
0620ec9840 fix redundant compilation in the hledger packages, at last
This seems to work well now with my haddock and GHC 7.8.
Not tested with GHC 7.6 though.
2014-10-19 09:37:18 -07:00
Simon Michael
e8a58d9388 cli: add a hidden --version+ flag showing number representation (#118) 2014-10-18 12:35:58 -07:00
Simon Michael
3b70362525 switch to Decimal for representing quantities (closes #118)
hledger has represented quantities with floating point (Double) until
now.  While this has been working fine in practice, the time has come to
upgrade our number representation to something more principled: Decimal,
for now. As a bonus, this brings a ~30% speed boost to most reports.

We'll keep the old representation(s) around for a while, selectable via
hledger-lib cabal flag, for research/testing/benchmarking purposes. To
build with the old Double representation: cabal install -fdouble
hledger-lib hledger hledger-web
2014-10-18 12:33:31 -07:00
Simon Michael
e888be0bf4 clarify similarAmountsOp doc 2014-10-18 10:45:17 -07:00
Simon Michael
2b39f68682 fix a warning in TransactionsReports 2014-10-18 10:32:01 -07:00
Simon Michael
84a90374b4 make build warnings consistent 2014-10-18 10:16:22 -07:00
gwern
d1618aaca8 strip trailing whitespace from all Haskell files 2014-10-14 18:48:24 -07:00
Simon Michael
22279978af revert an unnecessary "fix" in efe7c7a that broke tests 2014-09-13 21:28:48 -07:00