[GNC-dev] alpha-testing budgets in 5.x

Adrien Monteleone adrien.monteleone at lusfiber.net
Tue Jan 4 17:20:46 EST 2022


On 1/4/22 10:40 AM, Christopher Lam wrote:
> Experienced Users,
> 
> The upcoming 5.x series (master branch) currently has a one-time fix for
> budgets to ensure they're internally stored as unreversed numbers.
> Currently (up to 4.x) budgeting $1000 income into $600 expense and $400
> liability repayment are stored as +1000, +600, +400. They should be stored
> internally as -1000, +600, +400 amounts, as per usual accounting equation.

I would nit-pick the assertion of 'usual accounting equation'. I've only 
seen one form of it, in any reference, and short of any further 
'factoring' it looks like this:

Assets = Liabilities + (Income - Expenses) + Equity

ALL of those terms are positive and a single operand is negative.


But somewhere along the way, someone decided to implement this instead:

Assets + (-Liabilities) + (-Income) + Expenses + (-Equity) = 0

Where the credit accounts are moved to the left and preference signed.

There would be no need for this conundrum with the budget or other parts 
of the UI, if the real equation were to be implemented.

But I digress, because I know that won't be changed.

> The internal numbers assume the reversal pref is "Credit Accounts". This
> means the budgets are currently functioning well *only* if reversal
> preference is set to credit-accounts
> 
> A obligatory one-time fix is suggested and applied on the master branch,
> applying some heuristics and negating the numbers, and will render the
> datafile unreadable on GnuCash prior to 3.7. It is *not* an option to make
> the one-time fix optional, because this will mean maintaining two code
> paths in perpetuity. However I'm not sure if it is debugged enough.
> 
> I'd like to ask experienced users to test from the master branch, either as
> win32 nightlies https://code.gnucash.org/builds/win32/master/ (4-jan-2022
> onwards) or building on linux, and report back of the new budget is *less*
> buggy than in 4.x maint series. Please do NOT test master on your
> production datafile.
> 
> If there are unsolvable bugs, then I'll suggest that the one-time fix
> change must be undone, and someone else may decide to try again.

What's the time frame?

I'm about to finish my 2022 budget, I can compare 4.9 to 5.x

Regards,
Adrien



More information about the gnucash-devel mailing list