2016-06-02 GnuCash IRC logs

00:10:58 *** bertbob has joined #gnucash
00:23:15 *** raeburn has quit IRC
00:23:22 *** raeburn has joined #gnucash
00:42:15 *** linux00001 has quit IRC
00:42:29 *** linux00001 has joined #gnucash
01:25:50 *** Mechtilde has joined #gnucash
02:07:23 *** Mechtilde has quit IRC
04:26:50 *** fabior has joined #gnucash
04:30:04 *** Mechtilde has joined #gnucash
05:02:22 *** aqua___ has joined #gnucash
05:05:32 *** aqua___ has quit IRC
05:19:40 *** aqua___ has joined #gnucash
05:52:30 *** aqua___ has quit IRC
06:35:56 *** uXuss has quit IRC
06:40:34 *** uXuss has joined #gnucash
07:30:37 *** fabior has quit IRC
08:15:03 *** fabior has joined #gnucash
08:27:41 *** andy has quit IRC
08:36:19 *** andy has joined #gnucash
08:54:55 *** uXuss has quit IRC
09:02:55 *** uXuss has joined #gnucash
09:03:23 *** mlncn has joined #gnucash
09:07:04 *** uXuss has quit IRC
09:10:22 *** uXuss has joined #gnucash
09:40:34 *** veek has joined #gnucash
10:24:48 <linux00001> Is it possible to change the location of custom reports? I use gnucash on multiple systems, and it'd be nice to change the location to where the db file is, eg. to the dropbox location
10:29:32 *** Mechtilde has quit IRC
10:35:39 *** Mechtilde has joined #gnucash
10:40:25 *** Mechtilde has quit IRC
10:47:30 *** dkcarlson has joined #gnucash
11:05:58 *** fabior has quit IRC
11:06:16 *** fabior has joined #gnucash
11:09:30 <dkcarlson> Hi I am experiencing a problem with Gnucash 2.6.12 built from git rev c1ad615+ on 2016-05-17 (from nightly builds, I think) which crases when I replay a certain log file.
11:12:39 <dkcarlson> Some time ago I had an issue which prompted me to open Bug 743829, which may or may not be related. In this case I have a copy of the log file and the trace made in windows from the session that crashed
11:13:23 *** veek has quit IRC
11:18:45 <dkcarlson> the trace contains several lines starting with a timestamp and DEBUG <gnc.tests> followed by a description. The very last one is * 08:49:45 DEBUG <gnc.tests> [interpret_split_record] interpret_split_record(): Start...
11:21:48 *** minot has joined #gnucash
11:26:42 <dkcarlson> the first item in the log file is mod trans_guid split_guid time_now date_entered date_posted acc_guid acc_name num description notes memo action reconciled amount value date_reconciled
11:26:44 <dkcarlson> -----------------
11:26:44 <dkcarlson> ===== START
11:26:46 <dkcarlson> D b5414be4b3211b57091065c88cb62c7f ebcaeb126b23dd56c79d5b93d4e3b422 2016-06-01 01:52:44.000000 Central 2016-06-01 01:52:44.000000 CentralP 2016-06-01 00:00:00.000000 Central n 0/1 0/100 1969-12-31 18:00:00.000000 Central(TÄÿ(
11:26:47 <dkcarlson> ===== END
11:27:33 <dkcarlson> all of the following items are similar with different identifiers
11:30:39 <lmat> linux00001: I'm not sure what you're asking.
11:31:58 <lmat> linux00001: Oh, I think I'm getting it. Custom reports are stored as such on the hard drive?
11:32:21 <lmat> linux00001: Oh, I think I see it: ~/.gnucash/saved-reports...
11:33:41 <dkcarlson> That log was either created by the above named instance of GnuCash or by release 2.6.11 running in debian Jessie in a vM which crashed due to a Virtualbox issue
11:34:17 <linux00001> lmat: yea, i'd like to change the location of custom reports
11:36:09 <lmat> linux00001: gotcha. Do you know where gconf puts gnucash settings?
11:37:06 <linux00001> sorry, I don't know that
11:37:19 <lmat> linux00001: Neither do I, but that's where I would look.
11:38:21 <lmat> dkcarlson: What's the problem?
11:38:22 <linux00001> I am using gnucash on Windows and OSX. I didn't see anything in the settings. maybe I overlooked so i'll check again
11:39:56 <lmat> linux00001: I don't think you should look too hard ;-) I doubt it will be there.
11:40:17 <linux00001> haha
11:43:07 <lmat> linux00001: I'll take a look in the code base...
11:45:15 <lmat> linux00001: HEY! I may have found something. Do you have the code handy?
11:45:27 <linux00001> i don't =(
11:45:32 <lmat> linux00001: no problem.
11:45:46 <linux00001> what did you find? is it hardcorded somewhere?
11:45:48 <lmat> linux00001: I'm thinking you can define an environment variable.
11:45:52 <linux00001> oh
11:46:06 <lmat> linux00001: it reads an environment variable. If that variable resolves to a valid directory, I think it'll use it!
11:46:10 <lmat> linux00001: I'll test it out now.
11:46:12 <linux00001> wow
11:46:27 <dkcarlson> Is that log file corrupted or is it good?
11:47:16 <lmat> linux00001: yeah, I think that worked!
11:47:26 <linux00001> huh
11:47:30 <lmat> linux00001: It still opened the last-opened gnucash file, though I'm not sure where *that* information is saved.
11:47:33 <linux00001> I'll have to try this on Windows and osx
11:47:46 <lmat> linux00001: This approach doesn't just change where reports are saved. Lots of stuff is saved here.
11:48:00 <lmat> linux00001: I'm using GNU/Linux, so I don't know how you'll do it, but here's what I do:
11:48:18 <lmat> linux00001: GNC_DOT_DIR=/whatever/in/dir/ gnucash
11:48:18 <dkcarlson> I copied the log entry by opening the file with Wordpad
11:48:39 <lmat> dkcarlson: I'm sure I have no idea if it's valid! When you attempt to replay it, what error do you get?
11:48:51 <linux00001> lmat: thanks
11:49:34 <dkcarlson> Gnucash crashes with no error other than Windows complaint that it crashed
11:50:01 <lmat> dkcarlson: I see. Is there any output on standard error or standard out?
11:50:39 <dkcarlson> where do I find those in Windows 7?
11:52:02 <lmat> dkcarlson: Microsoft Windows 7 beats you into submission so that you always use the mouse to open your applications, and when you do that, you can't see standard out or standard error. Maybe try opening powershell, then type "gnucash" then press enter; do what you do, and the output should be there on the blue screen (not the blue screen of death -_^
11:52:06 <lmat> )
11:53:08 *** fabior has quit IRC
11:53:51 <dkcarlson> In the first crash Windows made some notes which it asked me to submit to microsoft, which I did, and I kept a copy too. Is powershell the same as cmd?
11:54:08 *** Mechtilde has joined #gnucash
11:54:11 <lmat> dkcarlson: close enough.
11:54:28 *** fabior has joined #gnucash
11:58:24 <dkcarlson> looks like do not know how to do that. In cmd gnucash is not found from the starting directory but powershell is, However powershell needs a better command too
11:59:20 <lmat> dkcarlson: hmm
11:59:43 *** fabior has quit IRC
12:00:06 <lmat> dkcarlson: I don't have Microsoft Windows, but that's what I do on my system. If you're interested in trying harder, this is what you'll do:
12:00:29 <lmat> dkcarlson: You need to find the gnucash program, "go" there, and run it there. I assume you're using powershell.
12:01:02 <lmat> dkcarlson: Do cd 'c:\Program Files\gnucash\' (or whatever the correct directory is) then .\gnucash.exe (I think)
12:02:45 <lmat> dkcarlson: That should run gnucash and put the standard output and standard error in the blue box while it runs.
12:03:34 <dkcarlson> I only know a few of the bash-like commands, cd being one... This may take too long. I will start and see.....
12:06:44 *** fabior has joined #gnucash
12:07:55 <dkcarlson> I started gnucash in cmd by typing "C:\Program Files (x86)\gnucash\bin\gnucash.exe" enter, but I am not sure that I will see stdout that way
12:09:30 <dkcarlson> nope, but gnucash crashed on the same log file
12:14:04 <dkcarlson> can the log file be replayed in a different release than it was created by? I have other versions of Gnucash in other machines. I think my other Windows 7 machine has 2.6.12 official release, and I have a Ubuntu 12.04 machine with 2.6.4 or thereabouts
12:15:01 <dkcarlson> my virtualbox is completely belly-up
12:15:15 <dkcarlson> on this macine
12:26:03 <dkcarlson> release 2.6.3 on the Ubuntu machine
12:30:13 *** nomeata has joined #gnucash
12:52:14 *** nomeata has quit IRC
12:54:57 <dkcarlson> ok, in ubuntu 12.04 GnuCash 2.6.3 crashed on replay that same log file
12:55:58 <jralls> dkcarlson: Very good, then you can get a stack trace and put it on pastebin. But I'd suspect that one of the GUIDs in the log file is no longer present in your data file.
12:58:04 <jralls> lmat: Both session_merge and session_refactor branches compile and pass all tests until you try to merge them?
13:01:18 <dkcarlson> can you give me hint where to find that stack trace in ubuntu?
13:05:58 <dkcarlson> found the instructions
13:10:40 *** andy has quit IRC
13:15:38 *** andy has joined #gnucash
13:18:44 *** andy has quit IRC
13:31:28 <lmat> jralls: Ah, so it must be a compiler problem. I'm using gcc 6.1.1 20160501
13:32:52 <jralls> lmat: Not necessarily, that was a question. IIRC you reported that master doesn't have the problem, so I wonder at what commit you first see the error.
13:43:07 <lmat> OH, sorry!
13:43:41 <lmat> jralls: I'll check where it first gives the error. I think it's after the merge (*at* session_merge).
13:53:58 <jralls> lmat: I checked out that point and build fails with a symbol-not-found error __Z26gnc_address_xml_initializev while linking libgncmod-backend-xml.so. I'll have to bisect that first...
13:56:04 *** Mechtilde has quit IRC
14:36:47 <dkcarlson> look for davidbacktrace on pastebin
14:36:59 <jralls> lmat: Problem was an installed maint library. make uninstall fixed it. Your session_merge branch compiles but fails test_session_safe_save @ line 119, NULL == qof_session_get_url.
14:37:12 <lmat> hmm
14:37:29 <jralls> lmat: So I guess it's a gcc-6.1 linkage problem.
14:37:42 <lmat> It's a compilation error
14:39:06 *** fabior has quit IRC
14:40:41 <jralls> That's not apparent from what you pasted. Maybe you could make a new trace with `make -j1` so it's clear what exactly is barfing.
14:41:34 <lmat> This is the error: ../../../../src/libqof/qof/gnc-timezone.cpp:36:20: fatal error: qoflog.h: No such file or directory
14:41:37 <lmat> #include <qoflog.h>
14:42:16 <lmat> Oh, and it's important to note, this is make chek!
14:42:19 <lmat> doh make check
14:42:28 <lmat> Make works!
14:42:44 <jralls> lmat: I see that, and I see the compile command at the top of the trace. But I also see that make has started linking, and it shouldn't be doing that until all of the compiles are completed satisfactorily.
14:42:55 <lmat> oh...
14:43:45 <jralls> So if you run make -j1 it does only one thing at a time and it's easier to tell exactly what command raises what error.
14:44:13 <lmat> Yeah, I think the trace I gave is from just make check (which should default to -j1 ?) I'll make another with make check -j1.
14:44:35 <lmat> http://sprunge.us/cgRB
14:44:54 <lmat> that was made with cd ~/source/gnucash; make check -j1 2>&1 | pastie;
14:47:36 <lmat> jralls: I see what you're talking about. In my earlier trace, the command directly before the error is a link command, so perhaps I was running concurrently.
14:51:55 <jralls> Oh, I see I didn't use the right incantation to run the google tests. I'll try again.
14:53:16 <dkcarlson> http://pastebin.com/ccWatTiw
14:54:52 *** Mechtilde has joined #gnucash
14:56:19 <jralls> dkcarlson: Dang, I should have noticed that in the logfile snippet. 1969-12-31 is an illegal date in MSWindows, as I'm pretty sure you know.
14:58:30 *** CapitenPi has joined #gnucash
14:58:53 <CapitenPi> i took a credite and i would like to know how i use gnucash fo this case
14:59:44 <jralls> CapitenPi: Could you explain in a little more detail, please?
14:59:59 <dkcarlson> I wonder how I could have generated a log like that in the first place
15:00:21 <jralls> dkcarlson: On Linux.
15:01:08 <dkcarlson> so a log made on linux cannot be replayed in windows?
15:01:28 <CapitenPi> i took a credite with a fix Interest for X jears
15:02:16 <dkcarlson> it crashed in Ubuntu as well
15:02:25 <CapitenPi> lets say for a Real estate\car
15:02:36 <jralls> CapitenPi: Ah, you took out a *loan*.
15:02:44 <CapitenPi> yes
15:03:07 <jralls> dkcarlson: Maybe it crashed when you generated the logfile...
15:03:28 <CapitenPi> in addition to my load i took, i need to pay the bank the intrest
15:03:51 <jralls> CapitenPi: https://www.gnucash.org/docs/v2.6/C/gnucash-guide/chapter_loans.html
15:05:26 <jralls> lmat: OK, with the right configure option I get the same compile error.
15:06:07 <CapitenPi> thanks
15:07:12 <lmat> jralls: hey hey! I'm happy to hear of your misfortune!
15:11:48 *** CapitenPi has quit IRC
15:23:14 *** husker has joined #gnucash
15:24:24 *** husker has quit IRC
15:24:46 <lmat> jralls: commit ea8d326 doesn't suffer from this problem.
15:25:02 <lmat> (I think!)
15:25:31 <lmat> You must fix gnc-timezone.cpp (just change the throw to return nullptr)
15:25:35 *** Mechtilde has quit IRC
15:25:49 *** Mechtilde has joined #gnucash
15:25:57 <lmat> Yeah, after fixing that one problem, make check -j succeeds.
15:26:05 <lmat> (in src/libqof/qof)
15:30:29 <lmat> jralls: I get the error in gnucash/trunk!
15:30:37 <lmat> well, 1d3fc07 anyway.
15:31:20 <lmat> but not in 1d3fc07^ (aka 8b04fab)
15:31:22 <jralls> lmat: Yeah, me too. Working on a fix now. Removing the throw was 1d3fc07.
15:31:29 <lmat> yes, exactly.
15:31:34 *** Mechtilde has quit IRC
15:32:14 <jralls> Ah, which is what added the include.
15:38:35 <lmat> jralls: Yeah. The build works in make, but not make check. I think it's because -I. isn't enough, we need -I.., too.
15:38:46 <lmat> (or #include "../qoflog.h" )
15:39:07 <lmat> oh, no, that's no good!
15:39:18 <lmat> just #include "qoflog.h"
15:39:24 <jralls> lmat: The incantation is "-I$(top_srcdir)/$(MODULEPATH)"
15:39:33 <lmat> excellent.
15:40:57 <jralls> But it also then needs ${GLIB_CFLAGS}, and LDADD needs libgnc-qof and ${GLIB_LIBS} as well because of pulling in qoflog.
15:45:22 <lmat> I see the push. Thanks!
15:45:48 <jralls> lmat: OK, I've pushed the changes to master. Undo your merge, then rebase both branches onto master and redo the merge.
15:46:26 <lmat> aye
15:47:18 <lmat> jralls: does MODULEPATH resolve to src/libqof/qof or src/libqof/qof/test ?
15:48:05 <jralls> src/libqof/qof. It's defined at the top of test/Makefile.am; that pattern is used in all of the test Makefiles.
15:50:01 <lmat> okay
15:58:31 <dkcarlson> thanks. I must have generated that log file in a failing virtualbox session supposedly running gnucash 2.6.11 in debian jessie. I will assume that work is lost
16:07:54 *** nomeata has joined #gnucash
16:14:37 *** fabior has joined #gnucash
16:21:10 <lmat> dkcarlson: If you're interested in working on it, you can adjust the rogue date?
16:28:35 <lmat> In case you're interested, running git checkout session_merge; git rebase -p --onto gnucash/master 1d3fc07; (1d3fc07 was gnucash/master when the merge was originally done) redid the merge where I want it, but I still had to resolve all the merge commits. That's not too difficult using git checkout session_refactor ./qofsession.cpp; etc.
16:28:48 <lmat> I couldn't find an easier way to "automatically" move the merge along.
16:33:09 <jralls> lmat: Umm, why do you want to do it that way instead of having both branches rebased on the current master? What's the merge branch for, anyway?
16:37:28 <lmat> I'm not clear on what exactly your question is, but I did try to rebase my changes onto gnucash/trunk, but it's difficult. There are significant conflicts on perhaps half of the commits that I have to rehash over and over.
16:38:00 <lmat> So I chose to merge instead so that all the conflicts are there, and I can take care of them in one swoop.
16:38:10 <jralls> lmat: https://git-scm.com/blog/2010/03/08/rerere.html
16:38:46 <lmat> reading
16:39:05 <lmat> jralls: wow
16:39:47 <jralls> lmat: Think maybe Linus had that same problem once or twice?
16:40:16 <jralls> :-)
16:41:22 <lmat> hah! Likely!
17:12:43 <lmat> jralls: I'm having a similar problem now: gnc-timezone.hpp:27:22: fatal error: platform.h: No such file or directory.
17:12:53 <lmat> Again, in make check.
17:13:18 <jralls> lmat: Yup, saw that, pushed fix a couple of minutes ago.
17:13:46 <lmat> That was a long time ago, though: Jan 18 2015 oh well
17:13:52 <lmat> Oh, but it wasn't a problem because we didn't include qoflog.h
17:15:27 <jralls> Actually it was a mistake in my earlier commit today: I removed a line in Makefile.am that I shouldn't have.
17:15:35 <lmat> Ahhhhh, okay.
17:28:19 *** fabior has quit IRC
17:37:29 *** fabior has joined #gnucash
17:49:11 <CDB-Man> hmm, remind me again where the finance:quote module is stored
17:49:23 <CDB-Man> need to see if I can get the TSX API working
17:50:37 *** fabior has quit IRC
17:52:02 *** fabior has joined #gnucash
18:03:42 *** nomeata has quit IRC
18:37:09 <jralls> CDB-Man: If you mean Finance::Quote itself rather than GnuCash's interface to it, it's somewhere in your perl @INC.
18:37:31 <CDB-Man> Indeed, that's what I'm looking for
18:37:47 <jralls> At the risk of being flippant, wherever cpan installs to.
18:38:12 <jralls> Which varies depending on OS/Distro.
18:38:26 <CDB-Man> well, I'm currently using strawberry perl on Win7
18:38:34 <CDB-Man> I can see cpan at C:\strawberry\perl\bin
18:39:18 <CDB-Man> Not sure what to look for within here to find Finance:Quote itself
18:40:12 <CDB-Man> hmm, found it
18:40:15 <CDB-Man> C:\strawberry\cpan\build
18:40:51 <jralls> That's not the installed location, that's where cpan built it.
18:42:29 <jralls> You want c:\strawberry\perl\site\lib\Finance
18:43:33 <CDB-Man> mhh
18:44:22 <CDB-Man> well, no wonder it doesn't work; the URL is ancient
18:47:42 <CDB-Man> ah, this looks to be an HTML scraper
18:56:23 <CDB-Man> well, looks that this is beyond my current capability, so I will submit a bug report to cpan instead. Thanks for the lead, jralls
18:56:36 <jralls> CDB-Man: NP.
19:06:03 <CDB-Man> jralls, happen to know where in gnucash does it define the available price sources for the dropdown in the securities editor?
19:08:50 *** fabior has quit IRC
19:09:09 <jralls> Those are read from F::Q IIRC. The algo that sorts them into single/multiple/unknown is I think in src/scm/price-quotes.scm
19:10:55 <CDB-Man> from what I saw, quote.pm has a list to reference the various .pm modules, but definitely doesn't define the names in the list
19:11:00 <CDB-Man> i'll check out the scm
19:12:46 <CDB-Man> no dice, I'll probably need to grep for "Toronto"
19:18:47 *** dkcarlson has quit IRC
19:53:58 *** mlncn has quit IRC
20:18:04 *** mlncn has joined #gnucash
21:26:19 *** dkcarlson has joined #gnucash
21:38:51 *** dkcarlson has quit IRC