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
e973868995
bump version
2011-04-18 06:53:50 +00:00
Simon Michael
9f66549b5a
bump version to alpha
2011-01-21 01:27:39 +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
a85e9bf68b
fix hledger cabal file, cleanup
2010-09-10 01:45:12 +00:00
Simon Michael
631215d5d7
parsing: accept (but ignore) c++ ledger's C commodity conversion directive
2010-11-12 23:55:40 +00:00
Simon Michael
d7617fe154
parsing: ignore cleared flags at the start of postings, parse account name correctly
2010-11-13 20:20:04 +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
77519e2c1d
remove debug code breaking reports
2010-11-14 18:10:48 +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
a3a7a346ac
uniquify reader module names
2010-11-15 07:01:46 +00:00
Simon Michael
cc2e5419f2
lib: cabal fix
2010-11-15 23:26:04 +00:00
Simon Michael
4e672f1722
comments
2010-11-19 17:25:39 +00:00
Simon Michael
1daed8120e
bump all but chart to beta status
2010-11-26 19:59:23 +00:00
Simon Michael
15518da4ac
bump version
2010-12-06 18:37:10 +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
d132f5e45a
ledgerInclude cleanup
2010-09-22 21:52:04 +00:00
Simon Michael
9cb716d002
packagegeddon.. split off web/chart/vty, move hledger to a subdir
2010-09-09 22:54:34 +00:00
Simon Michael
314ff84fc1
installing: tighten up utf8-string dependency
2010-09-06 19:21:34 +00:00
Simon Michael
8052cb3364
bump version
2010-09-06 20:13:09 +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
Ben Boeckel
5e576e9ff0
fix-recursive-includes
...
Fix recursive includes beyond depth 3. Also add a test case for the bug.
2010-09-02 00:30:57 +00:00
Simon Michael
70bd8bb569
tools: handy monadic trace
2010-09-03 23:20:59 +00:00
Simon Michael
334974dedd
fix double error message output, clean up some ghc-version-specific imports
2010-09-03 23:39:11 +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
3531d4d54d
move split dependency to the right cabal file
2010-09-05 18:25:20 +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
58e74ec857
bump version
2010-09-05 22:46:24 +00:00
Simon Michael
a8ab0906fd
bump version
2010-07-25 21:26:24 +00:00
Simon Michael
3436a27e68
installing: require cabal 1.6 or greater, set source-repository url
2010-09-05 22:49:20 +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
0773dde872
web: ui cleanups, replace balance/register with combo view
2010-07-27 22:49:45 +00:00
Simon Michael
0e40a9deee
bump version
2010-07-17 22:02:47 +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
63de5e0127
parsing: fix wrong parse error locations within postings
2010-07-08 02:51:17 +00:00
Simon Michael
3e9ad0ae13
parsing: don't let trailing whitespace in a timelog description mess up layout
2010-07-08 03:08:28 +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
2f6b82122f
tweak journal file auto-creation, add tests
2010-07-17 00:45:12 +00:00
Simon Michael
aaf14ffda1
fix a cabal dependency issue
2010-07-14 07:08:20 +00:00
Simon Michael
eefb04abfe
auto-create missing journal files rather than giving an error
2010-07-13 19:36:43 +00:00
Simon Michael
4dac3af181
bump convertible-text dependency to relax time dependency
2010-07-17 20:35:25 +00:00
Simon Michael
f9005f8aee
installing: constrain hledger-lib's time dependency to suit current hledger+yesod
2010-07-10 13:56:23 +00:00
Simon Michael
02706b66e7
update version
2010-07-17 21:01:07 +00:00
Simon Michael
4d5683d0a1
tools: bump version to indicate work-in-progress/prerelease status
2010-07-09 02:12:29 +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
2a2b896c1d
webyesod: validate the journal before accepting an edit
2010-07-09 23:51:49 +00:00
Simon Michael
aa21f95b9e
webyesod: a destructive wiki-style edit form for journals
...
Warning: this is the first hledger feature which can alter your existing
journal data. You can now edit, or ERASE, the (top-level) journal file
through the web ui, and there is no access control. A numbered backup of
the file will be saved at each edit, in normal circumstances.
2010-07-09 23:00:04 +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
2f2e500eae
rename -fweb to -fweb610 and -fwebyesod to -fweb, misc cabal and docs cleanups
2010-07-10 13:58:35 +00:00
Simon Michael
8a64792ba7
smarter file reading: detect (or specify) intended data format and show appropriate error messages
...
New data reader modules need to provide just reader :: Reader, which is
the format name, a detector predicate, and a parser.
2010-06-25 14:56: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
a90d32ae78
hledger-lib requires safe
2010-04-14 22:38:54 +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
ea14c64b20
bump version
2010-05-19 20:11:36 +00:00
Simon Michael
81e9e720ea
bump (and fix) version
2010-04-15 15:07:44 +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
Simon Michael
a8d86fb5e5
web: fix loss of file path when reloading the journal
2010-05-23 22:24:30 +00:00
Simon Michael
bf5ee88a30
refactor: clarify the roles of Journal (primary data) and Ledger (derived report)
2010-05-23 17:41:25 +00:00
Simon Michael
70576e87d1
refactor: move post-parse processing into parseJournal
2010-05-22 23:35:34 +00:00
Simon Michael
10c0a9a958
refactor: take an axe to canonicaliseAmounts
2010-05-22 20:23:36 +00:00
Simon Michael
a430badb85
refactor: journalCloseTimeLogEntries
2010-05-22 19:00:20 +00:00
Simon Michael
11d354d426
refactor: renames and cleanups
2010-05-22 22:05:12 +00:00
Simon Michael
a3e5e7ce93
refactor: more ledger cleanup
2010-05-22 19:01:11 +00:00
Simon Michael
5982460782
refactor: clarify ledger construction a bit
2010-05-22 16:14:30 +00:00
Simon Michael
557746da5e
remove redundant imports revealed by ghc 6.12
2010-05-22 15:33:51 +00:00
Simon Michael
7d4593cee9
move Ledger.* to Hledger.Data.*
2010-05-19 23:08:53 +00:00
Simon Michael
5451e3ad40
parsing: balance real and balanced virtual postings separately, allow an amount-less balanced virtual posting
2010-04-14 16:59:02 +00:00
Simon Michael
77f64a7ddf
parsing: if there is no description, don't require a space after the transaction date
2010-04-15 20:44:04 +00:00
Simon Michael
4cd2364154
refactor
2010-02-27 17:50:25 +00:00
Simon Michael
6476d638f9
sumPostings should always preserve highest precision
2010-02-27 17:54:58 +00:00
Simon Michael
278e5dde64
amount display tests, fix a case where "auto" amount was displayed as 0
2010-03-09 04:11:23 +00:00
Simon Michael
3aa8613fa5
document some unsafe date parsing
2010-03-09 17:38:12 +00:00
Simon Michael
4973b82fb4
parsing: don't ignore trailing junk in a smart date, eg in web add form
2010-03-09 23:11:12 +00:00
Simon Michael
8daa9a33cd
refactor
2010-03-09 18:33:26 +00:00
Simon Michael
7b026ef6f4
parsing: allow transactions with empty descriptions
2010-03-10 01:25:02 +00:00
Simon Michael
a6b7ef597f
fix extra newline in balance error msg
2010-03-09 23:06:27 +00:00
Simon Michael
41b60bbcfc
when a transaction is unbalanced, show by how much; refactor
2010-02-27 18:06:29 +00:00
Simon Michael
723c96834c
tweak txn balancing error message
2010-03-09 18:34:20 +00:00
Simon Michael
5476a292ad
docs: haddock fixes
2010-03-13 00:17:47 +00:00
Simon Michael
d028e9eb17
refactor
2010-03-13 01:16:59 +00:00
Simon Michael
fd8ebd7c3d
parsing: more tests, ignore D, C directives; we should now accept any ledger 2.6 file
2010-03-13 01:10:10 +00:00
Simon Michael
8fd94ef6f5
refactor: parser cleanup
2010-03-12 23:46:20 +00:00
Simon Michael
dbb8576d8b
don't ignore unparsed text following an amount
2010-04-05 20:37:19 +00:00
Simon Michael
298d192678
register: fix a regression, register should not show posting comments
2010-02-15 20:33:49 +00:00
Simon Michael
e4cd127fc4
print: always show zero amounts as 0, hiding any commodity/decimal places/price, like ledger
2010-03-09 04:12:38 +00:00
Simon Michael
57c537de41
parsing: N, tag, end tag are now ignored; ledger sample.dat parses
2010-03-12 22:52:57 +00:00
Simon Michael
6977a0eecb
parsing: allow numbers in commodities if double-quoted, like ledger
2010-04-05 20:55:57 +00:00
Simon Michael
f92270dfa8
refactor: move parse tests
2010-03-11 17:16:03 +00:00
Simon Michael
903bf23afd
refactor
2010-03-09 04:03:51 +00:00
Simon Michael
eedf0b211a
refactor
2010-03-09 03:52:17 +00:00
Simon Michael
993972549a
refactor
2010-03-09 01:43:25 +00:00
Simon Michael
08607362b0
refactor assertParse/assertParseEqual
2010-03-10 19:48:46 +00:00
Simon Michael
f937f59276
assertParse now generates test failures
2010-03-10 19:17:32 +00:00
Simon Michael
b2c8933af4
parsing: show a better error for illegal month/day numbers in dates
2010-04-06 02:31:47 +00:00
Simon Michael
599398baa3
register: fix bad layout with years < 1000
2010-02-16 21:59:53 +00:00
Simon Michael
fad392e7e9
hledger-lib: docs update
2010-04-10 00:42:16 +00:00
Simon Michael
ca136dca7f
bump version
2010-04-10 00:51:06 +00:00
Simon Michael
1c46417bed
split off hledger-lib package, containing core types & utils
2010-03-22 01:44:59 +00:00