Commit Graph

2329 Commits

Author SHA1 Message Date
Stephen Morgan
edb28d51c5 lib: multiBalanceReport: Get boring parent ellision working for multiBalanceReport. 2020-06-22 22:25:23 +10:00
Stephen Morgan
cd41404fd4 lib: multiBalanceReport: Get --drop working with multiBalanceReports. 2020-06-22 22:21:31 +10:00
Stephen Morgan
6467c252c7 lib: multiBalanceReport: Move responsibility for display name into displayedAccounts 2020-06-22 22:21:30 +10:00
Stephen Morgan
5f0918217a multibalanceReport: Move responsibility for determining displayed name in multiBalanceReportWith, not at point of consumption. 2020-06-22 22:20:09 +10:00
Stephen Morgan
0dedcfbe15 lib: multiBalanceReport: Miscellaneous simplifications. 2020-06-22 22:11:54 +10:00
Stephen Morgan
1e7e80504f lib: multiBalanceReport: Keep Account around longer so we can use both aibalance and aebalance. 2020-06-22 22:10:24 +10:00
Stephen Morgan
0e89a389d6 lib: multiBalanceReport: Split displayedAccounts, calculateReportQuery into separate functions. 2020-06-22 22:07:55 +10:00
Stephen Morgan
b106850391 lib: multiBalanceReport: Split postprocessReport and calculateTotalsRow into separate functions. 2020-06-22 21:59:15 +10:00
Stephen Morgan
baa5844d4e lib: multiBalanceReport: Change indentation. 2020-06-22 21:54:38 +10:00
Stephen Morgan
0b30b2f9fb lib: multiBalanceReport: Split sortRows into a separate function. 2020-06-22 21:51:38 +10:00
Stephen Morgan
7a9bf998e5 lib: multiBalanceReport: Split buildReportRows into a separate function, remove unnecessary query and valuation. 2020-06-22 21:50:27 +10:00
Stephen Morgan
a81c6d0397 lib: multiBalanceReport: Split accumValueAmounts into a separate function. 2020-06-22 21:48:20 +10:00
Stephen Morgan
b2bed03b4c lib: multiBalanceReport: Don't import BalanceReport in MultiBalanceReport. 2020-06-22 21:45:42 +10:00
Stephen Morgan
0dcfddd201 lib: multiBalanceReport: Break calculateAccountChanges and acctChangesFromPostings separate functions. 2020-06-22 21:43:30 +10:00
Stephen Morgan
a72c4f285b lib: multiBalanceReport: Break calculateColumns into a separate function. 2020-06-22 21:39:41 +10:00
Stephen Morgan
fc6a30b234 lib: multiBalanceReport: Break calculateColSpans into a separate function. 2020-06-22 21:38:16 +10:00
Stephen Morgan
44dcd613e8 lib: multiBalanceReport: Break getPostings and makeReportQuery into separate functions. 2020-06-22 21:36:30 +10:00
Stephen Morgan
f21bf53610 lib: multiBalanceReport: Break startingBalances into separate function. 2020-06-22 21:33:16 +10:00
Simon Michael
ce4de7aeb9 ;doc: regen manuals
[ci skip]
2020-06-21 10:36:21 -07:00
Simon Michael
24996caaeb bump to dev version 2020-06-21 10:35:52 -07:00
Simon Michael
6216258b41 ;doc: finalise 1.18.1 changelogs 2020-06-21 10:22:53 -07:00
Simon Michael
128836f6f8 ;changelogs 2020-06-20 18:24:15 -07:00
Simon Michael
6bfbecf662 journal: doc: document recursive wildcards 2020-06-20 17:12:30 -07:00
Simon Michael
e3cae4aadc valuation: implement new --infer-value flag & semantics (#1239, #1253) 2020-06-19 14:40:20 -07:00
Simon Michael
467210c796 ;valuation: refactor, update, clean up 2020-06-19 14:40:20 -07:00
Simon Michael
122309ced7 ;lib: Debug comment 2020-06-19 14:39:32 -07:00
Simon Michael
06d5014f5f ;lib: multibalancereport: apply debug output policy 2020-06-16 21:00:08 -07:00
Simon Michael
873bd57bcf ;regen manuals 2020-06-16 19:34:27 -07:00
Martin Michlmayr
7310951178 doc: fix typos 2020-06-16 19:13:18 -07:00
Simon Michael
562480efea ;lib: debug doc 2020-06-14 17:27:15 -07:00
Simon Michael
684cb45e1a tweak debug levels, document some guidelines
Beginnings of a project-wide policy for what output to show at
each debug level, for now. Later we'll want more flexibility,
eg filtering by topic.
2020-06-14 17:17:09 -07:00
Simon Michael
6e36ede9aa ;valuation: refactor 2020-06-14 15:48:16 -07:00
Simon Michael
c8773854f0 ;doc: valuation: more cleanup 2020-06-13 12:41:02 -07:00
Simon Michael
6211a59144 ;journal: doc: fix market prices link 2020-06-13 11:40:01 -07:00
Simon Michael
4bf4c62181 journal: default valuation commodity from P only, take 2 (#1239, #1253) 2020-06-13 09:50:36 -07:00
Simon Michael
03b4b2dedc journal: default valuation commodity comes from P directives only (#1239, #1253) 2020-06-12 21:25:38 -07:00
Simon Michael
729e87066f ;cabal files 2020-06-07 13:00:40 -07:00
Simon Michael
aee6b49d36 ;bump date in changelogs, installer 2020-06-07 12:45:55 -07:00
Simon Michael
b389ee98dd ;update tested-with 2020-06-07 11:59:36 -07:00
Simon Michael
e8e27821d9 ;finalise changelogs 2020-06-07 11:51:40 -07:00
Simon Michael
09b6d44562 ;manuals 2020-06-06 17:21:18 -07:00
Simon Michael
a54376e204 ;regen cabal files 2020-06-06 17:20:13 -07:00
Simon Michael
19020939c9 ;bump versions to 1.18 2020-06-06 17:18:15 -07:00
Simon Michael
fa077415d4 ;edit changelogs 2020-06-06 16:53:41 -07:00
Simon Michael
c59565ca5b ;fix Json.hs with old GHCs 2020-06-06 15:33:04 -07:00
Simon Michael
b50c3a694c ;lib: note issue with Journal's JSON 2020-06-06 12:54:58 -07:00
Simon Michael
b86ced5ee9 lib: replace jsonPrettyText with toJsonText in Hledger.Data.Json 2020-06-06 12:54:58 -07:00
Simon Michael
d68650b2c1 ;csv: doc: link to balance-type 2020-06-05 18:02:06 -07:00
Simon Michael
5757c386d8 ;draft changelogs 2020-06-05 15:18:23 -07:00
Simon Michael
e5a0bddbe6 ;regen manuals 2020-06-05 14:44:37 -07:00
Stephen Morgan
be25fe360e lib: Parser now accepts .. as a synonym for to in date ranges. 2020-06-04 19:30:42 -07:00
Stephen Morgan
2f71da8838 lib: More consistent period formatting. 2020-06-04 19:30:42 -07:00
Simon Michael
057b79558c ;journal: edit the forecasting section (#1250) 2020-06-04 19:22:04 -07:00
Simon Michael
d963944c99 lib: add jsonPrettyText helper, depend on aeson-pretty 2020-06-04 15:12:57 -07:00
Simon Michael
00e9e844ac journal: the include directive now accepts a file format prefix
This works with glob patterns too, applying the prefix to each path.
This can be useful when included files don't have the standard file
extension, eg:

include timedot:2020*.md
2020-06-04 13:59:26 -07:00
Dmitry Astapov
b7413edf22 lib: --forecast=PERIODICEXPR. Fixes #835, #1236 2020-06-03 15:53:00 -07:00
Dmitry Astapov
cbf4029b8b lib: test for issue with sign checking code + fix 2020-06-01 15:17:15 -07:00
Simon Michael
97f2235bca ;lib: refactor amount cost functions
Rename costOfAmount -> amountCost, costOfMixedAmount -> mixedAmountCost,
drop amountToCost, mixedAmountToCost.
2020-05-31 15:48:08 -07:00
Simon Michael
660ba7e1d9 lib: clarify zero-checking function names
isZeroAmount                -> amountLooksZero
isReallyZeroAmount          -> amountIsZero
isZeroMixedAmount           -> mixedAmountLooksZero
isReallyZeroMixedAmount     -> mixedAmountIsZero
isReallyZeroMixedAmountCost dropped
2020-05-29 18:57:22 -07:00
Simon Michael
1087e790cf ;lib: refactor transactionCheckBalanced 2020-05-29 17:57:10 -07:00
Simon Michael
7bcc205622 lib: drop transactionPostingBalances 2020-05-29 17:33:53 -07:00
Simon Michael
0a5fa33f9d split more long transaction balancing errors into lines; refactor 2020-05-29 16:31:15 -07:00
Simon Michael
924ec1c98d journal: clearer transaction balancing errors; refactor
As mentioned by netvor on IRC, the unbalanced transaction error was
not too clear when postings all have the same sign.

Some other wording has been clarified, and the main error message is
now shown on multiple lines for readability (at the cost of
predictability/grepability..)

There's also a probably unnoticeable change: selecting which parts of
the error to show is now based on display precisions (reusing the
balanced check logic), rather than original precisions.
2020-05-29 16:07:58 -07:00
Simon Michael
61264cfdc0 lib: isNegativeMixedAmount handles all-negative multi-comm. amounts 2020-05-29 13:07:02 -07:00
Simon Michael
e6f9f09b41 ;lib: refactor, consolidate, add transactionCheckBalanced 2020-05-29 11:57:48 -07:00
Henning Thielemann
ec27eb6b17 ;web: maintain query when choosing a different 'inacct' account on the sidebar 2020-05-27 04:59:55 -07:00
Simon Michael
9417ee625e ;regen manuals 2020-05-25 17:49:01 -07:00
Simon Michael
93154e9251 update and clean up valuation docs (#1239) 2020-05-25 17:45:31 -07:00
Simon Michael
e1ddfc3a1b lib: also infer market prices from transactions, like Ledger (#1239) (WIP) 2020-05-25 17:45:31 -07:00
Dmitry Astapov
cbacef21eb lib: multiBalanceReport derives query from ReportOpts 2020-05-25 15:50:14 -07:00
Simon Michael
40c296a446 lib: rename finaliseJournal -> journalFinalise 2020-05-23 09:45:35 -07:00
Simon Michael
2c1cbb7956 ;csv: remove a comment breaking doctests 2020-05-12 18:01:05 -07:00
Simon Michael
f167c223a2 ;csv: emphasize regular expressions features and doc 2020-05-10 13:03:09 -07:00
Simon Michael
6b2dfad98c ;csv: clarify that whitespace is not stripped when matching 2020-05-09 15:43:44 -07:00
Simon Michael
3919f0945a ;csv: correction, that field equality trick was just a fluke 2020-05-09 15:37:11 -07:00
Simon Michael
8f1b2a32fa ;csv: start regexp examples section, show field equality testing 2020-05-09 13:35:45 -07:00
Simon Michael
3ef2fc9567 show a clearer error message on encountering a malformed regexp 2020-05-07 17:33:05 -07:00
Simon Michael
647a77225d ;journal: doc: tweak 2020-05-05 10:37:51 -07:00
Simon Michael
4999827eaf ;journal: doc: mention blank/unindented lines in transactions 2020-05-05 10:26:50 -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
Vladimir Sorokin
5b88bfb834 csv: Increase maximum number of postings in CSV reader from 9 to 99.
The ordering of journalfieldnames is changed in order to comply with the requirement stated in the comment:
"Names must precede any other name they contain, for the parser".
If left unchanged, "account1" would precede "account11", "account12", and so on, which would break the parsing.
With the new ordering, "account11" precedes "account1".
2020-04-26 14:52:02 -07:00
Simon Michael
df92c36679 ;changelogs 2020-04-19 14:45:07 -07:00
Simon Michael
784d882e01 csv: combine amount assignments better, fix 1.17.1 regression (#1226) 2020-04-16 19:04:36 -07:00
Simon Michael
b149c0ba0c ;csv: tweak the too-many-amounts error more 2020-04-16 12:59:19 -07:00
Simon Michael
dd3db5a4e2 ;csv: doc: try to clarify status of unnumbered amount rules (#1226) 2020-04-16 09:07:17 -07:00
Simon Michael
3693fd4eb6 ;csv: mention doc url in too many amounts error (#1226) 2020-04-16 08:36:04 -07:00
Simon Michael
1428291dd6 don't let case of file extension break file format detection (#1225) 2020-04-15 11:31:28 -07:00
Simon Michael
e80b69fdc7 ;journal: doc: commmodity typo 2020-04-10 17:54:00 -07:00
Simon Michael
3b59a95a54 ;cli, journal: doc: consistent heading capitalisation, whitespace 2020-04-08 21:14:38 -07:00
Simon Michael
4195a55287 ;journal: fix double curly braces, since they are our m4 delimiters 2020-04-08 20:26:22 -07:00
Simon Michael
3ad2e50ec5 journal: also parse Ledger-style "virtual posting costs" - (@), (@@) 2020-04-08 20:22:03 -07:00
Simon Michael
847f924828 journal: comment fix 2020-04-08 20:00:18 -07:00
Simon Michael
f4a1a31712 journal: also support lot dates ([DATE]) 2020-04-08 19:55:55 -07:00
Simon Michael
fedde7fab1 journal: also support the total lot price variants ({{}}, {{=}}) 2020-04-08 19:18:39 -07:00
Simon Michael
5beeb56a87 ;journal: document improved lot price parsing; changelog 2020-04-08 19:02:24 -07:00
Simon Michael
ea3b290dd0 journal: more flexible, Ledger-compatible parsing of lot prices
We now accept (but still ignore) a fixed or nonfixed ({=} or {}) lot
price following a posting amount, and it may appear before or after a
transaction price (@ or @@). And it may no longer appear after a
balance assertion.

Also: fixedlotpricep renamed to lotpricep, now also parses non-fixed
lot prices. A bit of amount parsers cleanup.
2020-04-08 15:26:18 -07:00
Simon Michael
10f8dc84a5 period expressions: allow "until", like Ledger (synonym for "to") 2020-04-08 14:26:38 -07:00
Simon Michael
34dd7bf053 ;csv: clarify the rule file search directory a little 2020-04-08 12:25:38 -07:00
Simon Michael
898cda4ee5 ;changelogs 2020-04-06 18:38:38 -07:00
Simon Michael
3cc79a67f2 csv: don't discard explicit assignments of a 0 amount
Eg: an `amount1  $0.00` assignment was generating a posting1 with
missing amount.
2020-04-05 14:19:02 -07:00