Stephen Morgan
541c4fc18c
lib,cli: Use Text for CSV values.
2021-01-02 15:08:09 +11:00
Simon Michael
62660577c3
;update cabal files
2020-12-24 10:22:16 -08:00
Simon Michael
df5c755d96
;lib, cli: remove old unused parsec dependency
2020-12-15 08:33:05 -08:00
Simon Michael
9afccde16f
;update cabal files
2020-12-14 12:31:01 -08:00
Simon Michael
5507cb07ef
;update cabal files
2020-11-30 15:19:21 -08:00
Simon Michael
221a6d9001
lib: new more robust price lookup implementation, fixing #1402
2020-11-23 18:08:41 -08:00
Simon Michael
a97daaf322
lib: replace pretty-show with pretty-simple
...
pretty-simple, already used in .ghci, will hopefully give nicer debug
output, including for values which don't have Read-able Show output.
This should mean that we can start removing custom string-like Show
instances that were a workaround for pretty-show.
We are using the latest version (4.0.0.0) to get compact output.
Here's some old pretty-show output:
CsvRules
{ rdirectives = [ ( "skip" , "1" ) ]
, rcsvfieldindexes = [ ( "date" , 1 ) , ( "amount" , 2 ) ]
, rassignments = [ ( "amount" , "%2" ) , ( "date" , "%1" ) ]
, rconditionalblocks = []
}
And the new pretty-simple output:
CsvRules
{ rdirectives=
[ ( "skip", "1" ) ]
, rcsvfieldindexes=
[ ( "date", 1 ), ( "amount", 2 ) ]
, rassignments=
[ ( "amount", "%2" ), ( "date", "%1" ) ]
, rconditionalblocks= []
}
Non-compact pretty-simple output would be:
CsvRules
{ rdirectives=
[
( "skip"
, "1B"
)
]
, rcsvfieldindexes=
[
( "date"
, 1
)
,
( "amount"
, 2
)
]
, rassignments=
[
( "amount"
, "%2"
)
,
( "date"
, "%1"
)
]
, rconditionalblocks=[]
}
Also:
- Account's Show instance no longer converts : to _ in account names
- drop unused pretty-show dependency from hledger, hledger-ui packages
- regenerate hledger-lib with the older hpack that's shipped in stack
2020-11-10 08:06:11 -08:00
Stephen Morgan
a620ab9666
lib: Expand Tabular.AsciiWide to allow multiline cells, either top or bottom aligned.
2020-11-04 14:25:21 +11:00
Simon Michael
90adb95983
;update cabal files
2020-09-07 12:17:35 -07:00
Simon Michael
e95a222ad2
;update some cabal files
2020-09-01 20:39:02 -07:00
Stephen Morgan
2cd7877c46
lib: Remove unnecessary NFData instances.
2020-08-31 15:41:36 +10:00
Simon Michael
403cb457b7
;cabal files
2020-07-14 12:09:45 -07:00
Simon Michael
e090e0f949
add lower bound needed for aeson, to help cabal ( #1268 )
2020-06-23 14:55:42 -07:00
Stephen Morgan
0dcfddd201
lib: multiBalanceReport: Break calculateAccountChanges and acctChangesFromPostings separate functions.
2020-06-22 21:43:30 +10:00
Simon Michael
24996caaeb
bump to dev version
2020-06-21 10:35:52 -07:00
Simon Michael
729e87066f
;cabal files
2020-06-07 13:00:40 -07:00
Simon Michael
a54376e204
;regen cabal files
2020-06-06 17:20:13 -07:00
Simon Michael
d963944c99
lib: add jsonPrettyText helper, depend on aeson-pretty
2020-06-04 15:12:57 -07:00
Simon Michael
6935c46b2c
;regen cabal files with latest stack/hpack (2.3.1/0.33.0)
2020-05-02 17:31:35 -07:00
Simon Michael
741bfdc462
;update cabal file
2020-03-30 15:28:42 -07:00
Simon Michael
d868a7e170
;update cabal files
2020-03-22 10:49:49 -07:00
Simon Michael
40d3a5c1f4
;update cabal files
2020-03-22 09:28:10 -07:00
Simon Michael
2b15418ddd
;update cabal files
2020-03-22 09:08:37 -07:00
Simon Michael
612a4d1c0e
;gen cabal
2020-03-19 11:38:05 -07:00
Simon Michael
96b4f0be4f
require newer Decimal, math-functions, fixing inconsistent rounding
...
Decimal 0.5.1+ changed to banker's rounding (round to nearest even
number), and math-functions 0.3.3.0 (used by roi) fixed various
precision-related issues. Now we require the latest versions of these.
This was causing some functional test failures when building with old
GHCs/snapshots.
2020-03-19 10:10:55 -07:00
Simon Michael
1883ff4499
bump to dev version
2020-03-07 15:06:18 -08:00
Simon Michael
3565f49acf
;re-enable doctest suite, with a workaround for cabal 3 ( #1139 )
2020-03-06 18:30:32 -08:00
Simon Michael
2ea66bcda4
;lib: bump version to 1.17.0.1
...
hledger's first use of the fourth version component.
[ci skip]
2020-03-01 22:06:55 -08:00
Simon Michael
6dfdc2bee8
;one more cabal file update. Not in hackage tarballs.
2020-03-01 17:42:20 -08:00
Simon Michael
ba44d00bed
;bump version to 1.17
2020-03-01 17:29:01 -08:00
Simon Michael
7011160bfd
;allow base 4.14/GHC 8.10
2020-01-26 08:12:25 -08:00
Simon Michael
445e8aa3cc
add support for megaparsec 8 ( #1175 )
2020-01-14 09:54:06 -08:00
Simon Michael
cfb2a61ae1
;bump to dev version; bump man page dates
...
[ci skip]
2020-01-05 09:04:50 -08:00
Simon Michael
46d516e7a3
move JSON instances from hledger-web to hledger-lib
2019-12-16 17:17:00 -08:00
Simon Michael
093dca570d
lib, cli, web: bump version to 1.16.1
2019-12-03 08:41:44 -08:00
Simon Michael
0ce890e5ff
lib, cli, web: drop unnecessary mtl-compat dependency
2019-12-02 08:23:00 -08:00
Simon Michael
6daebf60ea
;regen cabal files
2019-12-01 10:05:37 -08:00
Simon Michael
4b66bc2ed9
lib: disable doctest suite again till we can run it with cabal ( #1139 )
2019-12-01 09:13:18 -08:00
Simon Michael
caf8cdf0ca
;test: consistent singular naming for test suites and files
2019-11-29 06:35:29 -08:00
Simon Michael
ebedae01cf
;cabal: remove special cases for unsupported GHC 7
2019-11-28 14:59:18 -08:00
Simon Michael
08951ac3e8
;cabal: add ghc 8.8 to tested-with
...
[ci skip]
2019-11-28 14:59:10 -08:00
Simon Michael
ca4fade4af
;tests: re-add hledger-lib's tests to the cabal file, as unittests
2019-11-28 14:45:10 -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
Mykola Orliuk
f82ed83153
;lib: re-enable easytests
2019-11-19 03:58:56 -08:00
Mykola Orliuk
097486a247
;lib: re-enable doctests
2019-11-19 03:58:56 -08:00
Simon Michael
24ce2686f4
drop GHC 7.10/base 4.8 support, finally, due to MonadFail hassles
...
in JournalReader.hs. If you still need this, feel free to work on
those errors. But hopefully not, because dropping base 4.8 should
permit some code cleanups.
2019-09-14 03:45:37 -07:00
Simon Michael
977d4f009e
lib, cli: disable hledger-lib test suites, hledger benchmark suite
...
by default. hledger-lib's doctests and easytests test suites (each ?)
require an additional slow rebuild of hledger-lib and are not worth
the time, energy and carbon. hledger's test suite runs those same
easytest tests (but not the doctests).
2019-09-14 03:45:37 -07:00
Simon Michael
f65fc47185
;bump version to 1.15.99
...
[ci skip]
2019-09-13 08:43:33 -07:00
Simon Michael
acd7010e5a
;doc: "curses-style interface" -> "terminal interface"
...
[ci skip]
2019-09-10 18:14:16 -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
cd5af48165
lib, cli: bump version to 1.15.2
2019-09-05 15:35:19 -07:00
Simon Michael
90e5a5f95b
;lib, cli: don't forget to commit the cabal file
2019-09-02 12:31:06 -07:00
Simon Michael
29f7654c3a
bump versions to 1.15
2019-09-01 08:53:06 -07:00
Simon Michael
c14f22b975
;lib: depend on timeit
...
Allows easy benchmarking at ghci prompt and I expect will be used for
reporting timing info later.
2019-08-01 18:31:39 +02:00
Simon Michael
a5372168bc
;lib: suppress doctest failures with GHC < 8.2
...
[ci skip]
2019-07-14 04:40:07 -07:00
Simon Michael
6f2f8d7638
;deps: a better fix for nubSortBy with ghc 7.10, 8.0
...
nubSortBy and nub . sortBy are not equivalent, it seems.
I didn't notice the failing valuation func tests.
2019-07-13 00:13:33 -07:00
Simon Michael
503d21ef77
;lib: also update fgl bounds in cabal file
2019-07-13 08:08:36 +01:00
Simon Michael
a6e9b11a54
;cabal: bump tested-with, regen cabal files
...
[ci skip]
2019-07-12 23:24:10 +01:00
Simon Michael
69defd497f
;lib: refactor: Data.Prices -> Data.Valuation
2019-06-14 19:04:09 -07:00
Simon Michael
baa15d9bea
;lib: rename MultiBalanceReports.hs -> MultiBalanceReport.hs
2019-06-14 11:45:25 -07:00
Simon Michael
ce0354ddbe
lib: -X/--exchange now supports indirect price chains ( #131 )
...
Adds fgl as a dependency.
2019-06-13 15:50:01 -07:00
Simon Michael
34a0ad00b1
;lib: encapsulate Prices db
2019-05-25 05:29:34 -07:00
Simon Michael
20bc386b80
restore TransactionsReport
...
hledger-web's register chart uses it, I didn't see it
because it's called from a hamlet template.
2019-05-23 22:15:40 -07:00
Simon Michael
54c1529638
lib: drop TransactionsReport, BalanceHistoryReport
...
They seem unused.
2019-05-23 21:55:19 -07:00
Simon Michael
04a30fa084
lib: TransactionsReport/AccountTransactionsReport cleanup
...
Split them into separate files, rename journalTransactionsReport to
transactionsReport.
2019-05-23 21:55:19 -07:00
Simon Michael
c9e16b83ef
; propagate dev version bump
2019-03-20 17:13:59 -07:00
Hans-Peter Deifel
489b7fd870
Constrain easytest dependency to fix cabal build
...
This constraints the easytest dependency to <0.3, because hledger and
hledger-lib currently don't build with 0.3.
Of course the better solution would be to fix the build errors, but easytest-0.3
is not even in stackage nightly yet and I just need it to build right now :-)
2019-03-15 12:33:16 -07:00
Simon Michael
0cd5545e26
regen cabal files/manuals
...
[ci skip]
2019-03-01 16:17:25 -08:00
Simon Michael
9fab3257e8
regen cabal files
2019-03-01 15:44:40 -08:00
Simon Michael
94753f1cea
bump to dev version
2019-02-08 11:33:44 -08:00
Simon Michael
6553353bc5
lib, cli: bump version to 1.13.1
2019-02-02 20:21:35 -08:00
Simon Michael
86d5652e53
stop depending on here due to slow haskell-src-meta/stackage issues
...
Using file-embed or ordinary literals instead, for now.
2019-02-02 16:34:10 -08:00
Simon Michael
40d1572359
bump version to 1.13
2019-02-01 17:19:19 -08:00
Simon Michael
550aa408eb
lib: refactor, add embedFileRelative
2019-01-26 15:52:58 -08:00
Simon Michael
1e5e30ae87
regen cabal files
...
[ci skip]
2019-01-25 18:33:39 -08:00
Simon Michael
0ed3ec08fa
bump version to 1.12.99
2019-01-05 07:35:54 +00:00
Simon Michael
67d7c82e9f
bump version to 1.12
2018-12-02 17:20:34 -08:00
Peter Simons
4e8f2c11d3
Allow building with base-4.12.
...
The build succeeds just fine and all test suites pass, too.
2018-10-24 10:35:11 -07:00
Simon Michael
80dc2ef03f
update cabal files with hpack 0.31
...
As in latest stack release. Hopefully this won't unleash horrors.
2018-10-18 14:44:16 -07:00
Alex Chen
2cbc41e088
Merge branch 'master' into ExceptTLayer
2018-10-09 11:19:45 -06:00
Alex Chen
e45070aab5
Update dependency bounds for megaparsec
2018-10-09 11:15:33 -06:00
Simon Michael
ff2a546319
bump version to 1.11.99
2018-10-06 09:42:12 -10:00
Simon Michael
2c9c4ebf79
Merge branch 'master' into ExceptTLayer
2018-10-04 21:04:02 -10:00
Simon Michael
b798c48040
bump version to 1.11
2018-09-30 20:07:45 -10:00
Alex Chen
3d2584d869
lib: switch to megaparsec 7
2018-09-30 20:15:12 -06:00
Simon Michael
8c18bada0c
lib, cli, ui, web: update cabal files
2018-09-22 21:01:23 -10:00
Simon Michael
362705a981
update cabal files
2018-09-07 12:44:52 -07:00
Simon Michael
23bdac41d9
csv: merge lucamolteni's cassava/custom separators (squashed) ( #829 )
...
commit 5ba464de761b298e50d57a8b7d14bc28adb30d5d
Author: Luca Molteni <volothamp@gmail.com>
Date: Fri Sep 7 17:54:12 2018 +0200
Fix CI 2
commit f060ae9449f4b61a915b0ed4629fc1ba9b66fb4a
Author: Luca Molteni <volothamp@gmail.com>
Date: Fri Sep 7 17:30:08 2018 +0200
Fix CI build
commit af0719a33b9b72ad244ae80198d881a1f7145e9d
Author: Luca Molteni <volothamp@gmail.com>
Date: Fri Sep 7 17:19:01 2018 +0200
Fix rebase
commit 1a24ddfa54dfb4ff1326e1a51005ffa82d3dc3c8
Author: Luca Molteni <volothamp@gmail.com>
Date: Fri Aug 10 16:25:24 2018 +0200
Fixed some GHC warnings
commit 1ac43398a359b5925ef71f53347698f1c6c510ef
Author: Luca Molteni <volothamp@gmail.com>
Date: Fri Aug 10 16:14:49 2018 +0200
Fix .cabal
commit 422456b925d8aa4ab3e869f51e98c2b1c3dcde0a
Author: Luca Molteni <volothamp@gmail.com>
Date: Sun Jul 1 22:56:20 2018 +0200
Removed to-do list
commit 1118b762e4fd15c4fe7ba48ba86676706ea3a5a5
Author: Luca Molteni <volothamp@gmail.com>
Date: Sun Jul 1 22:53:28 2018 +0200
Better test
commit 1146ed0941655668bf7684f18aa15c5f4b9b20c2
Author: Luca Molteni <volothamp@gmail.com>
Date: Sun Jul 1 15:32:28 2018 +0200
Fix parsing
commit 4fc2374b2b81802990da30c96756aab54d77399c
Author: Luca Molteni <volothamp@gmail.com>
Date: Thu Jun 21 22:11:11 2018 +0200
Parsing of separator
commit f7a61737f1ad4460ba20ca9b2e86eb21468abb33
Author: Luca Molteni <volothamp@gmail.com>
Date: Thu Jun 21 14:29:23 2018 +0200
Almost separator in options
commit ac8841cf3b9c80914bc3271ad9b9ff4ae9ba48a7
Author: Luca Molteni <volothamp@gmail.com>
Date: Thu Jun 21 14:16:59 2018 +0200
Separator in parseCSV
commit 92a8b9f6ba77ea4237f769641e03029ac88542ea
Author: Luca Molteni <volothamp@gmail.com>
Date: Thu Jun 21 13:30:41 2018 +0200
separator option
commit ec417a81ae625647cf35e61776cdf02bdb2c6aea
Author: Luca Molteni <volothamp@gmail.com>
Date: Thu Jun 21 10:45:26 2018 +0200
Removed one qualified import
commit 8b2f386c2f780adcd34cff3de7edceacc1d325a7
Author: Luca Molteni <volothamp@gmail.com>
Date: Wed Jun 20 14:01:12 2018 +0200
Removed string conversions
commit a14d0e099e28a286bb81770cfc9cb8f5c7e5cf1f
Author: Luca Molteni <volothamp@gmail.com>
Date: Wed Jun 20 10:23:20 2018 +0200
custom delimiter in cassava
commit 694d48e2bc1ada0037b90367c017f3082f68ed45
Author: Luca Molteni <volothamp@gmail.com>
Date: Sun Jun 10 17:51:54 2018 +0200
Use Text.getContents - remove UTF-8 compatibility library
commit a7ada2cc60033ebdd796ca34cc2ec69a4f387843
Author: Luca Molteni <volothamp@gmail.com>
Date: Sun Jun 10 17:49:34 2018 +0200
todo list
commit 58ec47d3987909f6bace50e3e647e30dadd5bf03
Author: Luca Molteni <volothamp@gmail.com>
Date: Sun Jun 10 17:45:22 2018 +0200
CSV test now has unicode characters
commit b7851e94c3f1683b63ec7250a12bcde3b7bed691
Author: Luca Molteni <volothamp@gmail.com>
Date: Sun Jun 10 16:59:39 2018 +0200
Use decode from Text
commit 79f59fd28ccaca08fcd718fcd8d00b1c1d65d7e1
Author: Luca Molteni <volothamp@gmail.com>
Date: Sun Jun 10 13:28:57 2018 +0200
Use Text and Lazy Bytestring
commit 470c9bcb8dc00669beb4ef0303a1e7d9f7aecc89
Author: Luca Molteni <volothamp@gmail.com>
Date: Sat Jun 9 15:30:22 2018 +0200
Use megaparsec error
commit f978848ba249ef4f67b855bea5d4e549290c205c
Author: Luca Molteni <volothamp@gmail.com>
Date: Sat Jun 9 15:22:07 2018 +0200
Renamed qualify and remove Parsec
commit 152587fde204c43a55798d212e43f37cd3038c2e
Author: Luca Molteni <volothamp@gmail.com>
Date: Sat Jun 9 15:12:36 2018 +0200
Use cassava mega parsec
commit cf281577a3d3a071196484a6fc8485f2ea1f7d67
Author: Luca Molteni <volothamp@gmail.com>
Date: Sat Jun 9 14:01:47 2018 +0200
Removed Data.Vector
commit 1272e8e758369d8cc5778029a705b277355a5029
Author: Luca Molteni <volothamp@gmail.com>
Date: Sat Jun 9 12:16:18 2018 +0200
Removed Parsec ParseError
commit ae07f043135a19307fd65b281ade37a74c76acb2
Author: Luca Molteni <volothamp@gmail.com>
Date: Sat Jun 9 12:06:14 2018 +0200
Type sinonim for ParsecError
commit 8e15b253c11bd1c0c35a7641aeb18aa54e0ba9b0
Author: Luca Molteni <volothamp@gmail.com>
Date: Sat Jun 9 11:16:08 2018 +0200
Replaced with typeclasses
commit 1ed46f9c175603611325f3d377004e4b85f29377
Author: Luca Molteni <volothamp@gmail.com>
Date: Sat Jun 9 11:01:33 2018 +0200
Replaced Text/CSV with Cassava
commit 362f4111b5854145703174b976fc7acbd71b8783
Author: Luca Molteni <volothamp@gmail.com>
Date: Sat Jun 9 10:34:37 2018 +0200
Use cassava parsin instead of Text/CSV
commit 83e678e371618687cf7c15a4e2cfa67f570b6b64
Author: Luca Molteni <volothamp@gmail.com>
Date: Sat Jun 9 08:22:51 2018 +0200
Text CSV error messages
commit f922df71d274beeacab9fb2530b16c97f005cc08
Author: Luca Molteni <volothamp@gmail.com>
Date: Fri Jun 8 21:45:20 2018 +0200
Better types
commit edd130781c84790a53bff2283e6041eb8232e7cf
Author: Luca Molteni <volothamp@gmail.com>
Date: Fri Jun 8 21:34:59 2018 +0200
Conversion to Text CSV type
commit 0799383214483018ad2d977a3c8022414959c2b2
Author: Luca Molteni <volothamp@gmail.com>
Date: Fri Jun 8 16:06:21 2018 +0200
First function with cassava
commit e92aeb151ff527b383ff3d0ced7764e81b71af82
Author: Luca Molteni <volothamp@gmail.com>
Date: Fri Jun 8 13:47:34 2018 +0200
Added cassava as dependency
commit 5ea005c558a3939af7e5f0cd735a9b4da931228e
Author: Luca Molteni <volothamp@gmail.com>
Date: Fri Jun 8 13:18:47 2018 +0200
Better .gitignore for multi idea modules
2018-09-07 12:34:51 -07:00
Simon Michael
d893ed64a5
lib: drop hunittests test suite & HUnit dependency
2018-09-04 13:53:59 -07:00
Simon Michael
582e088325
lib: tests/ -> test/
2018-08-18 15:20:15 +01:00
Simon Michael
dab75d98c8
lib: expectEq', expectParseEq: pretty-print compared values ( #812 )
2018-08-16 06:31:37 +01:00
Simon Michael
50d666d5a0
test: refactor, document, organise easytests, port amountp tests ( #812 )
2018-08-15 19:58:07 +01:00
Simon Michael
72acb86299
cabal: bump tested-with declarations
2018-08-02 08:25:49 +01:00
Simon Michael
a49b1cd3bb
lib: AutoTransaction.hs -> TransactionModifier.hs, PeriodicTransaction.hs
2018-07-30 20:22:39 +01:00
Joseph Weston
2d420a33a4
lib: update cabal file with 'Glob' library depdendency
2018-07-26 06:12:31 +01:00
Simon Michael
d62f082bce
bump version to 1.10.99 (dev)
2018-07-04 13:32:42 +01:00
Simon Michael
6242b1d784
bump version to 1.10
2018-06-30 22:08:02 +01:00
Alex Chen
0382bb5cd4
lib: move custom parse errors to Text.Megaparsec.Custom
2018-06-11 13:58:56 -06:00
Alex Chen
39e7ef0311
lib: refine date parser error messages
2018-06-11 13:58:55 -06:00
Alex Chen
ca201e4618
lib: add a module for custom parse errors
...
... for displaying the source line on which parse errors occured
Over the following set of commits, I will to refactor the parsers to
obviate the `ExceptT String` layer of the `ErroringJournalParser` type
so that all parse errors go through Megaparsec's parse error machinery.
2018-06-11 13:57:22 -06:00