Dong Lin, You've already demonstrated that the problem doesn't happen on 3.11 so there's no point going backwards in 3.x. According to https://repology.org/project/gnucash/versions Ubuntu 21.04 provides GnuCash 4.5. I suggest that you clean up your system and install GnuCash 4.4 from apt. If it has trouble displaying charts then raise a bug on Ubuntu and let their packager figure out what's going on.
Regards, John Ralls > On Jul 18, 2021, at 6:24 PM, Dong Lin <c54e-gnuc...@yahoo.com> wrote: > > > Thanks for the instructions John. I tried it on a Ubuntu 20.04 system with > no GNC installed. The problem still exists in 4.x. It seems the 3.x > stable branch works. The issue happens in the unstable branch only. > > I also tried running 4.x on a Mac, I can see the plot. Not sure if the > issue is Linux only or Ubuntu only. > > unstable 2455071 bad > stable 3.6-d42695e75 good > unstable 3.5-b7479e8fb bad > > I cannot build 3.4 or anything older. The fix for > G_TYPE_INSTANCE_GET_PRIVATE does not apply cleanly on older commits. > Compile still fails after resolving all conflicts. > > So it seems a very old bug that hasn't been fixed in the unstable branch. > I believe running 4.x or any 3.x unstable build on standard issue Ubuntu > 20.04 should easily reproduce. > > >> It turns out that bisecting between 63232f and 8024f4 flat won't work, >> they're on different branches. 63232f is on the 3.x branch which is why it >> works. 2c637a is from 2019 where the master branch splits off from the >> maint branch (we had a pull request merge mishap at aa53c23 that >> temporarily collapsed them together, but there hadn't been any development >> on master at that point anyway). 2c637a is actually the first commit where >> the two branches start to diverge. >> >> Since the failing 8024f4 is on master I looked at the changes leading up >> to that in a graphical history viewer. One particular change stands out, >> 2455071 where we start the conversion from jqplot to chartjs. That would >> be a good place to test. >> >> ****HOWEVER**** >> The problem may well be that there are remnants of the Ubuntu-provided >> GnuCash 3.8 that are interfering with the 4.x chartjs-based chart >> rendering, so before you do any more bisecting I suggest that you >> completely remove all GnuCash shared libraries, loadable modules, and >> Scheme caches from your system, then reinstall GnuCash 4.6 with apt. The >> shared libraries will be /usr/lib/libgnc* and you can get rid of the >> shared modules and system cached guile by `sudo rm -rf /usr/lib/gnucash/`. >> Remove ~/.cache/guile/ccache as well if it exists. That may fix the >> problem with no more troubleshooting required. If it doesn't `sudo apt-get >> remove gnucash` to have a clean system before doing any test builds. Guile >> is exceptionally stupid about what it loads and trying to build GnuCash >> when there's a package-manager version installed seldom comes out well. >> >> If more bisecting is in order, try 2455071. If it works, try 598c37; >> that's the end of the chartjs upgrades. If that works then check 8024f4 >> again to make sure that that still fails, then `git bisect --first-parent >> start 8024f4 598c37` to find the problem commit (which may well be a >> merge). >> >> Regards, >> John Ralls >> >> >>> On Jul 17, 2021, at 8:01 PM, Dong Lin <c54e-gnuc...@yahoo.com> wrote: >>> >>> >>> I see two 3.11 release commits in maint. >>> >>> 3.11-4064c58cd bad >>> 3.11-0fe9ba79e good >>> >>> bisecting in this range pointed to 2c637a971. >>> >>> bisecting in 63232f388..8024f44bc also singled out 2c637a971. >>> >>> But it cannot be as it's just a version update. Reverting it did not >>> produce a good run. >>> >>> >>>> >>>> That the problem seems to have arisen during the transition between 3.x >>>> and 4.0 does make it a bit more complicated. There are 391 commits >>>> between >>>> 63232f and 8024f4 including 57 merges from maint and 8 feature >>>> branches. >>>> That makes knowing that the problem exists in the latter commit and not >>>> in >>>> the former less helpful than it might be. >>>> >>>> You can test your hypothesis that a merge caused the regression by >>>> testing >>>> 3.11, the last release on the 3.x maint branch. If that fails you can >>>> bisect between it and 63232f. Use `git bisect`, it's the quickest and >>>> easiest way to find the commit that caused the problem. >>>> >>>> If 3.11 is good then you can run bisect so that it always tests merge >>>> commits and ignores the commits being merged with `git bisect >>>> --first-commit start 8024f4 63232f`. >>>> >>>> Regards, >>>> John Ralls >>>> >>>> >>>> >>>>> On Jul 17, 2021, at 7:46 AM, Dong Lin via gnucash-user >>>>> <gnucash-user@gnucash.org> wrote: >>>>> >>>>> >>>>> Did more searches. the issue exists in 4.6, running gnc on Ubuntu >>>>> 20.04.1 >>>>> LTS with standard gnome. >>>>> >>>>> I've gone through the following commits in maint: >>>>> >>>>> 4.6 2021 228954c40 bad >>>>> 0425-2020 8024f44bc bad >>>>> 0425-2020 63232f388 good >>>>> 3.10 2020 7d39ccc9d good >>>>> 3.6 2019 d42695e75 good >>>>> 0615-2019 410ae9575 good >>>>> 0601-2019 170651602 good >>>>> 0601-2019 3a91eedb4 good >>>>> 0531-2019 69ea174cd bad >>>>> 0415-2019 0251d044b bad >>>>> 3.5 2019 b7479e8fb bad >>>>> >>>>> I couldn't go any older because ancient code cannot be compiled by my >>>>> environment. >>>>> >>>>> The merges really obscured the search. the order of the merged commits >>>>> are >>>>> not chronological. timestamps are time of commit, not time of merge. >>>>> >>>>> It looks as if the bug was fixed at one point, but it was lost in a >>>>> merge. >>>>> >>>>> >>>>> >>>>>> Running gnc in Ubuntu 20.04 LTS. Default gnc is 3.8. I >>>>>> built the >>>>>> gnc >>>>>> trees based off of master at various commits for the bisect. >>>>>> ; lsb_release -a >>>>>> No LSB modules are available. >>>>>> Distributor ID: Ubuntu >>>>>> Description:   Ubuntu 20.04.1 LTS >>>>>> Release:       20.04 >>>>>> Codename:      focal >>>>>> >>>>>> >>>>>> ; grep WEBKIT ./common/config.h >>>>>> /* Definitions for what WEBKIT version we're compiling against: */ >>>>>> #define WEBKIT2_4 1 >>>>>> /* #undef WEBKIT2_3 */ >>>>>> /* #undef WEBKIT1 */ >>>>>> >>>>>> >>>>>> I compared the preprocessor output for html/gnc-html-webkit2.c, >>>>>> the >>>>>> affected code block between the working and non-working >>>>>> versions are >>>>>> identical. But some line numbers for other .h files are >>>>>> different. >>>>>> So I >>>>>> have assumed that it's not 8024f44bc, but other 100+ commits >>>>>> that >>>>>> came >>>>>> with the tree merge. >>>>>> >>>>>> the VNC server runs on Ubuntu (the same machine that the binary is >>>>>> built >>>>>> on). The VNC viewer is MacOS (TigherVNC). Tried another viewer >>>>>> running >>>>>> on >>>>>> Linux, same outcome. >>>>>> >>>>>> There are many commits affecting barcharts in that range. The most >>>>>> relevant one seems to be this: >>>>>> 6b74f80bc Wed Dec 18 21:55:51 2019 +0800 >>>>>> [html-pie/scatter/bar/linechart] defer to html-chart renderer >>>>>> >>>>>> But reverting it resulted in too many conflicts that I dont know how >>>>>> to >>>>>> resolve. >>>>>> Will try again later using the maint branch. >>>>>> >>>>>> Thanks! >>>>>> >>>>>>> >>>>>>> >>>>>>>> On Jul 11, 2021, at 10:36 PM, Dong Lin via gnucash-user >>>>>>>> <gnucash-user@gnucash.org> wrote: >>>>>>>> >>>>>>>> >>>>>>>> I am trying to upgrade from 3.8 to 4.6. But found that piecharts >>>>>>>> and >>>>>>>> linecharts in reports have turned blank. The associated tables are >>>>>>>> present >>>>>>>> though. >>>>>>>> >>>>>>>> Attempted to perform a binary search in master, and found the >>>>>>>> latest >>>>>>>> working commit is 63232f388. >>>>>>>> >>>>>>>> >>>>>>>> 8024f44bc Sat Apr 25 15:40:07 2020 >>>>>>>> -0700          >>>>>>>>       Remove leftover >>>>>>>> webkit2 conditional. >>>>>>>> 63232f388 Sat Apr 25 14:40:57 2020 >>>>>>>> -0700          >>>>>>>>       Merge Jean >>>>>>>> Laroche's 'Fix-3-SX-Problems' into maint >>>>>>>> >>>>>>>> >>>>>>>> Unfortunately 8024f44bc came from the maint branch and was merged >>>>>>>> with >>>>>>>> over a hundred other commits. I am not sure how to narrow it >>>>>>>> down. >>>>>>>> Reverting one of them resulted in lots of conflicts that I dont >>>>>>>> know >>>>>>>> how >>>>>>>> to resolve. >>>>>>>> >>>>>>>> I figured the problem has to be related to my environment as no one >>>>>>>> else >>>>>>>> has brought up the issue. My virtual desktop is >>>>>>>> driven by a VNC server (Ubuntu 20.04 LTS). It's not directly >>>>>>>> associated >>>>>>>> with a hardware graphics card with a physical cable to the monitor. >>>>>>> >>>>>>> We release off of the maint branch so you should do your bisect >>>>>>> there. >>>>>>> >>>>>>> This isn't likely to have anything to do with your VNC server, nor >>>>>>> with >>>>>>> whatever you're connecting to it. In what environment are you >>>>>>> actually >>>>>>> running GnuCash and what version of WebKit is it using? >>>>>>> >>>>>>> Regards, >>>>>>> John Ralls >>>>>>> >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> gnucash-user mailing list >>>>>> gnucash-user@gnucash.org >>>>>> To update your subscription preferences or to unsubscribe: >>>>>> https://lists.gnucash.org/mailman/listinfo/gnucash-user >>>>>> If you are using Nabble or Gmane, please see >>>>>> 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. >>>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> gnucash-user mailing list >>>>> gnucash-user@gnucash.org >>>>> To update your subscription preferences or to unsubscribe: >>>>> https://lists.gnucash.org/mailman/listinfo/gnucash-user >>>>> If you are using Nabble or Gmane, please see >>>>> 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. _______________________________________________ gnucash-user mailing list gnucash-user@gnucash.org To update your subscription preferences or to unsubscribe: https://lists.gnucash.org/mailman/listinfo/gnucash-user If you are using Nabble or Gmane, please see 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.