Commit Graph

3080 Commits

Author SHA1 Message Date
Simon Michael
aa327b7a4b ;cabal: update cabal files 2022-09-18 08:57:59 -10:00
Simon Michael
c679d184a9 ;pkg: bump version to 1.27.1 2022-09-18 08:57:59 -10:00
Simon Michael
0c179c7e28 dev: lib: ReportTypes: hlint fix 2022-09-18 08:37:26 -10:00
Simon Michael
a0be6c2c85 doc: update changelogs 2022-09-01 16:06:36 -07:00
Simon Michael
705280283c ;doc: update manuals 2022-09-01 16:06:05 -07:00
Simon Michael
9cb04480b5 ;cabal: update cabal files 2022-09-01 16:00:38 -07:00
Simon Michael
45f1f44498 ;pkg: bump version to 1.27 2022-09-01 16:00:38 -07:00
Simon Michael
651d584bb0 ;doc: update changelogs 2022-09-01 15:48:46 -07:00
Simon Michael
6d45630014 dev: lib: fix recently broken doctest 2022-08-29 11:15:35 +01:00
Simon Michael
79792b3368 cabal: update cabal files 2022-08-29 11:15:35 +01:00
Simon Michael
ab01c7c2a2 lib: re-enable doctests with ghc 8.10, to improve CI test 2022-08-29 11:09:16 +01:00
Simon Michael
b46cb8a7f7 cabal: update cabal files 2022-08-23 12:16:25 +01:00
Simon Michael
bfb632dd8e dev: lib: Hledger.Data.Amount: drop amount, use nullamt always 2022-08-23 12:16:15 +01:00
Simon Michael
c80c72d7cd dev: lib, cli, bin: enable/fix name shadowing warnings
And a few other cleanups.
2022-08-23 12:16:15 +01:00
Simon Michael
e5578e5c4e ;cabal: update cabal files 2022-08-23 02:02:19 +01:00
Simon Michael
9584ebb439 imp: lib: Hledger.Utils.Debug: re-export Debug.Breakpoint
And add breakpoint as a dependency and enable its GHC plugin in all
the hledger packages, so that breakpoint's helpers can be used easily.
2022-08-23 02:02:19 +01:00
Simon Michael
6a4680d561 imp: pkg: drop support for GHC 8.6 and 8.8
Slightly motivated by a desire to depend on the new breakpoint
library, which requires GHC 8.10+. With GHC 9.0 in Debian,
it seems time to drop these.
2022-08-23 02:02:19 +01:00
Simon Michael
b7b09f991a imp: lib: Hledger.Utils.Debug: fix debug logging to file
dlog has been replaced by more reliable functions for debug-logging
to a file, useful for debugging TUI apps like hledger-ui:
dlogTrace
dlogTraceAt
dlogAt
dlog0
dlog1
dlog2
dlog3
dlog4
dlog5
dlog6
dlog7
dlog8
dlog9

Monochrome pprint' and pshow' have been added.

New dependency: deepseq
2022-08-23 00:50:51 +01:00
Simon Michael
423f3bd155 ;doc: update manuals 2022-08-22 07:59:02 +01:00
Stephen Morgan
c966a0f413 fix!: cbr: Remove old account type query code. (#1921)
This replaces the old journal*AccountQuery with the new Type query. This
enables uniform treatment of account type, and fixes a subtle bug
(#1921).

Note that cbcsubreportquery no longer takes Journal as an argument.
2022-08-21 08:27:51 +01:00
Simon Michael
b32b130045 dev: lib: fix a failing doctest 2022-08-18 05:08:10 +01:00
Simon Michael
101e2f7426 imp: add a missing space after colon in some debug output 2022-08-16 09:13:30 +01:00
Simon Michael
3003a18c94 dev: lib: hlint improvements 2022-08-16 09:13:30 +01:00
Simon Michael
a3096d0549 dev: journalFilePath, include: show (unknown) instead of nothing
Probably not user-visible, but might improve debug logging slightly.
2022-08-16 09:13:30 +01:00
Simon Michael
1f08a8a94e fix: fix multi-file account display order; improve file read logging (#1909) 2022-08-16 09:13:30 +01:00
Simon Michael
07e3dca735 imp: at --debug 5, log account declarations info while parsing (#1909) 2022-08-16 09:13:30 +01:00
Simon Michael
3d6e363461 lib: save account directive positions, for troubleshooting (#1909) 2022-08-16 09:13:30 +01:00
Simon Michael
b46aa1330f fix: don't reverse account display order with include files (#1909) 2022-08-05 13:44:56 +01:00
Simon Michael
09d66c5fc1 fix: account display order is now tracked across all files (fix #1909) 2022-08-04 19:05:52 +01:00
Simon Michael
7063eba13c fix: bal: budget goal amounts now respect -c styles (fixes #1907) 2022-08-03 17:43:04 +01:00
Simon Michael
229fe6ac58 fix: areg, ui: show transactions normally with a type: query (#1905)
accountTransactionsReport was not account types-aware.
There might be more of these lurking.
2022-08-03 10:38:42 +01:00
Simon Michael
910b37abf8 fix: check: recentassertions: drop the cleared requirement (#1899)
It was causing trouble and complicating things too much.
I wanted it as another signal of being "caught up", but YAGNI.
2022-08-03 09:53:55 +01:00
Simon Michael
1ed8c20978 feat: check recentassertions disallows assertion lag > 7 days
hledger check recentassertions (or flycheck-hledger if you enable this
check) will complain if any balance-asserted account does not have a
balance assertion within 7 days before its latest posting.  This aims
to prevent the situation where you are regularly updating your
journal, but forgetting to check your balances against the real world,
eventually requiring you to dig back through months of data to find
the error.
2022-08-01 06:53:04 +01:00
Simon Michael
217cfbd389 imp: errors: assertions: improve sample hledger command 2022-07-31 08:26:30 +01:00
Simon Michael
442ef9361c feat: api: quoteForCommandLine: some very shady CLI escaping 2022-07-31 08:26:30 +01:00
Simon Michael
d860d6d2fc api: Hledger.Data.Errors: export makeBalanceAssertionErrorExcerpt 2022-07-29 09:01:34 +01:00
Simon Michael
f135001b87 ;dev: improve followingcommentp' doc 2022-07-28 09:14:13 +01:00
Simon Michael
47ae346b21 imp: errors: assertions: improve wording, actual -> calculated 2022-07-23 02:35:52 +01:00
Simon Michael
147856e3bb imp: errors: timeclock, csv error improvements 2022-07-23 02:35:52 +01:00
Stephen Morgan
c54fb4d514 imp: cost: Allow matching equity conversion equity postings to
transaction prices.

When given --infer-costs, hledger will now separately infer transaction
prices for different prices. Given a pair of adjacent conversion
postings, hledger will check if there is a single posting with a
transaction price which matches both the amounts. If so, it associates
those conversion postings to that priced post.

If it can't find any transaction price postings which match, it will
find the first non-transaction price post which matches one of the two
amounts, and will add a transaction price to that, and associate them.
2022-07-15 12:32:38 +01:00
Stephen Morgan
07d1b01287 imp: cost: Allow inferring cost from conversion equity postings with --infer-costs.
When given --infer-equity, hledger will change transaction prices to balancing equity postings. This introduces the inverse operation, --infer-costs, which will match balancing equity postings and transform them into a transaction price, allowing --cost to work properly with them. This is only a partial inverse as it needs to use some heuristics to match the postings which will not work in complicated cases.

Specifically, when hledger finds exactly two conversion postings in a transaction (by default, subaccounts of equity:conversion or equity:trad(e|ing)), it will find the first posting in the transaction whose amount is negative one of the conversion posting amounts, and inserts the corresponding transaction price.
2022-07-15 12:32:38 +01:00
Simon Michael
78d5939c19 dev: errors: improve timeclock errors 2022-07-14 19:24:46 +01:00
Simon Michael
32c7f6300b imp: errors: improve, test timeclock errors 2022-07-14 11:57:32 +01:00
Simon Michael
0ecc1ed79b dev: Uniqueleafnames.hs: fix haddock failure 2022-07-13 19:10:28 +01:00
Simon Michael
7d8fbe2dc0 dev: errors: update doctests 2022-07-13 19:00:00 +01:00
Simon Michael
5a343bf090 imp: errors: assertions: improve layout 2022-07-13 17:56:17 +01:00
Simon Michael
e172e5dd56 imp: errors: uniqueleafnames: more precise error message 2022-07-13 04:02:14 +01:00
Simon Michael
1c67d0860e imp: errors: more error prettification 2022-07-13 03:59:44 +01:00
Simon Michael
84f951e020 imp: errors: assertions, balanced: more consistent format
Move the unique text out of the first line and down to the
explanation.

Also, begin some general punctuation, capitalisation and wording
improvements.
2022-07-12 16:53:08 +01:00
Simon Michael
e6959743f5 fix: errors: assertions: don't show actual and asserted reversed 2022-07-12 16:35:45 +01:00