Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							a87baf4b29 
							
						 
					 
					
						
						
							
							;csv: refactor: rename JournalFieldName -> HledgerFieldName  
						
						 
						
						
						
					 
					
						2020-02-27 01:00:35 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							be5fc09ebb 
							
						 
					 
					
						
						
							
							;csv: refactor: more transactionFromCsvRecord cleanups  
						
						 
						
						
						
					 
					
						2020-02-27 00:41:10 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							93358d72b4 
							
						 
					 
					
						
						
							
							;csv: refactor transactionFromCsvRecord  
						
						 
						
						
						
					 
					
						2020-02-27 00:30:45 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							02f2e3bd9b 
							
						 
					 
					
						
						
							
							csv: refine unknown accounts more thoroughly, a better fix for  #1192  
						
						 
						
						
						
					 
					
						2020-02-26 22:45:49 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							58bb0df5ab 
							
						 
					 
					
						
						
							
							csv: undo failed  #1192  fix, causing "_unknown_" accounts; refactor  
						
						 
						
						... 
						
						
						
						Restore the old logic, while also trying to clarify this
transaction-generating code, and add some tests.
See also #1198 . 
						
					 
					
						2020-02-26 21:46:11 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							fb788a64e8 
							
						 
					 
					
						
						
							
							;csv: cleanups, drop match operator for now  
						
						 
						
						
						
					 
					
						2020-02-26 11:52:47 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							d537f1fe07 
							
						 
					 
					
						
						
							
							csv: allow single field matching; more docs and tests  
						
						 
						
						
						
					 
					
						2020-02-26 08:55:55 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							becd891dd1 
							
						 
					 
					
						
						
							
							;csv: Matcher type, simplify  
						
						 
						
						
						
					 
					
						2020-02-25 13:44:45 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							1cbce98a68 
							
						 
					 
					
						
						
							
							;csv: refactor, ConditionalBlock ADT  
						
						 
						
						
						
					 
					
						2020-02-25 13:44:45 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							7ec25da13a 
							
						 
					 
					
						
						
							
							web: edit/upload: normalise line endings, avoiding parse errors ( #1194 )  
						
						 
						
						... 
						
						
						
						Renamed: writeValidJournal -> writeJournalTextIfValidAndChanged
Added comments clarifying line ending behaviour of:
add, import, appendToJournalFileOrStdout, readFilePortably,
writeFileWithBackupIfChanged, writeJournalTextIfValidAndChanged
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. 
						
					 
					
						2020-02-24 14:04:44 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							2d90074b2e 
							
						 
					 
					
						
						
							
							;csv: avoid a potential display of internal placeholder ( #1192 )  
						
						 
						
						... 
						
						
						
						With a multicommodity amount, the unknown account name will always be
"expenses:unknown". 
						
					 
					
						2020-02-15 14:02:53 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							017d3355f8 
							
						 
					 
					
						
						
							
							csv: allow manual assignment of "expenses:unknown" again ( fix   #1192 )  
						
						 
						
						
						
					 
					
						2020-02-15 13:52:59 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jakob Schöttl 
							
						 
					 
					
						
						
						
						
							
						
						
							50acfc9119 
							
						 
					 
					
						
						
							
							Fix documentation, make ISO date format standard in some places  
						
						 
						
						
						
					 
					
						2020-02-09 07:26:54 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							b3711488a7 
							
						 
					 
					
						
						
							
							lib: apply canonical display styles to auto posting amounts too  
						
						 
						
						
						
					 
					
						2020-01-31 06:00:06 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							fccd88149d 
							
						 
					 
					
						
						
							
							;lib: refactor, clarify finaliseJournal a bit  
						
						 
						
						
						
					 
					
						2020-01-31 05:39:16 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							80ab45984b 
							
						 
					 
					
						
						
							
							csv: also recognise .tsv, .ssv extensions; document thoroughly ( #1179 )  
						
						 
						
						
						
					 
					
						2020-01-20 12:58:47 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jakob Schöttl 
							
						 
					 
					
						
						
						
						
							
						
						
							c7a88b50fb 
							
						 
					 
					
						
						
							
							Fix timeclock format parsing  
						
						 
						
						... 
						
						
						
						Fix presumably copy-paste errors
timeclock format has only timeclock lines or empty/comment lines
Update test format to v3, add new tests
Throw error on unexpected clock codes in timeclock format
Fix missing case in pattern matching 
						
					 
					
						2020-01-12 13:17:36 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Aleksandar Dimitrov 
							
						 
					 
					
						
						
						
						
							
						
						
							3ead97975c 
							
						 
					 
					
						
						
							
							Inline function, add debug statement  
						
						 
						
						
						
					 
					
						2020-01-05 14:45:57 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Aleksandar Dimitrov 
							
						 
					 
					
						
						
						
						
							
						
						
							9011aaa5ba 
							
						 
					 
					
						
						
							
							Refactor getSeparator  
						
						 
						
						
						
					 
					
						2020-01-05 14:45:57 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Aleksandar Dimitrov 
							
						 
					 
					
						
						
						
						
							
						
						
							92f680875f 
							
						 
					 
					
						
						
							
							Parse reserved words case insensitively  
						
						 
						
						
						
					 
					
						2020-01-05 14:45:57 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Aleksandar Dimitrov 
							
						 
					 
					
						
						
						
						
							
						
						
							8df4e1ed83 
							
						 
					 
					
						
						
							
							Remove --separator command line argument  
						
						 
						
						
						
					 
					
						2020-01-05 14:45:57 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Aleksandar Dimitrov 
							
						 
					 
					
						
						
						
						
							
						
						
							02d9205af7 
							
						 
					 
					
						
						
							
							Allow separator to be overridden from command line  
						
						 
						
						... 
						
						
						
						This also fixes that parsing separators on the command line and the
rules file was not handled the same way. 
						
					 
					
						2020-01-05 14:45:57 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Aleksandar Dimitrov 
							
						 
					 
					
						
						
						
						
							
						
						
							b524a088c7 
							
						 
					 
					
						
						
							
							Implement getting separator from rules  
						
						 
						
						
						
					 
					
						2020-01-05 14:45:57 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Aleksandar Dimitrov 
							
						 
					 
					
						
						
						
						
							
						
						
							32ccc3a2b2 
							
						 
					 
					
						
						
							
							Add directive  
						
						 
						
						
						
					 
					
						2020-01-05 14:45:57 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Aleksandar Dimitrov 
							
						 
					 
					
						
						
						
						
							
						
						
							ec0f55d18e 
							
						 
					 
					
						
						
							
							Add missing type signature  
						
						 
						
						
						
					 
					
						2020-01-05 14:45:57 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Aleksandar Dimitrov 
							
						 
					 
					
						
						
						
						
							
						
						
							b104b3b8a3 
							
						 
					 
					
						
						
							
							Explictly discard result  
						
						 
						
						
						
					 
					
						2020-01-05 14:45:57 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Aleksandar Dimitrov 
							
						 
					 
					
						
						
						
						
							
						
						
							42d585d20b 
							
						 
					 
					
						
						
							
							Refactor: rename variable  
						
						 
						
						
						
					 
					
						2020-01-05 14:45:57 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Aleksandar Dimitrov 
							
						 
					 
					
						
						
						
						
							
						
						
							63cda87e86 
							
						 
					 
					
						
						
							
							Whitespace  
						
						 
						
						
						
					 
					
						2020-01-05 14:45:57 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Brian Wignall 
							
						 
					 
					
						
						
						
						
							
						
						
							2852f9dbee 
							
						 
					 
					
						
						
							
							Fix typos  
						
						 
						
						
						
					 
					
						2019-12-21 12:09:05 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							47567cd770 
							
						 
					 
					
						
						
							
							;fix some warnings with GHC 8.10 alpha  
						
						 
						
						... 
						
						
						
						hledger is GHC 8.10 ready! 
						
					 
					
						2019-12-14 17:30:19 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							13e6c7dfdf 
							
						 
					 
					
						
						
							
							lib: drop "assertion" alias for nullassertion  
						
						 
						
						... 
						
						
						
						Perhaps we'll stick with the null* convention. Fixes a warning in Transaction.hs. 
						
					 
					
						2019-12-09 06:08:03 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							a0b92e02b9 
							
						 
					 
					
						
						
							
							Revert "remove old fail compatibility imports that are obsolete ?"  
						
						 
						
						... 
						
						
						
						They are needed with ghc <8.4, not for fail but for <> I think.
Try cleaning up again another time.
This reverts commit 318ce7eb07 . 
						
					 
					
						2019-12-01 11:32:51 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							318ce7eb07 
							
						 
					 
					
						
						
							
							remove old fail compatibility imports that are obsolete ?  
						
						 
						
						
						
					 
					
						2019-12-01 08:31:50 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							2b2a0b3cf8 
							
						 
					 
					
						
						
							
							;tests: use "test" alias for testCase everywhere  
						
						 
						
						... 
						
						
						
						Easier to type and read, and a little clearer to my eyes;
"testCase" implies a single case, but it can contain many assertions. 
						
					 
					
						2019-11-28 15:33:33 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							030b633cd6 
							
						 
					 
					
						
						
							
							;fix build issues with old GHC versions  
						
						 
						
						
						
					 
					
						2019-11-28 15:22:12 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							b36f6df110 
							
						 
					 
					
						
						
							
							tests: port all unit tests to tasty, second pass ( #1090 )  
						
						 
						
						... 
						
						
						
						Hledger.Util.Tests helpers have been cleaned up, and test names are
now shown.
Tests have been cleaned up a bit. Some groups of unnamed tests have
been collapsed into a single named test containing a sequence of
assertions. The test command counts named tests, not assertions, so
the reported unit test count has dropped from 199 to 188. 
						
					 
					
						2019-11-27 13:17:34 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							13a3542464 
							
						 
					 
					
						
						
							
							tests: port all unit tests to tasty, first cut ( #1090 )  
						
						 
						
						... 
						
						
						
						easytest is not actively maintained and requires an old version of
hedgehog which does not support base-compat 0.11 & ghc 8.8.
This is still using the old easytest helpers, and not displaying test
names properly. 
						
					 
					
						2019-11-27 12:43:43 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							aa051a05cf 
							
						 
					 
					
						
						
							
							lib: support generation of (un)balanced virtual postings in csv reader  
						
						 
						
						
						
					 
					
						2019-11-23 10:28:10 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Brian Wignall 
							
						 
					 
					
						
						
						
						
							
						
						
							f8269e21ab 
							
						 
					 
					
						
						
							
							Fix some simple typos  
						
						 
						
						
						
					 
					
						2019-11-20 13:33:33 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Mykola Orliuk 
							
						 
					 
					
						
						
						
						
							
						
						
							097486a247 
							
						 
					 
					
						
						
							
							;lib: re-enable doctests  
						
						 
						
						
						
					 
					
						2019-11-19 03:58:56 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							c4d650e6ad 
							
						 
					 
					
						
						
							
							lib: balance-style -> balance-type  
						
						 
						
						
						
					 
					
						2019-11-13 09:06:25 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							39bc183340 
							
						 
					 
					
						
						
							
							lib: csv reader gets balance-style directive  
						
						 
						
						
						
					 
					
						2019-11-13 09:06:25 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							fb3c1a132c 
							
						 
					 
					
						
						
							
							csv: fix parsing of whitespace on line after an if block ( fix   #1120 )  
						
						 
						
						
						
					 
					
						2019-11-13 05:41:32 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							94f912e558 
							
						 
					 
					
						
						
							
							lib: better resolution of csv field aliases ("balance" vs "balance1", etc)  
						
						 
						
						
						
					 
					
						2019-11-12 12:20:09 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							c4d7cc198a 
							
						 
					 
					
						
						
							
							csv: finalise and check journals generated from CSV ( #1000 )  
						
						 
						
						... 
						
						
						
						Invalid transactions generated from CSV will now be rejected.
I updated some csv tests to avoid this, except for 21, which
probably needs more cleanup. 
						
					 
					
						2019-11-07 18:58:12 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							5264a7ebc1 
							
						 
					 
					
						
						
							
							;lib: refactor, split out finaliseJournal  
						
						 
						
						
						
					 
					
						2019-11-07 18:08:41 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							fc001da1ef 
							
						 
					 
					
						
						
							
							lib: expenses:unknown is a much better default account name  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							c66ccc5cee 
							
						 
					 
					
						
						
							
							lib: do not try to balance transaction in csv reader  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							95ec5715cc 
							
						 
					 
					
						
						
							
							lib: better compatibility code in csv reader  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							d62f84bec2 
							
						 
					 
					
						
						
							
							lib: csv reader does not generate postings if account=""  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							8d24a40150 
							
						 
					 
					
						
						
							
							lib: csv parser fills out amounts on all postings, if possible  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							637741a755 
							
						 
					 
					
						
						
							
							lib: amount1 is no longer magical  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							977592e49c 
							
						 
					 
					
						
						
							
							lib: typo fix, "expense:unknown" -> "expenses:unknown"  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							3c7d5d466d 
							
						 
					 
					
						
						
							
							lib, doc, test: csv parser gains "end" command for "if" block  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							f92590f92c 
							
						 
					 
					
						
						
							
							lib: allow zero postings in csv reader  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							1ab8631264 
							
						 
					 
					
						
						
							
							lib: change default rules file text to mention "amount1"  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							32cbe4c7b3 
							
						 
					 
					
						
						
							
							lib: better inference for unknown account names in csv parser  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							b5d4918c16 
							
						 
					 
					
						
						
							
							lib: allow recursive interpolation of fields with underscores in names  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							38db7eb24d 
							
						 
					 
					
						
						
							
							lib: implement skip end in csv reader  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							b2ba1086b6 
							
						 
					 
					
						
						
							
							lib: fixed validation rules for minimul viable csv rules to include account1 etc  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							f1ab107400 
							
						 
					 
					
						
						
							
							lib, doc: extended "skip" in "if" body to "skip N"  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							f108b52171 
							
						 
					 
					
						
						
							
							lib: fix for  #1001  - empty field assignment consumes next line  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							5dac141a7e 
							
						 
					 
					
						
						
							
							lib: implement conditional line skips in csv ( fixes   #1076 )  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							f74df08e98 
							
						 
					 
					
						
						
							
							lib: fix accidental switch of income:unknown and expence:unknown in csv parser  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							77fa81ea4d 
							
						 
					 
					
						
						
							
							lib: fix error message formatting (header displayed twice)  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							825b9ce5b3 
							
						 
					 
					
						
						
							
							lib: fixed amount vs amount1 conflict detection in csv parser  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							881422cd0f 
							
						 
					 
					
						
						
							
							lib: fix recursive interpolation in CSV parser for fields with dashes  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							e4476dd2f1 
							
						 
					 
					
						
						
							
							lib: more robust "unknown" account assignment in csv parser  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							28ca65b99a 
							
						 
					 
					
						
						
							
							lib: more explicit conditions for using legacy csv parser  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							e4add6df83 
							
						 
					 
					
						
						
							
							lib: fix for multiline descriptions in csv ( fixes   #841 ,  #416 )  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							9aab476d53 
							
						 
					 
					
						
						
							
							lib: csv parser supports up to 9 postings.  Fixes   #570 ,  #627  
						
						 
						
						
						
					 
					
						2019-11-05 21:16:42 +00:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Mykola Orliuk 
							
						 
					 
					
						
						
						
						
							
						
						
							78146978f4 
							
						 
					 
					
						
						
							
							;lib: store raw opts unquoted  
						
						 
						
						... 
						
						
						
						It looks like we only need quote when we build query and in some
messages.
Fixes  simonmichael/hledger#1079  
						
					 
					
						2019-10-19 14:44:08 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							eff1b31c86 
							
						 
					 
					
						
						
							
							csv: allow csv records with varying lengths, padding with empties  
						
						 
						
						... 
						
						
						
						Sometimes trailing empty fields are omitted entirely (including the
commas) in CSV records. (I see this in exported Google spreadsheets.)
Now we don't raise an error in this case, instead we automatically pad
any "short" records with empty fields. Not yet well tested. 
						
					 
					
						2019-10-07 14:54:36 -10:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							9967ead4c5 
							
						 
					 
					
						
						
							
							;lib: let commodityStylesFromAmounts & co. return an error ( #793 ,  #1091 )  
						
						 
						
						... 
						
						
						
						And if they did, the stats command would now throw an error.
Changed:
journalApplyCommodityStyles
journalInferCommodityStyles
commodityStylesFromAmounts 
						
					 
					
						2019-09-27 15:09:39 -10:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							64f49a8c02 
							
						 
					 
					
						
						
							
							;doc: journal: rewrite Amounts; switch to "digit group mark" term ( #1091 )  
						
						 
						
						
						
					 
					
						2019-09-27 14:25:32 -10:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							7ffe38677a 
							
						 
					 
					
						
						
							
							;lib: parseAndFinaliseJournal: note txns order issue ( #1091 )  
						
						 
						
						
						
					 
					
						2019-09-25 23:07:22 -10:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							6037d701b6 
							
						 
					 
					
						
						
							
							;lib: document RawNumber, AmbiguousNumber, DigitGrp ( #1091 )  
						
						 
						
						
						
					 
					
						2019-09-25 21:26:06 -10:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							f92b2fe6ef 
							
						 
					 
					
						
						
							
							;lib: csv: refactor: clarify, get rid of some IO/ExceptT  
						
						 
						
						... 
						
						
						
						Rule parsing doesn't need IO (since we are doing expandIncludes as a
pre-parsing step). 
						
					 
					
						2019-09-14 03:45:37 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							3c05662ce2 
							
						 
					 
					
						
						
							
							;lib: csv: clarify confusing imports  
						
						 
						
						
						
					 
					
						2019-09-13 18:11:40 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							46caa1d4ef 
							
						 
					 
					
						
						
							
							;lib: csv: rename error-prone default rules  
						
						 
						
						
						
					 
					
						2019-09-13 17:51:14 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							499e20c0b2 
							
						 
					 
					
						
						
							
							lib, cli, ui: start using Control.Monad.Fail, allow base-compat 0.11  
						
						 
						
						... 
						
						
						
						fail is moving out of Monad and into it's own MonadFail class.
This will be enforced in GHC 8.8 (I think).
base-compat/base-compat-batteries 0.11.0 have adapted to this,
and are approaching stackage nightly
(https://github.com/commercialhaskell/stackage/issues/4802 ).
hledger is now ready to build with base-compat-batteries 0.11.0, once
all of our deps do (eg aeson). We are still compatible with the older
0.10.x and GHC 7.10.3 as well.
For now we are using both fails:
- new fail (from Control.Monad.Fail), used in our parsers, imported
  via base-compat-batteries Control.Monad.Fail.Compat to work with
  older GHC versions.
- old fail (from GHC.Base, exported by Prelude, Control.Monad,
  Control.Monad.State.Strict, Prelude.Compat, ...), used in easytest's
  Test, since I couldn't find their existing fail implementation to update.
To reduce (my) confusion, these are imported carefully, consistently,
and qualified everywhere as Fail.fail and Prelude.fail, with clashing
re-exports suppressed, like so:
import Prelude hiding (fail)
import qualified Prelude (fail)
import Control.Monad.State.Strict hiding (fail)
import "base-compat-batteries" Prelude.Compat hiding (fail)
import qualified "base-compat-batteries" Control.Monad.Fail.Compat as Fail 
						
					 
					
						2019-09-08 17:13:47 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							1cbbe8f43d 
							
						 
					 
					
						
						
							
							memoise market valuation, making it fast ( #999 )  
						
						 
						
						
						
					 
					
						2019-08-19 02:16:39 +01:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							6e3a264f17 
							
						 
					 
					
						
						
							
							lib: export aliasnamep for hledger-check ( #1072 )  
						
						 
						
						
						
					 
					
						2019-07-16 23:30:15 +01:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Caleb Maclennan 
							
						 
					 
					
						
						
						
						
							
						
						
							11d9e5eb6a 
							
						 
					 
					
						
						
							
							code: Strip extraneous trailing whitespace from Haskell sources  
						
						 
						
						
						
					 
					
						2019-07-15 16:40:49 +01:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							0a3af8d9ee 
							
						 
					 
					
						
						
							
							csv: strip outer whitespace when interpolating CSV values ( #1051 )  
						
						 
						
						... 
						
						
						
						This removes a potential snag in amount field assignments, and
hopefully is harmless and acceptable otherwise. 
						
					 
					
						2019-06-14 16:43:12 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							d2b3185062 
							
						 
					 
					
						
						
							
							csv: don't show invalid inter-field spaces in CSV error messages  
						
						 
						
						... 
						
						
						
						Errors involving a record like:
2000-01-01,a,"1"
displayed the record with extra spaces:
the CSV record is:       "2000-01-01", "a", "1"
which was not accurate or valid RFC-4180. 
						
					 
					
						2019-06-14 16:17:40 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							692620180e 
							
						 
					 
					
						
						
							
							;lib: refactor: change AmountPrice to a Maybe  
						
						 
						
						... 
						
						
						
						I've wanted to do this for a long time; now that prices are in flux,
seems a good time. 
						
					 
					
						2019-06-13 15:50:01 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							adb6ee40eb 
							
						 
					 
					
						
						
							
							lib: clarify price types ( #131 )  
						
						 
						
						... 
						
						
						
						dropped journalPrices
renamed Price to AmountPrice,  AKA "transaction price"
renamed MarketPrice to PriceDirective.
added new MarketPrice (more pure form of PriceDirective without the amount style information)
Prices is now a more efficient data structure, but not used yet. 
						
					 
					
						2019-06-13 15:50:01 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							90af360792 
							
						 
					 
					
						
						
							
							csv: fix parse error printing, broken since 1.11 ( #1038 )  
						
						 
						
						
						
					 
					
						2019-06-06 23:10:31 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							61e8ccbf88 
							
						 
					 
					
						
						
							
							csv: accept a balance field assignment instead of an amount ( #1000 )  
						
						 
						
						
						
					 
					
						2019-04-03 10:46:26 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmitry Astapov 
							
						 
					 
					
						
						
						
						
							
						
						
							3c3200fa66 
							
						 
					 
					
						
						
							
							lib: csv parser support for 'balance2', 'balance' renamed to 'balance1'  
						
						 
						
						
						
					 
					
						2019-03-15 16:18:43 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							c5df73910f 
							
						 
					 
					
						
						
							
							csv: update some parse errors which weren't in human format  
						
						 
						
						... 
						
						
						
						cf
https://www.reddit.com/r/plaintextaccounting/comments/axekse/hledger_how_to_create_curved_brackets_with_rule/  
						
					 
					
						2019-03-05 06:23:11 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							8789a442a8 
							
						 
					 
					
						
						
							
							lib: inclusive balance assertions (=* and ==*)  
						
						 
						
						
						
					 
					
						2019-02-20 09:14:30 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							3b47b58aec 
							
						 
					 
					
						
						
							
							lib: clarify transaction balancing & balance assertion checking  
						
						 
						
						
						
					 
					
						2019-02-20 09:14:30 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							d1f122f15e 
							
						 
					 
					
						
						
							
							refactor: clarify, note issues ( #893 )  
						
						 
						
						
						
					 
					
						2019-02-01 15:35:33 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							d6e075dacd 
							
						 
					 
					
						
						
							
							refactor journalModifyTransactions, modifyTransactions  
						
						 
						
						... 
						
						
						
						API changes:
Hledger.Data.TransactionModifier
-transactionModifierToFunction
+modifyTransactions
Hledger.Read.Common.applyTransactionModifiers -> Hledger.Data.Journal.journalModifyTransactions 
						
					 
					
						2019-02-01 11:31:04 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							550e33a558 
							
						 
					 
					
						
						
							
							journal: fix balance assertions/assignments & prices ( #824 )  
						
						 
						
						... 
						
						
						
						Hopefully this is will do it. This restores the past behaviour:
- parsing prices in balance assertions/assignments
- ignoring them in assertions
- using them in assignments
- and printing them
and clarifies tests and docs. 
						
					 
					
						2019-01-25 12:41:10 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							94d5c6f111 
							
						 
					 
					
						
						
							
							journal: allow prices in balance assertions, but ignore ( #824 ,  #958 )  
						
						 
						
						
						
					 
					
						2019-01-25 08:59:37 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							b02f81572c 
							
						 
					 
					
						
						
							
							lib: comment  
						
						 
						
						... 
						
						
						
						[ci skip] 
						
					 
					
						2019-01-25 08:51:45 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Michael 
							
						 
					 
					
						
						
						
						
							
						
						
							a61216ac3c 
							
						 
					 
					
						
						
							
							journal: allow account types to be set with a type: tag  
						
						 
						
						
						
					 
					
						2019-01-18 16:40:35 -08:00