summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Moved join_args function to precmd.ccJohn Wiegley2010-06-131-0/+16
|
* Changed display order of format exceptionsJohn Wiegley2010-06-131-0/+5
|
* Further tweaks to tools/pushJohn Wiegley2010-06-131-2/+3
|
* If a type context exists, confirm the result matchesJohn Wiegley2010-06-132-5/+19
|
* Expression evaluations now have a "type context"John Wiegley2010-06-134-38/+54
| | | | | | | | | Thus, an expression can know if the context in which it's being evaluated requires a string, and if so, determine it's output accordingly. For example: account ; returns the full name of the posting's account account.total ; here the context is SCOPE, so account is an obj
* Added a new scope_value() inline helper functionJohn Wiegley2010-06-135-12/+12
|
* Added support for assert, check and expr directivesJohn Wiegley2010-06-133-18/+161
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These can occur in many places: ; Within an automated transaction, the assert is evaluated every time ; a posting is matched, with the expression context set to the ; matching posting. = /Food/ assert account("Expenses:Food").total >= $100 2010-06-12 Sample Expenses:Food $100 Assets:Checking ; At file scope, the expression is evaluated with "global" scope. assert account("Expenses:Food").total == $100 ; At the top of a transction, the assertion's scope is the ; transaction. After a posting, the scope is that posting. Note ; however that account totals are only adjusted after successful ; parsing of a transaction, which means that all the assertions below ; are true, even though it appears as though the middle posting should ; affect the total immediately (which is not the case). 2010-06-12 Sample 2 assert account("Expenses:Food").total == $100 Expenses:Food $50 assert account("Expenses:Food").total == $100 Assets:Checking assert account("Expenses:Food").total == $100
* Removed an unused functionJohn Wiegley2010-06-131-7/+0
|
* Automated xacts may now contain "deferred tags"John Wiegley2010-06-135-12/+64
| | | | | | | | | | | | | | | | For example, consider the following automated transaction: = /Food/ ; Next Date:: date + 10 (Expenses:Tax) 1.00 ; Next Date:: date + 20 This will add a metadata field named 'Next Date' to the _matching posting_, with a value that is 10 days later than that posting. It will also generate a new posting for that transaction, whose amount is the same as the matching posting. Further, it will add a 'Next Date' metadata tag to the _generated posting_ whose value is 20 days later than the date of the matching posting.
* account_t::add_post resets family_details.gatheredJohn Wiegley2010-06-132-3/+15
|
* account(NAME) function can lookup account objectsJohn Wiegley2010-06-134-6/+61
| | | | | | For example, just the word "account" returns the name of the current posting's account, but account("Expenses:Food") returns the actual account object, so that it's total may be accessed.
* Option --input-date-format adds to candidate listJohn Wiegley2010-06-131-2/+2
|
* Moved value.cc into libexprJohn Wiegley2010-06-131-3/+3
|
* Reformatted a commentJohn Wiegley2010-06-131-3/+3
|
* Fixed a spelling errorJohn Wiegley2010-06-131-3/+1
|
* Minor whitespace fixJohn Wiegley2010-06-131-3/+3
|
* Merge branch 'next'John Wiegley2010-06-13148-7269/+7507
|\
| * Add support for typed metadataJohn Wiegley2010-06-128-24/+52
| | | | | | | | | | | | | | | | | | | | The metadata construct 'Key: Value' is now just a special case for 'Key:: "Value"'. Another after a :: in metadata setting is parsed as a full value expression and typed as such. For example: ; Key:: $400 + $500 ledger -l 'tag("Key") < $1000'
| * Improved value expression function 'commodity'John Wiegley2010-06-123-8/+24
| | | | | | | | | | | | Without arguments -- and in a posting -- it is equivalent to "commodity(amount)". Otherwise, it returns the commodity symbol of its argument.
| * Store metadata values as value_t instead of stringJohn Wiegley2010-06-128-48/+50
| |
| * The --anon option now randomizes its effectJohn Wiegley2010-06-123-17/+19
| |
| * Improved the way that acprep finds PythonJohn Wiegley2010-06-121-4/+12
| | | | | | | | If Boost.Python comes from /opt, then Python must too.
| * Minor whitespace fixJohn Wiegley2010-06-121-2/+2
| |
| * Include serialize_ptr_deque, for Boost.SerializationJohn Wiegley2010-06-121-1/+1
| |
| * Added --enable-cache, --enable-doxygen to acprepJohn Wiegley2010-06-124-34/+57
| |
| * Minor corrections to tools/pre-commitJohn Wiegley2010-06-121-7/+11
| |
| * Use UTF-8 as the proper encoding for Texinfo docsJohn Wiegley2010-06-121-1/+1
| |
| * Many improvements to how Boost is found by acprepJohn Wiegley2010-06-121-17/+43
| |
| * Corrected Boost lookup if no suffix existsJohn Wiegley2010-06-111-1/+2
| |
| * In acprep, improve determination of gcc to useJohn Wiegley2010-06-111-19/+32
| |
| * Updated Portfile as 'ledger-devel' for pre-3.0John Wiegley2010-06-111-26/+52
| |
| * Untabified all source filesJohn Wiegley2010-06-11138-7102/+7102
| |
| * Scrub account totals before applying --percentJohn Wiegley2010-06-111-1/+2
| |
| * vim. add syntax highlighting for tag/popJohann Klähn2010-06-111-2/+12
| |
| * Fixed a minor typo in acprepJohn Wiegley2010-06-101-1/+1
| |
| * Several corrections to transaction finalizationJohn Wiegley2010-06-101-5/+13
| |
| * Use ptr_deque for value_t::sequence_tJohn Wiegley2010-06-104-7/+12
| | | | | | | | | | | | | | | | | | This is to work around undefined behavior according to the Standard, [lib.res.on.functions]/2: "In particular, the effects are undefined in the following cases: [..] - if an incomplete type (3.9) is used as a template argument when instantiating a template component."
| * Run GenerateTests for 10,000 iterations in fullcheckJohn Wiegley2010-06-101-5/+6
| |
| * gain/loss posting based on a virtual should also beJohn Wiegley2010-06-101-1/+6
| |
| * Fixed the "generate" commandJohn Wiegley2010-06-104-17/+11
| |
| * Allow fixated costs, as well as pricesJohn Wiegley2010-06-103-6/+24
| | | | | | | | | | | | | | | | | | You can now establish a fixated price automatically by way of a fixated cost. The syntax for this is: 2009/11/01 Sample Assets 1 apple @ =$0.10 Equity
| * Increase item_t's flags to 16-bitJohn Wiegley2010-06-101-4/+4
| |
| * Corrected behavior of "draft" argument parserJohn Wiegley2010-06-101-37/+36
| |
| * Corrected some math used by the budget commandJohn Wiegley2010-06-101-5/+5
| |
| * Fix to budgeting when fixed dates are involvedJohn Wiegley2010-06-101-2/+1
| |
| * Errors involving value objects provide more contextJohn Wiegley2010-06-102-9/+45
| |
| * Corrections to the way error strings are generatedJohn Wiegley2010-06-106-6/+13
| |
| * Disable --cache, and use of Boost.SerializationJohn Wiegley2010-06-101-30/+32
| | | | | | | | | | | | | | This makes the --cache option meaningless, but it wasn't proving to be a speed benefit anyway. Plus, Boost.Serialization slows down overall build times by an order of magnitude, and can consume inordinate amounts of memory during compilation.
| * Minor fix to tools/pre-commitJohn Wiegley2010-06-101-2/+2
| |
| * Added lib-clean make rule to lib/MakefileJohn Wiegley2010-06-101-0/+4
|/