0.23.2 (2014/5/8)

- register: also fix date sorting of postings (#184)

0.23.1 (2014/5/7)

- register: fix a refactoring-related regression that the tests
  missed: if transactions were not ordered by date in the journal,
  register could include postings before the report start date in the
  output. (#184)
- add: don't apply a default commodity to amounts on entry (#138)
- cli: options before the add-on command name are now also passed to it (#182)
- csv: allow the first name in a fields list to be empty (#178)
- csv: don't validate fields count in skipped lines (#177)


0.23 (2014/5/1)

Journal format:
- A # (hash) in column 0 is now also supported for starting a top-level journal comment, like Ledger.
- The "too many missing amounts" error now reminds about the 2-space rule.
- Fix: . (period) is no longer parsed as a valid amount.
- Fix: default commodity directives no longer limit the maximum display precision (#169).
- Fix: + before an amount is no longer parsed as part of the commodity (#181).

CLI:
- Command-line help cleanups, layout improvements.
- Descriptions are shown for known add-ons in the command list.
- Command aliases have been simplified.
- Add-ons can now have any of these file extensions:
  none, hs, lhs, pl, py, rb, rkt, sh, bat, com, exe.
- Add-ons are displayed without their file extensions when possible.
- Add-ons with the same name as a built-in command or alias are ignored.
- Fix: add-on detection and invocation now works on windows.
- Fix: add-ons with digits in the name are now found.
- Fix: add-on arguments containing a single quote now work.
- Fix: when -- is used to hide add-on options from the main program,
  it is no longer passed through as an add-on argument.

Queries:
- The currency/commodity query prefix (sym:) has been renamed to cur:.
- Currency/commodity queries are applied more strongly in register and
  balance reports, filtering out unwanted currencies entirely. Eg
  hledger balance cur:'\$' now reports only the dollar amounts even if
  there are multi-currency transactions or postings.
- Amount queries like amt:N, amt:<N and amt:>N, where N is not 0, now do an unsigned
  comparison of the amount and N. That is, they compare the absolute magnitude.
  To do a signed comparison instead, write N with its sign (eg amt:+N, amt:<+N, amt:>-N).
- Fix: amount queries no longer give false positives on multi-commodity amounts.

accounts:
- An accounts command has been added, similar to Ledger's, for listing account names
  in flat or hierarchical mode.

add:
- Tab completion now works at all prompts, and will insert the default if the input area is empty.
- Account and amount defaults are more robust and useful.
- Transactions may also be completed by the enter key, when there are no more default postings.
- Input prompts are displayed in a different colour when supported.

balance:
- Balance reports in flat mode now always show exclusive (subaccount-excluding) balances.
- Balance reports in flat mode with --depth now aggregate deeper accounts at the depth limit instead of excluding them.
- Multicolumn reports in flat mode now support --drop.
- Multicolumn balance reports can now show the account hierarchy with --tree.
- Multicolumn report start/end dates are adjusted to encompass the displayed
  report periods, so the first and last periods are "full" and comparable to the others.
- Fix: zero-balance leaf accounts below a non-zero-balance parent are no longer always shown (#170).
- Fix: multicolumn reports now support --date2 (cf #174).

balancesheet, cashflow, incomestatement:
- These commands now support --flat and --drop.

print:
- Tag queries (tag:) will now match a transaction if any of its postings match.

register:
- The --display option has been dropped. To see an accurate running total which
  includes the prior starting balance, use --historical/-H (like balance). 
- With a report interval, report start/end dates are adjusted to encompass the displayed
  periods, so the first and last periods are "full" and comparable to the others.
- Fix: --date2 now works with report intervals (fixes #174).

Miscellaneous:
- Default report dates now derive from the secondary dates when --date2 is in effect.
- Default report dates now notice any posting dates outside the transaction dates' span.
- Debug output improvements.
- New add-on example: extra/hledger-rewrite.hs, adds postings to matched entries.
- Compatible with GHC 7.2 (#155) - GHC 7.8, shakespeare 2


0.22.2 (2014/4/16)

- display years before 1000 with four digits, not three
- avoid pretty-show to build with GHC < 7.4
- allow text 1.1, drop data-pprint to build with GHC 7.8.x


0.22.1 (2014/1/6) and older: see http://hledger.org/release-notes or doc/CHANGES.md.
