Commit Graph

1295 Commits

Author SHA1 Message Date
Simon Michael
0f4413f011 doc: ui: note transaction screen's inability to update; code cleanup 2023-03-24 12:44:53 -10:00
Simon Michael
056553e8a9 imp: ui: improve screens' help footer 2023-03-24 11:33:36 -10:00
Simon Michael
4c29669750 ;doc: update manuals 2023-03-24 10:33:17 -10:00
Simon Michael
ce07424164 ;cabal: update cabal files 2023-03-24 10:33:08 -10:00
Simon Michael
8ff0584a3c dev: ui: update tests 2023-03-24 10:32:14 -10:00
Simon Michael
5d69c09366 imp: ui: help tweak 2023-03-24 10:09:52 -10:00
Simon Michael
6cbf354206 imp: ui: show menu screen by default; drop the --menu flag
It's a simpler and more natural default; power users can use a flag to
start in the desired screen.
2023-03-24 10:07:53 -10:00
Simon Michael
3705e4c15e imp: ui: menu: move "All accounts" screen last 2023-03-24 08:03:04 -10:00
Simon Michael
a4b3476e2f feat: ui: add "Cash accounts" screen 2023-03-24 07:59:16 -10:00
Simon Michael
b9af9ab367 ;doc: update changelogs 2023-03-18 20:10:25 -10:00
Simon Michael
207cad0dfb ;doc: update changelogs 2023-03-18 01:43:05 -10:00
Simon Michael
5655c533fa ;doc: merge release changelogs 2023-03-16 17:45:43 -10:00
Simon Michael
0f63a35ea3 ;doc: update changelogs 2023-03-16 15:45:16 -10:00
Simon Michael
fe3477797b ;doc: update changelogs 2023-03-16 14:56:25 -10:00
Simon Michael
cc41704c92 ;doc: update changelogs 2023-03-16 14:44:50 -10:00
Simon Michael
cb011c0c77 ;cabal: update cabal files (#2011) 2023-03-15 20:44:01 -10:00
Simon Michael
44805f96ef ;dev: ui, web: fixes for ghc 9.6; cleanup (#2011) 2023-03-15 20:43:51 -10:00
Simon Michael
9ceb74062d ;doc: update manuals 2023-03-11 13:28:02 -10:00
Simon Michael
f75110f49c ;cabal: update cabal files 2023-03-11 13:27:25 -10:00
Simon Michael
a0ca339c46 ;pkg: bump version to 1.29.99 2023-03-11 13:27:25 -10:00
Simon Michael
2e3872c3f1 ;doc: changelogs: 1.29 2023-03-11 13:26:30 -10:00
Simon Michael
2af744292a ;doc: update manuals 2023-02-21 00:17:02 -10:00
Simon Michael
fa70f160ae imp: partial/inferred dates are flexible, full dates are not (#1982)
DateSpans are now now aware of exact/flexible dates.
2023-02-17 07:24:19 -10:00
Simon Michael
d1e62f38a2 ;ui: help dialog: mention that LEFT shows other screens 2023-02-15 16:47:49 -10:00
Simon Michael
f4160d5397 ;doc: bump man page dates 2023-02-04 07:06:18 -10:00
Simon Michael
b140529465 ;doc: update manuals 2023-01-25 11:59:12 -10:00
Simon Michael
43466dbe03 ;doc: ui: mention shift-up/down config needed for Terminal.app 2023-01-11 13:39:06 -10:00
Simon Michael
fc8fe8ee46 ;doc: update manuals 2023-01-10 23:34:47 -10:00
Simon Michael
0f2fe39e43 cabal: update cabal files 2022-12-22 20:32:03 -10:00
Simon Michael
d0eaa8cf5a dev: force megaparsec 9.3 in stack build plans where supported
For the useful dbg tool.
2022-12-22 20:31:47 -10:00
Simon Michael
3b91a8475a cabal: update cabal files 2022-12-22 19:26:16 -10:00
Simon Michael
e9e8f350f2 dev: require megaparsec 9.3+ in dev build, for its useful dbg tool
The 9.3 version works with our parsers.
2022-12-22 19:25:57 -10:00
Simon Michael
43023d3d86 ;doc: some changes to hledger and input files description macros 2022-12-14 12:23:10 -10:00
Simon Michael
36a20b7dfd ;doc: update manuals 2022-12-14 07:53:09 -10:00
Simon Michael
600e263a9a ;doc: cli, ui, web: consistent boilerplate 2022-12-11 15:44:09 -10:00
Simon Michael
985c15f039 ;doc: cli: clean up/rename directives sections 2022-12-11 01:59:26 -10:00
Simon Michael
474ad22b94 ;doc: officially rename "transaction prices" to "costs" in docs
(though not in code)
2022-12-10 18:50:45 -10:00
Simon Michael
f3b0a1f513 ;doc: update manuals 2022-12-01 12:24:23 -08:00
Simon Michael
8da21f1195 ;cabal: update cabal files 2022-12-01 12:23:10 -08:00
Simon Michael
740ea50e4c ;pkg: bump version to 1.28.99 2022-12-01 12:23:10 -08:00
Simon Michael
cbbfb82474 doc: 1.28 changelog headings 2022-12-01 12:21:09 -08:00
Simon Michael
fa8f6ae302 lib: Debug: breakpoint doesn't support windows yet, drop for now 2022-12-01 12:20:29 -08:00
Simon Michael
d76e47b586 ;doc: update changelogs 2022-11-30 17:13:09 -05:00
Felix Yan
66b51472f2 Allow megaparsec 9.3
Builds fine and all tests pass.
2022-11-30 05:12:04 -05:00
Simon Michael
74f9cd866c dev: ui: commit missing change for brick 1.5 2022-11-26 08:50:28 -05:00
Simon Michael
5283c280bf ;cabal: update cabal files 2022-11-26 00:13:02 -05:00
Simon Michael
7bba7e79af dev: ui: support/require brick 1.5, as in latest stackage nightly 2022-11-26 00:12:28 -05:00
Simon Michael
3a6955d3e2 dev: add stack9.4.yaml for building with latest nightly/ghc 9.4.3 2022-11-25 23:45:17 -05:00
Simon Michael
0b9c01253b imp: ui: simplify screen names on menu screen 2022-11-08 12:39:20 -10:00
Simon Michael
a7620f3102 ;doc: ui, web: show smaller screenshot thumbnails 2022-11-08 11:55:09 -10:00
Simon Michael
3724e77dad ;doc: ui: updates 2022-11-08 11:48:12 -10:00
Simon Michael
4a1d900c51 ;doc: update manuals 2022-11-07 17:04:05 -10:00
Simon Michael
1f385ae774 ;doc: ui: update navigation, clarify balances/changes 2022-11-07 17:03:48 -10:00
Simon Michael
a485a5ebe7 imp: ui: ENTER key is equivalent to RIGHT for navigation 2022-11-07 17:03:06 -10:00
Simon Michael
892eb06396 ;dev: ui: replace "curses interface" with TUI 2022-11-07 16:48:54 -10:00
Simon Michael
479ef69d3f dev: ui: convert tests to markdown, update 2022-11-07 16:36:26 -10:00
Simon Michael
6e5c30ea1a ;doc: update manuals 2022-11-07 16:18:28 -10:00
Simon Michael
82aa8f1975 imp: ui: bs/is screens: clarify balance/changes in header/footer 2022-11-07 16:10:56 -10:00
Simon Michael
a726be0e28 imp: ui: add flags to select starting screen 2022-11-07 16:04:39 -10:00
Simon Michael
1a526b82c9 imp: ui: debug log startup args, debug level, initial screen stack 2022-11-07 14:52:42 -10:00
Simon Michael
da569e51e1 imp: ui: improve debug logging helpers, log screen stack on each event 2022-11-07 14:51:45 -10:00
Simon Michael
05aeedf6c9 imp: ui: start on all accts scrn if no bs accts detected, or with an acct query 2022-11-07 09:42:21 -10:00
Simon Michael
1de60dd0c2 ;doc: update manuals 2022-11-06 09:39:22 -10:00
Simon Michael
b0966adc93 dev: debug logging: ".log" suffix instead of ",logging"; improve docs 2022-11-06 09:01:12 -10:00
Simon Michael
9a8a8a75a2 imp: ui: start on balance sheet screen: better initial screen stack 2022-11-06 07:59:45 -10:00
Simon Michael
06bc09a36f dev: comments 2022-11-06 07:59:45 -10:00
Simon Michael
4a35945a8f imp: ui: start on balance sheet accounts screen 2022-11-04 23:16:40 -10:00
Simon Michael
32d7cb5287 doc: ui, web: mention debug output 2022-11-03 17:16:55 -10:00
Simon Michael
cc1ea894aa doc: ui: watch mode cleanup 2022-11-03 17:11:55 -10:00
Simon Michael
80eb461063 ;doc: update manuals 2022-11-03 16:07:55 -10:00
Simon Michael
988c164ec8 imp: debug logging improvements; hledger-ui logs to hledger-ui.log only
Hledger.Utils.Debug's "trace or log" functions are now controlled as
follows: to enable logging, append ",logging" to the program name at
startup (using withProgName). This also works when running in GHCI.
And they log to PROGNAME.log, not debug.log.

All (hopefully) debug logging in the hledger packages is now "trace or
log" capable.

This means that hledger-ui should now log all debug output to
./hledger-ui.log, with none of it appearing on the console.
2022-11-03 16:07:54 -10:00
Simon Michael
c25c5cef44 fix: make no-argument --debug flag work with ui & web also 2022-11-03 08:13:58 -10:00
Simon Michael
6504748b4f ;doc: ui: changelog 2022-10-31 13:36:34 -10:00
Simon Michael
3d26fc30eb ;doc: update changelogs 2022-10-31 13:18:36 -10:00
Simon Michael
9a9ebfc0e3 dev: ui: rename hledger-ui debug helpers 2022-10-31 12:42:09 -10:00
Simon Michael
603fae70c0 dev: lib: clean up/simplify debug helpers 2022-10-31 11:26:11 -10:00
Simon Michael
3a0473b5b4 fix: ui: fix regenerateScreens, it was not updating the journal
And add to test suite. Fixes unreleased code.
2022-10-28 23:03:12 -10:00
Simon Michael
778b660919 dev: ui: debug logging improvements, export screenRegisterDescriptions 2022-10-28 22:44:47 -10:00
Simon Michael
d948198303 dev: ui: cleanup 2022-10-28 17:16:45 -10:00
Simon Michael
52d7f99360 fix: ui: fix internal screen state when using --register
This seems not to have been user-visible.
2022-10-28 16:52:45 -10:00
Simon Michael
21c00f9ba2 imp: ui: improve --debug=2 debug.log logging 2022-10-28 16:51:55 -10:00
Simon Michael
020dec10a7 dev: ui: debug logging helpers
Hledger.UI.UIUtils
added:
dlogUiTraceIO
dlogUiScreenStack
mapScreens
screenId
2022-10-28 16:50:01 -10:00
Simon Michael
928cc6d615 ;doc: update manuals 2022-10-01 16:09:26 -10:00
Simon Michael
130604a2e0 ;cabal: update cabal files; migrate to hpack 0.35/stack 2.9 2022-09-19 18:23:26 -10:00
Simon Michael
45ee5d125d imp: ui: support/require fsnotify 0.4.x 2022-09-19 18:18:50 -10:00
Simon Michael
a3c2e2c1ba doc: changelogs 2022-09-18 10:02:25 -10:00
Simon Michael
a2be9a0bce ;doc: update changelogs 2022-09-18 08:28:03 -10:00
Simon Michael
0017281a67 dev: ui: test updates 2022-09-11 14:36:42 -10:00
Simon Michael
e51d4059db feat: ui: add income statement accounts screen 2022-09-11 13:51:40 -10:00
Simon Michael
9fc92cefe4 imp: ui: at --debug 2+, also log events 2022-09-10 12:55:00 -10:00
Simon Michael
68b243e670 dev: ui: menu screen code cleanups 2022-09-10 12:44:27 -10:00
Simon Michael
0ba0a12cc0 dev: ui: add some commented debug logging of state 2022-09-10 12:44:27 -10:00
Simon Michael
96f42380e8 dev: ui: fix an unclear windows-conditional import 2022-09-10 12:44:21 -10:00
Simon Michael
6f258b704a dev: ui: bs: reuse account screen's event handler 2022-09-09 16:11:00 -10:00
Simon Michael
3fbef8ab88 dev: ui: asHandle refactor, cleanup 2022-09-09 11:01:49 -10:00
Simon Michael
a3c0716133 dev: ui: as, bs: reuse update, draw code 2022-09-08 13:42:29 -10:00
Simon Michael
a3ea054028 dev: ui: bs: reuse AccountsScreenState 2022-09-08 12:46:02 -10:00
Simon Michael
90703dcd84 dev: ui: ms: cleanups 2022-09-08 12:38:50 -10:00
Simon Michael
fb0053c15f imp: ui: fix a probable bug with detecting date change while running 2022-09-08 12:23:59 -10:00
Simon Michael
b81c2395d5 dev: ui: fix warning 2022-09-08 12:23:59 -10:00
Simon Michael
6737bb3d38 imp: ui: mouse-clicking below the list no longer navigates back
I and mail list think it's too obtrusive, eg sometimes it navigates
when you just want to focus the window.
2022-09-08 12:23:59 -10:00
Simon Michael
975522e759 feat: ui: add balance sheet accounts screen 2022-09-08 12:23:59 -10:00
Simon Michael
75a19e8609 feat: ui: add top-level menu screen 2022-09-08 12:23:59 -10:00
Simon Michael
8f8fc7bf75 dev: ui: re-export new/update functions from screen modules 2022-09-07 14:17:49 -10:00
Simon Michael
a5f4d2fd6e dev: ui: refactor: simpler, more debuggable Screen type
Follow-on from the brick 1.0 migration work (#1889, #1919).

These new types aim to be more restrictive, allowing fewer invalid
states, and easier to inspect and debug. The screen types store only
state, not behaviour (functions), and there is no longer a circular
dependency between UIState and Screen.
2022-09-07 11:56:13 -10:00
Simon Michael
427005037e cabal: update cabal files 2022-09-01 18:37:57 -07:00
Simon Michael
e5bb4f0b66 ;pkg: bump version to 1.27.99 2022-09-01 18:37:40 -07:00
Simon Michael
38ce19847b doc: update changelogs 2022-09-01 18:36:39 -07:00
Simon Michael
7631d0efa0 ;doc: update manuals 2022-09-01 18:36:34 -07:00
Simon Michael
651d584bb0 ;doc: update changelogs 2022-09-01 15:48:46 -07:00
Simon Michael
b46cb8a7f7 cabal: update cabal files 2022-08-23 12:16:25 +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
96db4fe9cc dev: ui: enable/fix name shadowing warnings 2022-08-23 02:57:59 +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
6b4f145c46 dev: ui: test suite fixes 2022-08-23 02:02:19 +01:00
Simon Michael
f5efb2e08e fix: ui: cleanups, fix more state & logging bugs (#1889) 2022-08-23 01:55:25 +01:00
Simon Michael
b6353804b8 fix: ui: fix state bugs from brick 1 migration (#1889) 2022-08-23 00:50:51 +01:00
Simon Michael
67cd6be424 imp: ui: at --debug=2, do lots of logging to debug.log 2022-08-23 00:50:51 +01:00
Simon Michael
423f3bd155 ;doc: update manuals 2022-08-22 07:59:02 +01:00
Simon Michael
4e105f0cb7 ;dev: ui: note relevant discussion 2022-08-17 16:19:34 +01:00
Simon Michael
4bd9f4a6f7 dev: ui: avoid MonadFail entirely, simplifying ghc version compat (#1889) 2022-08-17 15:57:27 +01:00
Simon Michael
2a594b7fb7 pkg: ui: use/require brick 1.0+ (#1889) 2022-08-17 15:57:27 +01:00
Simon Michael
e5eac1a618 pkg: ui: add upper bound avoiding brick 1.0 2022-08-17 11:49:10 +01:00
Simon Michael
06c14ff034 ;doc: update manuals 2022-07-28 17:32:58 +01:00
Simon Michael
6fbcbf7c6b doc: update manuals 2022-07-12 16:01:33 +01:00
Simon Michael
d7f30d4fdf ;cabal: update cabal files 2022-07-11 11:18:24 +01:00
Simon Michael
d9c6406d2d doc: changelogs: updates 2022-07-11 11:02:18 +01:00
Simon Michael
7be94cf500 doc: changelogs: sync from release branch 2022-07-11 11:00:16 +01:00
Simon Michael
797cac4fc6 pkg: require safe 0.3.19+ to avoid deprecation warning 2022-07-11 06:03:14 +01:00
Simon Michael
dde2ea7e42 pkg: ui: support doclayout 0.4, brick 0.72+ 2022-07-10 22:03:45 +01:00
Simon Michael
0c6cd819f2 ;doc: changelogs cleanup 2022-06-05 00:59:36 +01:00
Simon Michael
6017e5f237 ;doc: update changelogs 2022-06-05 00:56:10 +01:00
Simon Michael
f2db4c3840 ;cabal: update cabal files 2022-06-05 00:32:18 +01:00
Simon Michael
3e728b1d36 ;pkg: bump version to 1.26.99 2022-06-05 00:32:18 +01:00
Simon Michael
122620c335 ;doc: changelogs 2022-06-05 00:03:12 +01:00
Simon Michael
729a8b81e0 ;doc: update changelogs 2022-06-05 00:03:10 +01:00
Simon Michael
9833482c06 ;doc: update manuals 2022-06-05 00:02:59 +01:00
Simon Michael
d27a581e0f ;doc: update changelogs 2022-06-04 11:28:59 +01:00
Simon Michael
1085a2a777 ;doc: update changelogs 2022-05-29 08:05:33 -10:00
Simon Michael
2bce910904 ;doc: update manuals 2022-05-25 11:35:47 -10:00
Simon Michael
133c54434a ;doc: changelogs 2022-04-14 13:59:03 -10:00
Simon Michael
8de85be658 ;doc: update manuals 2022-04-14 12:39:18 -10:00
Simon Michael
db1818ac4a imp: consistent ghc warnings 2022-03-26 08:27:29 -10:00
Simon Michael
4951ca5aa9 tools: regenerate cabal file with ghcup's stack's hpack to avoid conflicts 2022-03-26 08:27:29 -10:00
Simon Michael
3eddd913e3 imp: ghc9.2: silence incomplete-record-updates warnings 2022-03-25 20:36:12 -10:00
Simon Michael
d9ecd1eb9d imp: update to modern warning flags 2022-03-25 20:28:34 -10:00
Stephen Morgan
603b2e9f09 ref: Use ExceptT String IO a instead of IO (Either String a).
This increases composability and avoids some ugly case handling. We
re-export runExceptT in Hledger.Read.

The final return types of the following functions has been changed from
IO (Either String a) to ExceptT String IO a. If this causes a problem,
you can get the old behaviour by calling runExceptT on the output:
readJournal, readJournalFiles, readJournalFile

Or, you can use the easy functions readJournal', readJournalFiles', and
readJournalFile', which assume default options and return in the IO
monad.
2022-03-25 14:23:27 -10:00
Stephen Morgan
45408183fe dev: reg: areg: Strip prices early on in PostingsReport and AccountTransactionsReport, when possible.
This results in big speedups in cases when we have many transaction prices, like in examples/10000x1000x10.journal. This can be disabled with the show_costs_ option in ReportOpts.
2022-03-10 17:21:40 -10:00