[GNC] 4.1 on Mac - undocumented breaking change in customized reports

Tim Quinn tim.quinn at att.net
Sun Aug 2 19:41:52 EDT 2020



> On Aug 2, 2020, at 6:26 PM, Christopher Lam <christopher.lck at gmail.com> wrote:
> 
> Your changes are quite nice, but may be too obscure for general use!

Indeed! I realize this is a very specialized use case and not many people would have the same requirement. And, just to be clear, we don’t send this enhanced invoice to clients although we could. We wanted a quick way to convert remaining balance to hours, and the owner report was the existing report that seemed to have almost all the logic we needed. (The receivable aging report was another candidate but I have not tried modifying that one yet.)

> - Instead of how=7 you can use GNC-HOW-RND-ROUND (ie change C's _ to guile's -) but equally easy to use (/ num denom) directly.
> - Instead of "lastInList" you can use "last” directly

Nice. I’ve already changed the customization in this way. Thanks for the suggestions.

- Tim

> 
> v4.2 will add the _ shim, which would make it work unless you used guile-3.0 onwards. Thanks for your report!
> 
> On Sun, 2 Aug 2020 at 22:20, Tim Quinn <tim.quinn at att.net <mailto:tim.quinn at att.net>> wrote:
> Hi, Christopher.
> 
> Thanks for the response.
> 
> I do get that libraries evolve, and GC must do so with them. I’m just saying it would have been helpful if the GC release notes for 4.1 noted this change so those of us who do customize reports were not caught off-guard.
> 
> Because revising old reports to change “_” to “G_” is so straightforward, speaking for myself I’m not sure the shim is worth it now that 4.1 is out without it. 
> 
> I’ve attached the modified .scm file and also included a diff.
> 
> Here’s what the customizations do. My wife charges clients by the hour, and offers a discounted rate if they prepay for multiple hours. The customized report:
> 
> -  identifies the most recent customer invoice (skipping credit memos),
> -  extracts the hourly rate from the last line in the invoice, 
> -  calculates the number of prepaid hours remaining by dividing by any remaining credit by that rate, and
> -  includes that as an addition line in the summary section of the report.
> 
> As I mentioned earlier, I feel as if I have learned just enough to accomplish what I wanted. There might be better or more efficient ways to accomplish this and I’d welcome any suggestions for improvement. 
> 
> - Tim
> 
> 
> 
> 
>> On Aug 2, 2020, at 9:32 AM, Christopher Lam <christopher.lck at gmail.com <mailto:christopher.lck at gmail.com>> wrote:
>> 
>> Hello
>> Glad you managed to make your report work. The _ could not be used anymore because in guile-3.0 it is a reserved symbol. Many modern Linux distros had moved to guile-3.0 necessitating this change. This change is not limited to experimental reports; all custom reports using _ were similarly affected. 
>> If you're willing to share your customised owner-report.scm we can certainly add new features. If possible we'll add a guile-2.2 specific shim to pass _ through (and encourage its change to G_).
>> C
>> 
>> On Sun, 2 Aug 2020 at 13:50, Tim Quinn <tim.quinn at att.net <mailto:tim.quinn at att.net>> wrote:
>> 
>> When 4.0 arrived I was intrigued by the experimental new-owner-report.scm. I had customized the regular owner-report.scm several releases ago, and forward-ported my changes to create a customized new-owner-report.scm that I had working fine with 4.0.
>> 
>> I’ve just installed 4.1 and I saw errors when Gnucash tried to load the report.
>> 
>> Comparing that report’s source in 4.0 vs. that in 4.1, I see that uses of “(_” have become “(G_”. I made those corresponding changes in my customized copy and now it seems to be working with 4.1.
>> 
>> Now, I understand that experimental reports are just that — experimental — and not guaranteed to work in a future release. But this same change was made in the non-experimental owner-report.scm from 4.0 to 4.1 (and, I assume, other reports — I have not checked). 
>> 
>> I also freely admit that I’ve customized reports by learning just barely enough about reporting to accomplish what I need, not by mastering all of the reporting infrastructure. So maybe this is something that would be obvious to people with a more thorough understanding of all that.
>> 
>> Still, I think anyone who has customized reports will run into this and I was a little surprised seeing a breaking change in a dot release and no release note about it.
>> 
>> If there *was* something in the release notes that I’ve missed, I apologize and please point me to it.
>> 
>> Thanks.
>> 
>> - Tim
>> 
>> 
>> 
>> 
>> _______________________________________________
>> gnucash-user mailing list
>> gnucash-user at gnucash.org <mailto:gnucash-user at gnucash.org>
>> To update your subscription preferences or to unsubscribe:
>> https://lists.gnucash.org/mailman/listinfo/gnucash-user <https://lists.gnucash.org/mailman/listinfo/gnucash-user>
>> If you are using Nabble or Gmane, please see https://wiki.gnucash.org/wiki/Mailing_Lists <https://wiki.gnucash.org/wiki/Mailing_Lists> for more information.
>> -----
>> Please remember to CC this list on all your replies.
>> You can do this by using Reply-To-List or Reply-All.
> 



More information about the gnucash-user mailing list