2016-05-13 GnuCash IRC logs

00:52:58 *** g5pw has quit IRC
00:59:43 *** buddyt has quit IRC
01:05:11 *** Mechtilde has joined #gnucash
01:06:41 *** g5pw has joined #gnucash
01:47:09 *** Mechtilde has quit IRC
02:21:16 *** gnomey has quit IRC
02:22:29 *** gnomey has joined #gnucash
03:04:22 *** uXuss has quit IRC
03:07:45 *** uXuss has joined #gnucash
03:16:38 *** nomeata has joined #gnucash
03:23:59 *** gnomey has quit IRC
03:26:23 *** gnomey has joined #gnucash
03:30:08 *** minot has quit IRC
03:53:43 *** gnomey has quit IRC
03:54:53 *** gnomey has joined #gnucash
03:58:01 *** fell_ has joined #gnucash
04:00:33 *** fell has quit IRC
04:32:48 *** fabior has joined #gnucash
05:35:42 *** mlncn has quit IRC
06:43:28 *** fabior has quit IRC
06:57:39 *** fabior has joined #gnucash
07:02:04 *** Jimraehl1 has left #gnucash
07:07:01 *** Jimraehl1 has joined #gnucash
07:14:59 *** fabior has quit IRC
07:30:49 *** storri has joined #gnucash
07:49:53 <storri> Good morning
08:28:38 <storri> What is guile/scheme used for in GnuCash?
08:30:46 *** KaiForce has joined #gnucash
08:38:26 *** fabior has joined #gnucash
08:43:33 <storri> Man it is so easy to screw your account with reconciliation.
08:46:43 <storri> I think I am going to have to just start over all again with a fresh gnucash file. My reconciliation balance is higher than the statement. I don't know how to manually make changes to fix the starting balance.
09:02:43 <warlord> storri: that implies that you either removed some reconciled credits or you increased the amounts of some reconciled debits.
09:02:54 <warlord> (or reduced the amount of reconciled credits)
09:03:29 <storri> I do not disagree that I did one of those things. How can I find where I messed up?
09:08:37 <storri> Or should I just enter the new statement "Balance Last Statement" is the Ending Balance and insert a fake expense to make them reconcile?
09:27:02 <storri> I found it. Thank God for that.
09:27:34 <warlord> storri: Well... The FIRST thing you can try is see if you accidentally UNRECONCILED something. So ignore the starting balance, put in the correct ending balance, check off everything from the current statement, and see if there is anything that might be from the previous statement
09:27:40 <warlord> Oh?! What was it?
09:28:34 <storri> Well an entry was reconciled in the checking account but not in the other. I stumbled across it actually.
09:29:11 <storri> So changing them be to 'c' and then reconciling helped to find it and other entry. Once I did that I got the actual balance.
09:29:47 <storri> The transaction was an internal transfer from one child account to another.
09:31:45 <storri> When I get done with my reconciling I want to go back to looking at CMake. One of the questions I had is how is scheme used? Is it for actual functionality or testing of code?
09:54:20 *** fabior has quit IRC
09:56:49 <warlord> But that's normal... Reconciling on one side does not reconcile the other.
09:57:32 <warlord> Scheme is used for a bunch of things. The reports and Qif Import are the largest users.
10:08:33 <warlord> storri: FYI, that was to you
10:09:20 *** fabior has joined #gnucash
10:20:23 *** codesmythe has joined #gnucash
10:21:42 <codesmythe> storri: I added the support for CMake to GnuCash. I'm happy to answer any questions you may have about that.
10:22:29 <codesmythe> jralls: Could you give me a pointer to a scheme test that isn't run under CMake?
10:34:25 <codesmythe> back in a bit
10:34:27 *** codesmythe has left #gnucash
10:36:05 *** codesmythe has joined #gnucash
10:52:59 *** mlncn has joined #gnucash
11:11:30 *** minot has joined #gnucash
11:11:53 <storri> I will have to wait for codesmythe to get back. I was dealing with life.
11:12:15 <codesmythe> storri: I'm here.
11:13:34 <storri> I figured I would start by helping in this project by starting with CMake build scripts since I have used that for a number of years. I was trying to address the issue of not being able to run the scheme tests.
11:14:47 <storri> In my experience i have done tests through Google Test Framework that I included as part of the project. I would add a target called 'check' and would add each test to that. Guile is new for me.
11:17:04 <storri> The only thing I have messed with is the basic compiler flags for debug vs release. If its debug i include "-g -O0" while release gets "-g O2" as it does currently.
11:17:28 <storri> That way I could run tests in gdb and see actual code instead of optimized code.
11:21:58 <codesmythe> sorri: The 'check' target for CMake is here: https://github.com/Gnucash/gnucash/blob/master/CMakeLists.txt#L427. The tests to run are added as dependencies.
11:24:41 <codesmythe> sorri: See here for an example of how the tests are implemented: https://github.com/Gnucash/gnucash/blob/master/src/engine/test/CMakeLists.txt#L75
11:24:51 <codesmythe> s/sorri/storri/
11:26:03 <codesmythe> storri: There, various macros are implemented in src/cmake/GncAddTest.cmake
11:27:00 <codesmythe> storri: In master, but not maint, there are some tests that use the Google Test framework. I have not yet implement CMake support for these.
11:31:41 <storri> codesmythe: In struggling to understand how to make CMake run the Guile tests I wondered what was the goal of them. If it was to test a C/C++ api could we begin to transition to a C/C++ test program rather than using Guile/Scheme?
11:36:09 <codesmythe> storri: Many of the scheme tests are testing scheme apis that used extensively in the reporting system, for example.
11:39:00 <storri> codesmythe: So unless we change the reporting system to use something else we need to support Guile. Ok. I cannot figure out why the unittest-support is not being included for test-load-scm.in. I have the Cmake code in a terminal to see the output. It seems that the Guile include directories are not used.
11:41:30 <storri> codesmythe: I see the GNC_MODULE_TEST_INCLUDE_DIRS variable being set but I don't see it being used in the CMakeLists.txt. ADD_GNC_MODULE_TEST uses it but that macro is not called in any file.
11:46:48 <storri> codesmythe: it just seems Guile does not know where unittest-support file is.
11:49:53 <codesmythe> storri: test-load-scm does not do a textual include of unittest-support. It loads it as a guile module.
11:52:41 <codesmythe> storri: The depenencies are arranged such that unittest-support is compiled before test-load-scm and the test loads it as a module. (On Linux and OS X. On Windows with guile-1.8 scheme files are not compiled)
12:17:01 *** nomeata has quit IRC
12:24:33 *** Portugal_Pro has joined #gnucash
12:24:37 <Portugal_Pro> Hello there guys i'm inviting you to play this game called "E-Sim". A new and fresh server has just opened, in this game u can be a fighter, a politican or a merchant, or all of those at the same time! With that link u get a bonus prize when u reach lvl 7. http://maxima.e-sim.org/lan.5398/
12:24:48 *** Portugal_Pro has left #gnucash
12:28:58 <warlord> Damn spam
12:31:25 <storri> codesmythe: I tried to run the test-load-scm manually to see why the test was failing. When I distilled out the commands to run in a terminal I get an error message about not being able to find unittest-support.
12:31:45 <storri> Oooh Oooh. I want to play a politician.
12:37:18 <codesmythe> storri: To run guile tests on the command line, you need several environment variables set. This is set up in GET_GUILE_ENV at https://github.com/Gnucash/gnucash/blob/master/src/cmake_modules/GncAddTest.cmake#L3.
12:38:13 <codesmythe> storri: That CMake code is doing to the equivalent of this automake code, which in the case is easier to understand :-) https://github.com/Gnucash/gnucash/blob/master/src/gnc-module/test/Makefile.am#L30
12:38:49 <codesmythe> storriL What platform are you on? Are you using master or maint?
12:40:22 <storri> I am on a Ubuntu 14.04 LTS. I cloned the repository using git.
12:40:53 <codesmythe> storri: And backing up a step, does the test pass when you do 'make check' (or 'ninja check' if using ninja).
12:42:22 <storri> codesmythe: test-load-scm does not pass. It reports "Failed". 32 tests fail out of 93.
12:42:30 <storri> I used 'make check'
12:54:22 <codesmythe> storri: Could you pastebin the output of 'ctest -V -R test-load-scm'? For me, on master on OS X, the test passes: http://pastebin.com/zG94zRWR
12:56:37 <storri> codesmythe: http://pastebin.com/SDFDpjuw
12:57:06 <storri> codesmythe: No code for module (gnucash unittest-support) is the error I receive.
13:01:04 <codesmythe> storri: Does /home/storri/Source/build-gnucash-Desktop-Default/lib/gnucash/scm/ccache/2.0/gnucash/unittest-support.go exist?
13:02:30 <storri> No. There is no subdirectory under lib/gnucash called 'scm'
13:03:33 <codesmythe> strange
13:03:44 <storri> ls
13:05:24 <codesmythe> have you built and run gnucash itself ?
13:05:37 <storri> Yes.
13:05:49 <storri> I did that via automake/autoconf
13:08:08 <codesmythe> Alright, can you build gnucash via cmake, then run the tests
13:08:39 <storri> The test report I gave you earlier was after building via cmake.
13:09:18 <storri> I am going to run the tests via automake now.
13:12:11 <codesmythe> ok. I've to break for lunch. When I get back, I'll fire up my ubuntu vm and see if I can reproduce what you are seeing.
13:17:42 <storri> Building via automake then running 'make check' does not complete successfully: http://pastebin.com/vNvzEdHU
13:24:19 <warlord> note that you probably need a completely clean checkout to swap from auto-tools to cmake
13:25:00 <storri> I generated cmake output to a separate directory. That is what is usually recommended when using cmake.
13:37:56 *** finster has joined #gnucash
14:03:55 *** gnomey has quit IRC
14:07:26 *** gnomey has joined #gnucash
14:16:07 *** minot has quit IRC
14:17:54 *** minot has joined #gnucash
14:47:59 *** minot has quit IRC
14:48:23 *** minot has joined #gnucash
14:52:18 *** KaiForce has quit IRC
14:52:27 <jralls> codesmythe: I didn't make notes of it so I'll have to re-run the experiment. Might take a while.
15:19:00 *** fabior has quit IRC
15:53:24 <codesmythe> jralls: OK. I'll do some digging on it. Might take me a while too.
15:56:22 <codesmythe> storri: All 93 tests pass for me on my Ubuntu 14.04.4 LTS VM. So first question: What was the cmake command you used to generate the CMake files?
15:56:46 *** fabior has joined #gnucash
15:58:05 <jralls> codesmythe: It's not that tests don't pass, it's that autotools runs tests that cmake doesn't.
15:59:36 <jralls> I found this some time ago when I switched builds from cmake to autotools and had failing tests, even though they all passed in cmake. But I don't remember what tests they were and it wouldn't be a comprehensive list anyway.
15:59:51 <codesmythe> jralls: Yeah, got that. I'm was helping storri figure out why some tests are failing in his environment.
15:59:57 <storri> codesmythe: i did cmake ../gnucash -DCMAKE_BUILD_TYPE=Debug -DENABLE_DEBUG=ON because I was trying to build the tests with debug symbols.
16:00:04 <jralls> Oh, sorry for the noise.
16:00:30 *** fabior has quit IRC
16:01:14 <storri> I added tests in the top CMakeLists.txt to alter the compiler flags depending on whether Debug or Release was chosen.
16:02:00 <codesmythe> storri: Aaaahhhhhh. Can't use CMAKE_BUILD_TYPE when building via Makefiles. Using that will cause things to be put in the wrong directory.
16:02:36 <codesmythe> storri: My understand that use of CMAKE_BUILD_TYPE is for use with IDEs like Xcode and VIsual Studio that have native support for Debug and Release modes
16:03:33 <storri> Well in my experience I used that for Linux but I had all the executables, libraries and tests put in a 'bin/' directory. I can revert those changes and try again.
16:04:06 <storri> I personally like having a way to build a debug version with all the symbols in one directory and a release version in another.
16:05:51 <codesmythe> storri: Actually, I am wrong according to https://cmake.org/cmake/help/v3.4/variable/CMAKE_BUILD_TYPE.html, and CMAKE_BUILD_TYPE *is* intended for use in Makefile generators.
16:06:21 <storri> Glad to know I am not insane, well I might be, but at least what I was doing was okay.
16:06:41 <codesmythe> storri: But I could not figure out how to support CMAKE_BUILD_TYPE=Debug for Makefiles and have it work with the Xcode generator.
16:07:48 <storri> I used it mainly to setup the CMAKE_C_FLAGS and CMAKE_CXX_FLAGS for anything specific for building the code. I used the IF(WIN32) and the like to distinguished any IDE specific code.
16:13:50 *** fabior has joined #gnucash
16:21:21 <codesmythe> jralls: Do you recall whether or not the tests that failed in autotools where using gtest?
16:22:46 <jralls> codesmythe: I don't think so; IIRC I was working on a bug in maint at the time. I thought they were Scheme tests.
16:23:30 <codesmythe> jralls: ok.
16:34:34 *** bertbob has quit IRC
16:49:36 *** bertbob has joined #gnucash
16:52:48 *** bertbob has quit IRC
17:08:20 *** bertbob has joined #gnucash
17:11:29 *** bertbob has quit IRC
17:27:09 *** bertbob has joined #gnucash
17:29:42 *** fabior has quit IRC
17:51:21 *** storri has quit IRC
18:23:49 *** minot has quit IRC
18:25:21 *** minot has joined #gnucash
18:30:51 *** minot has quit IRC
18:31:59 *** minot has joined #gnucash
18:55:02 *** minot has quit IRC
18:56:17 *** minot has joined #gnucash
19:01:10 *** minot has quit IRC
19:03:50 *** minot has joined #gnucash
19:07:26 *** minot has quit IRC
19:09:45 *** minot has joined #gnucash
19:13:27 *** minot has quit IRC
19:16:46 *** minot has joined #gnucash
19:19:48 *** CDB-Man has joined #gnucash
19:20:19 *** minot has quit IRC
19:20:30 *** CDB-Man_ has quit IRC
19:22:34 *** minot has joined #gnucash
20:19:56 *** jimvideo has joined #gnucash
21:02:33 *** minot1 has joined #gnucash
21:04:33 *** minot has quit IRC
22:07:28 *** andy has joined #gnucash
22:17:57 *** raeburn has quit IRC
22:19:54 *** raeburn has joined #gnucash
23:02:42 *** jimvideo has quit IRC
23:07:05 *** mlncn has quit IRC
23:08:46 *** storri has joined #gnucash
23:09:31 *** raeburn has quit IRC
23:15:34 *** codesmythe has quit IRC
23:55:46 *** minot1 has quit IRC
23:56:17 *** storri has quit IRC