Commit Graph

2550 Commits

Author SHA1 Message Date
Simon Michael
5a7e94a08a docs: download page updates 2012-10-16 19:48:14 +00:00
Simon Michael
e6de6d0cd5 downloads: update copy, add new mac builds, drop hledger-chart 2012-09-28 17:34:09 +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
cb2a4e543f tools: standard/aligned bench test commands 2012-10-21 21:35:14 +00:00
Simon Michael
51a9f2a948 bump version 2012-10-21 20:20:35 +00:00
Simon Michael
3fe66ab6ec tools: more makefile cleanups, drop --make 2012-10-21 21:22:27 +00:00
Simon Michael
4752726585 tools: rename hledgerp to hledgerprof 2012-10-21 21:24:06 +00:00
Simon Michael
97a8ed23df tools: makefile updates & cleanups 2012-10-21 21:09:24 +00:00
Simon Michael
e701c2b1cb tools: rsync refactor 2012-09-28 17:35:07 +00:00
Simon Michael
2b8d759db1 rename developer build to hledgerdev, avoiding confusion with production hledger 2012-10-21 18:23:23 +00:00
Simon Michael
3e28f6001f tools: more top-level build fixes; remove chart/vty rules 2012-10-13 19:47:16 +00:00
Simon Michael
f03b020e2f set version with CPP instead of cabal-file-th; make building more robust
hledger and hledger-web were reading their version number (and program
name) from their cabal files at compile time using cabal-file-th,
which allowed the version number be maintained in one place (per
package).

This meant you had to be in same directory as the cabal file when
building, which made life more complicated, eg emacs compilation mode
could not jump to errors. Also, it slowed down building slightly, and
is a factor in hledger Debian packages being unavailable on a number
of platforms (we also use TH for report templates).

Now, the build version is set with a CPP VERSION flag, which seems
simpler overall. For cabal builds, this needs to be configured
manually in a few more places in each cabal file. For makefile builds,
it is set it to the name of the most recent darcs tag (which should be
more useful than the old behaviour). If not set, it defaults to the
blank string, useful eg for haddock. And, all makefile builds now run
from the top directory.
2012-10-13 19:21:17 +00:00
Simon Michael
7fec954cbf support latest cmdargs, haskeline, split 2012-10-08 16:50:35 +00:00
Simon Michael
257732bf43 tools: build rule updates 2012-10-08 16:52:49 +00:00
Sergei Trofimovich
a433910a60 Makefile: allow passing arbitrary HCFLAGS as ghc options
It is handly to check things inplace:

hledger $ make
cd hledger; ghc --make hledger-cli.hs -o ../bin/hledger -DMAKE -W -fwarn-tabs -fno-warn-name-shadowing  -i../hledger-lib -i../hledger -i../hledger-web  -L/usr/lib -DPATCHLEVEL=0 +RTS -M200m -RTS

../hledger-lib/Hledger/Utils.hs:30:8:
    Ambiguous module name `Control.Monad.Error':
      it was found in multiple packages: mtl-2.1.2 monads-fd-0.1.0.4
make: *** [bin/hledger] Error 1
hledger $ make HCFLAGS="-hide-package monads-fd"
<all ok>
2012-08-21 07:17:24 +00:00
Simon Michael
2a4b347418 docs: release notes/announcement 2012-10-21 22:19:34 +00:00
Simon Michael
57bb2337b0 notes 2012-10-21 22:20:29 +00:00
Simon Michael
1c3fcff196 notes 2012-10-16 19:48:37 +00:00
Simon Michael
577981367b tools: version fix 2012-10-21 22:23:06 +00:00
Simon Michael
9d1dea9fe8 docs updates 2012-06-30 19:16:43 +00:00
Simon Michael
6e09a4897d notes; start cleanup, add estimates, document process 2012-07-02 01:01:20 +00:00
Simon Michael
ea7067e610 notes 2012-06-29 23:18:12 +00:00
Simon Michael
50d96fef13 notes 2012-06-30 19:13:28 +00:00
Simon Michael
155cb0eafe web: fix compilation error with -fblaze_html_0_5 flag 2012-07-08 00:18:39 +00:00
Simon Michael
f8a9cce43d bump base lower bound to 4.3 to enforce GHC 7 requirement 2012-07-08 00:22:20 +00:00
Simon Michael
0d4199f1b3 docs: release notes 2012-07-08 00:24:19 +00:00
Simon Michael
63973c3728 bump version to 0.18.2 2012-07-08 00:24:40 +00:00
Simon Michael
a16a60e88f docs: typo 2012-05-29 19:18:16 +00:00
Simon Michael
3ec42b7af9 docs: update download page 2012-05-29 19:12:58 +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
a96362118c doc updates 2012-06-29 17:39:37 +00:00
Simon Michael
074486549a make stats.test and include.test parallelizable 2012-06-29 18:05:12 +00:00
Simon Michael
24546bb910 stats: test display order of included files 2012-06-29 14:41:16 +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
c2365c3541 update status tests 2012-06-29 18:33:45 +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
6e0db307e5 notes 2012-06-29 22:49:19 +00:00
Simon Michael
d0b332d642 notes 2012-06-29 17:40:18 +00:00
Simon Michael
c0c8cf7635 notes 2012-06-29 15:48:57 +00:00
Simon Michael
a6183e5349 docs: release notes 2012-06-29 22:51:23 +00:00
Simon Michael
461f370db0 web: fix a cabal warning 2012-06-29 22:54:54 +00:00