;doc: draft changelogs
[ci skip]
This commit is contained in:
		
							parent
							
								
									000434083a
								
							
						
					
					
						commit
						04fb132496
					
				
							
								
								
									
										34
									
								
								CHANGES.md
									
									
									
									
									
								
							
							
						
						
									
										34
									
								
								CHANGES.md
									
									
									
									
									
								
							| @ -1,39 +1,33 @@ | ||||
| General/project-related changes in the hledger project.  | ||||
| For package-specific changes, see the package changelogs. | ||||
| 
 | ||||
| - documentation updates | ||||
| # 00043408 | ||||
| 
 | ||||
|   - streamlined hledger.org sidebar & manuals structure | ||||
|   - hledger manual: new Common Tasks section in  | ||||
| - hledger-install: re-enable installation of hledger-iadd & hledger-interest. | ||||
| 
 | ||||
| - a new invoicing how-to: https://hledger.org/invoicing.html | ||||
| - hledger-install: bump minimum stack version to 1.9.1 | ||||
|   1.7.1 fails with deps using newer cabal file syntax I believe. | ||||
| 
 | ||||
| # 04ea95cb | ||||
| - hledger-install: always do stack update, to help ensure we get the latest packages. | ||||
|   https://github.com/commercialhaskell/stack/issues/5112 | ||||
| 
 | ||||
| - Fix dead pointer in contributing (Aleksandar Dimitrov) | ||||
|   Fix link in contributing | ||||
| 
 | ||||
| - stack: ghc8.10: update extra-deps | ||||
| 
 | ||||
| - Fix typos (Brian Wignall) | ||||
| 
 | ||||
| - Add a basic example of rule parsing for the output of csb2format. (Evilham) | ||||
| - examples: Add a basic example of rule parsing for the output of csb2format. (Evilham) | ||||
|   csb2format deals with the CSB43/AEB43 format, which all banks operating in | ||||
|   Spain must support. | ||||
|   Having these example rules enables easens bootstraping for users with a | ||||
|   Spanish bank account. | ||||
| 
 | ||||
| - install: re-enable hledger-iadd & hledger-interest | ||||
|   hledger-iadd has been revised on hackage, and hledger-interest has no upper bound. | ||||
| - doc: simpler, clearer structure in the manuals and hledger.org sidebar | ||||
| 
 | ||||
| - install: always do stack update, to help ensure we get the latest | ||||
|   https://github.com/commercialhaskell/stack/issues/5112 | ||||
| - doc: a new [Quick Start](https://hledger.org/start.html) page | ||||
| 
 | ||||
| - install: update hledger-install for 1.16.1, disable addons for now | ||||
| - doc: a new [Common Tasks](https://hledger.org/hledger.html#common-tasks) section in the hledger manual | ||||
| 
 | ||||
| - lib, cli, web: bump version to 1.16.1 | ||||
| - doc: a new invoicing how-to: https://hledger.org/invoicing.html | ||||
| 
 | ||||
| - Fix build badges for Travis and AppVeyor (Rui Chen) | ||||
| - doc: Fix dead pointer in contributing (Aleksandar Dimitrov) | ||||
| 
 | ||||
| - doc: Fix build badges for Travis and AppVeyor (Rui Chen) | ||||
| 
 | ||||
| # 1.16 2019-12-01 | ||||
| 
 | ||||
|  | ||||
| @ -1,32 +1,54 @@ | ||||
| Internal/api/developer-ish changes in the hledger-lib (and hledger) packages. | ||||
| For user-visible changes, see the hledger package changelog. | ||||
| 
 | ||||
| # 445e8aa3 | ||||
| # 752e8ed4 | ||||
| 
 | ||||
| - Change Date output to yyyy-mm-dd (Brian Wignall) | ||||
| - Reader-finding utilities have moved from Hledger.Read to | ||||
|   Hledger.Read.JournalReader so the include directive can use them. | ||||
| 
 | ||||
| - Reader changes: | ||||
|   - rExperimental flag removed | ||||
|   - old rParser renamed to rReadFn | ||||
|   - new rParser field provides the actual parser. | ||||
|     This seems to require making Reader a higher-kinded type, unfortunately. | ||||
| 
 | ||||
| - Hledger.Tabular.AsciiWide now renders smoother outer borders in | ||||
|   pretty (unicode) mode. | ||||
|   Also, a fix for table edges always using single-width intersections | ||||
|   and support for double horizontal lines with single vertical lines. (Eric Mertens) | ||||
| 
 | ||||
| - Hledger.Utils.Parse: restofline can go to eof also | ||||
| 
 | ||||
| - Hledger.Read cleanup | ||||
| 
 | ||||
| - Hledger.Read.CsvReader cleanup | ||||
|   Exports added: CsvRecord, CsvValue, csvFileFor. | ||||
|   Exports removed: expandIncludes, parseAndValidateCsvRules, transactionFromCsvRecord | ||||
| 
 | ||||
| - more cleanup of amount canonicalisation helpers (#1187) | ||||
|   Stop exporting journalAmounts, overJournalAmounts, traverseJournalAmounts. | ||||
|   Rename journalAmounts helper to journalStyleInfluencingAmounts. | ||||
| 
 | ||||
| - export mapMixedAmount | ||||
| 
 | ||||
| - Don't store leaf name in PeriodReport. (Stephen Morgan) | ||||
|   Calculate at the point of consumption instead. | ||||
| 
 | ||||
| - lib: Generalise PeriodicReport to be polymorphic in the account labels. (Stephen Morgan) | ||||
| - Generalise PeriodicReport to be polymorphic in the account labels. (Stephen Morgan) | ||||
| 
 | ||||
| - lib: Use records instead of tuples in PeriodicReport. (Stephen Morgan) | ||||
| - Use records instead of tuples in PeriodicReport. (Stephen Morgan) | ||||
| 
 | ||||
| - lib: Use PeriodicReport in place of MultiBalanceReport. (Stephen Morgan) | ||||
| 
 | ||||
| - Use nubSort instead of nub . sort. (Stephen Morgan) | ||||
| - Use PeriodicReport in place of MultiBalanceReport. (Stephen Morgan) | ||||
| 
 | ||||
| - Calculate MultiReportBalance columns more efficiently. (Stephen Morgan) | ||||
|   Only calculate posting date once for each posting, and calculate their | ||||
|   columns instead of checking each DateSpan separately. | ||||
| 
 | ||||
| - ToJSON instances for all (?) remaining data types, up to Ledger | ||||
| 
 | ||||
| - move JSON instances from hledger-web to hledger-lib | ||||
| 
 | ||||
| - lib: drop "assertion" alias for nullassertion | ||||
|   Perhaps we'll stick with the null* convention. Fixes a warning in Transaction.hs. | ||||
| - Moved JSON instances from hledger-web to hledger-lib (Hledger.Data.Json), | ||||
|   and added ToJSON instances for all (?) remaining data types, up to Ledger. | ||||
| 
 | ||||
| - Dropped nullassertion's "assertion" alias, fixing a warning. | ||||
|   Perhaps we'll stick with the null* naming convention.  | ||||
| 
 | ||||
| 
 | ||||
| # 1.16.2 2020-01-14 | ||||
|  | ||||
| @ -48,14 +48,12 @@ instance ToJSON Status | ||||
| instance ToJSON GenericSourcePos | ||||
| 
 | ||||
| -- https://github.com/simonmichael/hledger/issues/1195 | ||||
| -- The default JSON output for Decimal is not very practical for JSON consumers. | ||||
| -- With repeating decimals, which can occur with implicit transaction prices, | ||||
| -- decimalMantissa will use Decimal's maximum allowance of 255 digits. | ||||
| -- (And secondly, it sometimes uses scientific notation, and that sometimes | ||||
| -- looks wrong, eg e254 instead of e-1 ?) | ||||
| 
 | ||||
| -- The default JSON output for Decimal can contain 255-digit integers | ||||
| -- (for repeating decimals caused by implicit transaction prices). | ||||
| -- JSON output is intended to be consumed by diverse apps and | ||||
| -- programming languages, which can't necessarily handle numbers with | ||||
| -- more than 15 or so significant digits. Eg, from #1195: | ||||
| -- programming languages, which can't handle numbers like that. | ||||
| -- From #1195: | ||||
| -- | ||||
| -- > - JavaScript uses 64-bit IEEE754 numbers which can only accurately | ||||
| -- >   represent integers up to 9007199254740991 (i.e. a maximum of 15 digits). | ||||
| @ -65,14 +63,21 @@ instance ToJSON GenericSourcePos | ||||
| -- > - C and C++ number limits depend on platform — most platforms should | ||||
| -- >   be able to represent unsigned integers up to 64 bits, i.e. 19 digits. | ||||
| -- | ||||
| -- It's not yet clear what is a good compromise. | ||||
| -- For now, we make Decimals look like floating point numbers with | ||||
| -- up to 10 decimal places (and an unbounded number of integer digits). | ||||
| -- This still allows unparseable numbers to be generated in theory, | ||||
| -- but hopefully this won't happen in practice. | ||||
| instance ToJSON Decimal | ||||
|   where | ||||
|     toJSON d = Number $ fromRational $ toRational $ roundTo 10 d | ||||
| -- What is the best compromise for both accuracy and practicality ? | ||||
| -- For now, we provide both the maximum precision representation | ||||
| -- (decimalPlaces & decimalMantissa), and a floating point representation | ||||
| -- with up to 10 decimal places (and an unbounded number of integer digits). | ||||
| -- We hope the mere presence of the large number in JSON won't break things, | ||||
| -- and that the overall number of significant digits in the floating point | ||||
| -- remains manageable in practice. (I'm not sure how to limit the number | ||||
| -- of significant digits in a Decimal right now.) | ||||
| instance ToJSON Decimal where | ||||
|   toJSON d = object | ||||
|     ["decimalPlaces"   .= toJSON decimalPlaces | ||||
|     ,"decimalMantissa" .= toJSON decimalMantissa | ||||
|     ,"floatingPoint"   .= toJSON (fromRational $ toRational d' :: Double) | ||||
|     ] | ||||
|     where d'@Decimal{..} = roundTo 10 d | ||||
| 
 | ||||
| instance ToJSON Amount | ||||
| instance ToJSON AmountStyle | ||||
|  | ||||
| @ -1,9 +1,19 @@ | ||||
| User-visible changes in hledger-ui. | ||||
| See also the hledger changelog. | ||||
| 
 | ||||
| # 445e8aa3 | ||||
| # 696ec499 | ||||
| 
 | ||||
| - don't enable --auto by default | ||||
| 
 | ||||
| - don't enable --forecast by default; drop the --future flag (#1193) | ||||
| 
 | ||||
|   Previously, periodic transactions occurring today were always shown, | ||||
|   in both "present" and "future" modes. | ||||
| 
 | ||||
|   Now, generation of periodic transactions and display of future | ||||
|   transactions (all kinds) are combined as "forecast mode", which can | ||||
|   be enabled with --forecast and/or the F key.  The --future flag is | ||||
|   now a hidden alias for --forecast, and deprecated. | ||||
| 
 | ||||
| # 1.16.2 2020-01-14 | ||||
| 
 | ||||
|  | ||||
| @ -1,28 +1,38 @@ | ||||
| User-visible changes in hledger-web. | ||||
| See also the hledger changelog. | ||||
| 
 | ||||
| # 445e8aa3 | ||||
| # 4c321cee | ||||
| 
 | ||||
| - web: Add option --socket to use UNIX socket file (Carl Richard Theodor Schneider) | ||||
|   This commit adds the --socket option to use hledger-web over an AF_UNIX socket | ||||
|   file. | ||||
|   It allows running multiple instances of hledger-web on the same system without | ||||
|   having to manually choose a port for each instance, which is helpful for running | ||||
|   individual instances for multiple users. In this scenario, the socket path is | ||||
|   predictable, as it can be derived from the username. | ||||
| - Fonts have been improved on certain platforms. (David Zhang) | ||||
| 
 | ||||
|   It also introduces the following dependencies: | ||||
| - IPv6 is supported (Amarandus) (#1145) | ||||
| 
 | ||||
|    - network | ||||
|      - Used to create the unix domain socket | ||||
|    - unix-compat | ||||
|      - Used to identify if the socket file is still a socket, to reduce the risk | ||||
|        of deleting a file when cleaning up the socket | ||||
| - The --host option can now take a local hostname (Amarandus) (#1145) | ||||
| 
 | ||||
| - Improve font display on different OS (David Zhang) | ||||
| - New --socket option to run hledger-web over an AF_UNIX socket file. (Carl Richard Theodor Schneider) | ||||
|   This allows running multiple instances of hledger-web on the same | ||||
|   system without having to manually choose a port for each instance, | ||||
|   which is helpful for running individual instances for multiple | ||||
|   users. In this scenario, the socket path is predictable, as it can | ||||
|   be derived from the username. | ||||
| 
 | ||||
| - move JSON instances from hledger-web to hledger-lib | ||||
| - The edit and upload forms now normalise line endings, avoiding parse | ||||
|   errors (#1194). Summary of current behaviour: | ||||
| 
 | ||||
|   - hledger add and import commands will append with (at least some) | ||||
|     unix line endings, possibly causing the file to have mixed line | ||||
|     endings | ||||
| 
 | ||||
|   - hledger-web edit and upload forms will write the file with | ||||
|     the current system's native line endings, ie changing all | ||||
|     line endings if the file previously used foreign line endings. | ||||
| 
 | ||||
| - Numbers in JSON output now provide a floating point Number | ||||
|   representation as well as our native Decimal object representation, | ||||
|   since the later can sometimes contain 255-digit integers. The | ||||
|   floating point numbers can have up to 10 decimal digits (and an | ||||
|   unbounded number of integer digits.) | ||||
|   Experimental, suggestions needed. (#1195) | ||||
| 
 | ||||
| 
 | ||||
| # 1.16.2 2020-01-14 | ||||
|  | ||||
| @ -1,25 +1,49 @@ | ||||
| User-visible changes in the hledger command line tool and library. | ||||
| 
 | ||||
| 
 | ||||
| # 445e8aa3 | ||||
| # 2c8a6e98 | ||||
| 
 | ||||
| - Fix timeclock format parsing (Jakob Schöttl) | ||||
|   Fix presumably copy-paste errors | ||||
| ## General | ||||
| 
 | ||||
|   timeclock format has only timeclock lines or empty/comment lines | ||||
| - hledger's default date format is now YYYY-MM-DD (ISO-8601 dates). | ||||
|   (Brian Wignall, Jakob Schöttl, Simon Michael) | ||||
| 
 | ||||
|   Update test format to v3, add new tests | ||||
| - Drop the file format auto-detection feature. | ||||
| 
 | ||||
|   Throw error on unexpected clock codes in timeclock format | ||||
|   For a long time hledger has auto-detected the file format when it's | ||||
|   not known, eg when reading from a file with unusual extension (like | ||||
|   .dat or .txt), or from standard input (-f-), or when using the | ||||
|   include directive (which currently ignores file extensions).  This | ||||
|   was done by trying all readers until one succeeded.  This worked | ||||
|   well in practice. But recent changes to timedot format have made | ||||
|   this kind of auto-detection unreliable. (timedot and journal formats | ||||
|   overlap). | ||||
| 
 | ||||
|   Fix missing case in pattern matching | ||||
|   For predictability and to minimise confusion, hledger will no longer | ||||
|   guess; when there's no file extension or reader prefix available, it | ||||
|   always assumes journal format. | ||||
| 
 | ||||
| - Parse CSV rule keywords case insensitively (Aleksandar Dimitrov) | ||||
|   To specify one of the other formats, you must use its standard file | ||||
|   extension (`.timeclock`, `.timedot`, `.csv`, `.ssv`, `.tsv`), or a | ||||
|   reader prefix (`-f csv:foo.txt`, `-f timedot:-`). | ||||
| 
 | ||||
| - Correct finding latest date in queryEndDate Or queries and simplify | ||||
|   Experimental, feedback welcome. | ||||
| 
 | ||||
| - Fix extra $ symbol (Mateus Furquim) | ||||
| 
 | ||||
| - --output-format now rejects invalid formats | ||||
| 
 | ||||
| - Numbers in JSON output now provide a floating point Number | ||||
|   representation as well as our native Decimal object representation, | ||||
|   since the later can sometimes contain 255-digit integers. The | ||||
|   floating point numbers can have up to 10 decimal digits (and an | ||||
|   unbounded number of integer digits.) | ||||
|   Experimental, suggestions needed. (#1195) | ||||
| 
 | ||||
| - Fix finding latest date in queryEndDate Or queries and simplify | ||||
|   date comparison code. (Stephen Morgan) | ||||
| 
 | ||||
| - Fix issue 457 (Jacek Generowicz) | ||||
| - Fix issue 457. (Jacek Generowicz) | ||||
|   Issue #457 pointed out that commands such as | ||||
| 
 | ||||
|       hledger ui 'amt:>200' | ||||
| @ -29,23 +53,96 @@ User-visible changes in the hledger command line tool and library. | ||||
|   `amt:>20` and the `>` character was interpreted as a shell redirection | ||||
|   operator, rather than as part of the argument. | ||||
| 
 | ||||
|   The machinery for quoting or escaping arguements which cointain | ||||
|   The machinery for quoting or escaping arguements which contain | ||||
|   characters which require quoting or escaping (thus far whitespace and | ||||
|   quotes) already existed. This solution simply adds shell stdio | ||||
|   redirection characters to this set. | ||||
| 
 | ||||
|   Fixes #457 | ||||
| ## commands | ||||
| 
 | ||||
| - Change Date output to yyyy-mm-dd (Brian Wignall) | ||||
| - add: you can use `<` to undo and redo previous inputs (Gaith Hallak) | ||||
| 
 | ||||
| - Drop the --separator command line argument, add the `separator` CSV rule instead (Aleksandar Dimitrov) | ||||
| - bs, cf, is, bal, print, reg: support json output | ||||
| 
 | ||||
| - Remember the previously entered values when stepping forward (Gaith Hallak) | ||||
| - bs, cf, is: fix excess subreport columns in csv output | ||||
| 
 | ||||
| - Show the previous input in the input area after the back command (Gaith Hallak) | ||||
| - bs, cf, is, bal: fix an issue with border intersections in | ||||
|   --pretty-tables output. (Eric Mertens) | ||||
| 
 | ||||
| - Change the '<' command to go back one step (Gaith Hallak) | ||||
| - close: fix a rounding bug that could generate unbalanced transactions. (#1164) | ||||
| 
 | ||||
| - close: hide cost prices by default, show them with --show-costs. | ||||
|   close no longer preserves costs (transaction prices) unless you ask | ||||
|   it to, since that can generate huge entries when there are many | ||||
|   foreign currency/investment transactions. (#1165) | ||||
| 
 | ||||
| - close: equity amounts are omitted by default, for simpler entries; | ||||
|   -x/--explicit shows them (usually causing more postings). (#1165) | ||||
| 
 | ||||
| - close: --interleaved generates equity postings alongside each closed | ||||
|   account, making troubleshooting easier. | ||||
| 
 | ||||
| - close: "equity:opening/closing balances" is now the default | ||||
|   closing and opening account. | ||||
| 
 | ||||
| - close: --close-desc/--open-desc customise the closing/opening | ||||
|   transaction descriptions. (#1165) | ||||
| 
 | ||||
| - close: some --open*/--close* flags have been simplified for memorability: | ||||
| 
 | ||||
|   --closing -> --close | ||||
|   --opening -> --open | ||||
|   --close-to -> --close-acct | ||||
|   --open-from -> --open-acct | ||||
| 
 | ||||
|   The old flags are accepted as hidden aliases, and deprecated. (#1165) | ||||
| 
 | ||||
| - print, register: a new valuation type, --value=then, shows the | ||||
|   market value at each posting's date. | ||||
| 
 | ||||
| - print: -V/-X/--value now imply -x/--explicit, as -B/--cost does. | ||||
|   This avoids a bug where print -V of a transaction with an implicit | ||||
|   commodity conversion would convert only some of its postings to value. | ||||
| 
 | ||||
| ## journal format | ||||
| 
 | ||||
| - The include directive no longer tries all readers.  It now picks | ||||
|   just one, based on the included file's extension, defaulting to | ||||
|   journal.  (It doesn't yet handle a reader prefix.) | ||||
| 
 | ||||
| - The default commodity (D) directive now limits display precision too. (#1187) | ||||
|   D directives are now fully equivalent to commodity directives for | ||||
|   setting a commodity's display style. (Previously it couldn't limit | ||||
|   the number of decimal places.)  When both kinds of directive exist, | ||||
|   commodity directives take precedence.  When there are multiple D | ||||
|   directives in the journal, only the last one affects display style. | ||||
| 
 | ||||
| ## csv format | ||||
| 
 | ||||
| - Conditional blocks can now match single fields. \o/ | ||||
| 
 | ||||
| - The experimental --separator command line option has been dropped, | ||||
|   replaced a new `separator` directive in CSV rule files. (Aleksandar Dimitrov) | ||||
|   Also the `.tsv` and `.ssv` file extensions are now recognised, | ||||
|   and set the default `separator` to TAB and semicolon respectively. | ||||
|   (#1179) | ||||
| 
 | ||||
| - Allow manual assignment of the "expenses:unknown" account name. (#1192) | ||||
| 
 | ||||
| - CSV rule keywords are now case insensitive. (Aleksandar Dimitrov) | ||||
| 
 | ||||
| ## timeclock format | ||||
| 
 | ||||
| - Misc. fixes making parsing more robust. (Jakob Schöttl) | ||||
| 
 | ||||
| ## timedot format | ||||
| 
 | ||||
| - More support for org mode: org headlines can now be used for date | ||||
|   lines and timelog items (the stars are ignored). Also, any org | ||||
|   headlines before the first date line are ignored. | ||||
| 
 | ||||
| - You can now write a description after a date, which will be used in | ||||
|   all of that day's transactions. | ||||
| 
 | ||||
| 
 | ||||
| # 1.16.2 2020-01-14 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user