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 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							371b349b2e 
							
						 
					 
					
						
						
							
							lib,cli: Replace parsedate and mkdatespan with direct applications of fromGregorian, transaction now takes Day instead of a date string.  
						
						
						
					 
					
						2020-08-29 15:08:28 -07:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							2fd678e415 
							
						 
					 
					
						
						
							
							lib,cli,ui: Remove old CPP directives made redundant by version bounds.  
						
						
						
					 
					
						2020-08-29 15:08:28 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							a3c749f9e7 
							
						 
					 
					
						
						
							
							csv: fix inferring separator from .ssv/.tsv file extensions  
						
						... 
						
						
						
						This was documented but untested and may have never worked. 
						
					 
					
						2020-08-21 08:59:55 -07: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 
							
						 
					 
					
						
						
						
						
							
						
						
							ffb5cf0773 
							
						 
					 
					
						
						
							
							lib: Ensure parsed years have at least 4 digits.  
						
						
						
					 
					
						2020-07-31 17:22:27 -07:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							7b9f9ae49c 
							
						 
					 
					
						
						
							
							lib: Refactor reportingintervalp to be more compact and do less backtracking.  
						
						
						
					 
					
						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 
							
						 
					 
					
						
						
						
						
							
						
						
							fd9171df07 
							
						 
					 
					
						
						
							
							journal: account types: add Cash, tweak fallback regexp, rewrite docs  
						
						
						
					 
					
						2020-07-17 08:02:12 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Sanders 
							
						 
					 
					
						
						
						
						
							
						
						
							5ec0a518da 
							
						 
					 
					
						
						
							
							csv: Add support for & operators in conditional blocks  
						
						
						
					 
					
						2020-07-07 12:51:01 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							765fb732c9 
							
						 
					 
					
						
						
							
							debug: move command parsing debug output down to level 8  
						
						
						
					 
					
						2020-07-03 11:37:01 -07:00 
						 
				 
			
				
					
						
							
							
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							21349c161e 
							
						 
					 
					
						
						
							
							lib: only memoize in csv reader when there are more than 15 cond. blocks  
						
						
						
					 
					
						2020-06-22 12:10:47 -07:00 
						 
				 
			
				
					
						
							
							
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							8844ef1b5f 
							
						 
					 
					
						
						
							
							lib: put conditionalblockp pasrser first as it is a more common case  
						
						
						
					 
					
						2020-06-22 12:10:47 -07:00 
						 
				 
			
				
					
						
							
							
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							ed01e57b23 
							
						 
					 
					
						
						
							
							lib: tabular rules separator cannot be space  
						
						
						
					 
					
						2020-06-22 12:10:47 -07:00 
						 
				 
			
				
					
						
							
							
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							c397b90b5b 
							
						 
					 
					
						
						
							
							lib: memoize "if blocks that assign filed f" for 50% CSV reader speedup  
						
						
						
					 
					
						2020-06-22 12:10:47 -07:00 
						 
				 
			
				
					
						
							
							
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							834e9ec104 
							
						 
					 
					
						
						
							
							lib: condition tables in csv rules + tests  
						
						
						
					 
					
						2020-06-22 12:10:47 -07:00 
						 
				 
			
				
					
						
							
							
								Martin Michlmayr 
							
						 
					 
					
						
						
						
						
							
						
						
							7310951178 
							
						 
					 
					
						
						
							
							doc: fix typos  
						
						
						
					 
					
						2020-06-16 19:13:18 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							684cb45e1a 
							
						 
					 
					
						
						
							
							tweak debug levels, document some guidelines  
						
						... 
						
						
						
						Beginnings of a project-wide policy for what output to show at
each debug level, for now. Later we'll want more flexibility,
eg filtering by topic. 
						
					 
					
						2020-06-14 17:17:09 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							00e9e844ac 
							
						 
					 
					
						
						
							
							journal: the include directive now accepts a file format prefix  
						
						... 
						
						
						
						This works with glob patterns too, applying the prefix to each path.
This can be useful when included files don't have the standard file
extension, eg:
include timedot:2020*.md 
						
					 
					
						2020-06-04 13:59:26 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							97f2235bca 
							
						 
					 
					
						
						
							
							;lib: refactor amount cost functions  
						
						... 
						
						
						
						Rename costOfAmount -> amountCost, costOfMixedAmount -> mixedAmountCost,
drop amountToCost, mixedAmountToCost. 
						
					 
					
						2020-05-31 15:48:08 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							660ba7e1d9 
							
						 
					 
					
						
						
							
							lib: clarify zero-checking function names  
						
						... 
						
						
						
						isZeroAmount                -> amountLooksZero
isReallyZeroAmount          -> amountIsZero
isZeroMixedAmount           -> mixedAmountLooksZero
isReallyZeroMixedAmount     -> mixedAmountIsZero
isReallyZeroMixedAmountCost dropped 
						
					 
					
						2020-05-29 18:57:22 -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 
							
						 
					 
					
						
						
						
						
							
						
						
							2c1cbb7956 
							
						 
					 
					
						
						
							
							;csv: remove a comment breaking doctests  
						
						
						
					 
					
						2020-05-12 18:01:05 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							6b2dfad98c 
							
						 
					 
					
						
						
							
							;csv: clarify that whitespace is not stripped when matching  
						
						
						
					 
					
						2020-05-09 15:43:44 -07:00 
						 
				 
			
				
					
						
							
							
								Vladimir Sorokin 
							
						 
					 
					
						
						
						
						
							
						
						
							5b88bfb834 
							
						 
					 
					
						
						
							
							csv: Increase maximum number of postings in CSV reader from 9 to 99.  
						
						... 
						
						
						
						The ordering of journalfieldnames is changed in order to comply with the requirement stated in the comment:
"Names must precede any other name they contain, for the parser".
If left unchanged, "account1" would precede "account11", "account12", and so on, which would break the parsing.
With the new ordering, "account11" precedes "account1". 
						
					 
					
						2020-04-26 14:52:02 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							784d882e01 
							
						 
					 
					
						
						
							
							csv: combine amount assignments better, fix 1.17.1 regression ( #1226 )  
						
						
						
					 
					
						2020-04-16 19:04:36 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							b149c0ba0c 
							
						 
					 
					
						
						
							
							;csv: tweak the too-many-amounts error more  
						
						
						
					 
					
						2020-04-16 12:59:19 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							3693fd4eb6 
							
						 
					 
					
						
						
							
							;csv: mention doc url in too many amounts error ( #1226 )  
						
						
						
					 
					
						2020-04-16 08:36:04 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							1428291dd6 
							
						 
					 
					
						
						
							
							don't let case of file extension break file format detection ( #1225 )  
						
						
						
					 
					
						2020-04-15 11:31:28 -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 
							
						 
					 
					
						
						
						
						
							
						
						
							3cc79a67f2 
							
						 
					 
					
						
						
							
							csv: don't discard explicit assignments of a 0 amount  
						
						... 
						
						
						
						Eg: an `amount1  $0.00` assignment was generating a posting1 with
missing amount. 
						
					 
					
						2020-04-05 14:19:02 -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 
							
						 
					 
					
						
						
						
						
							
						
						
							e15eabdf15 
							
						 
					 
					
						
						
							
							csv: ignore amount if any amountN's are assigned; improve error msg  
						
						... 
						
						
						
						The change for hledger 1.17.1 broke one of my csv rules, where I used
`amount` but then tried to override it with `amountN`s in a
conditional block; the two clashed. Now in that situation any
`amountN`s take precedence, causing `amount` to be ignored entirely.
Also clarified the "too many non-zero amounts" error message a bit. 
						
					 
					
						2020-03-25 18:09:41 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							4e7a893efc 
							
						 
					 
					
						
						
							
							;csv: cleanup  
						
						
						
					 
					
						2020-03-17 17:55:32 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							84165f5a0c 
							
						 
					 
					
						
						
							
							;journal: fix tests  
						
						
						
					 
					
						2020-03-17 17:48:17 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							2cec32cebe 
							
						 
					 
					
						
						
							
							journal: a more verbose commodity error message with examples  
						
						
						
					 
					
						2020-03-17 13:36:48 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							6a01b1f438 
							
						 
					 
					
						
						
							
							;lib, journal: fix some "decimal point" mentions  
						
						
						
					 
					
						2020-03-17 13:36:19 -07:00 
						 
				 
			
				
					
						
							
							
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							a1361ecc04 
							
						 
					 
					
						
						
							
							csv: don't force a second posting with amount1  
						
						... 
						
						
						
						A rewrite and simplification of the posting-generating code. The
"special handling for pre 1.17 rules" should now be less noticeable.
amount1/amount2 no longer force a second posting or explicit amounts
on both postings. (Only amount/amount-in/amount-out do that.)
Error messages and handling of corner cases may be more robust, also. 
						
					 
					
						2020-03-16 16:18:58 -07:00 
						 
				 
			
				
					
						
							
							
								Stephen Morgan 
							
						 
					 
					
						
						
						
						
							
						
						
							e0dde6fe57 
							
						 
					 
					
						
						
							
							lib: Remove non-law-abiding Monoid instance for Journal.  
						
						
						
					 
					
						2020-03-02 12:45:30 -08:00