2022-07-08 GnuCash IRC logs

00:32:04 *** NoobAlice has quit IRC
01:02:17 *** storyjesse has joined #gnucash
01:03:18 *** sbluhm has joined #gnucash
01:13:43 *** bertbob has quit IRC
01:16:45 *** bertbob has joined #gnucash
01:16:45 *** ChanServ sets mode: +v bertbob
01:50:59 *** Gandalf has joined #gnucash
01:58:22 *** fell has quit IRC
01:59:19 *** fell has joined #gnucash
01:59:19 *** ChanServ sets mode: +o fell
02:09:30 *** bertbob has quit IRC
02:15:40 *** bertbob has joined #gnucash
02:15:40 *** ChanServ sets mode: +v bertbob
02:39:14 *** Gandalf1 has joined #gnucash
02:39:38 *** Gandalf has quit IRC
02:39:38 *** Gandalf1 is now known as Gandalf
03:20:37 *** Gandalf has quit IRC
05:07:42 *** FH_thecat has joined #gnucash
05:09:18 *** drl has quit IRC
05:09:28 *** drl has joined #gnucash
05:18:19 *** sbluhm has quit IRC
06:18:24 *** sbluhm has joined #gnucash
07:39:21 *** FH_thecat has quit IRC
07:50:21 *** Gandalf has joined #gnucash
08:03:56 *** gjanssens has joined #gnucash
08:03:56 *** ChanServ sets mode: +o gjanssens
08:08:39 <gjanssens> .
08:08:39 <gncbot> gjanssens: Sent 10 hours and 12 minutes ago: <chris> re: internal messaging i think it's hard(TM): too high risk of false positives
08:09:21 <gjanssens> jralls: I was caught a bit off-hand yesterday wrt installing the html target.
08:10:08 <gjanssens> I gave it some more thought though and I believe "ninja install html" does not do what you think.
08:10:58 <gjanssens> That command will first do everything needed for the 'install' target and then whatever is needed for the 'html' target. It's not an install command for the 'html' target
08:11:50 <gjanssens> (Same for make install html by the way)
08:12:37 <gjanssens> So if you add EXCLUDE_FROM_ALL to the install specification for our html bits, we have no way left to actually install it.
08:13:38 <gjanssens> As the cmake docs suggest, you can tie it into a (cmake) component and then use cmake --install --component 'html' . to install just that, but make/ninja will have no means to install our html documentation.
08:15:00 <gjanssens> To clarify: ninja install (without EXCLUDE_FROM_ALL) will gather all install rules and do takes care of everything that has to be installed. That could in itself trigger builds for all bits we want to install.
08:15:32 <gjanssens> So in our case, 'ninja install' will already build 'html' and afterwards install the bits that were built for the html target.
08:16:18 <gjanssens> If you do 'ninja install html', that will first do everyhting needed for installation (as without the html addition) and then try to build the html target.
08:18:02 <gjanssens> As install already took care building html, that extra target is a noop.
08:19:17 <gjanssens> With EXCLUDE_FROM_ALL in the install bit for html, html won't be built at all with "ninja install" because the html bit is no longer installed and hence its dependency (the build of html) is not required either.
08:20:45 <gjanssens> This is consistent with my testing on linux. Can you double check this on your side ?
08:21:22 <gjanssens> So unless you know of a better way, I can only think of making html installation optional by means of a switch.
08:21:45 <gjanssens> I don't really care that much this means users won't be able to install html unless they enable that switch.
08:22:33 <gjanssens> Other than for packaging (like on MacOS) I see no good reason to do an html installation. The exact same contents is in the build directory already.
08:23:05 <gjanssens> The only complaint could be the build rules are not really consistent across all document formats.
08:23:39 *** sbluhm has quit IRC
08:24:11 <gjanssens> I never intented them to be. I intended them to have defaults that fit best for each platform.
08:25:27 *** sbluhm has joined #gnucash
08:27:02 <gjanssens> That is: linux -> only install ghelp; windows only install chm; macos -> only install html
08:27:53 <gjanssens> I didn't do that correctly for html, so I made an adjustment a few days back.
08:29:37 <gjanssens> In theory I could completely disable html on linux and MacOS as well. That would perhaps be more consistent.
08:30:05 <gjanssens> It would however also require a small change in the nightly docs build scripts (namely to enable html build manually on linux).
08:30:16 <gjanssens> Perhaps you like that better ?
08:34:03 <chris> here's another one of the many messes: Scrub*.c is not standardised. xaccAccountTreeScrubQuoteSources is only called from io-gncxml-v2.cpp :-O
09:14:12 *** sbluhm has quit IRC
09:17:18 <gjanssens> chris: oops
09:24:23 <chris> ditto others in Scrub.c
09:30:29 <chris> I thought gnucash is single-threaded? io-gncxml-v2.cpp#L1582
09:48:43 *** warlord has joined #gnucash
10:05:56 *** paul has quit IRC
10:06:42 *** paul has joined #gnucash
10:13:12 *** ChanServ sets mode: +qo warlord warlord
10:16:36 *** storyjesse has quit IRC
10:46:15 <fell> gjanssens, what do you mean with 'disable html on linux'? While developing we want to check the appearance also in other formats.
11:00:33 *** NoobAlice has joined #gnucash
11:00:34 *** ChanServ sets mode: +v NoobAlice
11:05:03 *** Aussie_matt has quit IRC
11:49:21 <gjanssens> fell: it would be "disable by default" such that distro packagers no longer accidentally package the html format. Documentation writers/testers can simply enable html generation by setting the proper cmake switch, namely "-DWITH_HTML ON"
11:50:20 <gjanssens> Documentation writers typically have no need to install anything. They can test directly in the build environment.
11:51:14 <gjanssens> But I have no hard preference. If the consensus falls on only disabling the installation part of html by default rather than disabling html generation as a whole by default, that's equally fine with me (and as it's currently implemented)
11:51:50 <gjanssens> It's just less consistent if you look at it as an outsider.
11:54:53 <fell> let's look at https://wiki.gnucash.org/wiki/Documentation_Improvement#Proofreading
12:00:14 <fell> my normal workflow is: ninja; ninja check; ninja install' in my build shell. then in my test shell: ghelp …;
12:01:19 <fell> on medium changes I start nina html before switching to ghelp
12:01:56 <fell> on big changes I start ninja pdf before switching to the browser, .
12:02:42 <fell> I haveno need to install html as I browse it in the builddir.
12:05:37 <fell> That way ninja is busy to build the next part while I review one.
12:08:04 <gjanssens> That's an argument in favor or making only the installation part of the html format optional and not the full html format.
12:09:03 *** sbluhm has joined #gnucash
12:09:24 <gjanssens> Question is, does the html output really add much for proofreading ? Or put differently - have you ever made suggestions to change the sources based on looking at the html format, and those issues were not present in the other formats (ghelp or pdf) ?
12:10:03 <gjanssens> This question is to check if proofreading on html uncovers a unique class of errors and hence whether we should support it.
12:11:38 <fell> There are many differeces like <abstract> is a normal para in one format, but get's a header "Zusammenfassung" in the other format.
12:12:28 <fell> Lists are OK in ghelp, but terrible indented in HTML, …
12:14:12 <fell> Our adjust-dpi is not fit for indented sections or multi-column layout,…
12:36:22 *** guak has joined #gnucash
12:39:03 <jralls> gjanssens, intersting analysis about `ninja install html`.
12:39:03 <gncbot> jralls: Sent 14 hours and 42 minutes ago: <chris> re: internal messaging i think it's hard(TM): too high risk of false positives
12:40:06 <jralls> chris, let's keep that discussion on the PR so that others following along don't get confused.
12:42:05 <jralls> gjanssens, `ninja` by itself only compiles gnucash-foo.xml for Yelp, so `ninja install` won't build html. When building the docs for the website I must do `ninja html pdf epub mobi`.
12:43:47 <jralls> But that's something of an aside, it's not germane to getting the html installed where gtk-mac-bundler can find it. I guess that's the only current use-case, though I think it's well past time to ditch CHM and have Windows open the docs in the default browser like macOS does.
12:44:05 <jralls> That's what M$ is doing with their own docs nowadays.
12:45:52 <jralls> Anyway, I did find yesterday afternoon when I got back to it from working on the website that `ninja install html` with EXCLUDE_FROM_ALL works differently in maint from what I'd gotten it to do in master. I didn't have time to investigate that further.
12:48:09 <jralls> Right now I have some Real Life work to do, but I'll get back to the docs in a couple of hours.
13:00:02 *** sbluhm has quit IRC
13:00:50 <gjanssens> jralls: ok. I'll probably be gone by then. I'm fine with whatever you and fell consider best.
13:01:06 <jralls> OK.
13:01:07 <gjanssens> BTW that includes changing to html for Windows.
13:01:26 <gjanssens> It would definitely simplify our docs builds.
13:02:36 <gjanssens> fell: the list indentation is a matter of css corrections. But I do get your point that proof reading html is a worthwile test in itself so html building should stay.
13:03:18 *** jonp` has quit IRC
13:06:07 <gjanssens> jralls: last bit - I believe indeed that not building html, pdf, epub and mobi by default was my deliberate choice. And you're right that means no html files will be installed by default; the install rule just copies what's present in the build dir for html. If that's empty then indeed nothing is copied.
13:07:47 <jralls> Unfortunately that's not quite true. It creates the empty directory structure in $PREFIX/share/docs; I think that's what fell was originally complaining about.
13:10:33 <gjanssens> Ok, my explanation was a bit fuzzy. It will make a copy of {BUILD_DIR}/share/docs which only has figures and stylesheet (empty) directories if html itself is not built. Those bits are not part of the build rule but part of the cmake generation.
13:10:53 <gjanssens> It would not happen if install is made conditional with the cmake option I had implemented.
13:11:36 <gjanssens> That is, the installation path will not have share/docs if the install rule is conditional.
13:12:34 <jralls> Right. I still hope for a way that is a little less drastic.
13:13:12 <gjanssens> I hope so too :)
13:14:01 <gjanssens> One way is to forget about "ninja install" for MacOS packaging and instead define an "html" install component like I did with ghelp and chm
13:14:40 <gjanssens> Then you can install html only with "cmake --install --component html ." (you probably want EXCLUDE_FROM_ALL in the install rule as well)
13:15:33 <gjanssens> But make/ninja are not aware of cmake install components as far as I know. Though we could check the build rules generated to see if there's anything make/ninja can leverage to the same effect.
13:15:45 <jralls> As long as it can be made to work in jhbuild it's good.
13:21:59 <gjanssens> That's the tricky part of course... Can you provide a custom install command in jhbuild ?
13:23:02 <jralls> Maybe, but not easily.
13:23:41 <gjanssens> Ok, I'll leave it to you from here on.
13:49:05 *** kcin has joined #gnucash
13:49:16 *** kcin has quit IRC
14:22:52 *** sbluhm has joined #gnucash
14:28:22 * fell is back from cooking.
14:58:52 <jralls> fell, looking again at your complaint from Wednesday morning about html tripling the install size, that's because you've built html but only want to install xml, right? You don't think that html is built by default?
15:02:24 <fell> I watched, that ninja install copied ghelp files to PREFIX/gnome/help/* and html files to PREFIX/docs
15:04:00 <fell> in autotools we had different targets install (xml) and install-html
15:06:46 <fell> As (linux) package maintainer I would expect, that make && make install would only install the xmls to PREFIX/gnome/help/
15:08:03 *** ArtGravity has quit IRC
15:08:37 *** sbluhm has quit IRC
15:10:55 <jralls> make && make install won't install any html as long as done from a clean build directory, though it will create an empty directory tree in $PREFIX/share/docs/gnucash. That won't affect the installed size significantly but I agree it's unnecessary noise.
15:12:56 <fell> So it took everything from my "review html" builds and installed it.
15:13:47 <jralls> Exactly.
15:16:42 <fell> Install should be OS-dependand, but build should allow every format, i think.
15:18:13 <jralls> By that standard we should disable installing ghelp on Windows and macOS. ;-)
15:18:49 <fell> for now: yes
15:19:09 <fell> But there is another issue:
15:20:29 <fell> in gnc_gnome_help we call gtk_show_uri_on_window (Path/to/docs)
15:21:09 <fell> but there are more specific calls available
15:22:17 <fell> either widget show_help (…) or window help_browser or so
15:23:13 <fell> That would require yelp-devel, but we should get a unique help.
15:33:03 *** ArtGravity has joined #gnucash
15:33:03 *** ChanServ sets mode: +v ArtGravity
15:47:24 *** Gandalf1 has joined #gnucash
15:47:52 *** Gandalf has quit IRC
15:47:52 *** Gandalf1 is now known as Gandalf
15:58:31 *** Gandalf has quit IRC
16:21:05 *** jmdaemon has quit IRC
16:48:16 *** gjanssens has quit IRC
18:49:09 *** sandybs has joined #gnucash
19:15:01 <jralls> fell is there some cross-compilation environment that we need to support where we'd be able to generate chm files with WIN32 not set?
19:25:21 <jralls> Nvm, I see that Free Pascal has a chmcmd.
19:51:35 *** ArtGravity has quit IRC
19:58:04 <kzootech> hey, im curious if there are any users here that use gnucash for a small business, we have been thinking about moving to gnucash but wanted to get some opinions / input
20:00:41 *** Guest62 has joined #gnucash
20:19:52 <NoobAlice> kzootech: That will probably depend on your business. The mailing list will be a better place to ask. You can look through the archives and try out the mailing list here: https://lists.gnucash.org/mailman/listinfo/gnucash-user
20:43:02 *** chris has quit IRC
20:43:57 *** chris has joined #gnucash
20:43:57 *** ChanServ sets mode: +v chris
20:43:57 *** gncbot sets mode: +o chris
20:55:37 *** jmdaemon has joined #gnucash
21:03:25 *** guak has quit IRC