Simon Michael
6adda683dc
dev:Journal: cleanup
2024-11-02 18:29:15 -10:00
Simon Michael
326acbf93b
imp: check recentassertions: try to make the error message clearer
2024-11-02 18:10:53 -10:00
Simon Michael
090f001eee
imp:commodities: also list commodities mentioned in P directives [ #2280 ]
2024-11-02 16:48:08 -10:00
Simon Michael
a58948c7a8
dev:Journal: cleanup, improve docs
2024-11-02 16:47:24 -10:00
Simon Michael
445e80fd41
dev:clarify: rename jcommodities to jdeclaredcommodities
2024-11-02 15:52:17 -10:00
Simon Michael
80fa7e2db6
dev:clarify: rename jinferredcommodities to jinferredcommoditystyles
2024-11-02 15:52:07 -10:00
Simon Michael
d6080c5ff1
imp: check commodities: also check commodities used in P directives [ #2280 ]
2024-11-02 15:03:57 -10:00
Simon Michael
c66e901d8b
dev: save the parse positions of PriceDirectives
2024-11-02 15:00:47 -10:00
Simon Michael
4d38c63ec8
dev: move/rename nullsourcepos
2024-11-02 14:59:43 -10:00
Henning Thielemann
1a9bfcf5be
cli: Commands.Aregister: implement --invert option
2024-10-23 21:55:24 -10:00
Simon Michael
d985e89bad
imp: default V accounts become just E when a new V account is declared
...
The equity:conversion account, and its variations equity:trade(s) and equity:trading,
normally detected as V/Conversion type, now become ordinary E/Equity accounts
if some other account is declared as V/Conversion type.
This is motivated by the next commit, in which `check accounts` will
stop warning about conversion accounts and their subaccounts,
which means all of the above names and their subaccounts would remain
always exempt from strict account checking.
Now, if the user declares their own conversion account, those default
accounts will become controllable by account checking again.
Which at least reduces the allowlist a bit.
Hopefully this won't cause hassles.
2024-10-20 09:13:58 -10:00
Simon Michael
da11d74ae6
dev: refactor: clarify journalAccountTypes
2024-10-20 09:13:58 -10:00
Simon Michael
e44cbbf1a4
dev: refactor, clarify detection of cost/conversion postings
2024-10-20 09:13:58 -10:00
Simon Michael
2d90550e25
dev: cleanups
2024-10-20 09:13:58 -10:00
Simon Michael
b940254025
imp:cli: detect --color more safely in most cases
...
--color now also works in a config file, like --pager, except for two
cases: it does not affect colouring of debug output, or the colouring
helpers used in the check recentassertions error message.
2024-10-19 16:28:36 -10:00
Simon Michael
711d921774
imp:cli: --no-pager -> --pager, make this and --color safe options
2024-10-19 16:28:36 -10:00
Simon Michael
0f7aaa9600
imp: check accounts: simplify confusing suggestion in error message, 2
2024-10-16 21:19:51 -10:00
Simon Michael
36d1093b84
imp: check accounts: simplify confusing suggestion in error message
2024-10-15 16:36:54 -10:00
Simon Michael
71a7879213
fix:check tags: _price-matched -> _cost-matched, and whitelisted [ #2247 ]
2024-10-14 14:49:18 -10:00
Simon Michael
6dd9c92d32
lib: add Hledger.Data.Currency, currencySymbolToCode, currencyCodeToSymbol
2024-10-11 14:56:03 -10:00
Simon Michael
66fce53c0b
dev: extract beancount output helpers to Hledger.Write.Beancount
2024-10-10 23:25:07 -10:00
Simon Michael
21a84fb336
fix: calculate value correctly when P amounts have few decimal digits [ #2254 ]
...
Valuation in another commoditay could sometimes be inaccurate if the P
price amounts did not have enough decimal places.
2024-10-08 23:11:57 -10:00
Simon Michael
4e6f6611a6
dev: fix DisplayName's off-by-one indent value, noted in #2246
...
Now displayIndent (and prrIndent) 0 means no indent, 1 means one
indent step, etc.
2024-10-08 23:11:57 -10:00
Simon Michael
8c71d071d7
imp:print:beancount:convert account names more robustly; better errors
2024-10-03 23:19:32 -10:00
Simon Michael
c92b601028
dev: fix warnings with ghc 9.10 / base 4.20
...
Older ghc versions should also still build cleanly (tested with 9.8 so far).
I don't like enabling CPP in so many modules but it's easier that
figuring out how to do it with base-compat; hopefully no noticeable
compilation impact.
2024-09-30 17:20:13 -10:00
Michael Rees
e34fa491af
Add abs implementation for MixedAmount
2024-09-05 11:56:07 +01:00
Simon Michael
3fbad1892d
dev: rename some Intervals for clarity [ #2218 ]
2024-09-04 16:07:54 +01:00
Simon Michael
038ebd8c7a
fix: three more interval start date cases; add tests; cleanup [ #2218 ]
2024-09-04 16:07:54 +01:00
Simon Michael
c8b6ca7b70
fix: 'every Nth day of month from DATE' start date [ #2218 ]
2024-09-04 16:07:54 +01:00
Henning Thielemann
da61b64f94
cli: Command.Balance: support FODS export for multibalance
...
Data.Amount.showMixedAmountLinesPartsB: new helper function
2024-08-16 16:57:38 +02:00
Simon Michael
4b3abfd470
;imp: check: recentassertions: improve message readability
2024-07-16 22:12:41 +01:00
Simon Michael
f5c2ec681c
dev: refactor: merge Text.Megaparsec.Custom into Hledger.Utils.Parse
2024-06-25 18:37:54 +01:00
Simon Michael
6c47fa034a
;dev: update doctests for weekly headings change [ #2204 ]
2024-06-25 18:36:43 +01:00
Victor Mihalache
60efd035f5
imp: abbreviate week naming for weekly reports
2024-06-14 09:37:32 +01:00
Simon Michael
5b83e5c2f0
;dev: cleanup [ #2202 ]
2024-06-10 08:46:19 +01:00
Simon Michael
e89bea8563
fix: handle account type declarations in multiple files correctly [ #2202 ]
...
Tags and types declared in account directives in sibling files or
included files are now combined more carefully.
In particular, when merging two Journals into one,
- jdeclaredaccounttags and jdeclaredaccounttypes no longer lose information;
any duplicated/conflicting tag/type values are preserved.
- jaccounttypes now prefers the last type declared in case of
conflict, not the first.
2024-06-10 08:32:54 +01:00
Simon Michael
8d1ad8a3fe
lib: add journalDbg, for inspecting Journal fields
2024-06-10 08:26:58 +01:00
Simon Michael
0ccfc78844
;dev: cleanup
2024-06-07 06:32:52 -07:00
Simon Michael
ea58a7ccd7
imp: check: check ordereddates before balance assertions, when both are enabled
2024-05-02 21:11:04 -10:00
Simon Michael
6796decb72
fix: show trailing decimal mark on cost amounts too, when needed
2024-05-01 14:17:46 -10:00
Simon Michael
55401282a0
imp: run checks in a well-defined order; and tweak that order
...
Now commodities are checked before accounts, and tags before recentassertions.
Also some check doc cleanups.
2024-04-26 18:59:45 -10:00
Simon Michael
4cbf72ab1f
imp!: check ordereddates: drop --date2 support; check primary dates only
...
date2 is a deprecated feature and was getting in the way, so has been dropped
from the ordereddates check, simplifying it.
2024-04-26 18:59:45 -10:00
Simon Michael
afe9e2c6f4
dev: move journalCheckBalanceAssertions to JournalChecks
2024-04-26 18:59:45 -10:00
Simon Michael
3ca208a3b6
fix:queries: fix OR-ing open-ended dates, spanUnion; add spanExtend [ #2177 ]
2024-03-01 18:10:24 -10:00
Simon Michael
1ee0e80719
imp:errors:unbalanced transaction: show more precise amounts ( #2135 )
...
Like we used to in 1.30, but better (show all available decimal digits,
unless they're infinite in which case show 8, show trailing zeros,
show commodity symbol with zero).
2024-02-29 12:34:17 -10:00
Simon Michael
3ec432bd53
dev: rename/improve amountSetFullPrecisionUpTo, add mixedAmountSetFullPrecisionUpTo
2024-02-29 12:31:07 -10:00
Simon Michael
8f1ae401f4
dev: fix some partial head/tails, silence ghc 9.8's new warnings
...
Note the headErr/tailErr calls will print stack traces if they fail
(small ones: five lines, one of which is the useful location info),
which may or may not be best UX.
2024-02-28 15:58:21 -10:00
Simon Michael
a4c2776a18
feat:close: support --round, like print
2024-02-25 17:37:59 -10:00
Simon Michael
d3ad743b36
imp: print, close: disambiguate balance assertion/assignment amount also ( #2176 )
...
Add a trailing decimal mark when necessary to disambiguate a single
digit group mark in the balance assertion/assignment amount, also.
2024-02-25 16:47:58 -10:00
Simon Michael
baca5f8b54
fix:check:tags: add date and date2 to the implicitly-declared special tags
...
And add tests/comments.
2024-02-17 13:06:10 -10:00