;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.  | ||||
| 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 | ||||
|   The linux full tests no longer test GHC 8.0, | ||||
|   and all full tests now always compile all modules | ||||
|   and generate optimised binaries. | ||||
| - CI:  | ||||
| 
 | ||||
|   - always recompile all modules for robustness | ||||
|   - 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,17 +1,76 @@ | ||||
| Internal/api/developer-ish changes in the hledger-lib (and hledger) packages. | ||||
| 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 | ||||
|   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. | ||||
| - The Regex type alias has been replaced by the Regexp ADT, which | ||||
|   contains both the compiled regular expression (so is guaranteed to | ||||
|   be usable at runtime) and the original string (so can be serialised, | ||||
|   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 | ||||
|   everything. (Stephen Morgan, #1256). | ||||
| - Typeable and Data instances are no longer derived for hledger's | ||||
|   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 | ||||
|     extensively. | ||||
| @ -22,28 +81,12 @@ For user-visible changes, see the hledger package changelog. | ||||
|   - 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 | ||||
|   - 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) | ||||
|     improvement introduced by hledger (tabular multiperiod balance reports) | ||||
|     ... | ||||
|     Thanks @Xitian9, great work." | ||||
| 
 | ||||
| # 1.18.1 2020-06-21 | ||||
| 
 | ||||
|  | ||||
| @ -1,9 +1,33 @@ | ||||
| User-visible changes in hledger-ui. | ||||
| 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,9 +1,18 @@ | ||||
| User-visible changes in hledger-web. | ||||
| 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,21 +1,52 @@ | ||||
| User-visible changes in the hledger command line tool and library. | ||||
| 
 | ||||
| 
 | ||||
| # 44c3eb19 | ||||
| # 818dea3e | ||||
| 
 | ||||
| - 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. | ||||
| ## general | ||||
| 
 | ||||
| - 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 | ||||
|   argument more carefully, avoiding unexpected negatives or Int | ||||
| - The --color/--colour=WHEN command line option, support for the | ||||
|   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) | ||||
| 
 | ||||
| - 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: | ||||
| 
 | ||||
|   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 | ||||
|   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 | ||||
|   conditional rules (Dmitry Astapov) | ||||
| - aregister: a new command showing a transaction-oriented account | ||||
|   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 | ||||
|   rules (Dmitry Astapov) | ||||
| - bal,bs,cf,is: boring parents are now elided by default in tabular | ||||
|   balance reports too, like single-column reports. (Stephen Morgan) | ||||
| 
 | ||||
| - csv: fix a bug in the csv rules parser that was causing vague parse error | ||||
|   messages (Dmitry Astapov) | ||||
| - bal,bs,cf,is: monthly column headings are no longer elided to just | ||||
|   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 | ||||
| 
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user