Changed the definition of cost basis to preserve the original cost basis
when a gain or loss is made (if you bought 1 AAA for $10 and then sold
it for $12, ledger would previously take $12 as the cost; the original
cost of $10 is preserved as the cost basis now, which addresses strange
behaviour with -B after a capital gain or loss is made).
Incorrect automatic Equity:Capital Gains and Equity:Capital Loss entries
are no longer generated when a commodity is sold for loss or profit.
Support for virtual posting costs.
The option--permissive now quiets balance assertions
Removed SHA1 files due to license issues and use boost instead.
Added option --no-pager to disable the pager.
Added option --no-aliases to completely disable alias expansion
Added option --recursive-aliases to expand aliases recursively
Support payee uuid directive.
Bug fix: when a status flag (! or *) is explicitly specified for an
individual posting, it always has a priority over entire transaction
Bug fix: don't lose commodity when cost is not separated by whitespace
Due to the magnitude of changes in 3.0, only changes that affect compatibility
with 2.x files and usage is mentioned here. For a description of new
features, please see the manual.
The option -g (--performance) was removed.
The balance report now defaults to showing all relevant accounts. This is
the opposite of 2.x. That is, bal in 3.0 does what -s bal did in 2.x.
To see 2.6 behavior, use "bal -n" in 3.0. The -s option no longer has any
effect on balance reports.
To build Ledger from source download the ledger-utfcpp.zip and install it into the Ledger source tree, e.g.: unzip ledger-utfcpp.zip -d ledger-3.0/