gwern0
357f56d0f4
de-haskell98
2010-03-09 01:51:21 +00:00
Simon Michael
a50d3e2b71
refactor, allow in-module unit tests
...
Until now, all unit tests were defined in Tests.hs. Pro: simple, makes
code/test line counting easy. Con: tests are far from code, Tests.hs turns
into a big wall of test code. Now, unit tests can also be defined in modules.
To avoid name clashes and template haskell complexity, a dumb manual
naming scheme is used: any module may export a hunit Test(List) named
tests_ModuleName. These are manually aggregated and re-exported when
appropriate, eg in Commands.All and finally in Tests.hs.
2010-03-08 21:47:36 +00:00
Simon Michael
3969dff3fc
parsing: @ was being treated as a currency symbol; a few more tests
2010-03-06 21:47:10 +00:00
ob
8937ed457d
GHC 6.12.1 has UTF8 support on board. Using System.IO.UTF8 can cause problems.
...
Therefore use System.IO.UTF8 only on previous versions.
Testet with GHC 6.10.4 and 6.12.1
2010-02-13 20:00:34 +00:00
Simon Michael
d1cb9cedae
fix a regex bug in showtree
2009-08-12 06:40:01 +00:00
marko.kocic
4407b6c59d
Hlint: Warning: Use if
2009-09-23 09:29:31 +00:00
marko.kocic
b197693197
Hlint: Warning: Redundant brackets
2009-09-22 16:51:27 +00:00
marko.kocic
8fdd28d446
Hlint: Error: Redundant $
2009-09-22 11:55:11 +00:00
marko.kocic
ddc176d83e
Hlint: Warning: Eta reduce
2009-09-22 15:56:59 +00:00
Simon Michael
4e5d463927
refactor parseWithCtx utility
2009-06-20 03:59:37 +00:00
Simon Michael
43549704c0
tracewith
2009-06-05 10:41:57 +00:00
Simon Michael
cb8ea69dfc
fix warnings all over - hledger is now -W-clean
2009-06-05 09:44:20 +00:00
Simon Michael
e91560989c
drop regex-compat/regex-posix dependency
2009-06-03 23:19:47 +00:00
Simon Michael
96fd2142aa
move some unrelated things out of AccountName, drop unused pattern match code
2009-05-29 11:31:51 +00:00
Simon Michael
fe5498f6c2
various utilities & doc updates - commodities, daysInSpan, underline
2009-05-29 10:02:14 +00:00
Simon Michael
ac307957e5
rstrip, lstrip
2009-04-10 04:59:43 +00:00
Sergey Astanin
86fab58e6a
Allow UTF8 in ledgers (account names, descriptions).
...
This patch fixes broken layout of some commands when there is Unicode
text in the ledger file.
I substituted System.IO functions with System.IO.UTF8. Now all strings
are Unicode internally, and take's and length's work correctly.
In particular, add, balance, hist, print and register commands seem
to work correctly; ui is still broken for me, I didn't try web.
I decode command line arguments from UTF8 forcefully, to permit
searches for accounts and descriptions with Unicode (otherwise, it
does not work).
The patch adds an additional dependency: utf8-string.
This patch does not include new test cases.
2009-05-14 20:44:06 +00:00
Simon Michael
c5e7b12a59
add command, reads transactions interactively and adds them to the ledger
2009-04-08 05:30:26 +00:00
Simon Michael
b60f9187c0
refactor, moving generic io functions into Ledger.IO
2009-04-04 08:50:36 +00:00
Simon Michael
415c48d855
getCurrentLocalTime
2009-01-25 06:47:05 +00:00
Simon Michael
26594287cc
strip cleanup
2009-03-15 03:57:19 +00:00
Simon Michael
c2352c3c64
localise the single use of regexpr
2009-04-02 01:28:36 +00:00
Simon Michael
8256a4fcbd
test util cleanups
2009-04-01 04:57:05 +00:00
Simon Michael
0693723aee
ltrace, labelled trace
2009-03-15 03:58:43 +00:00
Simon Michael
931144a12d
remove conflictory p
2009-01-25 13:55:08 +00:00
Simon Michael
89abdfa456
refactor/fix balanced entry checking and test it properly
2009-04-01 08:55:46 +00:00
Simon Michael
b4fed8f2fd
docs
2008-12-04 19:32:30 +00:00
Simon Michael
e333c76d6f
leaves utility
2008-12-04 19:32:42 +00:00
Simon Michael
063dce2642
more string utils
2008-12-06 07:15:19 +00:00
Simon Michael
130e3bcd30
utils tweaks
2008-12-10 07:08:50 +00:00
Simon Michael
da70e00e3b
make fromparse utility show the parse error
2008-12-08 17:15:02 +00:00
Simon Michael
470cae55ca
show clockin/out times in timelog entries, detect clockout < clockin
2008-12-11 01:35:07 +00:00
nick
91f3b7faac
Abstract over all GenParser state types
2008-12-08 01:11:07 +00:00
Simon Michael
77098fec7e
lowercase/uppercase
2008-11-27 06:32:31 +00:00
Simon Michael
0c4cf88578
perl-like strip
2008-11-26 21:11:44 +00:00
Simon Michael
3699343318
fix the regexpr version fix, we really do require 0.5.1
2008-12-16 18:35:46 +00:00
Simon Michael
acbb669bcc
fix a collision with latest regexpr package
2008-12-11 20:07:06 +00:00
Simon Michael
884ebf2979
gather date stuff together, FuzzyDate -> SmartDate
2008-11-27 00:35:00 +00:00
Simon Michael
52ab3372b8
add a regexp utility plus a dependency on regexpr, the sanest regexp library
2008-11-26 03:46:23 +00:00
tim
d04a8dcd00
Removed quickcheck import
...
It doesn't appear to be used, and isn't declared in the cabal file
2008-11-10 21:31:25 +00:00
Simon Michael
71667f654a
rectangular string utilities
2008-11-22 09:06:44 +00:00
Simon Michael
7362fbd730
begin smart date parsing
2008-11-22 12:18:19 +00:00
tim
514f015849
Implemented types for dates and datetimes
...
This patch replaces the strings used in the Entry, TimeLogEntry, and Transaction
records with real types. Rather than use the inbuild system date and time types
directly, two custom types have been implemented that wrap UTCTime: Date and
DateTime. A minimal API for these has been added.
2008-11-11 12:34:05 +00:00
Simon Michael
ba67e4c0a9
remove dead code
2008-10-15 22:18:05 +00:00
Simon Michael
529393ae49
ledger 2.6-style account name eliding
2008-10-15 19:14:34 +00:00
Simon Michael
5fcab59414
support negative patterns and ledger's special balance report account matching rule
2008-10-15 17:04:47 +00:00
Simon Michael
760befef89
more cleanups
2008-10-15 06:00:10 +00:00
Simon Michael
4efdda25b4
replace Currency with a more flexible, ledger-style Commodity
2008-10-12 21:52:48 +00:00
Simon Michael
9b51d922dd
more utilities
2008-10-11 04:18:26 +00:00
Simon Michael
3458d1f379
more utils, Control.Monad
2008-10-10 11:52:15 +00:00