Commit Graph

574 Commits

Author SHA1 Message Date
Simon Michael
b3229d2c4e next cabal release will say "beta" ! 2008-11-23 22:30:36 +00:00
Simon Michael
564c218d61 dead code 2008-11-25 04:15:03 +00:00
tim
6fdaf2a248 Added showAmount' that shows only the number part of an amount 2008-11-23 21:26:38 +00:00
Simon Michael
770c2956a5 oops, maybe another piece of the Date/DateTime removal 2008-11-27 04:29:32 +00:00
Simon Michael
4d5478b334 haddock fix 2008-11-27 07:50:02 +00:00
Simon Michael
b4fed8f2fd docs 2008-12-04 19:32:30 +00:00
Simon Michael
e333c76d6f leaves utility 2008-12-04 19:32:42 +00:00
Simon Michael
eacea41dac when options are repeated, use the last instead of the first 2008-12-04 20:11:35 +00:00
Simon Michael
f794445451 update simplifyprof.hs 2008-12-05 00:37:47 +00:00
Simon Michael
6f6ce11ca8 more balance-calculating extraction 2008-12-05 08:26:13 +00:00
Simon Michael
eca112f7d4 extract common balance-calculating code 2008-12-05 05:09:54 +00:00
Simon Michael
76df6ec88f optimise cacheLedger by using the tree to help calculate account balances
from:

	total time  =        0.14 secs   (7 ticks @ 20 ms)
	total alloc = 275,520,536 bytes  (excludes profiling overheads)

     cacheLedger                                     1   0.0    0.1      42.9       48.6
      sumTransactions                                0   0.0    0.6      28.6       42.5
       isZeroAmount                              13529   0.0    2.0      14.3       39.2
        showAmount                               13529   0.0    7.2      14.3       37.2
         showAmount'                             13529  14.3   29.9      14.3       29.9
         con2tag_Side#                           27232   0.0    0.0       0.0        0.0
       normaliseMixedAmount                       6733   0.0    1.8      14.3        2.7
        con2tag_Side#                              120   0.0    0.0       0.0        0.0
        sumAmountsPreservingPrice                 6803   0.0    0.2      14.3        1.0
         amountop                                13351   0.0    0.4      14.3        0.8
          convertAmountTo                        13351  14.3    0.4      14.3        0.4
           conversionRate                        13351   0.0    0.0       0.0        0.0
      isAccountNamePrefixOf                      25122   0.0    2.0       0.0        2.0

to:

	total time  =        0.08 secs   (4 ticks @ 20 ms)
	total alloc = 168,637,964 bytes  (excludes profiling overheads)

     cacheLedger                                     1   0.0    0.1       0.0       27.1
      sumTransactions                                0   0.0    0.3       0.0       18.8
       isZeroAmount                               3931   0.0    0.9       0.0       17.3
        showAmount                                3931   0.0    3.4       0.0       16.3
         showAmount'                              3931   0.0   12.9       0.0       12.9
         con2tag_Side#                            7884   0.0    0.0       0.0        0.0
       normaliseMixedAmount                       1964   0.0    0.8       0.0        1.3
        con2tag_Side#                               12   0.0    0.0       0.0        0.0
        sumAmountsPreservingPrice                 1970   0.0    0.1       0.0        0.5
         amountop                                 3793   0.0    0.2       0.0        0.4
          convertAmountTo                         3793   0.0    0.2       0.0        0.2
           conversionRate                         3793   0.0    0.0       0.0        0.0
2008-12-05 03:31:45 +00:00
Simon Michael
b1f2d95e13 optimise summariseTransactionsInDateSpan like cacheLedger
makes summarised register reports faster
2008-12-05 03:32:41 +00:00
Simon Michael
63999d36fe allow --depth=0 in summarised register reports, to aggregate top-level accounts 2008-12-04 20:37:03 +00:00
Simon Michael
ecd7575b5e make sample ledger more complex to verify a fix 2008-12-05 08:35:52 +00:00
Simon Michael
765edff7f8 typo 2008-12-05 10:38:20 +00:00
Simon Michael
f305a231a4 update sample.ledger 2008-12-05 11:09:09 +00:00
Simon Michael
8bc078ff7b fix haddock error preventing docs update 2008-12-10 05:52:26 +00:00
Simon Michael
fdb45b8d9c make mixed amount adding and showing more robust 2008-12-05 04:36:32 +00:00
Simon Michael
3c90a41ffa typo 2008-12-06 07:11:28 +00:00
Simon Michael
063dce2642 more string utils 2008-12-06 07:15:19 +00:00
nick
4ea30b7411 Fixed ;-only bug 2008-12-08 07:20:29 +00:00
Simon Michael
130e3bcd30 utils tweaks 2008-12-10 07:08:50 +00:00
Simon Michael
da70e00e3b make fromparse utility show the parse error 2008-12-08 17:15:02 +00:00
Simon Michael
59c9dde458 haddock fixes 2008-12-10 07:56:00 +00:00
nick
68682fa0ee Tilde expansion in !include 2008-12-10 17:40:05 +00:00
nick
600582184c Support for !account directives, and tests 2008-12-08 07:21:33 +00:00
nick
9b7a3689f5 !account affects timelog entries 2008-12-10 17:40:36 +00:00
Simon Michael
61b288bf05 easier options for bench.hs 2008-12-10 20:45:09 +00:00
Simon Michael
cd41128620 left-justify arguments in benchmark summary 2008-11-27 06:29:46 +00:00
Simon Michael
2092ed85ae preserve args' whitespace layout in benchmark summary 2008-12-05 08:59:56 +00:00
Simon Michael
77a543e7b7 benchresults instead of summary for bench results filename 2008-12-05 09:01:42 +00:00
tim
250c92f646 Support parsing of dates in yyyy-dd-mm format 2008-12-09 07:15:18 +00:00
Simon Michael
22728c5c07 add a parsedate test 2008-12-10 20:55:02 +00:00
Simon Michael
470cae55ca show clockin/out times in timelog entries, detect clockout < clockin 2008-12-11 01:35:07 +00:00
Simon Michael
614e6e6932 count timelog sessions on the day they end, like ledger, for now 2008-12-05 01:16:42 +00:00
tim
4bc97d237a Added support for reading historical prices from files 2008-12-16 10:54:20 +00:00
nick
5e0313e447 Added timelog entries to ledger and added useful utilities 2008-12-08 01:48:03 +00:00
Simon Michael
b51740e9bb optimise canonicaliseAmounts
First optimisation in a while. hledger -s bal on my ledger took 2s, and profiling showed:

	total time  =        0.66 secs   (33 ticks @ 20 ms)
	total alloc = 3,631,667,848 bytes  (excludes profiling overheads)

     canonicaliseAmounts                             1   0.0    0.8      69.7       92.4
      rawLedgerCommoditiesWithSymbol              3928  27.3   23.1      69.7       91.6
       rawLedgerCommodities                          0  18.2   18.7      42.4       68.5
        amounts                                7712628   3.0    0.0       3.0        0.0
        rawLedgerAmounts                             0   0.0    9.3      21.2       49.9
         rawLedgerTransactions                       0   9.1   19.5      21.2       40.5
          flattenEntry                         3408636  12.1   21.0      12.1       21.0

Now it takes 1/2s and the profile is healthier:

	total time  =        0.14 secs   (7 ticks @ 20 ms)
	total alloc = 275,520,536 bytes  (excludes profiling overheads)

     canonicaliseAmounts                             1   0.0    0.4       0.0        0.5
      amounts                                     1964   0.0    0.0       0.0        0.0
      rawLedgerTransactions                          0   0.0    0.1       0.0        0.1
       flattenEntry                                868   0.0    0.1       0.0        0.1
2008-12-05 02:09:19 +00:00
nick
0be862f760 Fixed TimeLog handling and certain blank lines 2008-12-08 03:45:35 +00:00
Simon Michael
958c4eb891 bump version to 0.3 2009-01-17 17:33:47 +00:00
Simon Michael
088e28d02f add UICommand to other-modules 2009-01-17 17:34:37 +00:00
Simon Michael
a8ede0132a add a failing test for zero-balance root account eliding 2009-01-17 17:59:35 +00:00
Simon Michael
8ff1abfb2a failing test for eliding !account accounts 2008-12-10 18:37:25 +00:00
Simon Michael
3343e21ab1 work towards a fix for zero-balance root account eliding 2009-01-17 18:07:20 +00:00
Simon Michael
59d110e0a8 fix reading from stdin, except for ui command 2009-01-17 19:23:21 +00:00
Simon Michael
a51596899f a cached ledger now includes the full ledger text, also.
This reads the file twice, since I couldn't figure out how to do it just
once with the new error monad.. fixes welcome.
2008-12-10 07:29:08 +00:00
nick
ee4a2a1c1e New ledger parser with file inclusion 2008-12-08 01:49:31 +00:00
Simon Michael
157f47c592 run all tests from internal data, not the sample.ledger file 2008-12-05 08:33:15 +00:00
Simon Michael
866398ecb8 more varied dates in sample ledger 2008-11-26 21:11:10 +00:00