Commit Graph

6795 Commits

Author SHA1 Message Date
Simon Michael
080e475eb9 cli: update cabal file 2018-10-22 10:54:22 -07:00
Simon Michael
643de787b1 tests: move auto.test under print/ 2018-10-22 10:53:59 -07:00
Samuel May
0ea49f5c5a docs: journal: Add paragraph about exact assignments 2018-10-22 09:55:14 -07:00
Samuel May
f54adf3d10 docs: journal: Document exact assertions 2018-10-22 09:55:14 -07:00
Samuel May
e57ef9e9a9 lib: journal: Add support for exact assertions 2018-10-22 09:55:14 -07:00
Samuel May
6c31393dd3 lib: Groundwork allowing multi-commodity assertions 2018-10-22 09:55:14 -07:00
Samuel May
cde91fc5f4 lib: Make BalanceAssertion a full datatype
Note: simplifies/moves whitespace parsing out of the balance assertion
parser.
2018-10-22 09:55:14 -07:00
Samuel May
22645881c1 Add upper bound on 'statistics'; broaden .gitignore
.gitignore: products of manual cabal builds, and vim temp files
hledger.cabal: *.RootFinding removed from statistics >=0.15 in favor
  of that in math-functions >=0.2
2018-10-22 09:51:02 -07:00
Simon Michael
0d531bb24f lib: showTransaction: fix a case showing multiple missing amounts
Noticed by peti: showTransaction could sometimes hide the last posting's
amount even if one of the other posting amounts was already implcit,
producing invalid transaction output.
2018-10-22 07:23:40 -07:00
Simon Michael
b5a90432ff lib: document and test showTransaction*, posting*AsLines 2018-10-22 06:46:31 -07:00
Simon Michael
20f006f7f6 lib: transaction: drop commented code 2018-10-22 04:03:29 -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
Simon Michael
6d11164444 web: fix duplicate package.yaml keys warned about by hpack 2018-10-18 14:44:16 -07:00
Simon Michael
b1582b29b1 ui: doc: update manuals 2018-10-18 14:43:00 -07:00
Simon Michael
b5df5fb5f0 lib: comment 2018-10-18 14:43:00 -07:00
Simon Michael
74611a7be1 ui: accounts: fix balances when there's only periodic txns
And clarify multiBalanceReport.
2018-10-18 14:43:00 -07:00
Simon Michael
89a0c7a308 ui: comment 2018-10-18 14:43:00 -07:00
Simon Michael
2c2d10f9c2 lib: plog, plogAt: add missing newline, note issue 2018-10-18 14:43:00 -07:00
Simon Michael
2edb1f2705 ui: always enable periodic transactions and transaction modifiers
Rule-based transactions and postings are always generated
(--forecast and --auto are always on).
Experimental.
2018-10-18 14:43:00 -07:00
Simon Michael
b85bbbb095 ui: drop the --status-toggles flag 2018-10-18 14:43:00 -07:00
Simon Michael
a924ad047e ui: drop the --present flag 2018-10-18 14:43:00 -07:00
Simon Michael
2a44d7eb26 ui: reorganise help dialog, fit content into 80x25 again 2018-10-18 14:43:00 -07:00
Simon Michael
cf6f4ed28c ui: escape key resets to flat mode
Flat mode is the default at startup. Probably it should reset to tree
mode if --tree was used at startup.
2018-10-18 14:43:00 -07:00
Simon Michael
1b42d34a78 ui: small help tweak
[ci skip]
2018-10-18 14:43:00 -07:00
Simon Michael
52ee10bd87 ui: reg: ensure T always has a visible effect 2018-10-18 14:43:00 -07:00
Simon Michael
1c3233cc0f ui: replace odd-looking pattern 2018-10-18 14:43:00 -07:00
Simon Michael
1db9b018f1 ui: add --present/--future, hide future txns by default, toggle with F
You may have transactions dated later than today, perhaps piped from
print --forecast or recorded in the journal, which you don't want to
see except when forecasting.

By default, we now hide future transactions, showing "today's balance".
This can be toggled with the F key, which is easier than setting a
date query. --present and --future flags have been added to set the
initial mode.

(Experimental. Interactions with date queries have not been explored.)
2018-10-18 14:43:00 -07:00
Simon Michael
e52430bd62 ui: default theme: reduce highlighting noise in bottom border help 2018-10-18 14:43:00 -07:00
Simon Michael
89712fe81d ui: make flat the default, toggle with T, add --tree/-T/-F flags 2018-10-18 14:43:00 -07:00
Dmitry Astapov
15c666702b cli: compoundbalancecommand keeps zero-balance accounts with children 2018-10-17 16:59:53 -07:00
Jesse Rosenthal
a6a73e36e3 Finish removing journalFinalise (#903)
* journal: Get rid of `journalFinalise` and use granular functions

Complete the process started in 53b3e2bd. This gets rid of the
`journalFinalise` function and uses the smaller steps, in order to
have more granular control.

* journal: Change order of operations in finalization

We want to make sure that we add the filepath after the order is
reversed, so the added filepath is on the head and not the tail (as it
would be if it were reversed after it was added).

* journal: Refine granular finalization functions

This commit fixes two of the granular finalization functions:

1. Rename `journalSetTime` to `journalSetLastReadTime` and improve
   documentation.

2. Remove `journalSetFilePath`. It's redundant with `journalAddFile`
   currently in `Hledger.Read.Common`. The only difference between the
   functions is where the file is added (we keep the one in which it
   is added to the tail), so we change the position vis-a-vis
   reversal.
2018-10-16 08:51:51 -07:00
Simon Michael
0f2a31bea7 docs: journal: account: a little bit more about sorting
[ci skip]
2018-10-15 12:07:44 -07:00
Simon Michael
4a399e50cb acc: don't require an explicit --flat to make --drop work 2018-10-13 13:22:11 -07:00
Simon Michael
b72f9697a2 lib: journal: account: allow whitespace or a comment after the account name 2018-10-13 13:09:49 -07:00
Simon Michael
4f2d9dde4c docs: journal: clarify transaction modifiers
[ci skip]
2018-10-12 09:12:06 -07:00
Simon Michael
383479d313 doc: update hledger-irr mention
[ci skip]
2018-10-12 09:12:06 -07:00
Jesse Rosenthal
53b3e2bd94 journal: split up the parts of journalFinalise, and use them as needed.
`journalFinalise` is only used in the `parseAndFinaliseJournal`
functions, but it needs to be run differently at different stages when
transaction modifiers are applied. This change breaks it into smaller
functions, and uses those smaller parts in `parseAndFinaliseJournal`
as needed.
2018-10-12 07:39:53 -07:00
Jesse Rosenthal
20f134c96b read: only run finalise twice if there are modifiers
Previously we ran if `--auto` was set. But this adds a small
performance hit if `--auto` becomes default. Now we only run twice if
there are transactionModifiers AND `--auto` is set. So even if auto is
specified, there will be no penalty if there are no modifiers.
2018-10-12 07:39:53 -07:00
Jesse Rosenthal
6c3fb56603 Add test for modifers on inferred values. 2018-10-12 07:39:53 -07:00
Jesse Rosenthal
5a3462ce48 read: Integrate transaction modifiers with journal finalization
Currently, automated transactions are added before the journal is
finalized. This means that no inferred values will be picked up. We
change the procedure, if `auto_` is set, to

 1. first run `journalFinalise` without assertion checking (assertions
    might be wrong until automated transactions), but with reordering
 2. Insert transaction modifiers
 3. Run `journalFinalise` again, this time with assertion checking as
    set in the options, and without reordering.

If `auto_` is not set, all works as before.

Closes: #893
2018-10-12 07:39:53 -07:00
Jesse Rosenthal
b346d7f701 Journal: make reordering optional in journalFinalise
Currently `journalFinalise` always reverses the order of
entries. However, if there are automated transactions, we might need
to run it twice. This adds a boolean flag to make reordering
optional. This will be used in the `parseAndFinaliseJournal`
functions.
2018-10-12 07:39:53 -07:00
Simon Michael
c53502e1ac docs: say more about special chars and unicode chars (cf #895)
[ci skip]
2018-10-11 19:06:52 -07:00
Simon Michael
9685699491 docs: options: clarify special characters topic
[ci skip]
2018-10-11 18:00:36 -07:00
Simon Michael
51bf8cbccc docs: journal: account: a gotcha when changing builtin account types
[ci skip]
2018-10-11 16:16:33 -07:00
Simon Michael
a899f7924f docs: journal: account: update directives intro
[ci skip]
2018-10-11 15:53:06 -07:00
Moritz Kiefer
ec1b31f7ba Anonymize original postings 2018-10-11 15:39:33 -07:00
Simon Michael
0d6803e4b5 accounts: drop obsolete --codes flag 2018-10-10 20:35:53 -07:00
Simon Michael
cf25ef5cf5 accounts: filtering by anything other than account name was broken 2018-10-10 20:32:19 -07:00
Simon Michael
3f0ab0b008 tests: clean up directives test files
[ci skip]
2018-10-10 20:31:08 -07:00
Simon Michael
e4215c094e doc: journal: document setting account types
[ci skip]
2018-10-09 14:24:59 -10:00