Commit Graph

60 Commits

Author SHA1 Message Date
Simon Michael
091ec4e51f clarify that amount arithmetic does not handle multiple commodities 2011-04-22 13:44:08 +00:00
Simon Michael
137cc8292e amount cleanups 2011-01-19 23:27:11 +00:00
Simon Michael
b159f74a4c zero amounts have no sign or commodity, and amounts with different prices are aggregated, like ledger 2011-04-22 13:50:05 +00:00
Simon Michael
1c7ad7f421 parsing: more careful validation of eg leap years in transaction dates (only) 2011-04-22 13:55:42 +00:00
Simon Michael
33bedcbab0 parsing: infer a conversion price in unpriced two-commodity transactions 2011-01-20 00:18:54 +00:00
Simon Michael
d3663b818e parsing: better international number format support (#32)
This allows period and comma to be used for decimal point and digit group
separator or vice versa, and also flexible digit groups.  See
http://en.wikipedia.org/wiki/Decimal_separator .  Digit group separators
are possibly not worth the trouble and might not stay.
2011-01-19 12:32:18 +00:00
Simon Michael
dd9e78a67a reorganize tests 2010-12-27 20:26:22 +00:00
Simon Michael
e03ada3bd3 parsing: support @@ syntax specifying total price 2011-01-15 02:04:53 +00:00
Simon Michael
0d6e696699 some more tests and fixes for amount & price display precision 2010-11-14 23:29:04 +00:00
Simon Michael
811e71aba7 price precisions don't influence display precision; balancing is based on display precision (#23)
Like ledger, price amounts are now "unobserved", ie their precision does
not affect the canonical display precisions used when displaying amounts,
and transaction balancing is done based on display precision, ie amounts
are considered to balance if their sum appears to be zero when using the
canonical display precision.
2010-11-14 22:44:37 +00:00
Simon Michael
1551a6914b still more amount display helpers 2010-11-13 15:10:06 +00:00
Simon Michael
e707f97847 parsing: parse transaction and posting metadata, though we don't use it yet 2010-11-13 22:17:32 +00:00
Simon Michael
17d5acf64b refactor: more reader cleanups 2010-11-15 07:18:35 +00:00
Simon Michael
4e672f1722 comments 2010-11-19 17:25:39 +00:00
Simon Michael
d6c2cf6a90 parsing: save final parse context with journal 2010-11-13 15:03:40 +00:00
Simon Michael
7714bab58d web: offer a choice of files to edit when there are multiple (included) files 2010-09-24 01:56:11 +00:00
Simon Michael
78db98366f parsing: support D default commodity directive 2010-11-12 23:54:21 +00:00
Simon Michael
8429df0f32 remember all included file paths, if any 2010-09-22 23:02:19 +00:00
Simon Michael
96036e56a0 docs: comments 2010-09-22 21:51:25 +00:00
Simon Michael
c42496b134 sign testing for amounts 2010-07-27 23:20:20 +00:00
Simon Michael
53ab61ea89 docs: haddock 2010-08-03 17:05:02 +00:00
Simon Michael
be94326a03 fix a build error with parsec 3 (#22) 2010-08-12 14:37:11 +00:00
Simon Michael
70bd8bb569 tools: handy monadic trace 2010-09-03 23:20:59 +00:00
Simon Michael
0ea8a67c68 type signature 2010-09-05 16:05:38 +00:00
Simon Michael
d29b393ca2 fix a failing test, handle unicode better in errors 2010-09-05 18:18:50 +00:00
Simon Michael
4cd85ec767 encoded platform string helpers 2010-09-05 18:17:24 +00:00
Simon Michael
ce7e155934 parsing: fix obscured date parse errors with parsec 3; require split
With parsec 3, invalid date errors were not being reported properly.
This should be more robust.
2010-09-03 23:22:58 +00:00
Simon Michael
cf62482102 web: show start and end dates of current filter period in heading, if any 2010-08-01 00:15:21 +00:00
Simon Michael
4120a874d8 test zero to 8 instead of 10 places, workaround for rounding error affecting a real-world transaction 2010-05-25 22:17:54 +00:00
Simon Michael
d52283f314 when reporting a balancing error, convert the error amount to cost 2010-05-25 22:18:36 +00:00
Simon Michael
586c824cac display non-simple commodity names with double-quotes
This ensures print's output remains parseable. The other commands also
double-quote them, for consistency, like c++ ledger.
2010-05-27 01:38:23 +00:00
Simon Michael
4f49094088 refactor: date spans, commodities 2010-07-11 18:56:36 +00:00
Simon Michael
e499efce77 type signature 2010-07-11 22:17:48 +00:00
Simon Michael
b5d1ebba30 print, register, balance: fix layout with mixed-commodity amounts 2010-07-11 22:51:36 +00:00
Simon Michael
7d7159609b refactor: much renaming of ledger -> journal, hopefully the right amount 2010-07-13 06:30:06 +00:00
Simon Michael
73572e2d85 balance: with --flat, --drop N elides leading account name components. Feature or frill ? 2010-05-24 20:45:48 +00:00
Simon Michael
1ec1f7c4ea more file reading cleanup, try each known format in turn
Currently this is just the journal and timelog file formats.  This is more
scalable, but when things go wrong there is no longer just a single parse
error. For now we'll just show the first error, the one from the journal
file parser.
2010-05-31 01:15:18 +00:00
Simon Michael
a848a835a2 clean up and combine I/O and parsing under Hledger.Read.*
This facilitates adding readers for new data formats. Timelog parsing is temporarily broken.
2010-05-30 19:11:58 +00:00
Simon Michael
f168124501 parsing: allow - before commodity symbol as well (also fixes a convert bug) 2010-05-26 23:44:08 +00:00
Simon Michael
b97d2690de parsing: more robust double-quoted commodities - anything but a space or newline or double quote 2010-05-27 01:31:50 +00:00
Simon Michael
3305141206 parsing: allow spaces in double-quoted commodity symbols 2010-05-27 00:56:35 +00:00
Simon Michael
856f1f965a docs: hledger-lib module haddock updates 2010-05-27 03:58:47 +00:00
Simon Michael
a048705542 doc: comment 2010-04-14 16:19:01 +00:00
Simon Michael
331ed6b407 refactor: cleanup 2010-04-14 21:37:03 +00:00
Simon Michael
b19b02962a parsing: date parsing overhaul, don't exit on bad dates
- get rid of undefined parse errors due to guard
- don't call error from date parsers; let add re-prompt on bad dates
- years now must always have at least four digits
- clearer date parse errors
2010-04-14 21:49:34 +00:00
Simon Michael
f46cf82bed parsing: simpler high-level parse error message 2010-04-15 16:14:50 +00:00
Simon Michael
bba4a32339 print: negative account patterns now exclude transactions containing any posting to a matched account 2010-04-15 23:08:27 +00:00
Simon Michael
65cf381dbc parsing: timelog entries now generate balanced transactions, using virtual postings 2010-05-23 18:54:14 +00:00
Simon Michael
be30aac3f5 fix an occasional stack overflow error due to infinite recursion in Posting/Transaction equality tests
This was happening with balance command on certain timelog entries, since 0.8.
Now, when testing two postings for equality, their parent transaction's identity is ignored.
2010-05-22 00:45:35 +00:00
Simon Michael
91b7736a8b include file name in a journal's string representation 2010-05-23 22:15:08 +00:00