;doc: changelogs
This commit is contained in:
		
							parent
							
								
									e44c1cfae8
								
							
						
					
					
						commit
						7aefa6f0ce
					
				
							
								
								
									
										22
									
								
								CHANGES.md
									
									
									
									
									
								
							
							
						
						
									
										22
									
								
								CHANGES.md
									
									
									
									
									
								
							| @ -1,16 +1,24 @@ | |||||||
| General/project-related changes in the hledger project.  | General/project-related changes in the hledger project.  | ||||||
| For package-specific changes, see the package changelogs. | For package-specific changes, see the package changelogs. | ||||||
| 
 | 
 | ||||||
| # 7881edfc | # ba59fed6 | ||||||
| 
 | 
 | ||||||
| - stack: bump default stack file to lts 16 | - example scripts: | ||||||
| 
 | 
 | ||||||
| - bin: hledger-check: use stack script command |   - stack scripts now use stack's script command consistently | ||||||
|  |   - stack scripts no longer have explicit --package lists, stack | ||||||
|  |     infers them from the imports | ||||||
|  |   - hledger-print-location: new script | ||||||
| 
 | 
 | ||||||
| - ci: separate quick and full tests again, update | - CI:  | ||||||
|   The linux full tests no longer test GHC 8.0, | 
 | ||||||
|   and all full tests now always compile all modules |   - always recompile all modules for robustness | ||||||
|   and generate optimised binaries. |   - generate optimised binaries, which can be downloaded | ||||||
|  |   - build a single different GHC version with each workflow, reducing | ||||||
|  |     total building and carbon footprint a bit | ||||||
|  |   - stop building with GHC 8.0 | ||||||
|  | 
 | ||||||
|  | - the default stack file now uses lts 16.12 (ghc 8.8.4) | ||||||
| 
 | 
 | ||||||
| # 1.18.1 2020-06-21 | # 1.18.1 2020-06-21 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -1,17 +1,76 @@ | |||||||
| Internal/api/developer-ish changes in the hledger-lib (and hledger) packages. | Internal/api/developer-ish changes in the hledger-lib (and hledger) packages. | ||||||
| For user-visible changes, see the hledger package changelog. | For user-visible changes, see the hledger package changelog. | ||||||
| 
 | 
 | ||||||
| - 3822c27b ;lib: regex: rename & export RegexError, export toRegex_, docs (#1312) | # 818dea3e | ||||||
| 
 | 
 | ||||||
| # 25c15d4b | - Added a missing lower bound for aeson, making cabal installs more | ||||||
|  |   reliable. (#1268) | ||||||
| 
 | 
 | ||||||
| - add a color argument to most amount show helpers, drop cshow variants This | - The Regex type alias has been replaced by the Regexp ADT, which | ||||||
|   is an API change, but it seems better than having additional |   contains both the compiled regular expression (so is guaranteed to | ||||||
|   colour-supporting variants and trying to avoid duplicated code. I stopped |   be usable at runtime) and the original string (so can be serialised, | ||||||
|   short of changing showAmount, so cshowAmount still exists. |   printed, compared, etc.) A Regexp also knows whether is it case | ||||||
|  |   sensitive or case insensitive. The Hledger.Utils.Regex API has | ||||||
|  |   changed. (#1312, #1330). | ||||||
| 
 | 
 | ||||||
| - Remove the old BalanceReport code, and use MultiBalanceReport for | - Typeable and Data instances are no longer derived for hledger's | ||||||
|   everything. (Stephen Morgan, #1256). |   data types; they were redundant/no longer needed. | ||||||
|  | 
 | ||||||
|  | - NFData instances are no longer derived for hledger's data types. | ||||||
|  |   This speeds up a full build by roughly 7%. But it means we can't | ||||||
|  |   deep-evaluate hledger values, or time hledger code with Criterion. | ||||||
|  |   https://github.com/simonmichael/hledger/pull/1330#issuecomment-684075129 | ||||||
|  |   has some ideas on this. | ||||||
|  | 
 | ||||||
|  | - Query no longer has a custom Show instance | ||||||
|  | 
 | ||||||
|  | - Hledger.Utils.String: quoteIfNeeded now actually escapes quotes in | ||||||
|  |   strings. escapeQuotes was dropped. (Stephen Morgan) | ||||||
|  | 
 | ||||||
|  | - Hledger.Utils.Tree: dropped some old utilities | ||||||
|  | 
 | ||||||
|  | - Some fromIntegral calls have been replaced with safer code, removing | ||||||
|  |   some potential for integer wrapping bugs (#1325, #1326) | ||||||
|  | 
 | ||||||
|  | - Parsing numbers with more than 255 decimal places now gives an error | ||||||
|  |   instead of silently misparsing (#1326) | ||||||
|  | 
 | ||||||
|  | - Digit groups are now limited to at most 255 digits each. (#1326) | ||||||
|  | 
 | ||||||
|  | - Exponents are parsed as Integer rather than Int. | ||||||
|  |   This means exponents greater than 9223372036854775807 or less than | ||||||
|  |   -9223372036854775808 are now parsed correctly, in theory. (In | ||||||
|  |   practice, very large exponents will cause hledger to eat all your | ||||||
|  |   memory, so avoid them for now.) (#1326) | ||||||
|  | 
 | ||||||
|  | - AmountStyle's asprecision is now a sum type with Word8, instead of | ||||||
|  |   an Int with magic values. | ||||||
|  | 
 | ||||||
|  | - DigitGroupStyle uses Word8 instead of Int. | ||||||
|  | 
 | ||||||
|  | - Partial helper function parsedate has been dropped, use fromGregorian instead. | ||||||
|  | 
 | ||||||
|  | - Partial helper function mkdatespan has been dropped. | ||||||
|  | 
 | ||||||
|  | - Helper function transaction now takes a Day instead of a date string. (Stephen Morgan) | ||||||
|  | 
 | ||||||
|  | - Old CPP directives made redundant by version bounds have been | ||||||
|  |   removed. (Stephen Morgan) | ||||||
|  | 
 | ||||||
|  | - Smart dates are now represented by the SmartDate type, and are | ||||||
|  |   always well formed. (Stephen Morgan) | ||||||
|  | 
 | ||||||
|  | - accountTransactionsReport (used for hledger aregister and | ||||||
|  |   hledger-ui/hledger-web registers) now filters transactions more | ||||||
|  |   thoroughly, so eg transactions dated outside the report period will | ||||||
|  |   not be shown. Previously the transaction would be shown if it had | ||||||
|  |   any posting dated inside the report period. Possibly some other | ||||||
|  |   filter criteria now get applied that didn't before. I think on | ||||||
|  |   balance this will give slightly preferable results. | ||||||
|  | 
 | ||||||
|  | - The old BalanceReport code has been dropped at last, replaced by | ||||||
|  |   MultiBalanceReport so that all balance reports now use the same | ||||||
|  |   code. (Stephen Morgan, #1256). | ||||||
| 
 | 
 | ||||||
|   - The large multiBalanceReport function has been split up and refactored |   - The large multiBalanceReport function has been split up and refactored | ||||||
|     extensively. |     extensively. | ||||||
| @ -22,28 +81,12 @@ For user-visible changes, see the hledger package changelog. | |||||||
|   - displayedAccounts is completely rewritten. Perhaps one subtle thing to |   - displayedAccounts is completely rewritten. Perhaps one subtle thing to | ||||||
|     note is that in tree mode it no longer excludes nodes with zero inclusive |     note is that in tree mode it no longer excludes nodes with zero inclusive | ||||||
|     balance unless they also have zero exclusive balance. |     balance unless they also have zero exclusive balance. | ||||||
|   - Simon's note: I'll mark the passing of the old multiBalanceReport, into |   - 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 |     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 |     hledger - the key feature of ledgerlikes (balance report) and a key | ||||||
|     improvement introduced by hledger (tabular multiperiod balance reports). |     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 |     Thanks @Xitian9, great work." | ||||||
|     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 | # 1.18.1 2020-06-21 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -1,9 +1,33 @@ | |||||||
| User-visible changes in hledger-ui. | User-visible changes in hledger-ui. | ||||||
| See also the hledger changelog. | See also the hledger changelog. | ||||||
| 
 | 
 | ||||||
| # 3b6a8b09 | # 818dea3e | ||||||
| 
 | 
 | ||||||
| - ui: register: elide multicommodity amounts | - The --color/--colour=WHEN command line option, support for the | ||||||
|  |   NO_COLOR environment variable, and smarter autodetection of colour | ||||||
|  |   terminals have been added (#1296) | ||||||
|  | 
 | ||||||
|  | - -t and -l command line flags have been added as short forms of | ||||||
|  |   --tree and --flat (#1286) | ||||||
|  | 
 | ||||||
|  | - Flat (AKA list) mode is now the default | ||||||
|  | 
 | ||||||
|  | - t now toggles tree mode, while T sets the "today" period (#1286) | ||||||
|  | 
 | ||||||
|  | - register: multicommodity amounts containing more than two | ||||||
|  |   commodities are now elided | ||||||
|  | 
 | ||||||
|  | - register: a transaction dated outside the report period now is not | ||||||
|  |   shown even if it has postings dated inside the report period. | ||||||
|  | 
 | ||||||
|  | - ESC now restores exactly the app's state at startup, which includes | ||||||
|  |   clearing any report period limit (#1286) | ||||||
|  | 
 | ||||||
|  | - DEL/BS no longer changes the tree/list mode | ||||||
|  | 
 | ||||||
|  | - q now exits help before exiting the app (#1286) | ||||||
|  | 
 | ||||||
|  | - The help dialog's layout is improved | ||||||
| 
 | 
 | ||||||
| # 1.18.1 2020-06-21 | # 1.18.1 2020-06-21 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -1,9 +1,18 @@ | |||||||
| User-visible changes in hledger-web. | User-visible changes in hledger-web. | ||||||
| See also the hledger changelog. | See also the hledger changelog. | ||||||
| 
 | 
 | ||||||
| # 44c3eb19 | # 818dea3e | ||||||
| 
 | 
 | ||||||
| - add lower bound needed for aeson, to help cabal (#1268) | - Queries containing a malformed regular expression (eg the single | ||||||
|  |   character `?`) now show a tidy error message instead "internal | ||||||
|  |   server error" (Stephen Morgan, Simon Michael) (#1245) | ||||||
|  | 
 | ||||||
|  | - In account registers, a transaction dated outside the report period | ||||||
|  |   now is not shown even if it has postings dated inside the report | ||||||
|  |   period. | ||||||
|  | 
 | ||||||
|  | - Added a missing lower bound for aeson, making cabal installs more | ||||||
|  |   reliable. (#1268) | ||||||
| 
 | 
 | ||||||
| # 1.18.1 2020-06-21 | # 1.18.1 2020-06-21 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -1,21 +1,52 @@ | |||||||
| User-visible changes in the hledger command line tool and library. | User-visible changes in the hledger command line tool and library. | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| # 44c3eb19 | # 818dea3e | ||||||
| 
 | 
 | ||||||
| - balcmds: elide amounts with 3 or more commodities, unless --no-elide | ## general | ||||||
|   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 | - When parsing dates, the year is now required to have at least four | ||||||
|  |   digits. So eg we no longer accept `200/1/1` as a valid date, it | ||||||
|  |   would need to be written `0200/1/1`. This was done for.. reasons, | ||||||
|  |   and is experimental; let us know if it causes you trouble. | ||||||
| 
 | 
 | ||||||
| - cli: for options taking a numeric argument, we now validate the | - The --color/--colour=WHEN command line option, support for the | ||||||
|   argument more carefully, avoiding unexpected negatives or Int |   NO_COLOR environment variable, and smarter autodetection of colour | ||||||
|  |   terminals have been added (#1296) | ||||||
|  | 
 | ||||||
|  | - Command line options taking a numeric argument are now validated | ||||||
|  |   more carefully, preventing issues with unexpected negatives or Int | ||||||
|   overflow. (Stephen Morgan) |   overflow. (Stephen Morgan) | ||||||
| 
 | 
 | ||||||
| - cli: debug output is now organised better by debug level. | - In queries, you can now specify a quarter like `2020q1` or `q4` | ||||||
|  |   (the q is case-insensitive). (#1247, Henning Thieleman, Stephen Morgan) | ||||||
|  | 
 | ||||||
|  | - In report intervals, `fortnightly` has been added as a synonym for | ||||||
|  |   `biweekly`. (Stephen Morgan) | ||||||
|  | 
 | ||||||
|  | - -t and -l command line flags have been added as short forms of | ||||||
|  |   --tree and --flat (#1286) | ||||||
|  | 
 | ||||||
|  | - All reports displaying accounts now choose flat mode by default | ||||||
|  |   (Stephen Morgan) | ||||||
|  | 
 | ||||||
|  | - Reports now show at most 2 commodities of multicommodity amounts, | ||||||
|  |   unless the --no-elide flag is used. This helps keep them readable by | ||||||
|  |   default, since multicolumn, multicommodity balance reports otherwise | ||||||
|  |   tend to become very wide, especially in tree mode. | ||||||
|  | 
 | ||||||
|  | - Numbers with more than 255 decimal places, which we do not support, | ||||||
|  |   now give an error instead of silently misparsing. (#1326) | ||||||
|  | 
 | ||||||
|  | - Digit groups are now limited to at most 255 digits each. (#1326) | ||||||
|  | 
 | ||||||
|  | - Account aliases (on command line or in journal) containing a bad | ||||||
|  |   regular expression now give a more detailed error message. | ||||||
|  | 
 | ||||||
|  | - A tab character could get parsed as part of a commodity symbol, with | ||||||
|  |   confusing results. This no longer happens. (#1301, Dmitry Astapov) | ||||||
|  | 
 | ||||||
|  | - Debug output is now organised better by debug level. | ||||||
|   The levels are: |   The levels are: | ||||||
| 
 | 
 | ||||||
|   0. normal command output only (no warnings) |   0. normal command output only (no warnings) | ||||||
| @ -29,30 +60,80 @@ User-visible changes in the hledger command line tool and library. | |||||||
|   8. command line parsing |   8. command line parsing | ||||||
|   9. any other rarely needed or more in-depth info |   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) | - Added a missing lower bound for aeson, making cabal installs more | ||||||
|  |   reliable. (#1268) | ||||||
| 
 | 
 | ||||||
| - add lower bound needed for aeson, to help cabal (#1268) | - lib: parseAmountQueryTerm: allow whitespace around arg parts (#1312) | ||||||
|  |   Whitespace around the operator, sign, or number is now tolerated. | ||||||
| 
 | 
 | ||||||
| - lib: Add fortnightly as a synonym for biweekly. (Stephen Morgan) | ## commands | ||||||
| 
 | 
 | ||||||
| - bal: --drop now works in tree mode balance reports also. (Stephen Morgan) | - account,bal,bs,cf,is: --drop now also works in tree mode (Stephen Morgan) | ||||||
| 
 | 
 | ||||||
| - bal: Boring parents are now elided in tabular balance reports, as in simple balance reports. (Stephen Morgan) | - add: fix an error in the command line help (arguments are inputs, | ||||||
|  |   not a query) | ||||||
| 
 | 
 | ||||||
| - csv: speed up csv conversion performance when there are a lot of | - aregister: a new command showing a transaction-oriented account | ||||||
|   conditional rules (Dmitry Astapov) |   register, like hledger-ui, hledger-web, or your bank statement.  | ||||||
|  |   Each line represents a whole transaction in one account, unlike | ||||||
|  |   the register command which shows individual postings possibly from | ||||||
|  |   multiple accounts. You might prefer aregister when reconciling | ||||||
|  |   real-world asset/liability accounts, and register when reviewing | ||||||
|  |   detailed revenues/expenses. (#1294) | ||||||
| 
 | 
 | ||||||
| - csv: add "if tables" to csv rules, a more compact format for conditional | - bal,bs,cf,is: boring parents are now elided by default in tabular | ||||||
|   rules (Dmitry Astapov) |   balance reports too, like single-column reports. (Stephen Morgan) | ||||||
| 
 | 
 | ||||||
| - csv: fix a bug in the csv rules parser that was causing vague parse error | - bal,bs,cf,is: monthly column headings are no longer elided to just | ||||||
|   messages (Dmitry Astapov) |   the short month name, if multiple years are being displayed. | ||||||
| 
 | 
 | ||||||
| - print: sql output format (Dmitry Astapov) | - bal --budget's column headings are now end dates rather than | ||||||
|  |   periods when appropriate (ie with --cumulative or --historical). | ||||||
| 
 | 
 | ||||||
| - bs,cf,is: --no-total hides subtotals as well as the grand total (Stephen Morgan) | - bs,cf,is: -%/--no-total no longer forces --no-total (Stephen Morgan) | ||||||
|  | 
 | ||||||
|  | - bs,cf,is: --no-total now hides subtotals as well as the grand total | ||||||
|  |   (Stephen Morgan) | ||||||
|  | 
 | ||||||
|  | - codes: a new command for listing transaction codes | ||||||
|  | 
 | ||||||
|  | - print: a new `sql` output format has been added (Dmitry Astapov) | ||||||
|  | 
 | ||||||
|  | - roi: errors are now shown without a call stack | ||||||
|  | 
 | ||||||
|  | - tags: add --parsed flag, hide empties without --empty. With the | ||||||
|  |   --parsed flag, all tags or values are shown in the order they are | ||||||
|  |   parsed from the input data, including duplicates. With -E/--empty, | ||||||
|  |   any blank/empty values will also be shown, otherwise they are | ||||||
|  |   omitted. | ||||||
|  | 
 | ||||||
|  | ## journal format | ||||||
|  | 
 | ||||||
|  | - account directives can specify a new `Cash` account type. This is a | ||||||
|  |   subtype of `Asset`, denoting accounts which should be displayed | ||||||
|  |   in `cashflow` reports.  | ||||||
|  |    | ||||||
|  | - The built-in regular expressions for choosing default account types | ||||||
|  |   have been tweaked, and documentation for account types has been | ||||||
|  |   improved. | ||||||
|  | 
 | ||||||
|  | ## csv format | ||||||
|  | 
 | ||||||
|  | - Inferring the appropriate default field separator based on file | ||||||
|  |   extension (, for .csv, ; for .ssv, \t for .tsv) now works as | ||||||
|  |   documented. | ||||||
|  | 
 | ||||||
|  | - Conditional rule patterns can now be grouped with the `&` (AND) operator, | ||||||
|  |   allowing more powerful matching. (Michael Sanders) | ||||||
|  | 
 | ||||||
|  | - Invalid csv rules files now give clearer parse error messages. | ||||||
|  |   (Dmitry Astapov) | ||||||
|  | 
 | ||||||
|  | - "If tables", a compact bulk format for conditional rules, have been | ||||||
|  |   added. (Dmitry Astapov) | ||||||
|  | 
 | ||||||
|  | - csv conversion with a lot of conditional rules is now faster (Dmitry Astapov) | ||||||
| 
 | 
 | ||||||
| - roi: show errors without a traceback |  | ||||||
| 
 | 
 | ||||||
| # 1.18.1 2020-06-21 | # 1.18.1 2020-06-21 | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user