gnucash maint: Multiple changes pushed

John Ralls jralls at code.gnucash.org
Tue Oct 27 16:51:20 EDT 2015


Updated	 via  https://github.com/Gnucash/gnucash/commit/f5cf2ba5 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/362b9e3d (commit)
	 via  https://github.com/Gnucash/gnucash/commit/ae35dbb4 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/dfc0b28b (commit)
	 via  https://github.com/Gnucash/gnucash/commit/4bfe29ac (commit)
	 via  https://github.com/Gnucash/gnucash/commit/9a53cc8f (commit)
	 via  https://github.com/Gnucash/gnucash/commit/7298a469 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/811a30db (commit)
	 via  https://github.com/Gnucash/gnucash/commit/70493537 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/ab15ca8f (commit)
	 via  https://github.com/Gnucash/gnucash/commit/76c1259f (commit)
	 via  https://github.com/Gnucash/gnucash/commit/348fe45b (commit)
	 via  https://github.com/Gnucash/gnucash/commit/a40bc92d (commit)
	 via  https://github.com/Gnucash/gnucash/commit/6e141377 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/f30b38b5 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/a8d4eaae (commit)
	 via  https://github.com/Gnucash/gnucash/commit/f79a3af4 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/be5b9f2b (commit)
	 via  https://github.com/Gnucash/gnucash/commit/9c2813ac (commit)
	 via  https://github.com/Gnucash/gnucash/commit/96678937 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/5e609dac (commit)
	 via  https://github.com/Gnucash/gnucash/commit/c4082524 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/ca447fc0 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/85148cd2 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/e94622c9 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/ab535fb1 (commit)
	from  https://github.com/Gnucash/gnucash/commit/e3da1c42 (commit)



commit f5cf2ba54264006aed462e9680b7a36e4a911ecc
Merge: e3da1c4 362b9e3
Author: John Ralls <jralls at ceridwen.us>
Date:   Sat Oct 24 14:52:49 2015 -0700

    Merge branch 'single-price' into maint

commit 362b9e3d7c4dfff0e11656d6d983866e7d15b980
Author: John Ralls <jralls at ceridwen.us>
Date:   Sat Oct 24 13:28:55 2015 -0700

    Fix leaking QofBook in most of the engine unit tests.
    
    The problem is that QofBook is not a well-formed GObject and doesn't clean
    itself up properly when its ref count goes to zero. qof_book_destroy() must
    be explicitly called on it. An interesting side effect is that QofObject
    keeps a list of all of the books ever opened and not properly destroyed and
    registering a class (in this case GNCPriceDB) tries to create that class's
    instance in all of those leaked books. Since they already have one, the
    instantiation code raises a critical error and the test program fails.

commit ae35dbb46407762c925346975588cd58fdb60ca3
Author: John Ralls <jralls at ceridwen.us>
Date:   Sun Oct 18 11:44:51 2015 -0700

    Use gnc_pricedb_has_prices instead of testing the return value of get_prices.

commit dfc0b28bedc3d4bc0f9d9afc9d638898cf08e6a3
Author: John Ralls <jralls at ceridwen.us>
Date:   Fri Oct 16 12:40:32 2015 -0700

    Remove be->price_lookup conditional clauses.
    
    No backend implements price_lookup, and the struct member is removed from
    master. Even if it had existed these clauses wouldn't actually do anything.

commit 4bfe29aca3beeac18d0abcf0fabee1ecc716d4e8
Author: John Ralls <jralls at ceridwen.us>
Date:   Tue Sep 15 12:03:39 2015 -0700

    Prevent F::Q from updating PRICE_SOURCE_EDIT_DLG prices.

commit 9a53cc8f58ad2dba4ea60b5720c5a6c890c2c15a
Author: John Ralls <jralls at ceridwen.us>
Date:   Sat Sep 12 12:09:46 2015 -0700

    Remove unnecessary and harmful price rounding.

commit 7298a469994c23a4e0526556ab31bf9940b9c7e1
Author: John Ralls <jralls at ceridwen.us>
Date:   Wed Sep 9 15:06:56 2015 -0700

    Implement user-entered-price preference.
    
    Add user:price as a source and prefer values with lower PriceSource enum
    values over higher ones: In other words a price with a lower PriceSource
    value (e.g. user:price-editor) will overwrite one with a higher value (e.g.
    user:split-register) and not the other way around.

commit 811a30db4a28bb8b62a945c744ef791cb1674e3b
Author: John Ralls <jralls at ceridwen.us>
Date:   Wed Sep 9 11:22:52 2015 -0700

    Fold separate call of gnc_pricedb_lookup_latest() into lookup_price.
    
    Requires a 3-state enum instead of a boolean for the second arg to lookup_price.

commit 70493537e9a5cc92f7ff1611b9846c8776891ea2
Author: John Ralls <jralls at ceridwen.us>
Date:   Thu Sep 3 16:22:14 2015 -0700

    Use an enum for internal representation of Price Sources.
    
    Strings are still used for storage and display.
    Purpose is to make multiple comparisons and conditional setting more
    convenient.

commit ab15ca8f8458480ebbc8d68f73eeb335ed959c25
Author: John Ralls <jralls at ceridwen.us>
Date:   Thu Sep 3 11:22:51 2015 -0700

    Extract function lookup_price in dialog_transfer.c

commit 76c1259f1b3b22320df931f6a1d4abe850579f5a
Author: John Ralls <jralls at ceridwen.us>
Date:   Tue Sep 1 12:44:25 2015 -0700

    Adjust split_register to match transfer dialog checking inverted prices.

commit 348fe45b76ad4527a82726a287f0a76186f1b80a
Author: John Ralls <jralls at ceridwen.us>
Date:   Tue Sep 1 12:39:12 2015 -0700

    Fix missing initialization of price_value.

commit a40bc92d3410409470ae281c4cf013818c295f54
Author: John Ralls <jralls at ceridwen.us>
Date:   Tue Sep 1 12:17:12 2015 -0700

    Change CURRENCY_DENOM to 10000, matching what F::Q returns.

commit 6e1413771032ee2ad14244042edf320e0ad94d44
Author: John Ralls <jralls at ceridwen.us>
Date:   Tue Sep 1 12:16:09 2015 -0700

    Extract function round_price(), consistently apply it.

commit f30b38b5c3496e1e3846c9a1e1ee20841de15a2e
Author: John Ralls <jralls at ceridwen.us>
Date:   Fri Aug 28 21:20:51 2015 +0100

    Create a rounding policy for prices in the pricedb.
    
    Currency-currency prices will be priced in the smaller currency so that
    the price > 1 and will be rounded to 3 digits after the decimal.
    Commodity-currency prices will be priced in the currency and rounded to
    the currency's scu * 10000.
    This affects only prices stored in the pricedb. Prices in splits will
    continue to be computed from value/amount.

commit a8d4eaae5ecf663d550687b2cebf4a02dc5c8f56
Author: John Ralls <jralls at ceridwen.us>
Date:   Fri Aug 28 19:25:35 2015 +0100

    Rename _gnc_xfer_dialog_set_exchange_rate and use it consistently.
    
    gnc_xfer_dialog_set_price_edit says what we're actually setting.

commit f79a3af4a2168f11f03d85c1295c050bfd931932
Author: John Ralls <jralls at ceridwen.us>
Date:   Fri Aug 28 19:21:37 2015 +0100

    Provide gnc_numeric_invert() convenience function.
    
    Clearer and faster than dividing into 1/1.

commit be5b9f2b84a1ba51e8501e6aea2f0451ca833bb9
Author: John Ralls <jralls at ceridwen.us>
Date:   Fri Aug 28 18:40:01 2015 +0100

    Use price_value when referring to a gnc_numeric.
    
    Price and prc are for gnc_price*.
    For clarity.

commit 9c2813acb66a2070e026d6e4d710aafcb2822adc
Author: John Ralls <jralls at ceridwen.us>
Date:   Tue Aug 25 11:17:07 2015 +0100

    Price-quotes: Modify quotes on same day instead of creating new ones.
    
    We can use only one per day so no point in keeping a bunch of them.
    Finance::Quote prices always overwrite user prices.

commit 966789374d15838820a60de36d3d7b18f33828ce
Author: John Ralls <jralls at ceridwen.us>
Date:   Sun Aug 23 12:17:23 2015 +0100

    Edit split-based prices instead of adding.
    
    For split-register and xfer-dialog generated prices if there's an existing
    non-FQ price for the day, change it. If there's an F::Q quote for the day,
    do nothing. Only add a price if there isn't one for the from/to
    combination.

commit 5e609dac0d2b4c1a7ec59dfff675c620fb734a95
Author: John Ralls <jralls at ceridwen.us>
Date:   Sun Aug 23 11:44:24 2015 +0100

    Check for an existing price before adding one in split_reg.
    
    To make the behavior the same as in xfer_dialog.

commit c4082524cbc943562d37145cd5b9b142f0bb2f9c
Author: John Ralls <jralls at ceridwen.us>
Date:   Sun Aug 23 11:06:14 2015 +0100

    In the transfer dialog use the price_edit value for the saved price.
    
    Instead of computing it separately and differently from to_amt and from_amt.

commit ca447fc0473269fa5f54c13c817d290ea0de275d
Author: John Ralls <jralls at ceridwen.us>
Date:   Sat Aug 22 10:48:24 2015 +0100

    Fix up whitespace in dialog-transfer.c.

commit 85148cd23bf27ac12e4add9b3cdf59cb443c5889
Author: John Ralls <jralls at ceridwen.us>
Date:   Sat Aug 22 10:44:00 2015 +0100

    Refactor gnc_xfer_dialog_response_cb with several extract-functions.

commit e94622c9e32071598723862d989f76765e79c4cc
Author: John Ralls <jralls at ceridwen.us>
Date:   Sat Aug 22 09:17:49 2015 +0100

    Don't store prices of source invoice.
    
    They're intended to be temporary, for creating splits. They're also already
    stored from the transfer dialog.

commit ab535fb1005cbda85585cbd91a272e370a82d112
Author: John Ralls <jralls at ceridwen.us>
Date:   Fri Aug 21 15:54:58 2015 +0100

    Replace the price source and type strings with defines.



Summary of changes:
 src/app-utils/gnc-sx-instance-model.c        |    7 +-
 src/backend/sql/gnc-price-sql.c              |    2 +-
 src/backend/xml/gnc-pricedb-xml-v2.c         |    4 +-
 src/backend/xml/io-gncxml-v1.c               |    2 +-
 src/business/business-gnome/dialog-invoice.c |   36 +-
 src/engine/engine.i                          |   11 +-
 src/engine/gnc-pricedb-p.h                   |   13 +-
 src/engine/gnc-pricedb.c                     |  250 ++-----
 src/engine/gnc-pricedb.h                     |   38 +-
 src/engine/test-core/test-engine-stuff.c     |    7 +-
 src/engine/test/utest-Account.c              |   11 +-
 src/engine/test/utest-Budget.c               |   21 +-
 src/engine/test/utest-Split.c                |    8 +-
 src/engine/test/utest-Transaction.c          |   12 +-
 src/gnome-utils/dialog-transfer.c            | 1031 ++++++++++++++------------
 src/gnome-utils/dialog-transfer.h            |    8 +-
 src/gnome-utils/gnc-tree-model-price.c       |    2 +-
 src/gnome-utils/gnc-tree-view-price.c        |    3 +-
 src/gnome/assistant-stock-split.c            |    4 +-
 src/gnome/dialog-commodities.c               |    3 +-
 src/gnome/dialog-price-editor.c              |   10 +-
 src/libqof/qof/gnc-numeric.c                 |   21 +-
 src/libqof/qof/gnc-numeric.h                 |    7 +
 src/register/ledger-core/split-register.c    |   68 +-
 src/scm/price-quotes.scm                     |   57 +-
 25 files changed, 880 insertions(+), 756 deletions(-)



More information about the gnucash-patches mailing list