When hledger-ui is started with --pivot, re-enabling balance
assertions with the I key now does a full journal reload, to check
balance assertions accurately. It means that in pivot mode, the I key
can also show other data changes (as if you pressed the g key).
This makes both transaction screen and error screen below the
transaction screen update as we'd expect when using the E key, g key,
or --watch. No visible bugs known at the moment.
This one is more thorough and hopefully more robust.
Compared to the first fix, it fixes an error seen in --watch mode
when you save an error (and maybe then save a second edit,
and then repair the error - I forget)
- Do not turn "other accounts" into a comma-delimited string when the
report is constructed, but pass `AccountName`s up the chain. This
requires modifying the `AccountTransactionsReportItem` type to contain
`[AccountName]` rather than `Text`.
- Perform the account name summarization
(`Hledger.Data.AccountName.accountSummarizedName`) closer to the
actual rendering of the report, so that different report formats can
choose summarization strategy.
- Continue to summarize as before for terminal/text output (ie.
human-readable). Do not summarize any more for machine-readable output
(csv/html/fods).
Hledger.Utils.IO helpers have been updated and new ones have been
added (exitOnExceptions, exitWithError) to allow consistent display of
program errors whether compiled with GHC <9.10, GHC 9.10, or GHC >9.10.
The trailing newlines added by GHC 9.10 are gone,
and so is the "uncaught exception" output added by GHC 9.12.
Builds made with ghc 9.10+ and the 'debug' build flag, will show
(some kind of, partial) stack traces when the program ends with an
error. (And also will have ghc-debug support enabled.)
The stack traces will probably improve in due course.
--color now also works in a config file, like --pager, except for two
cases: it does not affect colouring of debug output, or the colouring
helpers used in the check recentassertions error message.
For brevity, and consistency with --conf.
--rules-file remains supported, as a hidden option.
hledger's main mode now supports the hidden legacy flags,
as the command modes do.
It's clearer to write command-specific flags after the command name
argument, but that's no longer required.
(Writing non-builtin, addon-specific flags after -- is still required).
Also, give up on "obey help/doc/version flags even if there's a bad
command/flag", it's too hard to do well.