2019-05-17 GnuCash IRC logs

00:07:24 *** storyjesse has joined #gnucash
00:36:59 *** mdf has quit IRC
00:52:38 *** Mechtilde has joined #gnucash
01:09:26 *** nimish2711 has quit IRC
01:16:05 *** fell has quit IRC
01:17:25 *** fell has joined #gnucash
01:17:25 *** ChanServ sets mode: +o fell
01:40:09 *** O01eg has quit IRC
01:57:36 *** Mechtilde has quit IRC
02:25:15 *** gjanssens has joined #gnucash
02:25:15 *** ChanServ sets mode: +o gjanssens
02:35:01 <gjanssens> .
02:41:44 *** nimish2711 has joined #gnucash
02:44:31 *** ArtGravity has quit IRC
02:50:48 *** fabior has joined #gnucash
03:00:40 *** mikee has quit IRC
03:01:59 *** mikee has joined #gnucash
03:02:00 *** ChanServ sets mode: +o mikee
03:13:41 *** fabior has quit IRC
03:16:08 *** bertbob has quit IRC
03:19:35 *** bertbob has joined #gnucash
03:19:35 *** ChanServ sets mode: +v bertbob
03:36:21 *** bertbob has quit IRC
03:41:59 *** bertbob has joined #gnucash
03:42:00 *** ChanServ sets mode: +v bertbob
03:52:08 *** Mechtilde has joined #gnucash
04:02:32 *** fabior has joined #gnucash
05:41:10 *** Mechtilde has quit IRC
06:00:22 *** oozer has joined #gnucash
06:39:17 *** Jimraehl1 has joined #gnucash
06:39:57 *** Jimraehl1 has left #gnucash
06:41:06 *** fabior has quit IRC
06:50:56 *** GabrieleV has quit IRC
06:57:21 *** storyjesse has quit IRC
06:57:21 *** Cork has quit IRC
06:57:34 *** gncbot` has joined #gnucash
06:58:04 *** FoxT_ has joined #gnucash
06:58:48 *** mikee_ has joined #gnucash
06:58:50 *** psmst- has joined #gnucash
06:59:49 *** mikee has quit IRC
06:59:49 *** storyjesse has quit IRC
06:59:49 *** kusmario has quit IRC
06:59:49 *** FoxT has quit IRC
06:59:49 *** ECDHE_RSA_AES256 has quit IRC
06:59:49 *** lmat has quit IRC
06:59:49 *** Cork has quit IRC
06:59:49 *** gncbot has quit IRC
06:59:49 *** psmst has quit IRC
06:59:50 *** storyjesse1 is now known as storyjesse
07:01:12 *** kusmario has joined #gnucash
07:01:12 *** ChanServ sets mode: +v kusmario
07:03:31 *** Aussie_matt has joined #gnucash
07:07:36 *** lmat has joined #gnucash
07:46:16 *** Mechtilde has joined #gnucash
07:53:02 *** kael has joined #gnucash
07:53:02 *** ChanServ sets mode: +v kael
08:01:50 *** kael has quit IRC
08:03:28 *** jervin has joined #gnucash
08:05:27 *** jervin has quit IRC
08:36:15 *** chris has joined #gnucash
08:36:15 *** ChanServ sets mode: +v chris
08:37:21 <chris> .
08:43:45 *** jervin has joined #gnucash
08:44:14 *** jervin has quit IRC
08:51:11 *** chris has quit IRC
09:33:13 *** fabior has joined #gnucash
09:50:09 *** Mechtilde has quit IRC
10:11:40 *** monkeyjuice has joined #gnucash
10:20:13 *** fabior has quit IRC
10:20:54 *** monkeyjuice has quit IRC
10:24:48 *** fabior has joined #gnucash
10:27:24 *** jervin has joined #gnucash
10:46:05 *** ArtGravity has joined #gnucash
10:46:05 *** ChanServ sets mode: +v ArtGravity
11:35:49 *** Aussie_matt has quit IRC
11:46:27 *** nimish2711 has quit IRC
11:48:48 *** Mechtilde has joined #gnucash
11:57:48 *** guak has joined #gnucash
12:47:22 *** fabior_ has joined #gnucash
12:48:36 *** fabior has quit IRC
13:05:25 *** fabior_ has quit IRC
13:13:47 *** oem has joined #gnucash
13:17:44 *** storyjesse has quit IRC
13:27:28 *** jervin has quit IRC
13:32:29 *** oem has quit IRC
13:56:07 *** MarkFirewhal has quit IRC
13:58:06 *** MarkFirewhal has joined #gnucash
14:26:01 *** Cuare has joined #gnucash
14:26:02 *** ChanServ sets mode: +v Cuare
14:34:00 *** nimish2711_ has joined #gnucash
14:35:09 *** nimish2711_ is now known as nimish2711
14:36:32 *** frakturfreak has joined #gnucash
14:50:11 *** nimish2711 has quit IRC
14:52:51 *** jeffpc has quit IRC
14:58:51 *** nimish2711 has joined #gnucash
15:04:53 *** jervin has joined #gnucash
15:10:09 <jralls> gjanssens: I don't see the gnucash/reports directory you mentioned in your PR. What are the files in it?
15:13:33 <gjanssens> jralls: it's compiled scheme files, so you'd have to look under lib(64)/gnucash/scm/ccache/2.2/gnucash/reports
15:14:03 <gjanssens> These are tests like test-load-app-utils-module.go
15:14:04 <jralls> Ah. I thought you meant in the sources.
15:14:17 <gjanssens> I believe they are the result of a bad copy/paste action
15:14:43 *** jervin has quit IRC
15:14:43 <gjanssens> And I plan to put all of these in ..../ccache/2.2/test instead
15:15:40 <gjanssens> BTW the pr is also meant to line up the src and build/install locations of reports
15:16:11 <gjanssens> Well, a little at least
15:17:39 <jralls> Compiled test files shouldn't get installed at all, they should just be in the builddir's ccache.
15:21:00 <gjanssens> I know but our build script doesn't have a switch for this.
15:21:23 <gjanssens> Running gnc_add_scheme_target will always install it
15:21:54 <gjanssens> I chose not to chase that one yet
15:21:58 <jralls> Not a switch, but a way. Look e.g. at libgnucash/app-utils/test/CMakeLists.txt: scm-test-load-app-utils-module sets "gnucash/reports" for the install directory, scm-test-c-interface sets "".
15:23:30 <gjanssens> Yep, and so the test-c-interface .go file ends up in the toplevel ccache/2.2/ directory...
15:24:22 <gjanssens> So there's no way
15:26:09 <jralls> OIC. OK, that shouldn't be too hard to fix.
15:27:11 <gjanssens> As in add a switch ? Not too hard, but touching many CMakeLists.txt files
15:27:40 <gjanssens> Unless we can specify optional parameters to a macro and only set it on the test files
15:27:46 <gjanssens> test sources
15:29:16 <gjanssens> Regardless, I'll look into a decent fix rather than a workaround...
15:29:44 <gjanssens> Sometimes it's best discussing with others :)
15:30:08 <jralls> New command gnc_add_scheme_test_target instead of a switch so only the test modules would be affected.
15:34:13 <gjanssens> cmake macros support optional arguments, so I could add an extra argument as well (a boolean indicating the target to be a test for example)
15:37:55 <gjanssens> On the other hand making it a separate macro is probably clearer. They can share most of the code internally anyway...
15:38:50 <gjanssens> Will be for later though. Tonight I'm too tired to tackle that properly.
15:38:56 <jralls> Or call a convenience function/macro internally.
15:39:32 *** tienne has joined #gnucash
15:39:49 <gjanssens> Is that different from what I wrote ?
15:40:41 <jralls> "share most of the code" implies copy/paste.
15:43:20 <gjanssens> Oh, that's a language issue then, because I meant writing an internal funtion for the common bits an call that from the two public functions
15:43:44 <gjanssens> extracting the common bits in one function even
15:44:38 <jralls> But really it's just the last two lines of gnc-add-scheme-targets that need to go for test files. All the rest is about getting them built and available.
15:45:30 <gjanssens> Ok
15:45:46 <gjanssens> If you can't resist, go for it :D
15:45:52 <jralls> ;-)
15:47:40 <gjanssens> Otherwise I'll pick it up before merging my branch
15:48:08 <jralls> Well, it would fit better as part of your branch.
15:49:32 <jralls> How about I make a patch and put it on the PR?
16:01:29 *** KaiForce has quit IRC
16:19:00 <jralls> Hrmph. chris's srfi-64 tests require ninja && ninja test instead of just ninja test or they fail.
16:20:55 <warlord> :(
16:24:43 *** frakturfreak has quit IRC
16:25:31 <jralls> "ninja check", not "ninja test" of course.
16:39:41 *** frakturfreak has joined #gnucash
16:39:41 *** ChanServ sets mode: +v frakturfreak
16:46:46 <gjanssens> jralls: yeah I discovered that as well today :(
16:49:45 <gjanssens> And feel free to add a commit on my branch for the test stuff
16:51:44 <jralls> OK. I'm inclined to creating a special directory for all of them, maybe builddir/.../ccache/2.2/test-modules. What do you think of that?
16:52:03 *** nimish2711 has quit IRC
16:53:06 <gjanssens> I'd rather use a name that's a little more generic
16:53:17 <gjanssens> As far as I can see not all tests are module tests
16:53:35 <jralls> No, these aren't tests, they're modules required by tests.
16:53:58 <gjanssens> Hmm are we talking about the same thing ?
16:55:16 <gjanssens> I was thinking of these: https://pastebin.com/ut9tAZkc
16:55:36 <jralls> In a tests/CMakeLists.txt there are often two commands: gnc_add_scheme_targets and gnc_add_scheme_tests. It's the first one that's putting .go and .scm files in prefix/lib.
16:55:56 <gjanssens> Ok
16:56:57 <gjanssens> So how are those modules rather than actual tests ?
16:57:54 <jralls> Because the tests need to be able to load them with (use-modules test-load-gnome-utils-module).
17:00:07 <gjanssens> Not quite and these are definitely not modules in the sense they are defined with (define-module ...)
17:00:31 <gjanssens> They are loaded via guile -l <path-to-file> -c (run-the-test)
17:00:49 <gjanssens> So they are just ordinary scheme files, not scheme modules
17:01:05 <gjanssens> To me it would be confusing to call them "test-modules"
17:02:39 <gjanssens> How about just calling the directory ".../ccache/2.2/tests" instead ?
17:02:44 <jralls> OK.
17:03:10 <gjanssens> Good
17:03:53 <gjanssens> BTW while debugging today I learned a bit about running individual scheme tests
17:04:15 <gjanssens> Directly invoking the scheme test scripts fail because they need environment setup
17:04:31 <jralls> Right. It's a pain in the butt. It would be nice to make it easier.
17:04:57 <gjanssens> So instead I used "ctest -R test-load-gnome-utils-module"
17:05:14 <gjanssens> In the build directory root
17:05:19 <gjanssens> That will run that single test
17:05:28 <gjanssens> -R stands for regular expression
17:05:33 <jralls> That works? Cool.
17:05:59 <gjanssens> So the test-load... could be any regular expression that resolves to one or more tests
17:06:19 <gjanssens> If you need more details in the run you can add -V like so:
17:06:23 <gjanssens> "ctest -R test-load-gnome-utils-module -V"
17:06:59 <jralls> Nice.
17:07:17 <gjanssens> That will print the test's stdout/stderror to the console
17:08:28 <jralls> The man page is interesting. -V says "this option will show all output" and -VV says "This option will show even more test output". How can there be more than "all"?
17:08:58 <gjanssens> It won't update the tests if any source has changed though, so obviously in that case you need to run a ninja-build && ninja-build check first
17:09:17 <gjanssens> You can interrupt as soon as that command has finished building all sources
17:10:37 <gjanssens> -V vs -VV :-S
17:12:25 <gjanssens> I don't see any obvious difference between -V and -VV
17:12:48 <gjanssens> But using ctest directly did save a lot of trouble...
17:13:09 <gjanssens> Or hassle and time rather
17:13:18 <jralls> Indeed it does.
17:13:31 <gjanssens> Anyway time to leave
17:13:33 <gjanssens> Good night!
17:13:35 <jralls> I think I see what's wrong with srfi64.
17:13:41 <jralls> Goodnight!
17:13:42 <gjanssens> Oh, cool
17:14:12 <gjanssens> I'll see your fix on github :)
17:14:20 *** gjanssens has quit IRC
17:14:22 <jralls> chris has a module srfi64-extras. It needs to go in common/test-core instead of engine/test, and then be a dependency of the requisite tests in cmake.
18:24:53 *** tienne has quit IRC
18:25:59 *** tienne has joined #gnucash
19:19:32 *** frakturfreak has quit IRC
20:28:07 *** tienne has quit IRC
20:30:10 *** tienne has joined #gnucash
20:34:49 *** guak has quit IRC
20:39:27 *** tienne has quit IRC
21:11:50 *** Mechtilde has quit IRC
21:39:46 *** fell has quit IRC
21:45:07 *** fell has joined #gnucash
21:45:07 *** ChanServ sets mode: +o fell
21:45:39 *** oozer has quit IRC
21:49:11 *** Mechtilde has joined #gnucash
21:57:00 *** storyjesse has joined #gnucash
21:59:17 *** storyjesse has quit IRC
22:00:36 *** boldstripe has joined #gnucash
23:02:53 *** fell_laptop has joined #gnucash
23:02:53 *** ChanServ sets mode: +o fell_laptop
23:03:04 *** fell has quit IRC
23:03:38 *** CDB-Man_ has joined #gnucash
23:03:38 *** ChanServ sets mode: +v CDB-Man_
23:05:54 *** CDB-Man has quit IRC
23:29:07 *** ArtGravity has quit IRC