diff --git a/CHANGES.md b/CHANGES.md index f231cde24..cd7f31a45 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,7 +1,11 @@ General/project-related changes in the hledger project. For package-specific changes, see the package changelogs. -# a7bb6b92 +# 7881edfc + +- stack: bump default stack file to lts 16 + +- bin: hledger-check: use stack script command - ci: separate quick and full tests again, update The linux full tests no longer test GHC 8.0, diff --git a/hledger-lib/CHANGES.md b/hledger-lib/CHANGES.md index 2ea60932d..9d37f78b0 100644 --- a/hledger-lib/CHANGES.md +++ b/hledger-lib/CHANGES.md @@ -1,7 +1,47 @@ Internal/api/developer-ish changes in the hledger-lib (and hledger) packages. For user-visible changes, see the hledger package changelog. -# 36829710 +# 25c15d4b + +- add a color argument to most amount show helpers, drop cshow variants This + is an API change, but it seems better than having additional + colour-supporting variants and trying to avoid duplicated code. I stopped + short of changing showAmount, so cshowAmount still exists. + +- Remove the old BalanceReport code, and use MultiBalanceReport for + everything. (Stephen Morgan, #1256). + + - The large multiBalanceReport function has been split up and refactored + extensively. + - Tabular data formerly represented as [[MixedAmount]] is now HashMap + AccountName (Map DateSpan Account). Reports with many columns are now faster. + - Calculating starting balances no longer calls the whole balanceReport, + just the first few functions. + - displayedAccounts is completely rewritten. Perhaps one subtle thing to + note is that in tree mode it no longer excludes nodes with zero inclusive + balance unless they also have zero exclusive balance. + - Simon's note: I'll mark the passing of the old multiBalanceReport, into + which I poured many an hour :). It is in a way the heart (brain ?) of + hledger - the key feature of ledgerlikes (balance report) and a key + improvement introduced by hledger (tabular multiperiod balance reports). + You have split that 300-line though well documented function into modular + parts, which could be a little harder to understand in detail but are + easier to understand in the large and more amenable to further + refactoring. Then you fixed some old limitations (boring parent eliding in + multi period balance reports, --drop with tree mode reports), allowing us + to drop the old balanceReport and focus on just the new + multiBalanceReport. And for representing the tabular data you replaced the + semantically correct but inefficient list of lists with a map of maps, + speeding up many-columned balance reports significantly (~40%). Last and + not least you made it really easy to review. Thanks @Xitian9, great work. + +- lib, cli: Introduce convenience function compoundBalanceReport. (Stephen Morgan) + +- lib, cli: Move CompoundBalanceReport into ReportTypes, compoundReportWith into MultiBalanceReport, share postings amongst subreports. (Stephen Morgan) + +- lib: Move unifyMixedAmount to Hledger.Data.Amount, make it return Maybe Amount, export it. (Stephen Morgan) + +- add lower bound needed for aeson, to help cabal (#1268) # 1.18.1 2020-06-21 diff --git a/hledger-ui/CHANGES.md b/hledger-ui/CHANGES.md index 297229f4d..c6fdb36d1 100644 --- a/hledger-ui/CHANGES.md +++ b/hledger-ui/CHANGES.md @@ -1,7 +1,9 @@ User-visible changes in hledger-ui. See also the hledger changelog. -# ce4de7ae +# 3b6a8b09 + +- ui: register: elide multicommodity amounts # 1.18.1 2020-06-21 diff --git a/hledger-web/CHANGES.md b/hledger-web/CHANGES.md index 896c0afc9..ae60faa86 100644 --- a/hledger-web/CHANGES.md +++ b/hledger-web/CHANGES.md @@ -1,7 +1,9 @@ User-visible changes in hledger-web. See also the hledger changelog. -# ce4de7ae +# 44c3eb19 + +- add lower bound needed for aeson, to help cabal (#1268) # 1.18.1 2020-06-21 diff --git a/hledger/CHANGES.md b/hledger/CHANGES.md index 6e777f0c4..db141ed77 100644 --- a/hledger/CHANGES.md +++ b/hledger/CHANGES.md @@ -1,7 +1,43 @@ User-visible changes in the hledger command line tool and library. -# 36829710 +# 44c3eb19 + +- balcmds: elide amounts with 3 or more commodities, unless --no-elide + Multicolumn balance reports showing many commodities tend to become + unreadably wide, especially in tree mode. Now by default we show at + most two commodities, and a count of the rest if there are more than + two. This should help keep reports somewhat readable by default. + +- bal: warn about #1279 in manual + +- cli: for options taking a numeric argument, we now validate the + argument more carefully, avoiding unexpected negatives or Int + overflow. (Stephen Morgan) + +- cli: debug output is now organised better by debug level. + The levels are: + + 0. normal command output only (no warnings) + 1. useful warnings & most common troubleshooting info (valuation, eg) + 2. common troubleshooting info, more detail + 3. report options selection + 4. report generation + 5. report generation, more detail + 6. input file reading + 7. input file reading, more detail + 8. command line parsing + 9. any other rarely needed or more in-depth info + +- lib: Using --drop in tree mode with boring parent ellision no longer considers all parents boring. Add tests to check this fact. (Stephen Morgan) + +- add lower bound needed for aeson, to help cabal (#1268) + +- lib: Add fortnightly as a synonym for biweekly. (Stephen Morgan) + +- bal: --drop now works in tree mode balance reports also. (Stephen Morgan) + +- bal: Boring parents are now elided in tabular balance reports, as in simple balance reports. (Stephen Morgan) - csv: speed up csv conversion performance when there are a lot of conditional rules (Dmitry Astapov)