2018-12-27 GnuCash IRC logs

00:39:04 *** jrp has joined #gnucash
00:42:04 *** jrp has quit IRC
01:02:37 *** Mechtilde has joined #gnucash
01:22:24 *** fell has quit IRC
01:23:42 *** fell has joined #gnucash
01:40:24 *** jrp has joined #gnucash
01:43:24 *** jrp has quit IRC
01:59:12 *** Mechtilde has quit IRC
03:25:34 *** Mechtilde has joined #gnucash
03:27:05 *** storyjesse has joined #gnucash
03:41:39 *** jrp has joined #gnucash
03:41:50 *** gour has joined #gnucash
03:44:39 *** jrp has quit IRC
04:20:20 *** Mechtilde has quit IRC
04:43:01 *** jrp has joined #gnucash
04:43:05 *** CDB-Man has quit IRC
04:46:01 *** jrp has quit IRC
04:51:53 *** CDB-Away has quit IRC
04:54:14 *** chris has quit IRC
05:00:15 *** chris has joined #gnucash
05:29:10 *** jrp has joined #gnucash
05:29:23 *** jrp has quit IRC
05:39:47 *** jrp has joined #gnucash
05:59:17 *** Mechtilde has joined #gnucash
06:24:25 *** CDB-Man has joined #gnucash
06:26:47 *** jrp has joined #gnucash
06:39:38 *** fabior has joined #gnucash
07:02:59 *** Jimraehl1 has joined #gnucash
07:03:45 *** Jimraehl1 has left #gnucash
07:17:46 *** oozer has joined #gnucash
07:36:42 *** fabior has quit IRC
07:45:19 *** oozer has quit IRC
07:54:48 *** jrp has quit IRC
08:07:03 *** nimish has joined #gnucash
08:32:13 *** monkeyjuice has joined #gnucash
08:33:29 *** monkeyjuice has quit IRC
08:35:55 *** User_ has joined #gnucash
08:39:21 *** jrp has joined #gnucash
08:44:08 *** jrp has quit IRC
08:44:57 *** jrp has joined #gnucash
08:51:55 *** fabior has joined #gnucash
08:52:44 *** nimish has quit IRC
08:53:43 *** nimish has joined #gnucash
09:05:44 *** boldstripe has quit IRC
09:16:32 *** kael has joined #gnucash
09:20:32 *** boldstripe has joined #gnucash
09:33:35 *** tienne has joined #gnucash
09:34:55 *** boldstripe has quit IRC
09:35:47 *** boldstripe has joined #gnucash
09:40:11 *** tienne has quit IRC
09:40:44 *** tienne has joined #gnucash
09:46:18 *** gour has quit IRC
09:47:33 *** gour has joined #gnucash
09:50:35 *** User_ has quit IRC
09:50:37 *** storyjesse has quit IRC
10:02:45 *** jrp has quit IRC
10:23:41 *** Mechtilde has quit IRC
10:36:32 *** jrp has joined #gnucash
10:39:32 *** jrp has quit IRC
11:09:44 *** fabior has quit IRC
11:19:15 <jralls> chris: Sooner is better for deprecation warnings, so they should go into maint. The actual API removal should go in master after the deprecations are merged up.
11:19:44 <chris> jralls: watch me :)
11:20:26 <chris> i'll be deprecating lots of dead skin such as collectors.scm
11:22:22 <jralls> OK.
11:47:49 *** User_ has joined #gnucash
11:55:34 *** max has joined #gnucash
12:22:20 *** max has quit IRC
12:28:35 *** nimish has quit IRC
12:29:04 *** nimish has joined #gnucash
12:31:58 <fell> while unifying the strings in income-gst-statement, I wonder if there is a better word for "Remittance" refer to "Gross Sales - Gross Purchases" in GST Report
12:34:03 *** gncbot sets mode: +o fell
12:45:14 <fell> chris, gjanssens, jralls: any suggestions?
12:51:41 <gjanssens> fell: what's the GST Report ? It's not in my report menu...
12:52:34 <jralls> gjanssens: Reports>Income and Expense>Income and GST Report.
12:53:03 <gjanssens> Oh, now I see it "Income and GST statement"
12:53:55 *** nimish has quit IRC
12:54:30 *** nimish has joined #gnucash
12:55:01 <gjanssens> Gross Profit ?
12:56:58 <fell> That was my first thought, too.
12:57:21 <jralls> Or maybe Gross Margin. In the US corporate accounting it's called "EBITDA", Earnings Before Interest, Taxes, Depreciation, and Amortization.
12:57:55 <fell> Sounds better
12:58:39 <jralls> Except that the US doesn't have VAT/GST. Only the end user pays sales taxes on the gross purchase prices.
12:59:28 <fell> Gross Earnings?
12:59:38 <jralls> Also there are other expenses that are deducted before EBITDA besides the material costs of goods sold.
12:59:48 <chris> remember guys that this column amount reflects the *transactional* money that comes in/out of the bank account. It's not the period total. at best we could call this column "Transfer", and the bottom total for the "Transfer" column *could* be called EBIDTA
13:00:30 <chris> so in my mind the best description for a transactional amount is really the 'bank remittance' i.e. the actual dollar amount I receive/send in my work
13:00:41 * chris happy to be corrected
13:00:57 <jralls> chris: Sounds like cash flow, then. But in and out of a bank account != sales and purchases.
13:01:35 <chris> perhaps
13:01:44 <chris> (in my mind cash flow is the period total)
13:01:45 *** boldstripe has quit IRC
13:02:41 <jralls> My understanding of VAT/GST is that it's a tax on the difference between cost of goods sold (not sure if that includes labor and overhead) and sales price.
13:02:42 *** boldstripe has joined #gnucash
13:02:43 <chris> (i.e. negative cash flow is a downward spiral where my monthly expense > income, leads to chapter 11), whereas in this particular report it's just the daily amount in/out that you hand out to a business or receive as a paycheck
13:03:09 <chris> see bottom section of https://wiki.gnucash.org/wiki/Alternate_Australian_GST_setup for the sole-trader setup that i use
13:05:06 <chris> in my understanding UK VAT reports are the same, except they must also report EC-VAT-sales, i.e. >1 VAT on sales accounts
13:07:37 *** jrp has joined #gnucash
13:08:12 <jralls> That's completely different from margin: Those accounts are accumulating the GST paid on purchases and collected on sales, not the purchases and sales themselves.
13:10:26 <chris> well consider the 03/08/17 line in the wiki - I generate $4000 of sales in a month - I use an agency which charges 40% (+10%GST) for the admin/marketing/accounts.
13:10:37 *** jrp has quit IRC
13:11:11 <chris> my bank balance only increases by 4000 - (4000 * 0.4 * 1.1) = $2240 -- this is my remittance
13:12:43 <chris> the $160 GST for the business expense is tallied up and summed for the periodic report.
13:13:12 <chris> ...
13:13:18 <jralls> "Remittance" is "transfer of money", not margin.
13:13:48 <jralls> IOW how much you write a check to your tax collector.
13:15:26 <jralls> The tax collector isn't interested in your bank balance, at least not for GST. They want to know your sales amount and how much you paid out to generate those sales, and separately the amount that you've already paid in GST.
13:16:43 <chris> agree - for vat report purposes the "remittance" column is not actually useful at all
13:16:51 <jralls> So you have an Income account called sales, a liability account called GST Sales, an Expense account called Agency fees, and an asset account for GST Paid.
13:17:08 <chris> ^ yups
13:18:48 <chris> I included this column because it basically came "for free" while calculating the other amounts for net-income and difference-in-gst
13:20:03 <jralls> Your Gross margin is Sales - Agency fees. Multiply that by your GST rate and that goes into GST Sales. The 10% of Agency Fees that the agency charges you goes into GST Paid. Sum up GST Sales for the payment period (month or quarter I suppose) and subtract the GST Paid summed over the same period. The result is how much you owe the tax man and your remittance is the amount of the inter-bank transfer that you make to pay them.
13:21:11 *** fabior has joined #gnucash
13:21:12 *** finster has joined #gnucash
13:21:55 <jralls> For a business like gjanssens's where he has material, labor, and facility costs the computation of the "purchases" side of the equation is much harder, probably too hard for GnuCash.
13:22:01 <chris> ^... this definition of remittance isn't actually what i had in mind... your definition is the vat/gst refund/due to tax-authorities, once per VAT report, whereas my definition was for the daily transactional amount... :-/
13:22:38 <jralls> My definition is from Webster's Collegiate Dictionary, Ninth Ed. Shall I consult the OED?
13:22:41 <chris> I think we should rename it "Transfer Amount" to simplify :-/
13:23:50 <jralls> And no, remittance isn't the amount due, it's the amount actually sent.
13:25:05 <chris> ok you are referring the amount sent to taxman after completing the vat/gst report.
13:25:53 <jralls> Both "remittance" and "transfer amount" mean the amount you wrote on the check (cheque) before you mailed it.
13:26:02 <gjanssens> Gnucash can't handle the payrol calculations, but we can outsource that calculation to a specialized firm
13:26:12 <gjanssens> They return the numbers to enter in gnucash
13:26:17 <gjanssens> That does work.
13:26:48 <jralls> It may or may not be the amount actually due, though the tax folks will be unhappy if it isn't. ;-)
13:27:04 <gjanssens> For completeness, note there's VAT/GST on sales *and* on purchases in Europe
13:27:38 <gjanssens> And we tend to only care for the amounts after VAT has been subtracted
13:27:58 <gjanssens> I mean in simplified calculations
13:28:07 <gjanssens> Of course we have to track and report it
13:28:33 <fell> ... as business folk, but not as consumer.
13:29:12 <chris> ok I'll let you guys figure it out, it's way past bedtime... this column can be called anything; it's not really important to tax authorities but can be useful to confirm amounts match business bank statement. perhaps "Transaction Transfer Amount" is the best long-form description I can think of.
13:29:40 <jralls> gjanssens: At the base level, yes, but the GST you pay on inputs is deducted from the GST you collect on outputs. At the abstract that's the same as in the US where you pay no tax on inputs.
13:29:51 *** User_ has quit IRC
13:31:20 <jralls> Material inputs, anyway.
13:31:38 *** oozer has joined #gnucash
13:32:35 <fell> jralls: yes, the result is the same
13:32:48 <gjanssens> Right.
13:32:57 <gjanssens> So what should we call that column?
13:33:02 <gjanssens> Good night chris!
13:33:31 <gjanssens> As it can be used for any account in that report, perhaps "Balance" makes more sense ?
13:34:27 <gjanssens> Or even more generically "Total"
13:34:29 <jralls> I still don't understand how it's calculated. It doesn't make sense that it should apply to any one account.
13:36:53 <gjanssens> jralls: tbh neither do I
13:37:17 <gjanssens> I haven't used that report yet and I don't know why I should.
13:38:49 *** fabior has quit IRC
13:39:07 <fell> I found it by the diffs in PR#433, which highlighted differences in the rterminology.
13:41:15 <jralls> The calculation starts at https://github.com/Gnucash/gnucash/blob/maint/gnucash/report/standard-reports/income-gst-statement.scm#L182.
13:42:21 <jralls> If it's cash accounting bank-remittance would be the change in the cash account from the transaction.
13:46:54 <jralls> chris modelled it with his simple agency situation. Ithink that for widgets "purchases" is Cost of Goods Sold and the accrued taxes thereon. Somewhere in between in complexity would be services cases where one must allocate a monthly fixed cost with GST across the month's "sales".
13:51:29 <jralls> Hmm, maybe "profit net of GST"?
13:54:57 *** finster has left #gnucash
14:06:28 *** max has joined #gnucash
14:06:48 <fell> For his Remittance ("Gross Sales - Gross Purchases")?
14:13:44 *** frakturfreak has joined #gnucash
14:19:58 <jralls> Yes, and change the variable from bank-remittance to profit-net. I'm tempted to say that "purchases" should be "costs" as well, and that instead of "gross" it should say e.g. "sales including GST".
14:21:42 *** nimish has quit IRC
14:30:07 <fell> replacing purchases by cost globally results in terms like "tax on cost"
14:37:09 <jralls> That should be costs, but isn't that what we're talking about here?
14:38:40 *** jrp has joined #gnucash
14:39:53 *** jrp has quit IRC
14:39:55 *** jrp has joined #gnucash
14:40:42 <fell> yes,but I am usually using an approach different from this report.
14:41:53 <jralls> Which is?
14:45:16 <fell> I collect taxes in specific accounts, close them in a liability between the tax office and me for a specific period, ...
14:48:09 <fell> and report the numbers from the german tax report.
15:02:26 *** boldstripe has quit IRC
15:03:23 *** boldstripe has joined #gnucash
15:03:52 <fell> jralls: costs are not relevant for VAT/GST, only purchases and sells as base of the tax amounts.
15:04:48 <jralls> fell: Purchases of what, though? Isn't it just purchases of inputs to what you're selling?
15:06:34 <fell> I.e. I buy something in the first periode, get the tax back at the end. In another period I sell the item and pay the full tax.
15:07:28 <fell> The tax report is per period.
15:07:56 <fell> but it does not mean I have no cost.
15:08:12 <fell> They havebeen in aperide before.
15:08:25 <jralls> aperide?
15:08:38 <fell> a periode
15:08:52 <jralls> Ah.
15:09:20 <gjanssens> jralls: other topic: does our code already have an example of how to mark a c function a deprecated ?
15:09:41 <gjanssens> I'm about to mark a few gnc-uri-utils functions as deprecated
15:09:54 <jralls> gjanssens: I don't remember off hand.
15:10:21 <gjanssens> Ok. I know we discussed this a while back but I can't seem to find an actual example
15:10:26 <gjanssens> Only in scheme
15:12:15 <jralls> Account.h has functions marked @deprecated for Doxygen.
15:13:06 <jralls> e.g. dxaccAccountSetPriceStr.
15:13:10 <gjanssens> Ok. Though that won't emit compiler warnings...
15:13:32 <gjanssens> I think I'll want G_GNUC_DEPRECATED_FOR
15:13:49 <gjanssens> https://developer.gnome.org/glib/unstable/glib-Miscellaneous-Macros.html#G-GNUC-DEPRECATED-FOR:CAPS
15:13:58 <jralls> That will work for something that's already using glib.
15:14:22 <gjanssens> Indeed. I haven't found something more generic yet
15:15:25 <jralls> https://en.cppreference.com/w/cpp/language/attributes/deprecated for C++ in master.
15:16:39 <jralls> gcc has a deprecated __attribute__. That's probably what G_GNUC_DEPRECATED_FOR uses.
15:16:46 <gjanssens> And I just found this example as well: #define HTS_DEPRECATED(message) __attribute__ ((__deprecated__ (message)))
15:17:08 <gjanssens> Yes, G_GNUC_DEPRECATED used that __attribute__
15:17:30 <gjanssens> But for a message to work, we require gcc 4.5 and up.
15:17:47 <gjanssens> Isn't that our base for Ubuntu 14.04 ?
15:18:12 <jralls> 4.8 I think.
15:18:42 <jralls> Because 4.8 is the first gcc that fully supported c++11.
15:19:05 <gjanssens> Oh, even better. So I can assume the deprecated variant with message exists.
15:21:02 <jralls> I think so. It would be a good idea to go through the code base and apply the attribute. `grep -rl deprecate libgnucash` returns a lot of files.
15:22:39 *** max_ has joined #gnucash
15:22:40 <gjanssens> Indeed
15:23:10 *** max has quit IRC
15:23:10 *** max_ is now known as max
15:23:12 <gjanssens> Do you want to collect the deprecated functions in one file or should we just mark them in-place ?
15:24:42 <gjanssens> Where I can I' woud add the gnucash version that first deprecated the function or is that overkill ?
15:26:20 <jralls> I think collecting them will drive us nuts. Yes, including the version where they're deprecated would be helpful to deciding when they can be removed.
15:27:52 <gjanssens> Ok
15:33:25 *** Mechtilde has joined #gnucash
15:36:17 <gjanssens> jralls: hmm, our compiler flags will hide deprecation warnings :(
15:36:37 <gjanssens> We have -Wno-deprecated-declarations in there
15:38:20 <gjanssens> Just removing those will not work as we also have -Werror
15:38:30 <jralls> Oh, yeah. That's probably why we haven't done that before. If we change it to -Wno-error-deprecated-declarations we'll get the warnings, but they won't be just from our code.
15:39:13 <gjanssens> I did that but then I got an error "cc1plus: error: unrecognized command line option ‘-Wno-error-deprecated-declarations’"
15:40:33 <jralls> Try -Wno-error=deprecated-declarations
15:41:37 <gjanssens> Ah yes, that works
15:41:51 <gjanssens> I can live with the additional warnings.
15:43:36 <gjanssens> Success :)
15:43:46 <jralls> I suppose it depends on how much noise there is. If there are hundreds of deprecation warnings then ours just get lost.
15:43:48 <gjanssens> Error /home/janssege/Development/gnucash/maint/libgnucash/engine/test/test-gnc-uri-utils.c:240:9: warning: ‘gnc_uri_get_protocol’ is deprecated: Please use gnc_uri_get_scheme instead (since 3.4) [-Wdeprecated-declarations]
15:44:43 <gjanssens> There are currently not too many: the ones for g_type_class_add_private which Christoph Holtermann is working on
15:45:05 <gjanssens> And a number of them for the gtk_action family of functions
15:46:22 <gjanssens> There are all in gui code. My goal is to treat libgnucash more as a shared lib, so that's where we should play with deprecation messages of function signatures change.
15:46:36 <gjanssens> This can be considered a practice round :)
15:47:18 <jralls> OK. There might be a way to shut up the warnings in the gui code.
15:47:45 *** tienne has quit IRC
16:18:18 *** tienne has joined #gnucash
16:22:42 *** Mechtilde has quit IRC
16:22:55 *** Mechtilde has joined #gnucash
16:37:49 <gjanssens> jralls: you can always override the compiler options locally of course...
16:39:09 <jralls> If you mean from the command line, yes, but that's global. I meant that we'd want to silence the gtk_action warnings to make our own deprecations more visible.
16:41:42 *** Mechtilde has quit IRC
16:56:39 <gjanssens> True. We can by setting target_compile_options on gnome-utils
16:56:44 <gjanssens> I have done so now.
16:57:01 <gjanssens> And now it's time to go to bed.
16:57:03 <gjanssens> See you later
16:57:21 *** gjanssens has quit IRC
16:58:47 *** gour1 has joined #gnucash
17:00:32 *** gour has quit IRC
17:00:55 *** gjanssens has joined #gnucash
17:00:55 *** ChanServ sets mode: +o gjanssens
17:03:07 *** boldstripe has quit IRC
17:04:04 *** boldstripe has joined #gnucash
17:25:18 *** gjanssens has quit IRC
18:07:36 *** frakturfreak has quit IRC
18:47:57 *** gour1 has quit IRC
18:52:37 *** kael has quit IRC
19:00:45 *** jrp has quit IRC
19:03:49 *** boldstripe has quit IRC
19:04:45 *** boldstripe has joined #gnucash
19:28:25 *** kapil___ has joined #gnucash
19:31:17 *** max has quit IRC
20:36:26 *** tienne has quit IRC
20:46:33 *** nimish has joined #gnucash
21:04:30 *** boldstripe has quit IRC
21:05:27 *** boldstripe has joined #gnucash
21:14:48 *** philippirrip has quit IRC
21:14:53 *** boldstripe has quit IRC
21:21:10 *** oozer has quit IRC
21:31:40 <chris> @tell gjanssens jralls and fell - perhaps a simple "Balance" would be a simple wording. https://community.quickfile.co.uk/t/vat-rates-explained/8928
21:31:40 <gncbot> chris: The operation succeeded.
21:41:16 <chris> the other terminology is also quite difficult - Sales/Income/Revenue, Tax/GST/VAT, Purchase/Expense/Cost, Total/Gross/Net. I chose words that I felt to be generic knowing none will be globally applicable. moreover by ticking 'display individual columns' the Sales/Purchase/Tax columns will be renamed to the *account* names which are likely to reflect local terminology. perhaps I need to create examples in documentation.
21:45:18 <chris> my only rule is that I wouldn't use locale settings to switch vocabulary because it's too confusing to users!
21:47:38 *** kapil___ has quit IRC
22:08:30 *** phebus has quit IRC
22:11:47 *** phebus has joined #gnucash
22:23:29 *** nimish has quit IRC
23:01:39 *** chris has quit IRC
23:06:08 *** boldstripe has joined #gnucash
23:49:13 *** JesseW has joined #gnucash
23:50:31 <JesseW> I'm sorry to ask this, but I'm running the (very old) version in Debian stable (2.6.15), and observing a critical bug, and haven't found it bugzilla.
23:50:59 <JesseW> The bug is: When I try to edit/enter a transaction, the backspace, delete and arrow keys don't work.
23:51:37 <JesseW> I can type new things, but not erase anything existing, or move back and forth. The up and down keys do still move me from one transaction to another, though.
23:52:14 <JesseW> If anyone can help me find the bugzilla entry for this, or have other suggestions, I'd be very grateful.
23:53:55 *** chris has joined #gnucash
23:54:16 <JesseW> found some relevant bug tickets:
23:54:21 <JesseW> https://bugs.launchpad.net/ubuntu/+source/gnucash/+bug/1306500
23:54:46 <JesseW> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=890323
23:55:02 <JesseW> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=607673;msg=47
23:55:47 <JesseW> https://bugzilla.gnome.org/show_bug.cgi?id=661915
23:56:20 <JesseW> https://bugs.gnucash.org/show_bug.cgi?id=661915
23:57:34 <JesseW> and the workaround listed there (setting GTK_IM_MODULE="scim") works for me.