Commit Graph

530 Commits

Author SHA1 Message Date
Simon Michael
40ab1e17f6 amounts cleanups, and support zeros with commodity 2014-07-28 18:45:13 -07:00
Simon Michael
7fb154f820 balance: include report span in title 2014-07-26 17:29:20 -07:00
Simon Michael
ca43eab47a balance: simplify multicolumn report titles slightly 2014-07-26 17:09:29 -07:00
Simon Michael
b499ea85eb register: optimise postingsReportItemAsText a bit
Avoid concatTopPadded when rendering register output, making that
command faster when there's a lot of output.
2014-07-07 08:37:27 -07:00
Simon Michael
3a16e6cfc7 mostly replace slow regexpr with regex-tdfa (fixes #189) 2014-07-06 14:03:28 -07:00
Simon Michael
16f8b78305 balance: show multi-commodity amts on one line (fixes #186)
To avoid totally breaking the layout of multicolumn balance reports when
there are multi-commodity balances, these are now rendered on a single
line, comma separated. Simple balance reports still use the old vertical
format for now.
2014-07-03 07:45:55 -07:00
Simon Michael
3669422bbf make --width and --debug require an argument (fixes #149)
This is a workaround for a cmdargs limitation. Having "--debug 2"
or "--width 100" produce no output (because the number is parsed
as a separate argument) is too annoying.
2014-07-03 07:31:52 -07:00
Simon Michael
330dfe6891 commodity & amount style parser cleanups, part 2 2014-07-02 17:41:33 -07:00
Simon Michael
0c3148ac7b add an --ignore-assertions flag
Can be helpful when reading Ledger files, where assertions may have
different semantics; or for getting some answers from your journal
to help you fix your assertions.

Could be called --no-assertions, but this might create surprise when it
has an effect contrary to --no-new-accounts.

I had to add another flag throughout the parsers & journal read
functions, ok for now.
2014-07-01 18:26:37 -07:00
Simon Michael
34f4800e82 Revert "remove Setup.hs files again, fixing a yesod devel warning"
Setup.hs are required by the Hydra buildbot.

This reverts commit 97ab3db8f0.
2014-05-24 13:39:09 -07:00
Simon Michael
97ab3db8f0 remove Setup.hs files again, fixing a yesod devel warning
These were removed and re-added in 2011 because "hackage needed them".
Let's try again.
2014-05-23 09:04:00 -07:00
Simon Michael
6b059aeb5e Merge branch 'rdesfo-0.23'
Conflicts:
	.version
	hledger-lib/Hledger/Read/CsvReader.hs
	hledger-lib/hledger-lib.cabal
	hledger-web/hledger-web.cabal
	hledger/hledger.cabal
2014-05-22 16:15:35 -07:00
Ryan Desfosses
b60da51386 made the following changes to resolve deprecated warnings:
replaced hamletToRepHtml with giveUrlRenderer
  updated type RepHtml to Html
  replaced settingsPort with setPort
2014-05-21 07:30:54 -04:00
Ryan Desfosses
38f977fa48 Histogram: fixes previous change
change made in Histogram:cabal test and hlint warning
2014-05-14 12:18:50 -04:00
Ryan Desfosses
47853d6df6 Cli: cabal test and hlint warnings 2014-05-11 20:19:36 -04:00
Ryan Desfosses
342bae8c35 Histogram: cabal test and hlint warnings 2014-05-11 19:27:39 -04:00
Simon Michael
fc7acea381 Merge branch 'master' of github.com:rdesfo/hledger into rdesfo
Conflicts:
	README.md
2014-05-08 14:44:53 -07:00
Simon Michael
2bba4dbe3c update changelogs 2014-05-08 14:35:20 -07:00
Simon Michael
3113e09a62 bump version to 0.23.2 2014-05-08 14:32:29 -07:00
Simon Michael
6d93fe15d3 update changelogs 2014-05-08 14:32:06 -07:00
Ryan Desfosses
39479638e3 Option: cabal test and hlint warnings 2014-05-07 22:34:41 -04:00
Simon Michael
ec48926a38 update changelog 2014-05-07 16:49:44 -07:00
Simon Michael
4b1714a9e0 bump version to 0.23.1 2014-05-07 16:44:44 -07:00
Simon Michael
6d6aae3cc9 update changelog 2014-05-07 16:43:32 -07:00
Simon Michael
120b3b8377 add: don't apply a default commodity to amounts on entry (fixes #138) 2014-05-07 16:37:22 -07:00
Simon Michael
09ebd3e049 cli: options before the add-on are also passed to it (fixes #182) 2014-05-07 16:37:22 -07:00
Simon Michael
41add3ffeb oh fine still cant do that, bump to 0.23.98 2014-05-03 17:18:12 -07:00
Simon Michael
87f1e83d78 bump version to 0.24dev 2014-05-03 15:51:57 -07:00
Simon Michael
cceff52403 add: don't apply a default commodity to amounts on entry (fixes #138) 2014-05-03 15:48:20 -07:00
Simon Michael
f7406f77cf cli: options before the add-on are also passed to it (fixes #182) 2014-05-03 15:26:51 -07:00
Simon Michael
07a82724ed lib, cli, web: change from "beta" to "stable"
Also add the hackage Console category to the first two.
2014-05-01 08:20:05 -07:00
Simon Michael
1eeedfe551 bump versions to 0.23 2014-05-01 08:17:17 -07:00
Simon Michael
524bfe73c6 final changelogs 2014-05-01 08:14:36 -07:00
Simon Michael
e6a1339370 cli: options help polish 2014-05-01 07:22:44 -07:00
Simon Michael
66422a7711 cli: more flag cleanups, help layout improvements 2014-04-30 17:40:14 -07:00
Simon Michael
2a1e0f6aff cli: drop --display from command-line help 2014-04-30 17:39:38 -07:00
Simon Michael
a28d4fd400 register: drop --display, use --historical instead
We provided a very limited implementation of --display only for one use
case: to see an accurate running balance. Now that is achieved more easily
with -H/--historical, similar to the balance command, and --display
can be dropped.
2014-04-30 17:24:41 -07:00
Simon Michael
98cc1d0e77 addons: more description strings for test addons 2014-04-30 07:32:10 -07:00
Simon Michael
7d579adb0e changelog updates 2014-04-28 00:55:14 -07:00
Simon Michael
aee7b3512d cli: omit the -- from debug output as well 2014-04-27 23:44:24 -07:00
Simon Michael
9418967343 cli: a fix for add-on options after -- (don't pass the -- through) 2014-04-27 23:34:27 -07:00
Simon Michael
d0932cb47a cli: small cleanup 2014-04-27 23:34:09 -07:00
Simon Michael
f3c90a1351 addons: simplify and firm up add-on command parsing
Drop the special case where we hide an add-on's source version if a
compiled version is also present. Better to be simple and explicit.

Improve robustness of command parsing, eg "hledger addon.hs"
will now work even though the command is listed as "addon".

And ignore any add-ons which would shadow a built-in command
(or any of the official command aliases displayed in the command list,
like "bal" and "reg"). Built-ins may not be replaced by an add-on.
2014-04-27 18:48:35 -07:00
Simon Michael
791f6fdd15 expose the accounts command in Hledger.Cli 2014-04-27 18:47:27 -07:00
Simon Michael
7d73ab5264 cli: drop single-letter aliases, keep the familiar three-letter ones where useful 2014-04-27 18:46:34 -07:00
Simon Michael
4b47c1340f addons: note more issues 2014-04-26 10:49:37 -07:00
Simon Michael
9ce2d6a75a tools: update test addons 2014-04-26 10:44:31 -07:00
Simon Michael
9a255051e8 addons: try to be smarter about showing file extensions
We now hide add-ons' file extensions in the commands list except when
they are needed for disambiguation. There are three cases:

- when an add-on exists with only one file extension, the extension is
  not displayed.

- when an add-on has exactly two variants, one with the .[l]hs extension
  and the other with none or .exe - presumably the source and compiled
  versions - we omit the source version from the list.

- otherwise when an add-on has multiple variants differing by file
  extension, they are listed with their extensions displayed.
2014-04-26 10:25:32 -07:00
Simon Michael
eeb48c86d1 default report dates come from secondary dates with --date2 2014-04-24 14:44:30 -07:00
Simon Michael
32f182158e fix a warning 2014-04-22 17:50:09 -07:00
Simon Michael
e40b587357 addons: another fix for addon detection on windows 2014-04-22 17:49:03 -07:00
Simon Michael
ca499d7f7b addons: detect more executable file extensions, such as .exe
In addition to hledger-X and hledger-X.hs, other common executable file
extensions will be recognised. In particular, on windows hledger now
lists hledger-web.exe as an add-on. The current list is:
bat, com, exe, hs, lhs, pl, py, rb, rkt, sh.
2014-04-22 17:40:06 -07:00
Simon Michael
d46b290287 update tested-withs 2014-04-19 12:16:14 -07:00
Simon Michael
499cf41b03 hledger, web: allow shakespeare 2.* 2014-04-19 12:15:20 -07:00
Simon Michael
1fca3e7472 orDatesFrom -> spanDefaultsFrom 2014-04-19 08:38:03 -07:00
Simon Michael
f94d784f48 changelog updates from release branch
give hledger-lib a changelog, update changelogs

(cherry picked from commit a67cee4e5f9e3dc09be86e7bc0e8fd77168a5070)

Conflicts:
	hledger/CHANGES

update changelogs

(cherry picked from commit ef053a42523ff2d57921837896b9ccc0a260cc27)

web: changelog

(cherry picked from commit 105c1d01429680a4e8a11a8c4be06f4ceca4329e)

web: changelog

(cherry picked from commit 3d42c123be7dd51be6586549f1f057052cc6fff9)
2014-04-17 12:36:00 -07:00
Simon Michael
c51a7efc9c changelog update 2014-04-15 17:17:34 -07:00
Simon Michael
9d10cfa180 fix single-quote-containing addon arguments harder 2014-04-15 13:07:43 -07:00
Simon Michael
2af04ec2fc balance: merge/improve multicol report implementations
Periodic, cumulative and historical multicolumn balance reports are now
generated by one code path, which helps with consistency and reducing
the bug/test surface. --tree now also works with --cumulative or
--historical.
2014-04-13 12:49:05 -07:00
Simon Michael
cad37b7dce balance: fix excessive indent in multicolumn tree mode 2014-04-13 12:49:05 -07:00
Simon Michael
c1485f43bb drop mention of inter-release issue 2014-04-08 16:10:39 -07:00
Simon Michael
b3ab814478 docs typo 2014-04-08 16:00:41 -07:00
Simon Michael
19eb45cb68 account: add more description in the command-specific help 2014-04-08 15:57:40 -07:00
Simon Michael
2e2312f215 hledger changelog/release notes 2014-04-08 15:54:59 -07:00
Simon Michael
ec42b8d9ee move towards per-package changelogs, clarify doc/RELNOTES.md status 2014-04-08 15:52:37 -07:00
Simon Michael
7b4b99fae0 accounts: more query support, --flat/--drop/--depth support 2014-04-07 12:13:36 -07:00
Simon Michael
efad3a767d balance: support --drop in flat multicolumn reports 2014-04-07 08:32:23 -07:00
Simon Michael
f9c1d94b5f accounts: make accounts a built-in command, listing posted account names 2014-04-07 08:27:50 -07:00
Simon Michael
7d99ae5033 balance: --tree makes multicolumn reports show hierarchy
Multicolumn balance reports can now be switched to a hierarchical view
with --tree. This is similar to the single column balance report with
--no-elide, ie we do not elide boring parents into the following line.

The --flat and --tree flags are opposites; the last one to appear on
the command line is decisive (in future, if not already).
2014-04-06 21:56:47 -07:00
Simon Michael
6b5ed3d790 print: drop unnecessary showTransactions
refactor the tests later
2014-04-05 19:39:18 -07:00
Simon Michael
5cd3f6ed51 balancesheet, cashflow, incomestatement: less space before Total 2014-04-05 13:35:18 -07:00
Simon Michael
a8122405bf I see, polymorphic let bindings need a proper type sig 2014-04-03 18:49:57 -07:00
Simon Michael
a1531bcd09 show args processing debug output only at level 2+ 2014-04-03 18:49:56 -07:00
Simon Michael
ce888a62d5 restore some options utilities, fix hledger-balance-csv script 2014-03-28 16:33:48 -07:00
Simon Michael
b69e6c6946 unused extensions 2014-03-28 16:23:40 -07:00
Simon Michael
ef1cc06cab avoid pretty-show with GHC < 7.4; update tested-with (fixes #155)
hledger builds with GHC 7.2 through 7.8. 7.0 is not supported
because we require shakespeare which requires the DeriveGeneric extension.
2014-03-27 12:29:34 -07:00
Simon Michael
882a9dbf1c cli, report & raw options cleanups 2014-03-25 19:03:56 -07:00
Simon Michael
3fa4824218 some type signatures 2014-03-25 19:03:55 -07:00
Peter Simons
9e7a7e3439 hledger.cabal: loosen restriction on 'text < 1.1' to fix build with GHC 7.8.x 2014-03-22 12:03:00 +01:00
Simon Michael
d815cca069 incomestatement, cashflow: support --flat and --drop as well 2014-03-21 17:41:22 -07:00
Simon Michael
5a8b5ed082 balancesheet: support --flat and --drop, like balance 2014-03-21 17:34:58 -07:00
Simon Michael
2d1e0d7cd4 move command-specific options to the respective command modules 2014-03-21 10:45:13 -07:00
Simon Michael
59cbc230d8 drop data-pprint for now, does not support ghc 7.8
The data-pprint and pretty-show packages used for debugging
tend to be poorly supported, drop one of them for now.
2014-03-19 16:11:46 -07:00
Simon Michael
7d36789b74 web: fix build failures caught by the bot 2014-03-19 08:45:52 -07:00
Simon Michael
4d8d0d9aa6 balance: make BalanceReport more like MultiBalanceReport, doc cleanups 2014-03-18 18:01:24 -07:00
Simon Michael
5df28069fb restore the test command, hidden 2014-03-18 14:08:28 -07:00
Simon Michael
92dc86ebae restore reg & bal aliases, even if not advertised 2014-03-18 13:47:13 -07:00
Simon Michael
3bc3e533c8 remove unused import 2014-03-18 13:46:47 -07:00
Simon Michael
814008d648 add: also let enter end transactions if no more default postings
To end a transaction, period is required because there might be another
default posting being suggested, and enter usually means "accept the
default". But having to switch back and forth from enter to period
during data entry is a bit unergonomic, requiring too much thought.

Now, in the (common) case where you have entered a balanced transaction
and there are no more default postings to suggest, enter is also allowed
to end the transaction. Experimental; this might be too inconsistent.
2014-03-16 09:29:09 -07:00
Simon Michael
88d52a9da8 cli: don't list both source and exe of an addon 2014-03-16 09:27:07 -07:00
Simon Michael
d1b9273b19 cli: tighten up commands list, better help for known addons 2014-03-15 13:20:24 -07:00
Simon Michael
7cbbd0fbab add: fix over-zealous cleanup caught by hydra, continued 2014-03-06 17:50:46 -08:00
Simon Michael
8e6922c57c add: fix over-zealous cleanup caught by hydra 2014-03-06 17:49:52 -08:00
Simon Michael
63eca19a7f add: refactor completion functions 2014-03-06 16:58:48 -08:00
Simon Michael
856f62b465 add: fix runtime printf error from 2nd txn on (fixes #164) 2014-03-05 12:48:13 -08:00
Simon Michael
97e3f852a1 bump version to 0.22.98 aka 0.23 alpha 2014-03-04 11:17:56 -08:00
Simon Michael
61d2c28bd9 hledger: sigh, more cabal file snafu 2014-03-04 11:16:38 -08:00
Simon Michael
fd04430ae4 also add wizards dependency to the test executable 2014-03-04 11:09:34 -08:00
Simon Michael
27cf33f887 debug message wording 2014-03-04 11:04:31 -08:00
Simon Michael
ebf42046d8 add: keep using historical txn accounts as defaults even after a custom amount is entered 2014-03-03 12:18:10 -08:00
Marko Kocić
b01166c760 Update hledger.cabal 2014-03-03 09:47:28 +01:00
Marko Kocić
3cdb293f33 Fix broken hledger.cabal 2014-03-03 09:18:18 +01:00
Simon Michael
dd2f293094 rename FormatString to OutputFormat
It was going to be Format, but that clashes with file format. Press on.
2014-03-02 13:33:56 -08:00
Simon Michael
d89367d75e add: make input prompts green, where supported
Because we can! Should have no effect where not supported.
2014-03-01 11:16:19 -08:00
Simon Michael
5d0da63261 add: don't print an extra newline on exit
even it made things tidier in an emacs shell..
2014-03-01 11:15:29 -08:00
Simon Michael
1051f10826 add: also accept . at date prompt to quit 2014-03-01 11:15:19 -08:00
Simon Michael
e50c2a4259 add: avoid quotes preserved in quoted cli args 2014-03-01 11:08:31 -08:00
Simon Michael
dcdb032d96 add: rewrite using wizards and make it more robust
The code is now much more manageable, faciliating further
improvements. Completion now works at all prompts, and
will insert the default value if the input area is empty.
Account and amount defaults are more robust and useful
in various situations. There might be a slight regression
with default commodity handling.
2014-02-27 18:15:49 -08:00
Simon Michael
204af487a5 note an issue with CliOpts query_ 2014-02-27 17:39:38 -08:00
Simon Michael
bab6ec041b cli: be more robust at finding hledger-* add-ons
Previously executables with eg digits in their name were ignored.
It now finds all files beginning with hledger-, optionally ending with
.hs or .lhs, and with no other dots in the name.
As before, we don't check for executable permission (performance ?).
2014-02-27 11:40:41 -08:00
Simon Michael
8d3161f6d6 add: cleanup, cleanup 2014-02-23 15:04:28 -08:00
Simon Michael
6bf08cdd7c add: hack apart getPostingsLoop into smaller pieces 2014-02-23 07:52:26 -08:00
Simon Michael
56abdb2c8c add: code cleanups 2014-02-21 09:07:52 -08:00
Simon Michael
e35614c88d add: clarify "accept" 2014-02-21 07:23:10 -08:00
Simon Michael
f34d3aa9d6 add: clarify runInteraction* 2014-02-20 11:15:05 -08:00
Simon Michael
41a58609fb add: output a final newline after control-d 2014-02-12 08:22:44 -08:00
Simon Michael
d158d401d9 fix some breakages found by Hydra 2014-02-05 19:30:01 -08:00
Simon Michael
ac95930b15 Hledger.Cli now re-exports Hledger and System.Console.CmdArgs.Explicit 2014-02-05 18:55:03 -08:00
Simon Michael
2ec6231a51 bump version to 0.22.1 2014-01-08 15:01:45 -08:00
Simon Michael
62b0461c0e require latest pretty-show to allow install with standard happy and fix hackage docs 2014-01-08 15:00:41 -08:00
Simon Michael
4c1b2c0f86 remove obsolete regex-compat-tdfa dependency from hledger 2014-01-08 14:48:28 -08:00
Simon Michael
8befcb8354 bump version to 0.22, update tested-with & doc building 2013-12-13 18:28:45 -08:00
Simon Michael
060c9c73d0 hledger: allow text 1.0 2013-12-13 17:43:52 -08:00
Simon Michael
044ba78693 help fix, -V is not equivalent to --version (#145) 2013-12-07 15:35:58 -08:00
Simon Michael
5bdc55ab77 note that getCliOpts, debugArgs api fns are unused 2013-12-07 06:10:45 -08:00
Simon Michael
8261ac0f56 three fixes to handle --debug=N like --debug 2013-12-07 06:09:39 -08:00
Simon Michael
8bbd22d7ed fix handling of --debug before command 2013-12-07 05:51:17 -08:00
Simon Michael
c53732a4af balance: new multi-column reports & documentation
Two new multi-column balance report modes show ending balance per
period: `--cumulative`, starting from 0, and `--historical`, starting
from the historical starting balance.

The balance command's specification has been clarified and consolidated
in the Balance.hs haddock. Reports.hs has also had haddock updates. The
old AccountsReport type is now BalanceReport, still used by
single-column balance report. The new MultiBalanceReport type is used by
the multi-column reports.
2013-12-07 05:43:31 -08:00
Simon Michael
b2c6a8e7d2 require data-pprint 0.2.3, works with ghc < 7.2 2013-12-06 13:58:06 -08:00
Simon Michael
c99f37241c allow an optional level argument with --debug 2013-12-06 13:30:36 -08:00
Simon Michael
6e7610c1b7 drop some experimental pprint logging 2013-12-06 13:26:08 -08:00
Simon Michael
3eac48871c require data-pprint 0.2.3, works with ghc < 7.2 2013-12-06 13:22:28 -08:00
Simon Michael
7e06a6a24c balance: basic multi-column balance (change) reports 2013-09-26 15:06:48 -07:00
Simon Michael
eb5e2f95e9 cashflow: don't ignore the report start date (fixed #135)
Odd, there may have been s reason to do this but I can't remember it.
2013-09-23 11:08:55 -07:00
Simon Michael
b44efdcb4e don't depend on an unreleased version of data-pprint (fixes #140) 2013-09-23 10:46:52 -07:00
Simon Michael
009c7e3f90 bump version to 0.22 alpha 2013-09-22 22:38:27 -07:00
Simon Michael
a66a715eeb command line options API updates, possibly fixing hledger-web build 2013-09-22 22:31:06 -07:00
Simon Michael
13f8c0f938 overhaul command line processing
Command line processing has been overhauled and made more consistent,
and now has tests and extensive debug output.  More flags now work
both before and after COMMAND: -f, --rule-file, --alias, --help,
--debug, --version.  Command line help, command aliases, API docs and
code have been improved.
2013-09-22 01:17:41 -07:00
Simon Michael
671bb6c4a2 require data-pprint as a debugging aid and make some types compatible with it 2013-09-21 13:36:43 -07:00
Simon Michael
a3900c80b2 make hledger-cli.hs executable 2013-09-21 13:34:40 -07:00
Simon Michael
7ed0705398 register: --average/-A shows a running average, like ledger 2013-09-09 18:25:53 -07:00
Max Bolingbroke
e96fff7887 Upgrade to regex-compat-tdfa to squelch unicode problems 2013-08-20 21:19:28 +01:00
Simon Michael
e4c76acb12 balancesheet: don't bother showing equity, it won't be useful for most of us 2013-07-23 16:47:54 -07:00
Simon Michael
318d36d712 bump version 2013-06-23 16:50:35 -07:00
Simon Michael
39f6ec9f04 tools: fix make ghci, ghciweb
In general, when cabal CPP macros like min_PKG are used, they should
be made optional. If they are not present, assume a developer is
building and choose the latest libs.
2013-06-06 15:26:40 -07:00
Simon Michael
4eda6119f8 bump version to 0.21.2 2013-06-04 19:07:22 -07:00
Simon Michael
557419de8c bump version to 0.21.1 2013-06-03 23:18:30 -07:00
Simon Michael
4041f5a553 bump version to 0.21 2013-06-01 15:58:06 -07:00
Clint Adams
180521996a Add cabal testsuite for hledger. 2013-05-15 15:56:05 -04:00
Simon Michael
4ff2635bf8 bump version to 0.20.98 (0.21 alpha) 2013-05-14 10:30:46 -07:00