Commit graph

671 commits

Author SHA1 Message Date
John Wiegley
110f0b8023 Enabled use of pre-compiled headers by default 2009-03-10 17:02:03 -04:00
John Wiegley
542e2950af Normalized some #ifdef's to #if defined 2009-03-10 04:46:40 -04:00
John Wiegley
3b23823ea7 Disabled warning on not finding ledger/__init__.py
This warning is completely harmless, and was downgraded to a debug
message.
2009-03-09 22:08:24 -04:00
John Wiegley
e0473e207b Rewrote acprep in Python and improved the build 2009-03-09 21:51:02 -04:00
John Wiegley
db70bb1d04 Added support for "today" as a time period 2009-03-08 04:20:33 -04:00
John Wiegley
77faaa926f Rewrote the balance report again, to fix --depth 2009-03-08 04:15:48 -04:00
John Wiegley
c99ab20853 Fixed a few minor cases of uninitialized variables 2009-03-08 02:07:49 -04:00
John Wiegley
ec382f54b7 Fixed a reference to uninitialized memory
This was only found with _GLIBCXX_DEBUG=1 *and* coverage analysis
(-fprofile-arcs -ftest-coverage).
2009-03-07 15:04:32 -04:00
John Wiegley
f340d50362 Revised the ways statistics are computed
It is no longer done in calc_posts, but recursively on each account.
This allows value expressions to ask statistical questions, like
"earliest cleared posting?" (TBD) from any specific account, computed
lazily.
2009-03-06 04:07:25 -04:00
John Wiegley
2728e4d55e Changed the way that account balances are computed 2009-03-06 00:27:29 -04:00
John Wiegley
dd23edd5ce Implemented --unround using value expressions 2009-03-06 00:27:16 -04:00
John Wiegley
6ac79137f7 Don't compute running total for balance reports 2009-03-05 23:53:07 -04:00
John Wiegley
fb9af0f111 Removed the --totals option 2009-03-05 23:26:21 -04:00
John Wiegley
5167e6223b Enriched the behavior of post_t::add_to_value
The new behavior will be used in future by some pending topic branches
I'm working on.
2009-03-05 23:02:50 -04:00
John Wiegley
a2c7312080 Renamed some flags and members in post_t 2009-03-05 22:39:32 -04:00
John Wiegley
d3c93b73cb Added a value_t macro: VALUE_OR_VERO 2009-03-05 21:00:32 -04:00
John Wiegley
17cbb9d210 If Python is not in use, global includes session 2009-03-05 16:55:46 -04:00
John Wiegley
c11d325712 Reduced the #include dependency tree to a minimum 2009-03-04 23:53:43 -04:00
John Wiegley
9d4e888ef5 Cured several harmless compiler warnings 2009-03-04 04:31:34 -04:00
John Wiegley
2d63c9364a Changed many assert() calls to VERIFY() 2009-03-04 04:29:10 -04:00
John Wiegley
dcac306467 Corrected a build error if Python support missing 2009-03-03 22:13:36 -04:00
John Wiegley
1540ccec01 Gather account details in a details_t structure 2009-03-03 20:28:09 -04:00
John Wiegley
eb45a0a4f4 Normalized how account totals are calculated 2009-03-03 17:08:11 -04:00
John Wiegley
9ae28a160a Added a new "account_amount" valexpr function
At the moment, it's only useful during parsing.
2009-03-03 16:29:59 -04:00
John Wiegley
c305db937c If a posting has an integer amount, convert it 2009-03-03 16:28:20 -04:00
John Wiegley
e2c30cf6e4 Added ; as a sequencing operator in valexprs 2009-03-03 16:05:04 -04:00
John Wiegley
098e3b0043 Fixed parsing of '(1, 2, (3, 4))' 2009-03-03 16:02:34 -04:00
John Wiegley
4af1bfdde3 Allow special %{} formatting sequence
Although %(amount) inserts an item's amount, it only does exactly that.
There is no special consideration like stripping of lot details, or
reduction to the base commodity, etc.  For those things, and to make
sure it was display in red if negative, the canonical form would be:

  %(ansify_if(justify(scrub(amount), 12, -1, true), red if amount < 0))

You can now use the special %{} form as an alternate to this:

  %12{amount, red if amount < 0}

The two expand to the same underlying expression.
2009-03-03 15:06:15 -04:00
John Wiegley
de3bafc0d7 Made all the ANSI color names into valexpr names 2009-03-03 14:59:56 -04:00
John Wiegley
67a45a0e3c Made error reporting while parsing more resilient 2009-03-03 14:42:46 -04:00
John Wiegley
edf1ccd6ab Added a "python" command, which invokes Py_Main 2009-03-03 14:39:07 -04:00
John Wiegley
79acfc1647 Moved fn_false to be a non-member function 2009-03-03 13:53:12 -04:00
John Wiegley
478998b4e9 Added a "null" value for value expressions 2009-03-03 13:36:23 -04:00
John Wiegley
0f9d919367 Added Python-style if/else expression keywords 2009-03-03 13:26:27 -04:00
John Wiegley
710e4792d1 Added a "show" report query term
Everything beyond the show modifies the --display predicate, and
everything before modifies the --limit predicate.
2009-03-02 22:33:43 -04:00
John Wiegley
1c7de0f9e4 Added "fixated commodity pricing"
If you put '=' before an annotated commodity's price, it will cause any
future market valuation of that commodity to use that price, and ignore
whatever changes may have happened since in the market price.  This can
be useful if you are tracking gas expenses based on a standard rate
which, although it changes over time, should not adjust the historical
valuation of how much the gas cost at the time it was purchased:

    2009/01/01 Payee
        Expenses:Gas                100 GAL {=$2}
        Liabilities:MasterCard        $-200
2009-03-02 16:39:26 -04:00
John Wiegley
ea0e14ae74 The entry command now implies --actual 2009-03-02 05:01:04 -04:00
John Wiegley
25f106d299 The entry command always creates uncleared items 2009-03-02 04:56:18 -04:00
John Wiegley
ce206a392a The entry command no longer handles effective dates 2009-03-02 04:54:00 -04:00
John Wiegley
a2ed6bc95d Patched some date-sensitive tests 2009-03-02 04:49:03 -04:00
John Wiegley
ad42447475 Changed how comments are output to be more logical 2009-03-01 05:40:44 -04:00
John Wiegley
19cfd9e23b Fixed the printing of O_CONS nodes 2009-02-28 06:13:49 -04:00
John Wiegley
38122c2224 Corrected warnings g++-4.3.3 was complaining about 2009-02-28 04:54:54 -04:00
John Wiegley
fb129fa7a1 Corrected a potential invalid memory access 2009-02-28 04:36:48 -04:00
John Wiegley
56693fab9b Separator in "balance" now part of format string 2009-02-27 16:23:36 -04:00
John Wiegley
d102641f2a Fixed a compile error found by g++-4.3.2 2009-02-27 16:19:17 -04:00
John Wiegley
aff9052baf The generate report now generates lot details 2009-02-27 16:17:27 -04:00
John Wiegley
e6aae5a096 The generate report now implies --actual 2009-02-27 16:08:39 -04:00
John Wiegley
e02fe8d58f Allow --head to limit the entries generate creates 2009-02-27 16:01:33 -04:00
John Wiegley
38cf0e56f5 Added --lots-actual, to not print calc'd details 2009-02-27 15:45:21 -04:00