Commit graph

517 commits

Author SHA1 Message Date
John Wiegley
eb04b8be85 Changed the order in which options are processed, to provide for the correct
overrides.

  1. Global defaults
  2. Environment variable settings
  3. Initialization file
  4. Command-line arguments

Whatever is later in the list overrides what is earlier.
2009-01-21 18:54:06 -04:00
John Wiegley
e4c7b1753b Resolve outstanding stdin parsing issues by buffering the data. 2009-01-21 18:30:37 -04:00
John Wiegley
2858a9999a Added missing zeroes in the sha1 to text generation. 2009-01-20 20:13:05 -04:00
John Wiegley
3bf354946f xact_t pointer list when copy constructing an entry, which leads to crashes
during deconstruction (due to double-free'ing transactions).
2009-01-20 20:06:21 -04:00
John Wiegley
3682ea6f8c Added support for "anonymizing" any report with --anon. 2009-01-20 20:05:41 -04:00
John Wiegley
887828a40c Increased copyright range to include 2009. 2009-01-20 01:53:31 -04:00
John Wiegley
906d8004ae Added a function for account_t to get the account's total cost. 2009-01-19 22:31:04 -04:00
John Wiegley
c6303ab9ef Fixed the market valuation function for balances. 2009-01-19 22:30:46 -04:00
John Wiegley
7cc64c04a5 Don't calculate a reflexive price if a commodity has been marked as NOMARKET. 2009-01-19 22:30:34 -04:00
John Wiegley
ad9a469a2a Got changed_value_xacts working again. 2009-01-19 22:30:11 -04:00
John Wiegley
ce49245667 Make report_t a friend of format_t, so it can set the ANSI options. 2009-01-19 22:29:55 -04:00
John Wiegley
72c09cc0bf Generate a better error if a function operand is invalid. 2009-01-19 22:29:36 -04:00
John Wiegley
efc923acb4 Allow var_t<datetime_t>. 2009-01-19 22:29:17 -04:00
John Wiegley
bcfd6d1db9 When setting a scope's argument, convert the list to a sequence if it's not
already.
2009-01-19 22:29:09 -04:00
John Wiegley
7ffe0e1539 Added back several cost reporting options. 2009-01-19 22:28:34 -04:00
John Wiegley
5e25a6d838 Pass in the total_expr directly to changed_value_xacts. 2009-01-19 22:28:17 -04:00
John Wiegley
e9a5a9bd77 Added back the -V (market value) option. 2009-01-19 22:28:00 -04:00
John Wiegley
83648af19f Added the concept of a "display_total", used for showing the values in the
totals column of both the register and balance reports.  This is different
from the internal calculated total, which is still "total_expr".
2009-01-19 22:27:10 -04:00
John Wiegley
5c17da6572 Instead of doing price annotations in the textual parser, use
commodity_t::exchange.
2009-01-19 22:25:12 -04:00
John Wiegley
d9197fc2e5 Changed COMMODITY_STYLE_NOMARKET TO COMMODITY_NOMARKET. 2009-01-19 22:24:56 -04:00
John Wiegley
14b3eb89f5 Added methods for getting the cost of an xact. 2009-01-19 22:23:45 -04:00
John Wiegley
091144e5e8 Don't look for an xact's state in its entry if there isn't one. 2009-01-19 22:23:27 -04:00
John Wiegley
adf8cfbbc0 Can now determine the market value of balance pairs, even if stored within
value_t objects.
2009-01-19 22:23:02 -04:00
John Wiegley
52e140d14e Lookup commodity prices recursively, searching for the newest data. 2009-01-19 19:59:49 -04:00
John Wiegley
5cc99a6972 Changed COMMODITY_STYLE_BUILTIN to COMMODITY_BUILTIN, and added new flag
COMMODITY_WALKED, for avoiding infinite recursions during price lookups.
2009-01-19 19:58:47 -04:00
John Wiegley
009dd3969a Added a recursive, date-based commodity price searching capability. This
makes it possible to find all possible prices for a commodity by walking the
map of pricing relationships to all other commodities, even if the relation is
distant.
2009-01-19 17:48:27 -04:00
John Wiegley
dc91fdeff2 Added argument to amount_t::value() for request a market value in terms of a
specific commodity.
2009-01-19 17:47:46 -04:00
John Wiegley
60f9748da1 Create an unrounded global amount variable 'one' for creating inverse price
mappings.
2009-01-19 16:24:06 -04:00
John Wiegley
0ec53e4a6c Allow the environment variable LEDGER_DEBUG to enable debugging. 2009-01-19 16:23:17 -04:00
John Wiegley
3bea2b1181 Output newlines between entries using format strings, not hard-coded. 2009-01-14 00:32:37 -04:00
John Wiegley
97d7896069 Whitespace fix. 2009-01-14 00:32:13 -04:00
John Wiegley
93f884b5f2 The cleared or pending flag of a transaction overrides the flag for the entire
entry only if it is "more" cleared.
2009-01-14 00:32:02 -04:00
John Wiegley
c9959f2008 Added a missing call to _dup() in amount_t::in_place_round. Thanks to unit
testing!
2008-11-23 23:37:42 -04:00
John Wiegley
1921f01189 Change default precision extension back to 6, rather than rewriting all of the
unit tests.  6 was good enough.
2008-11-23 23:37:24 -04:00
John Wiegley
a1717b6dd5 Needed to port skanthak's last commit to the master branch's code base. 2008-11-23 23:37:01 -04:00
John Wiegley
c172281858 Abstracted precision extension constant, and added a note that precision must
be handled differently, since paying attention to places after the decimal is
not enough.
2008-11-23 19:15:32 -04:00
Sebastian Kanthak
7ce1c4e5a9 Fix --reconcile by terminating transaction list correctly
when a match is found.
2008-11-23 19:08:38 -04:00
John Wiegley
5d41388ff3 Corrected the way that scopes are found so that xact_t can also be found as an
item_t (which it also is).
2008-10-29 02:00:00 -06:00
John Wiegley
b5386b2534 Added code to recursively search for a price in a given commodity. 2008-09-25 13:59:01 -04:00
John Wiegley
6007e3cbfe Did more restructing of commodity price histories, although the completed
find_price does not work yet.
2008-09-21 10:26:38 -04:00
John Wiegley
79a8fc5a87 Created several alternate 'value' methods to support the upcoming commodity
valuation changes.
2008-09-21 07:56:23 -04:00
John Wiegley
697f6a6bce Began initial work to support specifying a series of commodities to -V. 2008-09-20 14:46:18 -04:00
John Wiegley
e914b476e9 Commented out some dead code. 2008-09-20 13:48:47 -04:00
John Wiegley
1bbb6933af Cleaned up the way that commodity pricing is handled. 2008-09-20 13:48:36 -04:00
John Wiegley
0e95974360 Changed some of the transaction flags, since all must fit in 8 bits. 2008-09-19 08:31:17 -04:00
John Wiegley
eb425536d4 Renamed a variable to be more consistent. 2008-09-19 08:30:17 -04:00
John Wiegley
a374979aaa Changed debug class ledger.textual.parse to just textual.parse. 2008-09-19 08:10:13 -04:00
John Wiegley
5b5d6ac0ce Removed unneeded NULL argument. 2008-09-19 08:09:17 -04:00
John Wiegley
1edb531c05 Renamed XACT_BALANCE flag to XACT_MUST_BALANCE. 2008-09-19 08:08:28 -04:00
John Wiegley
e85a52b72b Modified a debug class code. 2008-09-19 08:08:15 -04:00