Something broke with your change c8cedf4. My checking account used to 
nicely print xxx.xx USD everywhere in bean-web, and now it sometimes prints 
xxx USD and sometimes xxx.xx and (usually) xxx.xxxxx USD. I used 'hg 
update' to pin down the bug to that change. It is not present in its parent 
commit.

https://bitbucket.org/blais/beancount/commits/c8cedf46c100d0cb80553b091aff481243ade44d?at=default


Matthew

On Wednesday, June 10, 2015 at 9:15:01 PM UTC-7, Martin Blais wrote:
>
> I wrote a whole new thing to deal with the rendering of numbers, here:
>
> https://bitbucket.org/blais/beancount/src/tip/src/python/beancount/core/display_context.py?at=default
>
> This is an object that is built while parsing the input and it tries to 
> figure out automatically what the most frequently used and maximum 
> precision formats are for each currency. It can then be used to render all 
> the core objects, and supports various alignment options. I've started 
> using it in a few places but not everywhere yet. I have yet to make all the 
> reports use it but when I do the web interface should render the number at 
> its most common precision automatically, that is, if you entered a lot of 
> X.XX digits for USD, those numbers would render as 1234.56. 
>
> I don't recall where I stopped, I have it on my list to take a second look 
> at this and complete replacing it everywhere. In particular, bean-query 
> output has its own separate mechanism to render numbers that should be 
> replace by this newer and better display_context:
>
> https://bitbucket.org/blais/beancount/src/tip/src/python/beancount/query/query_render.py?at=default
>
>
>
>
> On Wed, Jun 10, 2015 at 3:21 PM, <[email protected] <javascript:>> wrote:
>
>> Thanks Martin, for filing the bug! The workaround is totally fine for 
>> now, if that helps with prioritizing.
>>
>> There is a related question I have. Even if I use 331.00 USD for the 
>> Liabilities posting, the sum of the Expenses posting would add up to (and 
>> render as) 330.9999999999999999999999997 USD. Although this is 
>> computationally "correct" given what I asked for (331/12), is there a 
>> better way to perhaps render it (on the web or in bean-query) just so it 
>> appears prettier? This too is a pretty minor issue - just something for the 
>> long term work, perhaps.
>>
>>
>>
>> On Wednesday, June 10, 2015 at 11:34:34 AM UTC-7, Martin Blais wrote:
>>>
>>> Oh <poop> indeed, that looks like a bug.
>>> What's happening is that division will be processed by the parser and 
>>> produce the full 28 decimal digits of precision, and that it used as input 
>>> for tolerance inference (and it shouldn't be IMO) and then because your 
>>> other amount is an integer (331) it doesn't contribute to the tolerance 
>>> inference. I need to find a solution for this, probably disable inference 
>>> from computed numbers... this is a case where the per-transaction tolerance 
>>> inference fails - congratulations you've found a bug.
>>>
>>> In the meantime, changing your first amount from -331 SUD to -331.00 USD 
>>> should do the trick, because it'll expand the tolerance on USD to 0.005 and 
>>> that's enough
>>>
>>> Tracking bug:
>>>
>>> https://bitbucket.org/blais/beancount/issue/56/figure-out-how-to-disable-tolerance
>>>
>>>
>>>
>>>
>>> On Wed, Jun 10, 2015 at 12:03 PM, <[email protected]> wrote:
>>>
>>>> I'm not sure I understand how the divide operator interacts with the 
>>>> recent tolerance changes, if it does. For example, if I do this:
>>>>
>>>> --------------------------------------------------------
>>>> option "title" "Main accounts"
>>>> option "operating_currency" "USD"
>>>>
>>>> 1999-01-01 open Liabilities:Credit-Card
>>>> 1999-01-01 open Expenses:Utility-Bill
>>>>
>>>> 2000-01-01 * "Power company"
>>>>    Liabilities:Credit-Card          -331 USD
>>>>    Expenses:Utility-Bill            331/12 USD
>>>>    Expenses:Utility-Bill            331/12 USD
>>>>    Expenses:Utility-Bill            331/12 USD
>>>>    Expenses:Utility-Bill            331/12 USD
>>>>    Expenses:Utility-Bill            331/12 USD
>>>>    Expenses:Utility-Bill            331/12 USD
>>>>    Expenses:Utility-Bill            331/12 USD
>>>>    Expenses:Utility-Bill            331/12 USD
>>>>    Expenses:Utility-Bill            331/12 USD
>>>>    Expenses:Utility-Bill            331/12 USD
>>>>    Expenses:Utility-Bill            331/12 USD
>>>>    Expenses:Utility-Bill            331/12 USD
>>>> --------------------------------------------------------
>>>> I get: bean-check output:
>>>> divide.bc:7:   Transaction does not balance: (-2.8E-25 USD)
>>>>
>>>> Is there a recommended way to handle such situations without having to 
>>>> add an explicit rounding error posting?
>>>>
>>>> -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "Beancount" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected].
>>>> To post to this group, send email to [email protected].
>>>> To view this discussion on the web visit 
>>>> https://groups.google.com/d/msgid/beancount/a1b520d1-1039-43d2-8054-58411e5e1e9e%40googlegroups.com
>>>>  
>>>> <https://groups.google.com/d/msgid/beancount/a1b520d1-1039-43d2-8054-58411e5e1e9e%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>  -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Beancount" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] <javascript:>.
>> To post to this group, send email to [email protected] 
>> <javascript:>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/beancount/a1a2d631-b0f6-4a66-ae70-6c5562cc540e%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/beancount/a1a2d631-b0f6-4a66-ae70-6c5562cc540e%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"Ledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to