Simon Michael
869ff2528a
accept normal simple date syntax in posting dates, give an error on bad date syntax here
2012-12-06 03:23:56 +00:00
Simon Michael
20e68f23a8
support effective dates on postings as well
...
We now preserve all dates while reporting, instead of overwriting one with the other.
2012-12-06 02:41:37 +00:00
Simon Michael
ccbc071289
more cleanup, fix duplicate tag display
2012-12-06 02:09:53 +00:00
Simon Michael
27621515ea
bal, reg: use posting date if specified, clarify posting effective date not yet supported
2012-12-06 01:10:15 +00:00
Simon Michael
dfeafa6064
export accountBalanceHistory
2012-12-06 01:09:12 +00:00
Simon Michael
e75abc4625
parse posting dates, better comment/tag handling, begin using HTF for unit testing
2012-12-06 00:28:23 +00:00
Simon Michael
4aafeb32e6
refactor: clean up Posting construction
2012-12-06 00:03:07 +00:00
Simon Michael
26ad56e1b2
untested accountBalanceHistory calculator
2012-12-05 23:52:46 +00:00
Simon Michael
0913e54e93
94: fix a regression with non-flat balance report, caused by previous fix
...
Correct in all cases now, hopefully.
2012-12-05 23:51:42 +00:00
Simon Michael
51a8adf273
regexSplit, ptrace (parsec trace) utilities
2012-12-05 23:49:50 +00:00
Simon Michael
f54e3299b9
94: fix 0.19 regression showing wrong total balance with balance --flat
...
and distinguish better between account depth and item indent level
2012-12-04 01:07:04 +00:00
Joachim Breitner
f0372bdd93
Also parse ! as a modifier, like *
2012-12-03 21:38:05 +00:00
Simon Michael
157c85a915
move stripbrackets to Utils
2012-12-04 00:03:42 +00:00
Simon Michael
6eda8c4bbf
csv reader: append ".rules" to the original file name instead of replacing its extension
2012-11-26 01:56:39 +00:00
Simon Michael
afb4fb0356
csv reader: parse parenthesised amounts as negative
2012-11-26 01:56:01 +00:00
Simon Michael
8b4a99c4d5
79: convert: add a skip-lines directive (Magnus Henoch)
2012-11-18 18:21:52 +00:00
Simon Michael
5c972ef00c
more correct debug util name
2012-11-19 21:17:43 +00:00
Simon Michael
79f0e98186
tools: fix haddock generation (web excluded)
2012-11-19 23:36:36 +00:00
Simon Michael
4248df5c6f
clarify historical price field and tests
2012-11-20 00:27:43 +00:00
Simon Michael
1c6a7d8a6f
rename the commodityless amount constructor to num
2012-11-20 02:22:20 +00:00
Simon Michael
45d4a38cc7
refactor: setAmountPrecision -> withPrecision
2012-11-19 23:24:04 +00:00
Simon Michael
64180b18ef
refactor: clarify that price amounts have only a single commodity
2012-11-19 23:17:55 +00:00
Simon Michael
8c06553e3b
refactor: make amount price a non-maybe, reducing noise
2012-11-19 22:39:08 +00:00
Simon Michael
4567e91409
refactor: move amount display settings out of commodity, simplify amount construction
2012-11-19 21:20:10 +00:00
Simon Michael
cbc7661703
87: fix an arithmetic and transaction balancing bug with multiple total-priced amounts
2012-11-12 16:31:43 +00:00
Simon Michael
d2aa8ca6cb
note future debug tools
2012-11-15 17:46:48 +00:00
Simon Michael
1c1058be4e
70: ignore ledger's fixed lot price declarations
2012-11-17 02:40:27 +00:00
Simon Michael
28baf926f7
parsing: ignore ledger-style balance assertions ("= BAL" after a posting's amount)
2012-11-02 16:50:36 +00:00
Simon Michael
5b9c5459be
web: make hledger[-lib] compatible with all of yesod's language extensions
...
Useful when building all of hledger-web at once.
2012-11-14 17:25:02 +00:00
Simon Michael
00f22819ae
balance report speedup
...
This refactoring fixes an O(n^2) slowdown in the balance command with
large numbers of accounts. It's now speedy, and the implementation is
clearer. To facilitate this, the Account type now represents a tree of
accounts which can easily be traversed up or down (and/or flattened
into a list).
Benchmark on a 2010 macbook:
+-------------------------------------------++--------------+------------+--------+
| || before: | after: | |
| || hledger-0.18 | hledgeropt | ledger |
+===========================================++==============+============+========+
| -f data/100x100x10.journal balance || 0.21 | 0.07 | 0.09 |
| -f data/1000x1000x10.journal balance || 10.13 | 0.47 | 0.62 |
| -f data/1000x10000x10.journal balance || 40.67 | 0.67 | 1.01 |
| -f data/10000x1000x10.journal balance || 15.01 | 3.22 | 2.36 |
| -f data/10000x1000x10.journal balance aa || 4.77 | 4.40 | 2.33 |
+-------------------------------------------++--------------+------------+--------+
2012-10-21 17:18:18 +00:00
Simon Michael
2a4d89bb27
expose more utilities from CsvReader
2012-05-29 21:00:49 +00:00
Simon Michael
0b96a767b4
support tilde (~) in journal and rules file paths
2012-05-30 08:36:01 +00:00
Simon Michael
776ad2a098
remove ensureRulesFile debug trace
2012-05-30 08:36:34 +00:00
Simon Michael
ec2f35ef07
split up accountsReport unit tests
2012-05-30 11:23:03 +00:00
Simon Michael
e6de8df97f
balance: respect all query terms, not just acct
2012-05-30 11:24:08 +00:00
Simon Michael
34318906d8
register, print: fix reverse ordering of same-day transactions
2012-06-29 18:06:58 +00:00
Simon Michael
6ccecb6ae0
stats: list included journal files
2012-05-30 09:17:18 +00:00
Simon Michael
33b7c91e20
combine journal updates with foldl' instead of foldr
...
on general principles, even though it makes no measurable difference
2012-05-30 10:19:08 +00:00
Simon Michael
9a239789fa
apply journal updates in the order they were parsed, not the reverse (!)
...
Fixes the order of include files in stats command.
2012-05-30 10:16:37 +00:00
Simon Michael
9735d583d1
extra postingsReport test
2012-06-29 18:35:32 +00:00
Simon Michael
d4a897306c
combine command-line flags like --depth properly with non-flag query patterns
2012-06-29 22:36:30 +00:00
Simon Michael
5e944374de
web: don't auto-create a missing journal file at startup
2012-06-29 22:48:41 +00:00
Simon Michael
a6d93a164d
enable csv as a native data format (not yet obeying --rules-file)
2012-03-23 17:14:24 +00:00
Simon Michael
977fb2c3e8
make the utf8 IO compatibiity layer build on GHC 6.12.3, 7.0.4, 7.2.2, 7.4.1
2012-03-29 20:40:31 +00:00
Simon Michael
50068221c3
fix build warnings in all GHC versions
2012-03-29 21:19:35 +00:00
Simon Michael
18f8a5386a
docs: fix UTF8IOCompat haddock
2012-03-29 22:10:43 +00:00
Simon Michael
9ed8d8a8f6
docs: fix haddock hyperlink
2012-03-30 19:24:20 +00:00
Simon Michael
9b3486c14c
docs: fix incorrect haddock
2012-04-14 01:11:11 +00:00
Simon Michael
36534a9ef5
fix a misnamed var
2012-04-16 16:43:58 +00:00
Simon Michael
d30cd5847a
a simplistic cashflow statement to complete the trio
2012-04-17 17:32:56 +00:00
Simon Michael
b77ba66fb1
haddock fix
2012-05-15 01:51:14 +00:00
Simon Michael
294a350993
promote Hledger.Query to second level
2012-05-16 07:57:10 +00:00
Simon Michael
c1e8138609
more date utilities
2012-05-19 02:56:26 +00:00
Simon Michael
a03fd1d89f
fix haddock complaints
2012-05-27 18:20:18 +00:00
Simon Michael
9524e6d927
more metadata -> tag renaming in the parser
2012-05-28 00:24:49 +00:00
Simon Michael
1062e2f9a4
clean up reader selection, don't write a csv rules file on journal parse error
2012-05-28 18:40:36 +00:00
Simon Michael
88f69e12e2
fix Dates exports for hledger-web
2012-04-16 17:09:27 +00:00
Simon Michael
a5b3f072b4
update query parser's prefix list
2012-05-29 17:02:18 +00:00
Simon Michael
e0d2530ff5
fix double quote matching everything
2012-05-29 17:02:57 +00:00
Simon Michael
cb905a741c
new query by tag implementation
2012-05-28 00:27:55 +00:00
Simon Michael
2fb2aea056
rename metadata fields to tags
2012-05-27 22:59:06 +00:00
Simon Michael
3ee6a351f3
big query/tests/show refactoring
...
- use new query system for command line too, filterspec is no more
- move unit tests near the code they test, run them in bottom up order, add more
- more precise Show instances, used for debugging not ui
2012-05-27 18:14:20 +00:00
Simon Michael
1654776f4a
refactor test runner
2012-05-14 19:23:12 +00:00
Simon Michael
db4d853a3f
refactor: move readJournal'
2012-04-14 01:10:39 +00:00
Simon Michael
1b7ffe2e5a
fix for haddock
2012-05-14 17:22:12 +00:00
Simon Michael
2f28931d83
fix build warnings in hledger-lib
2012-05-06 20:42:34 +00:00
Simon Michael
68966fe43b
begin cleaning up Dates api, move firstJust
2012-04-16 16:44:41 +00:00
Simon Michael
56cf9b21cb
fix txn & posting comment parsing & printing; better unit tests
2012-05-15 01:49:05 +00:00
Simon Michael
a628964016
prepare to support full query expressions on command line
2012-05-16 08:31:06 +00:00
Simon Michael
1e2c2bb10c
hook up more tests, begin converting remaining reports to Query
2012-05-17 04:21:34 +00:00
Simon Michael
2feb36e57f
query cleanups
2012-05-17 16:02:22 +00:00
Simon Michael
ddda6705c0
put query parsers first
2012-05-16 08:28:02 +00:00
Simon Michael
a58a5f96ad
more robust comments & metadata, on postings too, and document as "tags"
2012-05-14 18:52:22 +00:00
Simon Michael
88212f26e8
simplify journal parser names
2012-05-09 15:34:05 +00:00
xiaoruoruo
ce83876700
metadata parse and show for transaction
2012-04-08 19:13:56 +00:00
Simon Michael
c010448935
drop little-used clashing Ledger accessors
2012-05-09 15:33:16 +00:00
xiaoruoruo
dafa764a07
filter by metadata tag
2012-04-08 20:43:48 +00:00
Simon Michael
b6b5c5ffaa
explicit exports for Transaction and Posting
2012-05-07 14:36:40 +00:00
Simon Michael
770136ec81
query tests cleanup
2012-05-17 14:59:38 +00:00
Simon Michael
08bbb832d0
more query cleanup
2012-05-16 07:50:22 +00:00
Simon Michael
e1b1b8bce8
rename Matcher to Query, simplify constructors
2012-05-16 07:12:49 +00:00
Simon Michael
8c7eea9ee0
make incomestatement respect options
2012-04-16 16:45:24 +00:00
Simon Michael
b4b2b67236
incomestatement: show revenue and expense accounts separately
2012-04-15 00:05:10 +00:00
Simon Michael
a27eb7c29f
more matcher -> query renaming
2012-05-16 07:37:24 +00:00
Simon Michael
a7ef0ba8dd
basic understanding of balance sheet vs. profit & loss accounts
2012-04-14 01:12:42 +00:00
Simon Michael
51977f32e9
Journal.hs explicit exports, haddockification
2012-04-13 22:24:55 +00:00
Simon Michael
04dc5aed10
explicit imports for Matching
2012-05-16 06:43:13 +00:00
Simon Michael
43d78398bb
Hledger.Data.Matching -> Hledger.Data.Query
2012-05-16 06:50:08 +00:00
Simon Michael
8492f6cae4
fix unicode handling on GHC >= 7.2, unify utf8 IO compatibility layer
...
tests pass again from GHC 6.12.3 to 7.4.1
2012-03-29 19:06:31 +00:00
Simon Michael
d4451ce5e3
read system cleanup, require conversion rules from a file to simplify API
2012-03-24 18:08:11 +00:00
Simon Michael
00a43cd1bf
Hledger.Cli.Format -> Hledger.Data.FormatStrings
2012-03-10 19:20:15 +00:00
Simon Michael
e396c0dc8d
push csv rule and format string types down
2012-03-24 01:58:34 +00:00
Simon Michael
fdb3677129
try only as many data readers as needed for a successful read
2012-03-23 17:13:30 +00:00
Simon Michael
6eb7ad28e1
refactor/beef up readJournal/readJournalFile
2012-03-23 16:21:41 +00:00
Simon Michael
4d7a809c4a
cleanups and early code for csv reader based on convert
2012-03-10 21:55:48 +00:00
Simon Michael
2e8cf1c7f2
reader code cleanups
2012-03-10 18:13:32 +00:00
Simon Michael
120a9fd0e1
docs: readJournalFile haddock fix
2012-03-11 21:36:02 +00:00
Simon Michael
9bdb170a0a
inferred amounts use the cost commodity if known, like ledger ( #69 )
2012-01-03 08:15:48 +00:00
Simon Michael
470155dc63
docs: I don't think journalCanonicaliseAmounts affects price amounts
2012-01-03 08:17:04 +00:00
Simon Michael
41c1fa636a
parsing: -B/--cost now ignores P historical prices, like ledger
2012-01-22 20:39:11 +00:00