Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							d6a4310d8f 
							
						 
					 
					
						
						
							
							lib,cli,ui,bin: Eliminate all uses of Mixed outside of Hledger.Data.Amount.  
						
						... 
						
						
						
						Exceptions are for dealing with the pamount field, which is really just
dealing with an unnormalised list of amounts.
This creates an API for dealing with MixedAmount, so we never have to
access the internals outside of Hledger.Data.Amount.
Also remove a comment, since it looks like #1207  has been resolved. 
						
					 
					
						2021-03-18 09:47:59 +11:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							2ada289e28 
							
						 
					 
					
						
						
							
							lib: Include sign in TotalPrice in Amount, rather than relying on the sign of  
						
						... 
						
						
						
						aquantity.
Journal entries still require a positive @@ price, but now the sign is
set after parsing, rather than when converting in amountToCost.
The reason for this change is that, if we're going to perform arithmetic
on Amount with TotalCost, then the presence of aquantity=0 means that
amountToCost would render the total cost as 0, because signum 0 == 0.
This makes journal entries like the following impossible to balance:
2000-01-01
    a  0 @@ 10 A
    b  -10 A 
						
					 
					
						2021-02-23 14:54:39 -08:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							e1e97f977e 
							
						 
					 
					
						
						
							
							;journal: hints for possible future work related to  #1461  
						
						
						
					 
					
						2021-01-13 18:15:10 -08:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							034c317496 
							
						 
					 
					
						
						
							
							journal: allow commodity directive to set style of no-symbol commodity ( #1461 )  
						
						... 
						
						
						
						(cherry picked from commit c5571f6468ab11ffe3cd3f86a86f0b3253be10d1) 
						
					 
					
						2021-01-13 17:57:18 -08:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							e4e533eb9f 
							
						 
					 
					
						
						
							
							lib,cli,ui: Replace some uses of String with Text, get rid of some unpacks, clean up showMixed options.  
						
						
						
					 
					
						2021-01-02 15:08:09 +11:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							07a7c3d3a8 
							
						 
					 
					
						
						
							
							lib: Use Text and Text builder only in postingAsLines.  
						
						
						
					 
					
						2021-01-02 15:08:09 +11:00 
						 
				 
			
				
					
						
							
							
								aragaer 
							
						 
					 
					
						
						
						
						
							
						
						
							2084b845e0 
							
						 
					 
					
						
						
							
							journal: Ignore AUTO commodity when strict checking  
						
						... 
						
						
						
						AUTO commodity is a placeholder for postings with missing amounts. It
should be ignored when doing a strict commodity check.
Fixes  #1419  
						
					 
					
						2020-12-31 09:54:23 -08:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							8306420b61 
							
						 
					 
					
						
						
							
							check: also check "accounts"/"commodities" on demand  
						
						... 
						
						
						
						(cherry picked from commit 0c2bf54f2955e3a25fd0282acc42608f957abaea) 
						
					 
					
						2020-12-31 08:33:36 -08:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							31ea37a785 
							
						 
					 
					
						
						
							
							;check: accounts, commodities, payees, ordereddates: improve errors  
						
						... 
						
						
						
						Error messages for these four are now a bit fancier and more
consistent. But not yet optimised for machine readability.
Cf #1436 .
Added to hledger-lib: chomp1, linesPrepend[2]. 
						
					 
					
						2020-12-30 18:13:34 -08:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							e59603a04a 
							
						 
					 
					
						
						
							
							;check errors: drop unwanted newline & "strict mode" prefix  
						
						
						
					 
					
						2020-12-30 18:08:31 -08:00 
						 
				 
			
				
					
						
							
							
								Damien Cassou 
							
						 
					 
					
						
						
						
						
							
						
						
							b47d582583 
							
						 
					 
					
						
						
							
							;check: fixes  
						
						
						
					 
					
						2020-12-30 18:08:31 -08:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							3c232fbd7d 
							
						 
					 
					
						
						
							
							check: add "payees" check requiring payee declarations  
						
						
						
					 
					
						2020-12-30 18:08:30 -08:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							8c23a16bf8 
							
						 
					 
					
						
						
							
							journal: strict mode also requires commodity declarations  
						
						
						
					 
					
						2020-11-27 17:54:55 -08:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							ec3ad14ae5 
							
						 
					 
					
						
						
							
							strict mode: -s/--strict requires posted accounts to be declared  
						
						
						
					 
					
						2020-11-26 08:48:16 -08:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							0dc8eca68a 
							
						 
					 
					
						
						
							
							lib: remove partial code from journalApplyAliases etc.  
						
						
						
					 
					
						2020-11-25 21:06:31 -08:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							94b3f090be 
							
						 
					 
					
						
						
							
							csv, timedot, timeclock: respect --alias options ( fix   #859 )  
						
						... 
						
						
						
						Command-line account aliases now also affect transactions read
from these formats (not just journal format).
lib: journalApplyAliases, transactionApplyAliases, postingApplyAliases
helpers have been added. 
						
					 
					
						2020-11-24 09:17:01 -08:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							8bdb28a991 
							
						 
					 
					
						
						
							
							csv, journal: infer style from first amount, as documented, not last  
						
						... 
						
						
						
						This has been broken since hledger 1.12 (!) 
						
					 
					
						2020-11-10 08:58:28 -08:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							bfb5c6ee2a 
							
						 
					 
					
						
						
							
							lib: global commodity display styles can be set in InputOpts or Journal, overriding all others  
						
						
						
					 
					
						2020-11-09 17:14:37 -08:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							0eddbe7a4b 
							
						 
					 
					
						
						
							
							;lib: reader cleanups  
						
						
						
					 
					
						2020-11-09 17:14:37 -08:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							524e23bc37 
							
						 
					 
					
						
						
							
							csv: decimal-mark rule to help with number parsing  
						
						... 
						
						
						
						Journal keeps a new piece of parsing state, a decimal mark character,
which can optionally be set to force the number format expected by all
amount parsers. 
						
					 
					
						2020-11-08 16:39:03 -08:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							dae007a372 
							
						 
					 
					
						
						
							
							cleanup  
						
						
						
					 
					
						2020-11-08 16:39:03 -08:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							2aaab4b1b7 
							
						 
					 
					
						
						
							
							lib: Make Default instances clearer, remove Default instance for Bool.  
						
						
						
					 
					
						2020-10-23 14:14:11 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							c5513ba722 
							
						 
					 
					
						
						
							
							;tweak a few parse errors for clarity, consistency ( #1329 )  
						
						
						
					 
					
						2020-09-19 08:10:39 -07:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							07dd30c1e5 
							
						 
					 
					
						
						
							
							lib,cli,ui: Change to consistent naming scheme for Hledger.Utils.Regex.  
						
						
						
					 
					
						2020-09-01 11:36:34 +10:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							af31d6e140 
							
						 
					 
					
						
						
							
							lib,cli,ui: Remove redundant Typeable and Data instances.  
						
						... 
						
						
						
						Also add some explicit import lists. 
						
					 
					
						2020-08-31 15:41:30 +10:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							e5371d5a6a 
							
						 
					 
					
						
						
							
							lib,cli,ui,web: Make Regexp a wrapper for Regex.  
						
						
						
					 
					
						2020-08-31 12:04:45 +10:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							7182fa4746 
							
						 
					 
					
						
						
							
							lib: Improve documentation for amountRoundedQuantity, fix a typo.  
						
						
						
					 
					
						2020-08-30 23:01:04 +10:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							f6fa76bba7 
							
						 
					 
					
						
						
							
							lib,cli: Get rid of magic values for asprecision, use a sum type instead.  
						
						
						
					 
					
						2020-08-30 23:00:35 +10:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							ee1ef9606b 
							
						 
					 
					
						
						
							
							lib: Fail when parsing number with more than 255 decimal places.  
						
						
						
					 
					
						2020-08-30 22:30:24 +10:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							ba59fed6b2 
							
						 
					 
					
						
						
							
							lib: Replace more instances of fromIntegral with safer versions.  
						
						
						
					 
					
						2020-08-30 22:20:58 +10:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							ca2e55c954 
							
						 
					 
					
						
						
							
							lib: Replace some fromIntegral with toInteger.  
						
						
						
					 
					
						2020-08-30 22:20:58 +10:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							b5ed2067d9 
							
						 
					 
					
						
						
							
							lib: Make aprecision and DigitGroupStyle use Word8 instead of Int. exponentp now parses an Integer rather than an Int.  
						
						
						
					 
					
						2020-08-30 22:20:53 +10:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							108c548240 
							
						 
					 
					
						
						
							
							journal: when an account alias contains a bad regexp, show details  
						
						... 
						
						
						
						lib: accountNameApplyAliases, accountNameApplyAliasesMemo are now
total 
						
					 
					
						2020-08-06 15:27:40 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							3f55c23603 
							
						 
					 
					
						
						
							
							;review, tag all error calls with an easier to find PARTIAL: comment ( #1312 )  
						
						
						
					 
					
						2020-08-05 16:08:33 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							242c05fc9a 
							
						 
					 
					
						
						
							
							lib, journal: parseQuery, modifyTransactions are now total ( #1312 )  
						
						... 
						
						
						
						modifyTransactions now also requires a reference date, for parsing queries.
Relative dates are now permitted in auto posting rules. 
						
					 
					
						2020-08-05 13:44:04 -07:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							dc41cee2b0 
							
						 
					 
					
						
						
							
							lib: datep now requires years to be at least four digits.  
						
						
						
					 
					
						2020-07-31 17:22:27 -07:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							081ee390ab 
							
						 
					 
					
						
						
							
							lib: Change skipMany spacenonewline to takeWhileP Nothing isNonNewlineSpace.  
						
						
						
					 
					
						2020-07-22 14:58:53 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							765fb732c9 
							
						 
					 
					
						
						
							
							debug: move command parsing debug output down to level 8  
						
						
						
					 
					
						2020-07-03 11:37:01 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							e1ddfc3a1b 
							
						 
					 
					
						
						
							
							lib: also infer market prices from transactions, like Ledger ( #1239 ) (WIP)  
						
						
						
					 
					
						2020-05-25 17:45:31 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							40c296a446 
							
						 
					 
					
						
						
							
							lib: rename finaliseJournal -> journalFinalise  
						
						
						
					 
					
						2020-05-23 09:45:35 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							3ad2e50ec5 
							
						 
					 
					
						
						
							
							journal: also parse Ledger-style "virtual posting costs" - (@), (@@)  
						
						
						
					 
					
						2020-04-08 20:22:03 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							847f924828 
							
						 
					 
					
						
						
							
							journal: comment fix  
						
						
						
					 
					
						2020-04-08 20:00:18 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							f4a1a31712 
							
						 
					 
					
						
						
							
							journal: also support lot dates ([DATE])  
						
						
						
					 
					
						2020-04-08 19:55:55 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							fedde7fab1 
							
						 
					 
					
						
						
							
							journal: also support the total lot price variants ({{}}, {{=}})  
						
						
						
					 
					
						2020-04-08 19:18:39 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							ea3b290dd0 
							
						 
					 
					
						
						
							
							journal: more flexible, Ledger-compatible parsing of lot prices  
						
						... 
						
						
						
						We now accept (but still ignore) a fixed or nonfixed ({=} or {}) lot
price following a posting amount, and it may appear before or after a
transaction price (@ or @@). And it may no longer appear after a
balance assertion.
Also: fixedlotpricep renamed to lotpricep, now also parses non-fixed
lot prices. A bit of amount parsers cleanup. 
						
					 
					
						2020-04-08 15:26:18 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							f219bba494 
							
						 
					 
					
						
						
							
							allow spaces between sign and number, when parsing  
						
						
						
					 
					
						2020-04-04 14:18:04 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							9868d7f20d 
							
						 
					 
					
						
						
							
							;lib: update emacs code-folding config  
						
						... 
						
						
						
						orgstruct-mode was dropped from org 9.2, and I shouldn't have been
forcing it on anyway.
The new config allows its "replacement", outshine-mode, to do similar
code folding when you press tab on any of the lines matching
outline-regexp. But only if you patch it as mentioned at
https://github.com/alphapapa/outshine/issues/77 .
Enable it by, eg: (add-hook 'haskell-mode-hook 'outshine-mode) 
						
					 
					
						2020-03-28 17:09:47 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							6a01b1f438 
							
						 
					 
					
						
						
							
							;lib, journal: fix some "decimal point" mentions  
						
						
						
					 
					
						2020-03-17 13:36:19 -07:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							e0dde6fe57 
							
						 
					 
					
						
						
							
							lib: Remove non-law-abiding Monoid instance for Journal.  
						
						
						
					 
					
						2020-03-02 12:45:30 -08:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							374be00223 
							
						 
					 
					
						
						
							
							;lib: fix org headings and doctest setup that were breaking haddock  
						
						... 
						
						
						
						(and in some cases, installation).
[ci skip] 
						
					 
					
						2020-03-01 22:00:39 -08:00