Re: [GNC-dev] ANNOUNCE: GnuCash 5.4 Released

2023-09-25 Thread Jean Laroche
Wow, I notice a bunch of .c files being converted to .cpp! I haven't 
looked at the code itself, does it mean that these files now have 
classes / instances in them or is it the same code in a .cpp file (which 
is already a big improvement)?


Jean

On 9/24/23 2:26 PM, John Ralls wrote:

The GnuCash development team announces GnuCash 5.4, the fifth release in the 
stable 5.x series

Between 5.3 and 5.4, the following bugfixes were accomplished:

 Bug 728875 - Back button does not work in QIF import assistant
 Bug 797507 - GnuCash Splash screen may disappear before the main window 
appears
 Bug 798709 - Total(Period) column does not refresh period's value after 
update of the period in settings.a>
 Bug 798904 - GnuCash on Windows opens a CMD window at startup.
 Bug 798925 - Python bindings: "invalid unclassed pointer in cast to 
'QofInstance'".
 Bug 798944 - Program crashes when matching transactions
 Bug 798950 - Bug Report: Incorrect Currency Conversion and Provider 
Invoice Payment Recording
 When balancing lots use the split amount, not the value
 Recalculate the values using deduced exchange rates after adjusting 
split amounts.
 Be conservative when recalculating values after breaking up a split to 
avoid imbalances caused by rounding.
 Bug 798958 - gncScrubLotLinks will infinite loop in some conditions
 Bug 798982 - GetQuotes crashes if Finance::Quote returns an empty date.
 Bug 798983 - Empty Orphan account appears after entering transactions in 
5.3
 Bug 798990 - Notes No Longer Autofills
 Bug 798991 - Incorrect Account Name Order in Transaction Report
 Bug 798995 - Keystrokes ignored during ledger entry
 Bug 798998 - Job Report Not Working
 Bug 799004 - Update of Prices attaches incorrect Date
 Bug 799010 - gnc-register-account-sel-limited-option errors doesn't work
 Bug 799020 - widget of gnc-register-list-option disregards user's clicks
 Bug 799021 - Saved report renders default of gnc-register-list-option
 Bug 799036 - Import prices from a CSV date problem
 Bug 799039 - gnc:strify produces unusual results or crashes GnuCash when 
fed an option from gnc-lookup-option
 Bug 799048 - Hover on tab not correct
 Bug 799051 - Shortcut Ctrl + Tab not working in 5.3
 Bug 799054 - Stock Assist not functioning
 Bug 799060 - Consistent Crash in Invoices
 Bug 799068 - csv export active register not working
 Bug 799069 - Multicurrency Invoice Payment
 Bug 799075 - Saving display tab changes in Report Options does not work.
 Bug 799084 - Unable to create new scheduled transaction

The following fixes and improvements were not associated with bug reports:

 [import-main-matcher.cpp] After clicking/toggling A/U+C/C checkbox, reselect the row 
because it'll be much faster to use keyboard navigation -- use up/down/left/right to target 
desired checkbox, hit   repeatedly to repeat the same action over 
several consecutive rows.
 Implement support for !Type:Prices records in the QIF importer.
 Modernize construction of GObjects using G_DECLARE_DERIVABLE, 
G_DECLARE_FINAL, etc.
 Fix yet more leaks.
 [DBI backend] Change DBI test URLs to environment variables from cmake 
configuration definitions.
 Restore the Stock Transaction Assistant to full operation.
 Fix the Fancy Date file property so that it saves.
 Fix formatting error in po files project-id line.
 [simple-business-create.py] Overwrite an existing file instead of crashing.
 Update github action package versions.
 Add parsing mixed number and fraction (e.g. 10 1/2) to the gnc_numeric 
string constructor.
 Bump minimum cmake version to 3.14 and drop some conditionals for older 
versions
 Major speedup in the SQLBackend by replacing C++ exceptions with 
std::optional for null values.
 Refresh the GUI on completion of the import matcher so that the imports 
are immediately reflected in the register.
 Improve online quote retrieval error reporting.
 Test loading and saving XML files with and without compression
 [import-main-matcher] always defer_bal_computation during import to speed 
up both importing new transactions, and destroying existing ones.
 GncGtkListUIItem::set_option_from_ui_item: Iterate over selected items 
Instead of all possible items.
 Convert gnc-ofx-import.c, import-parse.c, import-utilities.c, 
import-format-dialog.c, import-account-matcher.c, import-commodity-matcher.c, 
import-settings.c, import-pending-matches.c, import-match-picker.c, 
import-main-matcher.c, and gnc-pricedb.c to .cpp
 By default, filter out online_wiggle in test-gnc-quotes. Running 
./bin/test-gnc-quotes from the command line will still include online_wiggle
 Replace yahoo_json with alphavantage in test-gnc-quotes. yahoo_json is too 
unstable.
 Include timezone in price-quote date diagnostic messages.

New and Updated Translations: Arabic, Chinese (Tra

Re: [GNC-dev] [MAINT] Unplanned network outage for code.gnucash.org

2022-06-07 Thread Jean Laroche

Thanks for all this work Derek... Not a whole lot of fun :(

Jean

On 6/7/22 4:09 PM, Derek Atkins wrote:

Hi All,

tl;dr:  Double-whammy of UPS failing and then AT&T Router failing kept me
offline for two days, including code.gnucash.org.  Finally received the
new router around 5pm so the network is back up, but the UPS is still
failing so equipment currently is up but not protected.



Long version:

Around 10:30pm on Sunday night by TV displayed "Network Cable Unplugged".
I didn't think anything of it until the show I was streaming stopped a few
minutes later.  I went down to the basement to discover that everything
plugged into the UPS was powered off.  After fighting with the UPS (the
'on' button didn't do anything) I figured out how to reset it by
unplugging it and the plugging it in again.  This got everything up and
running, but the AT&T router would not authenticate to the network so I
couldn't get online.  I thought it might've been a result of my ER-4 so I
removed that from the equation, but it didn't help.

After an hour on the phone with a nice AT&T tech in Slovenia I had a new
modem on order and I finally got to bed at 12:30 knowing there wasn't
anything else I could do.  The tech said I should have the modem by
Tuesday, but it was possible I could get it Monday.

Monday morning I called AT&T to try to get tracking info, but my modem
order was still processing.  I called back again Monday afternoon and got
FedEx tracking for the box, which was being sent to me from California.

The modem arrived today around 5pm, and I quickly installed it, only to
find that no, it did not have my static IP config in there.  So I called
back to AT&T and got another tech who was able to get me configured.  I
verified it was working while he was on the phone, and then worked with
him on a few additional configuration changes, and verified my billing
(which of course AT&T screwed up, too, but he claims to have fixed it --
I'll check that tomorrow).

However, during all this, the UPS powered-down my equipment several times
over the past couple days, including at least four times in a 3-hour
spread from 3:20-6pm.  I finally decided that the UPS wasn't helping so I
unplugged all the equipment from the UPS and into my mainline
(unprotected) circuit, while I work on figuring out why the UPS keeps
turning off.

So for now:

1) network is up, but I might be subject to NAT tables filling up until I
can return to using my ER-4 gateway.
2) systems are up, but are not UPS protected
3) code is back up and running.

I'm going to have several maintenance windows going forward to return the
ER-4 into service, and, eventually, once I get the UPS repaired (whatever
that means).  Any network outage due to the former should be relatively
short.  However I will have to take all my hardware down to change where
it's plugged in.

-derek

PS: Yes, I really should look into a backup to my main fiber network,
although that wouldn't have helped with the UPS turning off its outputs!


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Investment position from OFX files

2021-11-30 Thread Jean Laroche
Yes, both of the brokers I use export to OFX and include position data 
with units, unit price, and market value (of which only the units is 
really relevant to GC).



On 11/30/21 3:22 PM, John Ralls wrote:



On Nov 30, 2021, at 2:19 PM, Jean L  wrote:

Devs,

I was looking inside *libofx *and saw that a new callback has been added 
*ofx_set_position_cb *which can be use to gain information about security 
positions.
(2021-01-03, LibOFX 0.10.0)

I think it'd be really useful to add this to gnc-ofx-import.c as currently, 
reconciling security positions can only be done manually even when importing 
transactions from an OFX file.
Do you guys think it's a waste of time? Useful?

Very few of the elements in a struct OfxPositionData 
(https://github.com/libofx/libofx/blob/56e12a3016072204b771d0c4b0d2f4e5a4568a0e/inc/libofx.h.in#L1161)
 seem relevant to GnuCash.

Does your broker export OFX files with INVPOS elements? If not it will be hard 
for you to test and harder still to make much use of it. FWIW mine (Charles 
Schwab) exports only CSV.

Regards,
John Ralls


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] "Mortgage Repayment Druid"

2020-09-16 Thread Jean Laroche
Yes, the PR is indeed TL;DR. But the gist of it is indeed that the 
current balance is a variable that you can use in your SX.

Jean

On 9/16/20 11:48 AM, David Carlson wrote:

Regarding https://github.com/Gnucash/gnucash/pull/682,
for me, as a user, I consider it TL;DR.
I will comment, tho, a simple step or incremental improvement like making
the current account balance available as a variable for SX's would be
usable for that specific SX type and generally for users to use in
construction of custom SX's.


On Wed, Sep 16, 2020 at 12:19 PM Michael or Penny Novack <
stepbystepf...@comcast.net> wrote:


On 9/16/2020 12:52 PM, David Carlson wrote:

   Unfortunately, it is not flexible enough to
handle modern calculations involving daily interest calculations,
prepayments, and other variations, but it can still be used to set up a
reasonably good estimated split between principal and interest with or
without escrow or insurance, but to keep an accurate running balance it

is

usually necessary to manually adjust


It is actually a "tricky" problem if needing to exactly match the bank's
amortization table. And in any case will need at least an annual
adjustment for changes to the escrow component << which if anything, is
even nastier even after the "what it has to cover for the year*" has
been entered (the new RE tax and insurance). There are simply too many
places where you algorithm and what the bank used might make different
assumptions, where rounding takes place, significant digits used, how
the final payment to be, etc.**

Michael D Novack

* The problem is that NOT simply "enough to cover those payments" (over
the year) but to be such that the account NEVER goes below zero or a
specified safety amount at any time during the year. Likely best handled
by a "trial and error" algorithm to determine the least per payment
amount that will accomplish that. It is why the amount appears to jump
around so wildly year to year.

** For that reason, I also used a "trial and error" algorithm for that
which produced more than one potential solution for the amortization
table, one of which guaranteed to match the bank to the penny << in
other words, which had the same payment - escrow component as the bank
did >> In other words, knowing the payment the bank claimed was correct,
produce the amortization table that matched that . The bank would the
table FOR A FEE but hey, I was doing software for a living.

--
There is no possibility of social justice on a dead planet except the
equality of the grave.

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel





___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] "Mortgage Repayment Druid"

2020-09-16 Thread Jean Laroche
Note that there is a pull request that adds the ability to use the 
current balance of an account in a scheduled transaction.

https://github.com/Gnucash/gnucash/pull/682

This allows setting up a scheduled transaction for your mortgage payment 
that's smart enough to compute the interest owned based on the current 
balance of the mortgage account. So for example, if you make an extra 
payment, the scheduled transactions created by the current "Mortgage & 
Loan Repayment Assistant" will all be off. But if you setup your 
schedule transaction to use the current balance to compute the interest 
owned, the correct interest will be calculated no matter your 
prepayments etc.


That pull request has been sitting on the list since April, as the 
powers that be don't seem to think it's a priority or even a good idea 
to merge it into maint or master. Check it out, and voice your interest 
if you think that would be useful to you.


Jean

On 9/16/20 9:52 AM, David Carlson wrote:

In release 2.6.19, which I am still using, it is found in the menu tree in
the location Christopher Lam described.  The help manual section for
Account Tree > Actions > Scheduled Transactions > Mortgage & Loan
Repayment... refers to a section called Mortgage & Loan Repayment Assistant
which describes how it works.  There used to be a reference to a section on
the website about using variables in scheduled transactions, but I cannot
find it today.

This tool works fine as far as it goes, to set up a traditional mortgage
repayment scheduled transaction following the calculation methods
traditionally used in the US.  Unfortunately, it is not flexible enough to
handle modern calculations involving daily interest calculations,
prepayments, and other variations, but it can still be used to set up a
reasonably good estimated split between principal and interest with or
without escrow or insurance, but to keep an accurate running balance it is
usually necessary to manually adjust
  each payment transaction in GnuCash  when the payment is actually made to
reflect the actual values reported by the lender.

There have been many discussions over the years in the user maillist about
these shortcomings.
Many users, myself included, would appreciate work on improving this
assistant.

David Carlson

On Wed, Sep 16, 2020 at 10:01 AM Christopher Lam 
wrote:


I think it has been renamed to Actions > Scheduled Transactions > Mortgage
& Loan Repayment...? Maybe it has hit a raw nerve with some wizards and
warlords.

On Wed, 16 Sep 2020 at 14:27, Dean Jagels  wrote:


There are a couple of old enhancement requests that refer to a "Mortgage
Repayment Druid."  Is/was this a wizard of sorts?  Does it still exist?
The House Mortgate How-To in the doc's makes no mention of such a thing.

Thanks,
Dean


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel





___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Deprecation of XML file

2020-09-14 Thread jean laroche
I too like the ability to manipulate the xml file directly, so I'm 
attached to it.

Can someone explain the benefits of SQL vs XML?
Is it faster?
I know it allows simultaneous access by multiple users, but is that a 
realistic usage scenario for GC?
Would it help implementing a real undo/redo mechanism? (something that I 
do think is sorely missing)

Jean


On 9/14/2020 8:07 AM, Derek Atkins wrote:

HI,

A long long time ago (in a galaxy not too far away)...

The __plan__ was to not eliminate XML but relegate it to an import/export
format, but to change the default "File" method to SQLite.  The reasoning
is that SQLite, unlike other SQL-based backends, provides the user with a
single-file model similarly to XML.

The user does not need to be a DBA to use SQLite.  Indeed, using SQLite
requires the same level of system administration knowledge as using XML.
SO..  yes, the long-term goal is to move to using SQLite as the primary
storage facility.

In the interim, the plan (last I heard) was to migrate from QOF to an
in-memory SQLite -- so you would load XML into an in-memory SQLite
database and then gnucash would, internally, use that in-memory SQLite,
and then "Save" would push the data back out to XML.  From there, moving
to a real on-disk SQLite would be easy.

So yes, long term goal WAS to migrate to SQLite as primary backend; we
would NOT remove XML, but there is a TON of work to get there first.

-derek


On Mon, September 14, 2020 10:46 am, Michael or Penny Novack wrote:

Is there a reason to keep supporting the XML file in future? Wouldn't it
be easier to force save the data to SQlite to tackle the move from QOF?

The benefit of point in time save (instead of transactional save) could
be achieved by working from a copy instead.

Probable issue would arise from users that read the XML file directly.


Here's my two cents. And I am perhaps a good person to stick my nose in
because of one of the issues raised.

No, keep XML.

a) A burden to require existing users to obtain and maintain SQLite.

b) Don't forget that some of us, quite properly, have long term backups
of books << say the books after YE ab initio >> If gnucash were no
longer to support XML, we wold have to convert all of those. And since
the issue of "unalterable books" has been raised, I will point out that
these backups might be considered so -- made onto "write once" medium
and in "legal custody". Converting them to SQLite removes that guarantee
<< how do you know that NOTHING else was done besides conversion, no
alterations of data >>

c) The issue of those who manipulate the gnucash database (I am using in
the generic sense) directly OR extract feeds from it OR send feeds to
it. They would have to change all their stuff. And here's why I am an
especially good person to respond. In my working days I have DIRECTLY
modified an SQL database. Not SQLite but real SQL, DB2 on mainframe. Not
going into why this done was beyond saying during testing a MAJOR change
was made to a project, tables were added, and a need to populate the
redefined database with test data << done the "right way", lots of
people working many days entering one at a time from terminals -- even a
batch DB2 process would have been slow >> The point here is that I was
real sneaky. Out of the hundreds of IT people in this very large shop I
was perhaps the only one who could have thought of the trick I used. So
I would consider writing something to do this sort of thing way beyond
reasonable for even very skilled end users.


Michael D Novack

PS: I might as well include a plus for SQLite at the same time. Probably
much less skill required (once having learned SQLite) to query the
database outside of gnucash. I would think that far easier than what I
would have to do to write a program to query when a XML file.


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel





___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Adding a button to abort scrub?

2020-09-10 Thread jean laroche

The downside is that it's not terribly discoverable. What can we do to make it 
more so?


I agree, but I don't know how to make the ESC obvious.


It would be nice to put it in the progress-bar code so that it is available by 
default for all processes that use the progress bar. Check & Repair isn't used 
much but there are plenty of reports that take awhile on a large book and it would 
be nice to be able to stop the report generating so one can get to the options 
dialog and set up the report one really wants.


I thought of that: add an abort button that's handled like the progress 
bar in the code (it's a mess, but it would be easy to duplicate) and can 
be used in all situations where the progress bar is used. I can take a 
look at that. But there might be more pressing things to fix, no?

Jean

On Sep 9, 2020, at 9:46 AM, Jean Laroche  wrote:

Wow, that's super nice!
J.

On 9/9/20 9:43 AM, Christopher Lam wrote:

See the first commit in https://github.com/Gnucash/gnucash/pull/784 -- with it 
you can abort scrub simply by pressing Escape.
On Thu, 10 Sep 2020, 12:19 am jean laroche, mailto:rip...@gmail.com>> wrote:
Christopher Lam suggested that the scrubbing process should be
cancellable via a button (for context, we recently fixed a bug that
could cause a crash when quitting GC during a scrub operation).
I took a look at the code and as usual, it's not as easy as I would
have
hoped: the backend part (making the scrub stop) is very easy, as the
abort mechanism is already in place. Adding an abort button in the
right
place on the relevant windows isn't as easy (see for example how the
progress bar is created/handled, it's fairly convoluted to say the
least).
Two questions:
- Do we really think it's worth the effort given how often scrubbing is
used, and given that scrubbing only takes long on accounts with many
transactions or books with many accounts?
- If we think it's worth the effort, does one of you devs know how to
easily add the abort button on the main window (and probably the
account
transactions window as well)? If so, we could split the task: you could
add the right window, and I'd take it from there.
Personally I doubt it's worth the effort...
Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org <mailto:gnucash-devel@gnucash.org>
https://lists.gnucash.org/mailman/listinfo/gnucash-devel

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel



___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Adding a button to abort scrub?

2020-09-09 Thread Jean Laroche

Wow, that's super nice!
J.

On 9/9/20 9:43 AM, Christopher Lam wrote:
See the first commit in https://github.com/Gnucash/gnucash/pull/784 -- 
with it you can abort scrub simply by pressing Escape.


On Thu, 10 Sep 2020, 12:19 am jean laroche, <mailto:rip...@gmail.com>> wrote:


Christopher Lam suggested that the scrubbing process should be
cancellable via a button (for context, we recently fixed a bug that
could cause a crash when quitting GC during a scrub operation).

I took a look at the code and as usual, it's not as easy as I would
have
hoped: the backend part (making the scrub stop) is very easy, as the
abort mechanism is already in place. Adding an abort button in the
right
place on the relevant windows isn't as easy (see for example how the
progress bar is created/handled, it's fairly convoluted to say the
least).
Two questions:
- Do we really think it's worth the effort given how often scrubbing is
used, and given that scrubbing only takes long on accounts with many
transactions or books with many accounts?
- If we think it's worth the effort, does one of you devs know how to
easily add the abort button on the main window (and probably the
account
transactions window as well)? If so, we could split the task: you could
add the right window, and I'd take it from there.

Personally I doubt it's worth the effort...

Jean

___
gnucash-devel mailing list
gnucash-devel@gnucash.org <mailto:gnucash-devel@gnucash.org>
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


[GNC-dev] Adding a button to abort scrub?

2020-09-09 Thread jean laroche
Christopher Lam suggested that the scrubbing process should be 
cancellable via a button (for context, we recently fixed a bug that 
could cause a crash when quitting GC during a scrub operation).


I took a look at the code and as usual, it's not as easy as I would have 
hoped: the backend part (making the scrub stop) is very easy, as the 
abort mechanism is already in place. Adding an abort button in the right 
place on the relevant windows isn't as easy (see for example how the 
progress bar is created/handled, it's fairly convoluted to say the least).

Two questions:
- Do we really think it's worth the effort given how often scrubbing is 
used, and given that scrubbing only takes long on accounts with many 
transactions or books with many accounts?
- If we think it's worth the effort, does one of you devs know how to 
easily add the abort button on the main window (and probably the account 
transactions window as well)? If so, we could split the task: you could 
add the right window, and I'd take it from there.


Personally I doubt it's worth the effort...

Jean

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Multi-account actions

2020-08-31 Thread jean laroche

Note we're talking about multi-*account* actions, not transactions.
Multi-transaction actions would be great, but at the moment, the GC code 
does not make that easy to implement.


@John, I agree that changing currency on an account that has splits does 
not make sense.
Changing parent, if the parent is compatible, I'm not sure why that 
would be disallowed: Say I've decided to change the way I organize my 
expenses, and expenses that used to be in account A:B I now want to put 
into account A:C:D ... I don't see what the harm is even if there are 
splits in them.
Note that this is *already* possible in GC: you delete account A:B and 
ask for transactions to be moved to a new account A:C:D.


Jean


On 8/31/2020 4:38 AM, Fross, Michael wrote:
Hi John. If I can go to 10 transactions and change them 1 by 1, what’s 
the difference if can be iterated through, making the same change in 
each? I must be missing something.


I’m not a gnucash dev, but thought I would ask as I like Jean’s idea.

Michael

On Sun, Aug 30, 2020 at 10:40 PM John Ralls <mailto:jra...@ceridwen.us>> wrote:






> On Aug 30, 2020, at 10:32 AM, jean laroche mailto:rip...@gmail.com>> wrote:

>

> Devs,

>

> I have 2 PRs that I submitted for multi-account actions.

> With these PRs, the user can select multiple accounts in the
main account view, then:

> - Delete multiple accounts in one shot,

> - Edit multiple accounts in one shot (change the notes, the
flags, the color, the currency, or move them to a different parent).

>

> I also want to add a "duplicate" action where the user can
duplicate the selected account(s).

>

> All this of course isn't very useful if you already have your
account tree and you never change it. But it's very useful, in my
view if you need to setup your account tree or if you regularly
need to add accounts.

> Also, it's part of an effort to make GC more user friendly,
offering features that are common in nearly all software (select
multiple, then do something).

>

> I'm afraid that these PR will just be ignored, because some of
the devs just don't look favorably upon them (John for example).

>

> I'd like to ask devs to chime in on that. My argument is that

> - It makes the user's life easier.

> - It adds a feature to GC that is expected in most software (of
any kind), select multiple then do something.

>



I don't have a problem with cosmetic changes like colors, notes,
or names. Anything like currency or parents that can affect the
accounting logic shouldn't be permitted unless all of the accounts
have no splits. IOW the use case you proposed on the PR, shuffling
things around when setting up a book, is fine. Doing any of that
after creating splits can change the meaning of the splits and
can't be permitted.



GnuCash is not like "all other software". Just because
spreadsheets let you jump off the bridge doesn't mean that GnuCash
should. ;-)



Regards,

John Ralls



___

gnucash-devel mailing list

gnucash-devel@gnucash.org <mailto:gnucash-devel@gnucash.org>

https://lists.gnucash.org/mailman/listinfo/gnucash-devel



___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


[GNC-dev] Multi-account actions

2020-08-30 Thread jean laroche

Devs,

I have 2 PRs that I submitted for multi-account actions.
With these PRs, the user can select multiple accounts in the main 
account view, then:

- Delete multiple accounts in one shot,
- Edit multiple accounts in one shot (change the notes, the flags, the 
color, the currency, or move them to a different parent).


I also want to add a "duplicate" action where the user can duplicate the 
selected account(s).


All this of course isn't very useful if you already have your account 
tree and you never change it. But it's very useful, in my view if you 
need to setup your account tree or if you regularly need to add accounts.
Also, it's part of an effort to make GC more user friendly, offering 
features that are common in nearly all software (select multiple, then 
do something).


I'm afraid that these PR will just be ignored, because some of the devs 
just don't look favorably upon them (John for example).


I'd like to ask devs to chime in on that. My argument is that
- It makes the user's life easier.
- It adds a feature to GC that is expected in most software (of any 
kind), select multiple then do something.


Thanks,

Jean

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] "2" version of source code

2020-08-04 Thread jean laroche
Thanks for that effort Bob. Let us know if you need any help with 
anything (I doubt it, but who knows, testing maybe?)


Remind me what the push was to create the "2" version? What improvement 
were you guys hoping to achieve?
I know I'm interested in multi-transactions operations, but I'm sure 
that wasn't the only goal...

Jean


On 8/4/2020 2:33 AM, Robert Fewell wrote:
The slowness I think is that the treeview travesses the model working 
out what paths are valid before loading. I had started to get round 
that by only loading part of the transaction list. So locally I have a 
test account with 1 transactions and have two Glist's, a full one 
with 1 entries and a view list which the custom model uses and 
which is currently set to 150 entries. I am able to move about 
successfully by keyboard, loading and removing entries from the view 
list as needed but moving by mouse needs work but I have an idea on that.


Selectable columns were already implemented, currently the normal 
registers have a fixed set of columns but the general ledger has some 
default and elective ones but this is easily changed.


If the transaction could only have one line then that would make the 
model and view simpler like not having two cell renderers in one 
column and setting the visibility of them by type of row.


I will try and get the mouse scrolling to work and then there are 
changes to the model I want to make which can include going to a 
transaction with one line only. As this is all self contained in 
separate source files hopefully there will be no problem if I push my 
changes when ready but some changes may still require work.


This still may not come to anything but maybe show what is possible, 
the wrong way to do it or something to build on.


Regards,
Bob


On Sat, 1 Aug 2020 at 12:10, Geert Janssens 
mailto:geert.gnuc...@kobaltwit.be>> wrote:


Op dinsdag 14 juli 2020 17:49:34 CEST schreef Robert Fewell:

> Also if I remember right there was a lot of, "it is not the same as

> the existing" which slightly put me off any further progress.

I admit partial blame to this and apologize for it. In the years
since I have changed my mind on this and I would be more ok with
certain layout improvements. Just as an example I would now even
dare to propose to drop the double line mode in favour of user
selectable visible columns (some columns may be made mandatory
though).

But as mentioned in other messages, I don't know if it's the right
time to work on this. The primary concern remains the slowness of
GtkTreeView (or is that really GtkTreeModel) with large data sets.

Regards,

Geert



___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Rebuild after a change to a glade file

2020-08-01 Thread jean laroche

Done.

https://bugs.gnucash.org/show_bug.cgi?id=797892


On 8/1/2020 5:38 AM, Geert Janssens wrote:


> On 7/6/2020 7:49 PM, John Ralls wrote:

> > The glade files are loaded at runtime so it's likely that Xcode isn't

> > moving the revised file into position. That might well be a cmake

> > function. Did you try forcing a rerun of cmake?



___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Dev's features of choice?

2020-07-26 Thread jean laroche
OK thanks for all the opinions. As usual with collaborative projects, 
it's a bit messy, we don't all have the very same optics, which I think 
is probably a good thing!


I would agree with John that undo/redo is very challenging if it's 
applicable to all actions with "infinite" undo/redo. I've thought about 
it a bit, and there's nothing that seems easy to me that would give a 
fully functional undo/redo. Even if you saved the state of the database 
for every action (granularity to be defined!) restoring it, and going 
back exactly where you were would not be a simple matter...


In any case, thanks for chiming in.
Jean


On 7/26/2020 8:52 PM, John Ralls wrote:

There's already a cancel button for the first part.

There's no undelete, but it wouldn't be to hard to implement: Just make a 
second set of QofContainers to hold deleted objects until the end of the 
session and provide a dialog to list them and allow them to be returned to the 
primary container.

The normal undo-redo stacks common in other programs would be a bit more 
complex but the technique is well known, it's just really tedious to implement. 
Where the problem gets quite a bit more interesting (read: complex and 
difficult with decisions about depth and granularity) is when the undo stack 
reaches back into already committed transactions. Do you save a copies of each 
object for every keystroke or treat an edited transaction like a deleted one? 
How do you handle an import of many transactions, some new and some 
matched-and-updated? That's just the beginning, GnuCash is complicated. It 
could easily turn into several years work for a skilled software engineer; 
definitely not a job for a hacker.

Regards,
John Ralls



On Jul 26, 2020, at 7:59 PM, Bruce Irving via gnucash-devel 
 wrote:

While I'm not a professional, there is a point about undo that I would like to 
see - sooner than later:  I start to edit a transaction but, before I commit it 
(press enter or move to another transaction). I realize that I didn't want to 
do that and would like to cancel my edit, restoring the transaction to what it 
was.

And, I have accidentally deleted a transaction on more than one occasion.  It 
would be great if I could restore that transaction rather than completely 
re-enter it, hoping I remembered what was in it - I don't!
Bruce
Preach the Gospel wherever you go.
If necessary, use words.

Hi Jean,

Am 26.07.20 um 19:57 schrieb jean laroche:

I'm curious about something:
If you're a GC dev, contributing code to the project, what's the
feature(s) you'd like to see added to GC?
I'm only contributing a bit, but I'll offer my 3 top wishes:
- Undo/(redo)
- Multi-transaction (bulk) editing
- Multi-account (bulk) editing

All three are violations of strict accounting rules. We often talk about
"In the times of ink and paper", not graphite (pencils). Some
governments require the immutabiity of once written records.

So I see at least a better auditing system as a requirement before your
suggestions. The current logging would need a review. It should cover
all changes, not only simple transactions. ISTR business actions and
structural changes are not recorded.


I'm curious specifically about devs because they typically have a
different perspective on the project than users have.
Jean

About the future I almost agree with Johns suggestions.

Regards
Frank

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Dev's features of choice?

2020-07-26 Thread jean laroche

But why???


On 7/26/2020 3:38 PM, D. wrote:

Jean,

I think you raise a valid point. There does seem to be a tendency in the 
community to assume that a certain amount of inconvenience is to be expected. 
The reasons vary, but the underlying tendency remains.

David T.


 Original Message 
From: jean laroche 
Sent: Sun Jul 26 17:49:47 EDT 2020
To: "Frank H. Ellenberger" 
Cc: GnuCash Developer 
Subject: Re: [GNC-dev] Dev's features of choice?



On 7/26/2020 1:54 PM, Frank H. Ellenberger wrote:

Hi Jean,

Am 26.07.20 um 19:57 schrieb jean laroche:

I'm curious about something:
If you're a GC dev, contributing code to the project, what's the
feature(s) you'd like to see added to GC?
I'm only contributing a bit, but I'll offer my 3 top wishes:
- Undo/(redo)
- Multi-transaction (bulk) editing
- Multi-account (bulk) editing

All three are violations of strict accounting rules. We often talk about
"In the times of ink and paper", not graphite (pencils). Some
governments require the immutabiity of once written records.

I see a disconnect here. Some of us (John in particular) insist that GC
is not a system for professionals, only for personal finance.
Yet, I always hear about accounting rules, and the way it should be done
by the book. If GC is really for the personal user, I don't understand
how we can survive without undo/redo, and multi-select. *every* piece of
software out there has these types of features, and they're invaluable.
J.
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel



___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Dev's features of choice?

2020-07-26 Thread jean laroche




On 7/26/2020 1:54 PM, Frank H. Ellenberger wrote:

Hi Jean,

Am 26.07.20 um 19:57 schrieb jean laroche:

I'm curious about something:
If you're a GC dev, contributing code to the project, what's the
feature(s) you'd like to see added to GC?
I'm only contributing a bit, but I'll offer my 3 top wishes:
- Undo/(redo)
- Multi-transaction (bulk) editing
- Multi-account (bulk) editing

All three are violations of strict accounting rules. We often talk about
"In the times of ink and paper", not graphite (pencils). Some
governments require the immutabiity of once written records.
I see a disconnect here. Some of us (John in particular) insist that GC 
is not a system for professionals, only for personal finance.
Yet, I always hear about accounting rules, and the way it should be done 
by the book. If GC is really for the personal user, I don't understand 
how we can survive without undo/redo, and multi-select. *every* piece of 
software out there has these types of features, and they're invaluable.

J.
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Dev's features of choice?

2020-07-26 Thread jean laroche

Thanks that's helpful!
J


On 7/26/2020 11:35 AM, John Ralls wrote:



On Jul 26, 2020, at 10:57 AM, jean laroche  wrote:

I'm curious about something:
If you're a GC dev, contributing code to the project, what's the feature(s) 
you'd like to see added to GC?
I'm only contributing a bit, but I'll offer my 3 top wishes:
- Undo/(redo)
- Multi-transaction (bulk) editing
- Multi-account (bulk) editing

I'm curious specifically about devs because they typically have a different 
perspective on the project than users have.


Big-picture:
- A report system that allows normal humans to generate custom reports and 
graphs.
- Simultaneous multi-user access.
- Real plugins
- Mobile (at least for tablets) support

To get there, plus some maintainability improvements:

- In-memory SQLDB for the XML backend, enabling replacement of QofQuery with 
SQL queries and use of SQL record locking in the engine that would in turn make 
multiple simultaneous sessions possible when using a SQL server backend.
- A QBE frontend for those SQL queries so that normal humans can query their 
data.
- Cleaning the model and controller code out of gnucash/gnome and 
gnucash/gnome-utils to make UI improvements easier and migration to a different 
GUI framework feasible.
- Removing Guile from everything except the report module.
- Consolidating signaling, events, and hooks into a single system.
- Removing all of the direct model manipulation from reports and replace it 
with SQL queries.
- Replace the report module with something that normal humans can use to 
generate reports and graphs suitable for their needs.
- Make GncModule a proper plugin architecture that allows modules compiled 
separately from the main GnuCash source tree. Immediate uses would separate 
AQBanking and the Python console into separate projects, but no doubt others 
would pop up once the capability is available.
- Find a way to display reports so that we don't have to include WebKit in the 
macOS and Windows bundles.

Regards,
John Ralls



___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


[GNC-dev] Dev's features of choice?

2020-07-26 Thread jean laroche

I'm curious about something:
If you're a GC dev, contributing code to the project, what's the 
feature(s) you'd like to see added to GC?

I'm only contributing a bit, but I'll offer my 3 top wishes:
- Undo/(redo)
- Multi-transaction (bulk) editing
- Multi-account (bulk) editing

I'm curious specifically about devs because they typically have a 
different perspective on the project than users have.

Jean

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] "2" version of source code

2020-07-14 Thread Jean Laroche
Ah cool! Let me know if I can help revive the code (I doubt it, this is 
usually a solo effort, but just in case).
I just think that multi-select is a standard features of software and 
it's nuts that we're missing it. It would help with many things I think: 
deleting a bunch of transactions, moving them etc. Not that it's easy to 
do mind you, I realize that (corner cases etc). But I think we at least 
have to try, no?


Jean

On 7/14/20 8:49 AM, Robert Fewell wrote:

Jean,
I have been relooking at this and wil give it another go. When I first 
made the changes, all seemed to be OK but with large transaction lists 
it was slow. Also if I remember right there was a lot of, it is not the 
same as the existing which slightly put me off any further progress.
I have recently created a new tree view / model based on the original 
register rewrite to see if I had made an error with my changes but it 
also is slow with large transaction lists, slightly quicker than my 
effort but I think that was down to only having one transaction row.
I did implement only retrieving part of the transaction list at a time 
but this needs to be changed along with the vertical scrollbars which I 
may have an idea about.


If you can wait, I will try and spend more time on it soon. Multi 
selection still might be tricky, what do you want that for?


Regards,
Bob

On Tue, 14 Jul 2020 at 16:11, Jean Laroche <mailto:rip...@gmail.com>> wrote:


Hi Devs,
Last night I was looking at what it would take to allow selecting
multiple transactions in the split register, and realize (if I'm not
mistaken) that the split register is not based on a tree view (in which
case it would be easy to allow multi-select, but possibly tricky to do
the right thing after that).
On the other hand, there are versions of the .c source files with a
"2",
which I believe were a rework of the basic GC UI elements, and one of
them is the split register. The version 2 of it is apparently based
on a
tree view and I remember somebody mentioning that the refactoring was
intended to allow multi-select (among other things I'm sure).

Question:
- What's the status of the "2" versions? This was worked on more
than 10
years ago, if I remember correctly. No update since?
- How far was it from completion? Would it be a huge effort to look at
the code and make it functional? I know it can be enabled with a
special
flag when we launch gnucash, what I don't know is what's missing before
the "2" versions can be adopted...

Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org <mailto:gnucash-devel@gnucash.org>
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


[GNC-dev] "2" version of source code

2020-07-14 Thread Jean Laroche

Hi Devs,
Last night I was looking at what it would take to allow selecting 
multiple transactions in the split register, and realize (if I'm not 
mistaken) that the split register is not based on a tree view (in which 
case it would be easy to allow multi-select, but possibly tricky to do 
the right thing after that).
On the other hand, there are versions of the .c source files with a "2", 
which I believe were a rework of the basic GC UI elements, and one of 
them is the split register. The version 2 of it is apparently based on a 
tree view and I remember somebody mentioning that the refactoring was 
intended to allow multi-select (among other things I'm sure).


Question:
- What's the status of the "2" versions? This was worked on more than 10 
years ago, if I remember correctly. No update since?
- How far was it from completion? Would it be a huge effort to look at 
the code and make it functional? I know it can be enabled with a special 
flag when we launch gnucash, what I don't know is what's missing before 
the "2" versions can be adopted...


Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] 4.0 and C++?

2020-07-08 Thread jean laroche
Ah OK I see, I think I misunderstood originally I though the new code 
was around the corner (and I was wondering who was doing all this insane 
porting work).
The thing that seems tricky is, fixing bugs obviously must be done in C 
mostly. For new features, it's hard to separate them enough that they 
can be written as separate C++ files no?
So what needs to be done, I guess, is to go ahead and little by little 
convert every little piece of GC? Seems daunting.


J.


On 7/8/2020 8:29 PM, John Ralls wrote:

It's a desired trend alright. We push for new code to use modern C++ (meaning 
C++ 11 idioms and with more emphasis on generics than OO), but not every 
contributor is up to writing that. *But* GnuCash is over a million lines of C 
code and we expect it will take many years and many development cycles to 
convert everything.

There's another consideration: Our GUI is Gtk, and while there's a C++ wrapper 
for it called gtkmm we don't use that much. We also have bindings created via 
SWIG, and while SWIG was designed for C++ and works reasonably well with it it 
takes a fair amount of care to get it to work correctly. To deal with those the 
C++ modules we've created are wrapped in C to ease portability.

Regards,
John Ralls



On Jul 8, 2020, at 6:00 PM, Christopher Lam  wrote:

IIUC this is a desired trend, waiting for good pair of hands!

On Thu, 9 Jul 2020, 12:33 am Jean Laroche,  wrote:


Maybe I mis-remember, but I thought that 4.0 would be the version where
we switch from using C to using C++ + boost etc for most of the code in
GC...
Was I confused? Is there still a plan to do this rewrite? If so how far
along is it, and when will it be folded into the current branches?

J.
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


[GNC-dev] 4.0 and C++?

2020-07-08 Thread Jean Laroche
Maybe I mis-remember, but I thought that 4.0 would be the version where 
we switch from using C to using C++ + boost etc for most of the code in 
GC...
Was I confused? Is there still a plan to do this rewrite? If so how far 
along is it, and when will it be folded into the current branches?


J.
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Git branches

2020-07-07 Thread Jean Laroche

Awesome! Thanks!
J.

On 7/7/20 3:43 PM, John Ralls wrote:

I just completed the post-4.0 branch shuffle, so maint is 4.0 and should get 
commits for stable release. master is 4.900 and ready for changes leading to 
5.0 in 2-3 years time.

Regards,
John Ralls

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Rebuild after a change to a glade file

2020-07-07 Thread jean laroche

That did the trick! Thanks!
J.


On 7/6/2020 7:49 PM, John Ralls wrote:

The glade files are loaded at runtime so it's likely that Xcode isn't moving 
the revised file into position. That might well be a cmake function. Did you 
try forcing a rerun of cmake?

Regards,
John Ralls



On Jul 6, 2020, at 4:30 PM, jean  wrote:

Devs,
I made a change to gnucash/gtkbuilder/dialog-import.glade to modify the lower 
limit of a pref value.
I'm selecting clean then rebuild-all in Xcode, and despite that, it does not 
look like this change is taken into effect.
I'm guessing there's a step I'm missing in the rebuild?

I'm not quite familiar with how the glade file is used during the build so I 
don't know whether there's some intermediate file that needs to be removed or 
something...

Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Rebuild after a change to a glade file

2020-07-06 Thread jean laroche

I didn't try that... I'll give that a shot. Thanks!
J


On 7/6/2020 7:49 PM, John Ralls wrote:

The glade files are loaded at runtime so it's likely that Xcode isn't moving 
the revised file into position. That might well be a cmake function. Did you 
try forcing a rerun of cmake?

Regards,
John Ralls



On Jul 6, 2020, at 4:30 PM, jean  wrote:

Devs,
I made a change to gnucash/gtkbuilder/dialog-import.glade to modify the lower 
limit of a pref value.
I'm selecting clean then rebuild-all in Xcode, and despite that, it does not 
look like this change is taken into effect.
I'm guessing there's a step I'm missing in the rebuild?

I'm not quite familiar with how the glade file is used during the build so I 
don't know whether there's some intermediate file that needs to be removed or 
something...

Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Crash during OFX import

2020-06-30 Thread jean laroche

I believe you're right. The bug was mine.
J.


On 6/29/2020 10:39 PM, Mike Alexander wrote:


On 29 Jun 2020, at 12:58, John Ralls wrote:

It's the right way. We're just in an unusual phase right now where
master is the current stable.

It's only on master because those struct _ofx_info members were
introduced by

https://github.com/Gnucash/gnucash/commit/0a4347bd5ef155193a1d5b18f9ed8596283e488d
that was applied only to master.

But I think the bug is from the multi file import change (55d7385) 
which failed to reinitialize those fields for each file. At any rate 
the fix looks ok.


|Mike |


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Patelco stopped supporting OFX... other options

2020-06-29 Thread Jean Laroche

A quick follow up on this thread.
As an alternative to plaid, it's possible to write your own scraping 
code (by this I mean, code that goes and scrapes data from the web sites 
where you can manually download your ofx files).
To automate a browser, you can use Selenium (which has bindings for 
python and many other languages). With that you can open a page, click 
on various elements etc, from a script.


The difficulty is to find out the series of clicks that are required to 
download your OFX files (because you have to specify the element to 
click and that can be very difficult to determine).
But there's a great time-saving tool called selenium ide (an extension 
for chrome of firefox) where you can just "record" a series of clicks 
that you make on the web page, and export that as ready-to-use code for 
Selenium to replicate your actions and download your data automatically.


While this requires a bit of programming, it's not bad at all, and you 
have 100% full control over what gets done and how, (in particular, if 
you can go manually download your ofx, you can write a script to do that 
automatically, and you're not giving access to your account to anyone).


Just wanted to share what I have found so far for those who might be 
curious/interested.

Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


[GNC-dev] Crash during OFX import

2020-06-28 Thread jean laroche

Devs,

I noticed a crash during OFX import of investment related transactions, 
which only happens in the master branch (not in maint). I have the fix, 
the crash is caused by an uninitialized pointer so it's a simple fix.
I guess it's unusual to have a crash on master and not maint, and bug 
fixes are normally on maint not master.
In any case, I'll do a PR for this, unless you tell me that's not the 
right way to do it.


Thanks

Jean

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] GnuCash 4.0 Released

2020-06-28 Thread jean laroche

John,

This link

 
https://downloads.sourceforge.net/gnucash/gnucash%20%28stable%29/gnucash-4.0.setup.exe

is apparently broken!
But thanks for the new release!!!
J.


On 6/28/2020 11:53 AM, John Ralls wrote:

The GnuCash development team announces GnuCash 4.0

Changes

Baseline requirements

Operating Systems:

• Linux: Ubuntu 18.04LTS
• MacOS: 10.13
• Windows: 8.1
Software Dependencies:

• C++ standard is now C++17, requires gcc 8.0 or clang 6.0.
• Cmake 3.10
• boost 1.67.0
• gettext 0.19.6 for general use, 0.20 to generate gnucash.pot.
• glib-2.0 2.56.1, gtk 3.22.30
• googletest 1.8.0
• ICU, any version.
• libdbi 0.8.3
• libxml2 2.9.4
• swig 3.0.12 Now required for building from tarballs as well as from 
git.
• Webkit 2.4.11 Mac & Win32, 2.14.1 Linux/BSD
New Features

• A new separate executable, gnucash-cli (gnucash-cli.exe on Microsoft 
Windows) for doing command-line things like updating the prices in your book. 
gnucash-cli gains the ability to run reports from the command line. Specify 
reports to run by name or guid. It also provides an export format and an output 
file name without which it will output the report to stdout.
• gnucash-cli --report run --name=[reportname/guid] 
datafile.gnucash
• gnucash-cli --report run --name=[reportname/guid] 
--output-file=x.html datafile.gnucash
• gnucash-cli --report run --name=[reportname/guid] 
--output-file=x.html --export-type=TYPE datafile.gnucash
• Register Column Widths
Register column widths are no longer saved per-account except for open tabs and 
even widths for open tabs will be reset after upgrading from 3.x or earlier. 
Instead widths are saved by register type group. The type groups are:

• Currency: Ledgers that display amount in debit and credit 
columns.
• APAR: Accounts Payable and Accounts Receivable accounts.
• Stock: Ledgers that display amount in a single column with 
additional columns for Price and Value, the last in Debit and Credit columns.
• Journal: Ledgers displaying transactions from multiple 
accounts where all accounts would be displayed with a Currency type ledger.
• Portfolio: Ledgers displaying transactions from multiple 
accounts where one or more accounts would be displayed with a Stock type ledger.
• Customer: Ledgers embedded in invoices.
• Employee: Ledgers embedded in expense vouchers.
• Vendor: Ledgers embedded in bills.
Two menu items are added to the Windows menu when a Register, Bill, Invoice, or 
Voucher tab has focus:

• Use as Default Layout for this Register Group
• Reset Default Layout for this Register Group
The first saves the currently focused register's column widths and saves them 
for use by all registers in the same type group. Note that currently open 
registers will not be affected until they are closed and reopened, and that 
open registers widths will persist through quitting and restarting GnuCash. The 
second menu item removes the customization and registers of that type group 
will therafter use the computed default widths.
• When deleting accounts the destination accounts of moved splits will 
be checked to ensure that they have the same commodity as the source account. 
If they don't you'll get a warning and the opportunity to pick another account 
or to carry on regardless.
• New type-ahead search added to sequential search when selecting an 
account in the register: Instead of typing the first few characters of a top 
level account, the separator, the first few characters of the next level 
account and so on you may instead type a few characters of any part of a full 
account name and the drop-list will be filtered to contain only matching 
accounts. Once you have a small enough list you can use the arrow keys to 
select the account that you want.
• Python bindings are now localized and their strings available for 
translation.
• A new Transaction Association dialog, available from the Update 
Association for Transaction menu item that has replaced the two association 
items in 3.x, allows setting, changing, and deleting associations.
• Allow Associations to be added to invoices. The actual association 
when present is added as a link button which is shown below the notes.
• A symbol is now displayed on transactions in the register when they 
have an attachment and the selected font supports the symbol.
• The OFX file importer can now import more than one file at a time.
• A new report menu supbmenu Multicolumn contains the old 
custom-multicolumn report and a new Dashboard report containing Account reports 
for expenses and income, an income-expense chart, and an account summary.
• Support

Re: [GNC-dev] Cannot build master on mac os

2020-06-27 Thread jean laroche

Please respond to the mailing list as well.
You can follow this
https://wiki.gnucash.org/wiki/Building

The initial setup can be a bit gnarly, my advice is: follow the 
instructions above, and if you run into any issues, send an email to to 
this group, and somebody will help you. Normally everything should work 
well right off the bat, but it's not impossible that some parts get 
stale and the doc does not reflect that (it was the case for me).


I also have my own detailed instructions for when I set things up for 
the first time myself, but i"m pretty sure they wouldn't be useful any 
longer...

Jean


On 6/27/2020 12:36 PM, Kevin Hale Boyes wrote:

I've been wanting to build on macos but am not sure how to get started.
Do you follow some instructions that you would be able to share?

On Sat, 27 Jun 2020 at 12:29, jean > wrote:


I'm trying to built master (to repro a crash bug) but on macos I'm not
having any luck.
I'm getting a link error:

    "_gnc_assoc_get_path_head", referenced from:
        _file_chooser_clear_cb in dialog-preferences.o
        _file_chooser_selected_cb in dialog-preferences.o
    "_gnc_assoc_get_unescape_uri", referenced from:
        _gnc_prefs_connect_file_chooser_button in dialog-preferences.o
    "_gnc_assoc_pref_path_head_changed", referenced from:
        _file_chooser_clear_cb in dialog-preferences.o
        _file_chooser_selected_cb in dialog-preferences.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see
invocation)


Any idea how to fix that?
Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org 
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Patelco stopped supporting OFX... other options

2020-06-22 Thread Jean Laroche

For those interested in plaid.
Today I got a response to my inquiry about being allowed to retrieve 
investment information using the free dev environment.

Typically Liabilities and Investments product is only available under
our custom contract model which starts at a $500 per month committed
spend with Plaid. However, we do allow up to 5 free
investments/liabilities accounts to be connected for free in our Dev
environment. Mortgages are launching in a few months, they will be
under Liabilities along with credit cards and student loans which are
available today.
So with plaid, if they do honor the above (they did for me), you can 
retrieve transactions from up to 100 banks, up to 5 of which can be 
investment institutions. The sales person did not tell me whether they 
would allow a user to pay for additional accounts and how much that 
would be.
I tried the api on one of my investment accounts and it worked right off 
the bat. I was able to retrieve holdings, transactions, etc.


So plaid is definitely a solution albeit with security concerns.
I wish all this stuff was open source, and all this bank info data would 
be at our fingertips without having to go through third parties like 
that. But that's the current state of affairs.


Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Patelco stopped supporting OFX... other options

2020-06-20 Thread jean laroche




I found an explanation of Quicken's Express Web Connect at 
https://community.quicken.com/discussion/7851859/faq-how-quicken-connects-with-your-financial-institution-tips-tricks-and-best-practices.

The short answer is it works the same as plaid and friends: The transaction 
data is retrieved nightly and stored on Intuit's servers and Quicken phones 
home to retrieve them.

Regards,
John Ralls

That's interesting! They even mention screen scraping (I'm not sure 
whether that's really what's happening, I would imagine that would be 
extremely unreliable). I'm sure most data aggregators (such as plaid) no 
longer use screen scraping, they must have agreements with Banks to 
download directly, but I'm not too sure about this.

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Patelco stopped supporting OFX... other options

2020-06-20 Thread jean laroche

More about the Plaid thing:

1) I found quite a few projects in github having to do with plaid. 
People writing their own financial solutions.
One that's somewhat relevant here is this one: 
https://github.com/ebridges/plaid2qif
Even though the author picked qif instead of ofx (a mistake I think) it 
shows that people are doing this.
2) I wrote my own plaid->ofx python package. It's not particularly 
difficult. For my own solution I integrated it with a python package 
that allows connecting to a keepass database (keepass is a password 
manager) so all the access tokens are saved in keepass. I'll put it in 
github but I'm not sure how useful it will be for other people as I 
tailored it to my own needs.
3) I asked plaid whether it was possible to get access to investment 
accounts with a free developer license, and if not how much that would 
cost. I haven't received an answer yet.
4) There are alternatives to plaid but I'm not sure whether they work 
equally well, or whether they can give you access to investment 
accounts. I can list Quovo, Tiller, MX. All of them tend to be geared 
toward companies, not individuals, like plaid. But it's possible that 
they can be used by individuals. All of the seem to use OAUTH, which I'm 
sure many people will have issues with (because the companies keep 
tokens that give them access to your bank accounts).


J.
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Feature freeze until when?

2020-06-19 Thread Jean Laroche

OK cool, thanks for that.

On 6/19/20 5:17 PM, John Ralls wrote:




On Jun 19, 2020, at 4:03 PM, Jean Laroche  wrote:

I believe we're in feature freeze mode, correct? When can we go back to 
investigating new ideas (or even fixing bugs)?


You can do whatever you want in your own repo and you can make PRs with the 
results, we just won't merge anything that introduces new features, new 
translatable strings, or code that presents a risk of introducing serious new 
bugs until after we release 4.0 on the 28th and merge master into maint 
sometime the week or so after.

At that point small new features can be added to maint, anything involving 
major surgery or compatibility goes on master for incorporation into 5.0, and 
anything in between is a judgement call that the core devs will discuss and 
decide.

I guess I should add that PR reviews right after a major release may depend on 
how unstable that release is. 3.x had serious issues thanks to having to 
migrate to Gtk3 in the 6 months before and it took a year before we were able 
to stop full-time firefighting and think about features.

Regards,
John Ralls


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


[GNC-dev] Feature freeze until when?

2020-06-19 Thread Jean Laroche
I believe we're in feature freeze mode, correct? When can we go back to 
investigating new ideas (or even fixing bugs)?

Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Patelco stopped supporting OFX... other options

2020-06-19 Thread Jean Laroche




On 6/19/20 9:38 AM, John Ralls wrote:

The actual OAUTH implementation begins with 
https://cdn.plaid.com/link/v2/stable/link-initialize.js. I don't really have 
time ATM to reformat and study it, but it supports my initial suspicion that 
they're setting up a man-in-the-middle to obtain an OAUTH token to monitor the 
user's bank account. I wouldn't be comfortable permitting a third party that 
kind of access, and I'll bet that very few of plaid's customers disclose to 
their users that that's what's going on.



Yes, that's also my understanding. They store the tokens, which actually 
give them and anybody who would hack them full read access to your 
account (the tokens do not allow anything else than reading)



It's also apparent that server.py is intended as example code and that plaid 
customers would probably write their own, likely in php running on their web 
servers. It's very simple and could be easily ported to C++ or Scheme. Since it 
appears so far to be a one-time setup step it could live in an assistant that 
would use a webkitgtkwebview for the user to authenticate with the bank. The 
other half of the implementation would live in gnucash/import-export/plaid and 
handle the plaid API interaction and converting the json response into the 
transactions to present to the matcher. A bit of a project.



Yes, I concur with you. Server.py is just an example. But integrating 
all this in GC would be a bit of a project, but I can't seen any serious 
roadblock.



Documentation would have to include strong warnings and disclaimers about the 
third-party involvement and links to plaid's documentation and terms of use as 
well as to the registration page.

Plaid's terms of use are at https://plaid.com/legal/. I don't see anything in 
the Developer TOU that would preclude GnuCash providing the facility outlined 
above; it would be incumbent on every user to obtain the developer credentials 
just like they do for Alphavantage.

Regards,
John Ralls


The *main* issue for me is that you can't get investment data. The free 
account access only provide transactions for regular bank accounts. So 
I'm really not sure it's worth the effort to integrate this in GC, honestly.

Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Patelco stopped supporting OFX... other options

2020-06-18 Thread Jean Laroche
The server code clearly mentions OAUTH. Let me know what you can 
determined from the server code if you find something interesting...

J.

On 6/18/20 9:51 AM, Derek Atkins wrote:

This is interesting. It sounds like OAUTH, where the mini-webserver
redirects to the bank's website for authentication and gets a token back,
but OAUTH tokens are supposed to be single-use and expire. The fact that
neither seems to be the case is a bit worrying. Does plaid provide the
source code for this web server?


That's not always the case.  OAuth has long-lived tokens that can be
refreshed and reused, they are not (always) single-use tokens.  You're
right that it DOES sound like OAuth, but it also sounds like you're
obtaining a client token that can be re-used.


Regards,
John Ralls


-derek


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Patelco stopped supporting OFX... other options

2020-06-18 Thread Jean Laroche

Jean,

This is interesting. It sounds like OAUTH, where the mini-webserver redirects 
to the bank's website for authentication and gets a token back, but OAUTH 
tokens are supposed to be single-use and expire. The fact that neither seems to 
be the case is a bit worrying. Does plaid provide the source code for this web 
server?


Yes they do,
https://github.com/plaid/quickstart/blob/master/python/server.py

Note that I really don't know how long the tokens last, but it can't be 
short lived given how plaid is supposed to work (from reading their docs).

J
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Patelco stopped supporting OFX... other options

2020-06-18 Thread jean laroche

On 6/18/2020 8:49 AM, Fross, Michael wrote:
Thanks Jean for this...might be a great resource for all of us.  It 
would be nice to not have to leverage a webserver on the client side 
and just call the API.  Is that possible?  Might be a lot simpler.  
Then the only real task is converting to OFX or CSV.


Michael



mmm, I'm not sure what you mean by "leverage a webserver on the client 
side". The web server is only there to obtain the access token, and I 
think you only do that once (per bank).


Once you have your access tokens, you only need to make calls to the 
API, so a tiny python app will do that easily, and converting to an OFX 
output is quite easy (there's python support for creating OFX files 
etc). I intend on writing that today or tomorrow and see whether the 
full workflow works as expected.

J.
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Patelco stopped supporting OFX... other options

2020-06-18 Thread jean laroche

Well, I tested plaid last night. https://plaid.com/pricing
It worked without a hitch with my bank (Patelco). It works like this:
- You create an account with plaid and get API keys.
- Do this once:
Using python (in my case, but there are other options) you run a local 
web server on your machine (code provided by plaid) which you can then 
go to using a browser. Using this server you log into your bank and get 
an *access token *for that bank. In my case that required two factor 
authentication (password then an email or text to my phone). I believe 
getting the access_token is a one-time thing, but I'm not sure how long 
that access_token remains valid.
- Back into python, you can make a one line call to the plaid api 
*client.Transactions.get() *passing the access token, start and end 
date, and you get a python dictionary that includes all your accounts at 
that bank, and all the transactions for all accounts between these two 
dates.


In my case, the response was lightning fast and the data seemed right. 
The output returned is a dictionary, so in order to send that to GC, 
you'd need to save that as an OFX or some other format that can be 
imported, which will require a tiny bit of python code.


Apparently, according to plaid's web site, the free API keys allow you 
to have 100 "items", where an item is a "set of credentials at a 
financial institution". The way I read this is you can have up to 100 
simultaneous banks associated with your API keys. That should be more 
than enough!


The way it works, if I'm not mistaken, plaid downloads the data from the 
bank on a regular basis (even if you don't do anything) and when you 
call the API, you don't connect to your bank, but rather you get the 
data that plaid holds. The data includes account numbers, etc, so this 
means that this data is now on plaid's servers, and some of you guys may 
not like that one bit.
Also, one thing I don't know is how long the access_token is valid for. 
I reused the one I got last night this morning, and it worked. I have to 
guess that the access token remains valid for a while.


So it seems to me that this would be a viable solution for me.
Jean


On 6/16/2020 8:08 PM, John Ralls wrote:



On Jun 16, 2020, at 2:23 PM, Jean Laroche  wrote:

People,
In the past week, my credit union (Patelco) retired their OFX server which 
means it's no longer possible to download transactions using OFX. You can still 
do it manually by logging into your account etc, but it's no longer possible to 
use tools like ofxclient, ofxget and probably aqbank as they all rely on the 
same data.
I've contacted them and asked them to reconsider but I'm not holding my breath.
So my question is: What alternative is there?
Are there 3rd party tools, aggregation services that can gather the 
transactions, from which it's possible to download into GC?

At the moment, I'm using selenium (a tool to automate your browser) to do the 
various clicks required to download my transactions, but that's very fragile...
Of course, I can also switch bank.

Jean,

 From 
https://www.patelco.org/-/media/patelco/pdfs/member-support/digital-banking-services/express-web-connect_windows.pdf
 it looks like they switched to OFX Web Connect. Unfortunately that's been the 
trend for the last 10 years, and I imagine that it's an easy sell to the banks 
considering the weak security offered by OFX Direct Connect. That also means 
that switching banks is at best a short-term solution because of that trend: 
The new bank is likely to do the same thing sooner or later.

I think the only really feasible workaround is to reverse-engineer the Web 
Connect authentication. That would mean installing Quicken and setting up and 
using OFX Web Connect while monitoring the traffic with wireshark. 
https://redflagsecurity.net/2019/03/10/decrypting-tls-wireshark/ might be 
helpful for decrypting the authentication traffic with the browser. No doubt 
the quicken connection will also be encrypted so you'll need to find the keys 
for that too to be able to interpret the traffic--and working out the key 
exchange between Quicken and the bank will also be necessary. Frankly I would 
expect a low probability of success without help from a crypto expert.

Regards,
John Ralls



___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Patelco stopped supporting OFX... other options

2020-06-17 Thread jean laroche

On 6/17/2020 5:45 PM, Frank H. Ellenberger wrote:

Is this one off this new Payment Service providers, which caused all the
trouble with Online Banking in the recent year? "Give me your keys and I
will sent your recent financial data whereever you want see them (and a
few oter places)."



I'm not sure what you're referring to, but I'm not 100% sure that I 
understand what plaid is about. I don't think it's intended for 
customers like me, but I'm going to check whether it's possible to use 
their service.

Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Patelco stopped supporting OFX... other options

2020-06-17 Thread jean laroche
I'll make sure to report once I try it. I just got my keys, so I should 
be able to give that a shot pretty soon.

J.


On 6/17/2020 5:17 PM, John Ralls wrote:

Yes, I expect Quicken will eventually succeed in freezing us out.

I can't tell from 10 minutes exploring the Plaid website whether they support 
bank customers retrieving their account transactions. It's also pretty clear 
that they expect to be paid for their services. Their free account is for 
testing and it looks like it croaks after processing 100 items. I can't tell if 
that means downloading 100 transactions, 100 downloads, or something else 
entirely in the context of transaction download. It obviously does mean 
something else in other contexts like processing ACH payments.

Regards,
John Ralls



On Jun 16, 2020, at 8:21 PM, jean laroche  wrote:

Thanks John,
I agree with you than trying to reverse engineer the Web Connect authentication 
is probably not going to happen. So does this mean that in the not-to-distant 
future we'll be left with two choices? Manual download or quicken?

What about plaid? Does anybody have any experience with that? Their list of 
supported institutions include my bank, but I don't know whether they too will 
be locked out. I plan on giving that a shot. https://plaid.com/docs/faq/

J


Jean,

 From 
https://www.patelco.org/-/media/patelco/pdfs/member-support/digital-banking-services/express-web-connect_windows.pdf
 it looks like they switched to OFX Web Connect. Unfortunately that's been the 
trend for the last 10 years, and I imagine that it's an easy sell to the banks 
considering the weak security offered by OFX Direct Connect. That also means 
that switching banks is at best a short-term solution because of that trend: 
The new bank is likely to do the same thing sooner or later.

I think the only really feasible workaround is to reverse-engineer the Web 
Connect authentication. That would mean installing Quicken and setting up and 
using OFX Web Connect while monitoring the traffic with wireshark. 
https://redflagsecurity.net/2019/03/10/decrypting-tls-wireshark/ might be 
helpful for decrypting the authentication traffic with the browser. No doubt 
the quicken connection will also be encrypted so you'll need to find the keys 
for that too to be able to interpret the traffic--and working out the key 
exchange between Quicken and the bank will also be necessary. Frankly I would 
expect a low probability of success without help from a crypto expert.

Regards,
John Ralls



___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Patelco stopped supporting OFX... other options

2020-06-16 Thread jean laroche

Thanks John,
I agree with you than trying to reverse engineer the Web Connect 
authentication is probably not going to happen. So does this mean that 
in the not-to-distant future we'll be left with two choices? Manual 
download or quicken?


What about plaid? Does anybody have any experience with that? Their list 
of supported institutions include my bank, but I don't know whether they 
too will be locked out. I plan on giving that a shot. 
https://plaid.com/docs/faq/


J


Jean,

 From 
https://www.patelco.org/-/media/patelco/pdfs/member-support/digital-banking-services/express-web-connect_windows.pdf
 it looks like they switched to OFX Web Connect. Unfortunately that's been the 
trend for the last 10 years, and I imagine that it's an easy sell to the banks 
considering the weak security offered by OFX Direct Connect. That also means 
that switching banks is at best a short-term solution because of that trend: 
The new bank is likely to do the same thing sooner or later.

I think the only really feasible workaround is to reverse-engineer the Web 
Connect authentication. That would mean installing Quicken and setting up and 
using OFX Web Connect while monitoring the traffic with wireshark. 
https://redflagsecurity.net/2019/03/10/decrypting-tls-wireshark/ might be 
helpful for decrypting the authentication traffic with the browser. No doubt 
the quicken connection will also be encrypted so you'll need to find the keys 
for that too to be able to interpret the traffic--and working out the key 
exchange between Quicken and the bank will also be necessary. Frankly I would 
expect a low probability of success without help from a crypto expert.

Regards,
John Ralls



___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


[GNC-dev] Patelco stopped supporting OFX... other options

2020-06-16 Thread Jean Laroche

People,
In the past week, my credit union (Patelco) retired their OFX server 
which means it's no longer possible to download transactions using OFX. 
You can still do it manually by logging into your account etc, but it's 
no longer possible to use tools like ofxclient, ofxget and probably 
aqbank as they all rely on the same data.
I've contacted them and asked them to reconsider but I'm not holding my 
breath.

So my question is: What alternative is there?
Are there 3rd party tools, aggregation services that can gather the 
transactions, from which it's possible to download into GC?


At the moment, I'm using selenium (a tool to automate your browser) to 
do the various clicks required to download my transactions, but that's 
very fragile...

Of course, I can also switch bank.

Any idea would be welcome at this point.
Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Is there a way to do right-click on mac os???

2020-05-19 Thread Jean Laroche

Thanks a lot for the detailed explanation!
Jean

On 5/19/20 12:16 AM, Jim DeLaHunt wrote:

Jean:

Welcome to GnuCash. I hope you find it helpful. I certainly do. Even 
though ctrl-click on macOS does not work well.


On 2020-05-18 21:30, jeanl wrote:

Guys,
I'm trying GC on macos, and I can't find a way to do a right click. 
Normally

you do right click by Ctrl+click in mac os. But this does not work in GC.
Is that an oversight? Is is just my setup? I'm on Catalina with the 
latest

build.
Jean.



This is a known problem with gnuCash on macOS. In GnuCash 3.0 and 
higher, make a two-finger click to get the context menu.


GTK, which GnuCash uses to make its user interface, does not recognise 
ctrl+click in macOS. See FAQ /How can I get context menus on macOS?/ 
 
. See also bug  for an 
explanation.


Best regards,

   —Jim DeLaHunt, user of gnuCash 3.10 on macOS 10.13.6 High Sierra, 
Vancouver, Canada



___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Transaction matcher, code to detect many-to-one matches?

2020-05-13 Thread jean laroche
> Why is that a bug ? Particularly in the case of cleared splits I 
don't think


You're right, that's not a bug. What's a bug is to allow matching a 
transaction that was previously matched

(i.e., one with online_id). This is now fixed in maint.
j.

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Transaction matcher, code to detect many-to-one matches?

2020-05-07 Thread Jean Laroche

Every two weeks I have a visit to my chiropractor with the same dollar
charge.  The OFX loader always attempts to match to last months and
suppresses loading the new charges (credit card).  I have to manually
force them to load.  Is there a way to build in an "always allow" for
certain repeating transactions?


That's a bug and I will fix it. GC should NOT attempt to match to a 
transaction that already has an online_id (as indicated by the other 
devs above). Once we fix that, you won't run into the issue.

J.
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Transaction matcher, code to detect many-to-one matches?

2020-05-07 Thread Jean Laroche
Yep, I get it now and I agree. It's a current bug that the matching does 
not disregard transactions that have online-id.


On 5/7/20 8:56 AM, John Ralls wrote:




On May 6, 2020, at 9:46 PM, jeanl  wrote:

What about this question?

On a related note, is it expected that an already-cleared transactions
should appear in the list of matches, if the "Enable update match action"
option isn't on? It seems that it shouldn't but maybe I don't quite
understand the match logic...


Uh, what question?

IMO clearing/reconciling and download matching are somewhat orthogonal at least 
for most OFX imports because of the FITID. When an import includes FITID fields 
then all splits without an online-id are legitimate candidates for matching. In 
the absence of FITID information I suppose that cleared or reconciled splits 
might reasonably be rejected, but if we were to adopt a scoring system as Chris 
suggests then perhaps being cleared or reconciled could be a score reduction 
rather than an outright exclusion.

Regards,
John Ralls


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Transaction matcher, code to detect many-to-one matches?

2020-05-07 Thread jean laroche
I fully agree that it's non trivial. It's a combinatorial problem in 
theory, to find the match that gives the highest overall score.
But this is academic musing! In practice, we're not faced with 
complicated types of scenario and the matcher only has to give a "good" 
solution, not necessarily the best.


But in any case, it should definitely NOT offer to match all OFX to the 
same account transaction!

That's just a bug.
Also, it should not try to match an OFX transaction to an already 
cleared, or reconciled transaction.

That's also a bug.

Jean


On 5/7/2020 2:20 AM, Christopher Lam wrote:

It's very non-trivial. Consider simplified examples:

OFX
02/01/20 DESC $25
04/01/20 DESC $25
06/01/20 DESC $25

Account
01/01/20 DESC $25
03/01/20 DESC $25
03/01/20 DESC $25
05/01/20 DESC $29

They all could match each other. There's always a score that exists 
between any OFX-split and Account-split. eg the first splits will have 
a high score, and the last lines will have a low score due to the 
amount discrepancy. The automatcher should prepare a match list that 
maximises the "good" matches e.g. 02/01/20(OFX) to 01/01/20(account), 
and does not attempt matches below an arbitrary threshold e.g. 
04/01/20(OFX) to 05/01/20(account).


The answer will lie somewhere in 
https://en.wikipedia.org/wiki/Matching_(graph_theory) 



C

On Thu, 7 May 2020, 12:46 pm jeanl, > wrote:


What about this question?

On a related note, is it expected that an already-cleared transactions
should appear in the list of matches, if the "Enable update match
action"
option isn't on? It seems that it shouldn't but maybe I don't quite
understand the match logic...

Jean



--
Sent from:
http://gnucash.1415818.n4.nabble.com/GnuCash-Dev-f1435356.html
___
gnucash-devel mailing list
gnucash-devel@gnucash.org 
https://lists.gnucash.org/mailman/listinfo/gnucash-devel



___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Transaction matcher, code to detect many-to-one matches?

2020-05-06 Thread Jean Laroche

It occurs to me that perhaps matching should be separated into two separate 
dialogs, perhaps wrapped in an assistant: The first one would match 
already-entered transactions and the second would run the account matcher on 
the remaining unmatched ones. That would simplify both the UI and the matching 
code. Getting something like that done in time for 4.0 isn't likely, though.



This is still non trivial, though. "The first one would match 
already-entered transactions": If you mean: go through entered 
transactions and match to imported ones, this also needs some heuristics 
so the matcher would have to be involved. Or perhaps you means something 
else.


I don't think this can be fixed for 4.0 either. The fix isn't trivial.

On a related note, is it expected that an already-cleared transactions 
should appear in the list of matches, if the "Enable update match 
action" option isn't on? It seems that it shouldn't but maybe I don't 
quite understand the match logic...


Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Confused about where gnc-warnings.h is

2020-05-03 Thread jean laroche

mmm, I'm not very familiar with CMakeFiles.txt

But I'm guessing that this is what creates the file in question?

add_custom_command(

OUTPUT ${GNC_WARNINGS_H}

DEPENDS ${WARNINGS_SCHEMA} make-gnc-warnings-h.xsl

COMMAND

${LIBXSLT_XSLTPROC_EXECUTABLE} -o ${GNC_WARNINGS_H} 
${CMAKE_CURRENT_SOURCE_DIR}/make-gnc-warnings-h.xsl ${WARNINGS_SCHEMA}


)

Thanks for the info!
J.
On 5/3/2020 11:36 AM, John Ralls wrote:



On May 3, 2020, at 10:24 AM, jeanl  wrote:

Devs, can you explain this to me? I'm completely confused about it.
Where is *gnc-warnings.h* supposed to be?
On my system it's here:

build_xcode/gnucash/gnome-utils/gnc-warnings.h

But build_xcode is generated, and not under git. I can't find it anywhere in
the src tree... So I really don't understand what's going on? I don't seem
to have deleted it as git does not say so.

So, is that a file that's automatically generated?
I see this in git:
gnucash/gnome-utils/make-gnc-warnings-h.xsl
Is that how gnc-warnings.h is generated? Based on
gnucash/gschemas/org.gnucash.warnings.gschema.xml.in?


https://github.com/Gnucash/gnucash/blob/maint/gnucash/gnome-utils/CMakeLists.txt#L11

Regards,
John Ralls




___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Porting the Tutorial & Concepts Guide to ReadTheDocs.org

2020-04-24 Thread Jean Laroche

holy crap, this looks really good visually!

On 4/24/20 3:13 PM, Rob Gowin wrote:

Got the itch to play around with GnuCash’s documentation tooling, file format, etc. 
I’m an AsciiDoc fan, but like the docs I read on ReadTheDocs.org 
, which uses reStructuredText.

So, got out ‘pandoc’ to convert the T&C Guide (English only) from DocBook  to 
RST, did a little scripting and here is the result:

https://gnucash-docs-rst.readthedocs.io/en/latest/index.html 


I’d say it’s appearance is a bit improved over the existing online docs.. :-)

I haven’t examined every chapter in detail, but I think this is pretty good for 
a first attempt at the conversion, which is 99% automated. The only thing done 
by hand is the intro page, which is ch_oview.rst with some markup for the table 
of contents. Speaking of which, the TOC for the Appendices isn’t done 
correctly, but should be straightforward to fix. I’m not 100% sure all the 
table formatting is correct.

One nice thing about using ReadTheDocs is that the book looks good on mobile. 
Give it a try.

Also, ReadTheDocs automatically generates PDF and EPUB versions. Click on the 
down arrow at the bottom near “v: latest” to pop up a menu to download these 
formats. They look pretty decent.

Comments welcome.

Rob


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Can a module call a function from another module?

2020-04-18 Thread jean laroche
Thanks for all the background, I understand it a lot better now. Indeed, 
I've noticed the intermingled UI/logic code in places, and I agree 
that's not good.
What I want to try is launch the reconcile from the import, exactly like 
aqbanking, so that shouldn't be a problem. No specific implementation 
function.

Jean


On 4/18/2020 12:02 PM, John Ralls wrote:

One other consideration: The dependency should make sense architecturally: A 
dependency on code in libgnucash/engine nearly always makes sense; a dependency 
in the register on a function in import/export does not. That doesn't mean that 
you should copy-and-paste the code instead, it means that the code should be 
extracted from import/export and moved somewhere that does make sense. The 
logical place for GUI code is gnome-utils while business logic code belongs in 
libgnucash/engine--and note that there is a *lot* of business logic code that 
has gotten intermingled with GUI code and needs to be refactored out. It's a 
major maintenance headache because it often means that the same business logic 
is implemented in more than one place, often with subtle differences.

Whether that's the case for your window-reconcile.c example depends on what you 
need to do: If you want to launch the reconcile window from the OFX importer 
the way AQBanking does, no problem. If you need some implementation function in 
window-reconcile.c then it strongly suggests that that function is of more 
general use than just the reconcile window and probably belongs somewhere else.

Regards,
John Ralls



On Apr 18, 2020, at 5:29 AM, Geert Janssens  wrote:

First off, modules are mostly on the way out. I have been working on removing 
most uses of
those and plan to eliminate even more. The gnc_module code itself will remain 
until we have a
better alternative.

Other than that, yes, you are allowed to include headers from other "modules". 
Or more
generally from other compile units (the objects defined with add_library or 
add_object). There
are other restrictions though:

1. you may have to add the proper include and library directories to the 
compile unit's
CMakeLists.txt file. Without this the compiler won't find the header file (and 
later the library to
link to)

2. In doing so you should be careful not to introduce circular dependencies. 
That is if unit A
already depends on unit B, you can't make unit B also depend unit A.

3. reconcile-window.h is a C header file, while gnc-ofx-import.cpp is a C++ 
source file. You may
have to include it inside an 'extern "C"' block.

You didn't provide any details as to what errors you got, so at this point it's 
hard to tell what
exactly went wrong.

Regards,

Geert

Op zaterdag 18 april 2020 07:29:15 CEST schreef jeanl:

Devs, I have a question to which I can't find an answer. It is possible for
a function from a module (say import-ofx) to call a function from another
module (declared in "reconcile-window.h" for example).
I'm not able to include reconcile-window.h from gnc-ofx-import.cpp , I
assume the build isn't setup to include the right headers.
But perhaps this is by design and a module isn't supposed to be able to call
another one. In that case, how can we make it so a function from a certain
module is followed by a call to a function from a different module
automatically?
J.



--
Sent from: http://gnucash.1415818.n4.nabble.com/GnuCash-Dev-f1435356.html
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Debugging for Bug 797236 g_closure_invoke problem

2020-03-31 Thread jean laroche
I don't have an idea for you but in my experience trying to follow the 
gtk calls leads nowhere.
You have to see how the path gets set in the calls where it's not NULL 
(by going up the stack) and see why that's not the case when it's NULL.


J.


On 3/31/2020 9:29 PM, Chris Good wrote:

Hi Devs,

  


I'd appreciate some help if possible please.

  


In maint, in src/gnucash/gnome/reconcile-view.c
gnc_reconcile_view_refresh(), now:

  


void

gnc_reconcile_view_refresh (GNCReconcileView *view)

{

 GNCQueryView *qview;

 GtkTreePath *cursor_path=NULL;

 GtkTreeViewColumn *cursor_col;

  


 g_print("Start reconcile-view.c gnc_reconcile_view_refresh()\n");

 g_return_if_fail (view != NULL);

 g_return_if_fail (GNC_IS_RECONCILE_VIEW (view));

  


 qview = GNC_QUERY_VIEW (view);

 gtk_tree_view_get_cursor (GTK_TREE_VIEW (qview), &cursor_path,
&cursor_col);

 gnc_query_view_refresh (qview);

 if (cursor_path)

 {

g_print("reconcile-view.c gnc_reconcile_view_refresh() "

   "calling gtk_tree_view_scroll_to_cell()\n");

 gtk_tree_view_scroll_to_cell ( GTK_TREE_VIEW (qview), cursor_path,
cursor_col, FALSE, 0.0, 0.0);

gtk_tree_path_free(cursor_path);

 }

  


I added the call to gtk_tree_view_get_cursor () and the call to
gtk_tree_view_scroll_to_cell()

and this fixes the problem of the Reconcile window panel of debit splits
being repositioned to the first split

after using the Open button to open the register to add a new transaction.

  


However, it doesn't fix the problem if I use the Balance button to
automatically add a balancing transaction.

I'm trying to debug in Eclipse using the Balance button, because I can see
that refresh_handler() is also being called (same as using the Open button)
but the problem still exists when using the Balance button.

  


refresh_handler() calls recnRefresh() calls gnc_reconcile_view_refresh()

  


By adding breakpoints in refresh_handler and gnc_reconcile_view_refresh I
can see that gnc_reconcile_view_refresh() is being called 8 times (4 times
for each of the debits + credits panel) and only on the 2nd call for the
debit panel is cursor_path not NULL. I don't understand why only 1 of the 4
calls for the debit panel has a cursor path?

Up until now, the panel still displays on the 2nd page of splits where it
was before the Balance button was used.

  


Resuming after the 8th call, the debugger gets: No source available for
"g_closure_invoke() at (address)"

and I can only Resume.

  


I guess g_closure_invoke() is a gtk3 function and I need to install the gtk3
dev packages which are not stripped? How do I integrate them into my Eclipse
build?

  


If I Resume from here, the debits panel is now incorrectly updated to show
the top of the debits splits.

  


On another topic, I followed the instructions at
https://wiki.gnucash.org/wiki/Eclipse (thanks for these!) but don't see a
way to do a 'ninja install' from Eclipse. Is there a way or is that not
needed because we can either run or debug from Eclipse.

  


Regards,

Chris Good

  


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] [GNC] GnuCash 3.9 Released

2020-03-29 Thread jean laroche

Kudos and thanks to all!
J


On 3/29/2020 1:23 PM, Chris Graves wrote:

Devs,

Once again, thanks for all the hard work on this release.  Lots of squashed 
bugs.

Chris
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Ideas for account type-ahead modification

2020-03-26 Thread jean laroche

I'm the one to usually bring this up, so I'll do so again:


Before adding options always think very hard for ways to avoid that.

I understand you don't want to replace the old behavior with your new 
behavior unconditionally. I agree.


However I also think they are not necessarily mutually exclusive. If 
you start from the existing situation and adapt it slightly, I think 
both use cases can be served in one single search method.




I agree 100%. I originally tried to combine the two searches as that's 
clearly the best option for all users, and at the time realized that 
this would require a large number of changes. But that was before I knew 
the code very well, so I'm going to go back and revisit it.

Thanks for prodding me.
Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Advice on what to look at next

2020-03-23 Thread Jean Laroche
How far along are you on 4.0? Is the planned 28 June 2020 release 
reasonable?

J.

On 3/23/20 2:12 PM, Christopher Lam wrote:
For a /very/ high level overview, see the design goals at 
https://wiki.gnucash.org/wiki/Release_Schedule

Or, write tests and refactor the existing hacks.
Or, feel free to squash bugs at leisure!

On Mon, 23 Mar 2020 at 17:16, jeanl > wrote:


Devs,
Can you point me to something you think needs to be looked at sooner
rather
than later in the gnucash code? I find that bugzilla does not give a
good
image of bug priority, but I'm sure you guys have a good idea of
what needs
to be fixed next. I wouldn't mind helping with that.
Thanks,
Jean



--
Sent from:
http://gnucash.1415818.n4.nabble.com/GnuCash-Dev-f1435356.html
___
gnucash-devel mailing list
gnucash-devel@gnucash.org 
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Unable to run test on mac os.

2020-03-23 Thread Jean Laroche
Yes, I wiped everything out, changed common/test-core/CMakeLists.txt and 
reran the cmake command that creates the xcode project. LMK if I can 
provide more testing. I'm definitely not familiar with cmake (only 
started using it at work in the past couple months).

J.

On 3/23/20 9:34 AM, John Ralls wrote:

Jean,

At this point the build messages from libgtest.a are more interesting because 
that's what we're trying to coerce Xcode into putting somewhere different.

I trust that you started fresh from an empty build dir after changing 
common/test-core/CMakeLists.txt.

Regards,
John Ralls


On Mar 22, 2020, at 4:04 PM, jean  wrote:

I tried your suggestion, modified common/test-core/CMakeLists.txt (in the src 
directory I assume). But I'm still getting the same issue trying to build check.


Showing Recent Messages
Ld /Users/Shari/gnucash-stable/build_xcode/bin/test-gnc-rational normal x86_64
cd /Users/Shari/gnucash-stable/src/gnucash-git
export MACOSX_DEPLOYMENT_TARGET=10.14
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
 -arch x86_64 -isysroot 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk
 -L/Users/Shari/gnucash-stable/build_xcode/bin 
-F/Users/Shari/gnucash-stable/build_xcode/bin -filelist 
/Users/Shari/gnucash-stable/build_xcode/libgnucash/engine/test/gnucash.build/Debug/test-gnc-rational.build/Objects-normal/x86_64/test-gnc-rational.LinkFileList
 -mmacosx-version-min=10.14 -Xlinker -object_path_lto -Xlinker 
/Users/Shari/gnucash-stable/build_xcode/libgnucash/engine/test/gnucash.build/Debug/test-gnc-rational.build/Objects-normal/x86_64/test-gnc-rational_lto.o
 -Xlinker -no_deduplicate -L/usr/local/opt/openblas/lib -Wl,-search_paths_first 
-Wl,-headerpad_max_install_names -L/Users/Shari/gnucash-stable/lib -lintl 
-lglib-2.0 -L/Users/Shari/gnucash-stable/lib -lgobject-2.0 -lintl -lglib-2.0 
-L/Users/Shari/gnucash-stable/lib -lgmodule-2.0 -lintl -lglib-2.0 -L/U

sers/Shari/gnucash-stable/lib -lgthread-2.0 -lintl -lglib-2.0 
-L/Users/Shari/gnucash-stable/lib -licui18n -licuuc -licudata 
/Users/Shari/gnucash-stable/lib/libboost_date_time.dylib 
/Users/Shari/gnucash-stable/lib/libboost_regex.dylib 
/Users/Shari/gnucash-stable/lib/libboost_locale.dylib 
/Users/Shari/gnucash-stable/lib/libboost_filesystem.dylib 
/Users/Shari/gnucash-stable/lib/libboost_system.dylib 
/Users/Shari/gnucash-stable/build_xcode/common/test-core/libgtest.a 
-lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -licui18n -licuuc -licudata 
/Users/Shari/gnucash-stable/lib/libboost_date_time.dylib 
/Users/Shari/gnucash-stable/lib/libboost_regex.dylib 
/Users/Shari/gnucash-stable/lib/libboost_locale.dylib 
/Users/Shari/gnucash-stable/lib/libboost_filesystem.dylib 
/Users/Shari/gnucash-stable/lib/libboost_system.dylib 
/Users/Shari/gnucash-stable/build_xcode/common/test-core/libgtest.a -Xlinker 
-dependency_info -Xlinker 
/Users/Shari/gnucash-stable/build_xcode/libgnucash/engine/test/gnucash.build/Deb
ug/test-gnc-rational.build/Objects-normal/x86_64/test-gnc-rational_dependency_info.dat
 -o /Users/Shari/gnucash-stable/build_xcode/bin/test-gnc-rational


clang: error: no such file or directory: 
'/Users/Shari/gnucash-stable/build_xcode/common/test-core/libgtest.a'
clang: error: no such file or directory: 
'/Users/Shari/gnucash-stable/build_xcode/common/test-core/libgtest.a'



On 3/22/20 3:25 PM, John Ralls wrote:

On Mar 22, 2020, at 2:48 PM, jean  wrote:

clang: error: no such file or directory: 
'/Users/Shari/gnucash-stable/build_xcode/common/test-core/libgtest.a'
clang: error: no such file or directory: 
'/Users/Shari/gnucash-stable/build_xcode/common/test-core/libgtest.a'

The missing .a files are here:
./common/test-core/Debug/libgtest.a

I.e. xcode expects common/test-core/libgtest.a but instead I have 
./common/test-core/Debug/libgtest.a

That's because Xcode lets you select the build type from the GUI and of course 
Cmake doesn't know about that at configure time so it can't adjust the 
locations. I'm actually a bit surprised that this is the only thing that broke.
This stackoverflow seems to address the problem: 
https://stackoverflow.com/questions/18393813/how-do-i-suppress-xcode-from-generating-a-folder-named-after-the-build-configura
Since it's just ligbtest maybe just tweaking that one target will work. Try 
adding to common/test-core/CMakeLists.txt at line 80
 if (CMAKE_GENERATOR STREQUAL Xcode)
set_target_properties(gtest PROPERTIES
  ARCHIVE_OUTPUT_DIRECTORY_DEBUG ${CMAKE_BINARY_DIR}
  ARCHIVE_OUTPUT_DIRECTORY_RELEASE 
${CMAKE_BINARY_DIR}
  )
 endif()
and re-run cmake.
Regards,
John Ralls



___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] How does a plugin communicate to the main window?

2020-03-16 Thread Jean Laroche

You should reconsider your "normal workflow". That way Bayes will never
learn the right associations.
That's true. Then we have to make it a lot easier to pick the right 
account... Currently, it's quite broken on windows (and apparently 
catalina) if you just start typing the account name, so you have to use 
Ctrl-i, which is itself a bit clunky

J.
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


[GNC-dev] How does a plugin communicate to the main window?

2020-03-16 Thread Jean Laroche
Guys, I'm trying to see whether it would be possible to make the 
relevant account open after an OFX import, from lots of comments (and my 
own case) it's a normal workflow (import from OFX, then go into account 
to correct target accounts etc).
Partly that's because it's not easy to correct the account from the OFX 
import window (you have to rely on the gtk account search-by-typing, 
which does not work if the hierarchy isn't completely expanded). So 
people resort to opening the target account as a second step.


In any case, I can't find a way to do it, nor can I find an example of 
how it's done. When the OFX plugin is triggered, it's triggered from a 
menu, but I can't figure out a way for something to happen after the 
import is done.


In summary: how can a plugin tell the main window to perform an action? 
A hint or an example of it would be greatly welcome...


Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Noob: setup and build master

2020-03-13 Thread Jean Laroche
Thanks John, that did it. I had to interrupt and wipe the directory but 
after that, the build completed successfully!

Thanks a bunch!
Jean

On 3/13/20 3:58 PM, John Ralls wrote:

Jean,

Indeed, I mixed up perl and python syntax. The line should be
module_cmakeargs['boost'] = '-DCMAKE_CXX_FLAGS="' + os.environ['CXXFLAGS'] + ' 
-std=c++17"'

Note the single quotes around the python arguments and the double quotes 
setting off the string value passed to -DCMAKE_CXX_FLAGS.

Regards,
John Ralls



On Mar 13, 2020, at 12:13 PM, Jean Laroche  wrote:

John
Something must be wrong with the syntax you suggested. Since I don't know my 
jhbuild at all, I don't know how to fix this.


Traceback (most recent call last):
  File "/Users/jlaroche/Source/jhbuild/jhbuild/config.py", line 194, in load
execfile(filename, config)
  File "/Users/jlaroche/.config/jhbuildrc", line 462, in 
execfile(_user_rc)
  File "/Users/jlaroche/.config/jhbuildrc-custom", line 54
module_cmakeargs["boost"] = "-DCMAKE_CXX_FLAGS=" . os.environ["CXXFLAGS"] . " 
-std=c++17"
^
SyntaxError: invalid syntax
jhbuild: could not load config file


On 3/13/20 11:49 AM, John Ralls wrote:

On Mar 13, 2020, at 11:20 AM, Jean Laroche  wrote:


It's because C++17 is set in GnuCash's CMakeLists.txt and boost defaults to 
building for C++14. I'd forgotten that I'd pushed that to the public master 
branch. I think the simplest way to rebuild it for you would be to add
module_cmakeargs['boost'] = '-DCMAKE_CXX_FLAGS=' . os.environ['CXXFLAGS'] . 
' -std=c++17'
to jhbuildrc-custom then run
jhbuild buildone --force --clean boost
If that doesn't work on its own try doing the buildone again but stop it and 
tell it to wipe the directory and start over.


John, is this going to work with xcode?
Also, will that affect my maint branch (I have two separate build dirs for 
maint and master)?
Jean

Jean,
If you mean can you do that in Xcode, no you can't.
Boost needs to be built to the highest standard you want to use, so it will 
still link with maint, which is built to C++11.
Regards,
John Ralls



___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Noob: setup and build master

2020-03-13 Thread Jean Laroche

John
Something must be wrong with the syntax you suggested. Since I don't 
know my jhbuild at all, I don't know how to fix this.



Traceback (most recent call last):
  File "/Users/jlaroche/Source/jhbuild/jhbuild/config.py", line 194, in 
load

execfile(filename, config)
  File "/Users/jlaroche/.config/jhbuildrc", line 462, in 
execfile(_user_rc)
  File "/Users/jlaroche/.config/jhbuildrc-custom", line 54
module_cmakeargs["boost"] = "-DCMAKE_CXX_FLAGS=" . 
os.environ["CXXFLAGS"] . " -std=c++17"


^
SyntaxError: invalid syntax
jhbuild: could not load config file


On 3/13/20 11:49 AM, John Ralls wrote:




On Mar 13, 2020, at 11:20 AM, Jean Laroche  wrote:


It's because C++17 is set in GnuCash's CMakeLists.txt and boost defaults to 
building for C++14. I'd forgotten that I'd pushed that to the public master 
branch. I think the simplest way to rebuild it for you would be to add
module_cmakeargs['boost'] = '-DCMAKE_CXX_FLAGS=' . os.environ['CXXFLAGS'] . 
' -std=c++17'
to jhbuildrc-custom then run
jhbuild buildone --force --clean boost
If that doesn't work on its own try doing the buildone again but stop it and 
tell it to wipe the directory and start over.


John, is this going to work with xcode?
Also, will that affect my maint branch (I have two separate build dirs for 
maint and master)?
Jean


Jean,

If you mean can you do that in Xcode, no you can't.

Boost needs to be built to the highest standard you want to use, so it will 
still link with maint, which is built to C++11.

Regards,
John Ralls


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Noob: setup and build master

2020-03-13 Thread Jean Laroche

It's because C++17 is set in GnuCash's CMakeLists.txt and boost defaults to 
building for C++14. I'd forgotten that I'd pushed that to the public master 
branch. I think the simplest way to rebuild it for you would be to add
module_cmakeargs['boost'] = '-DCMAKE_CXX_FLAGS=' . os.environ['CXXFLAGS'] . 
' -std=c++17'
to jhbuildrc-custom then run
jhbuild buildone --force --clean boost

If that doesn't work on its own try doing the buildone again but stop it and 
tell it to wipe the directory and start over.


John, is this going to work with xcode?
Also, will that affect my maint branch (I have two separate build dirs 
for maint and master)?

Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Ideas for account type-ahead modification

2020-03-12 Thread Jean Laroche
Well it's finally working. I cleaned everything and rebuilt everything, 
and things are OK now. I should have started with that. :(

Thanks for the help though!

On 3/12/20 3:52 PM, John Ralls wrote:




On Mar 12, 2020, at 3:37 PM, Jean Laroche  wrote:


you saw
https://wiki.gnucash.org/wiki/Adding_Preferences?


Well, it looks like this is out of date.
For example src/gnome-utils/gtkbuilder/dialog-preferences.glade no longer 
exists.
I can only see:
./gnucash/gtkbuilder/dialog-preferences.glade
./share/gnucash/gtkbuilder/dialog-preferences.glade

Following the instructions as best as I could, I'm still unable to make it work. I'm not 
sure what to do next. I'm replicating exactly what is done for the 
"enter-moves-to-end" preference, yet the pref does not work.
Where is the actual preference file located? (i.e., where gnucash saves its 
pref for the next time it opens). I haven't been able to locate it, despite the 
indications found in the wiki...


Yes, it's a bit out of date. The source file is 
gnucash-git/gnucash/gtkbuilder/dialog-preferences.glade and it's moved to 
build_dir/share/gnucash/gtkbuilder/dialog-preferences.glade by make/ninja and 
installed in $PREFIX/share/gnucash/gtkbuilder/dialog-preferences.glade.

On MacOS application preferences are written to plists in 
~/Library/Preferences. Ours is named org.gnucash.Gnucash.plist.

Regards,
John Ralls


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Ideas for account type-ahead modification

2020-03-12 Thread Jean Laroche

org.gnucash.gnucash.plist in fact (no G)
Well, I can confirm that despite all my efforts, my pref is absent from 
that file. Does this need to be removed for a pref to be added? (I'm 
guessing not). I'm at a loss to find out what's going on...



On 3/12/20 3:52 PM, John Ralls wrote:




On Mar 12, 2020, at 3:37 PM, Jean Laroche  wrote:


you saw
https://wiki.gnucash.org/wiki/Adding_Preferences?


Well, it looks like this is out of date.
For example src/gnome-utils/gtkbuilder/dialog-preferences.glade no longer 
exists.
I can only see:
./gnucash/gtkbuilder/dialog-preferences.glade
./share/gnucash/gtkbuilder/dialog-preferences.glade

Following the instructions as best as I could, I'm still unable to make it work. I'm not 
sure what to do next. I'm replicating exactly what is done for the 
"enter-moves-to-end" preference, yet the pref does not work.
Where is the actual preference file located? (i.e., where gnucash saves its 
pref for the next time it opens). I haven't been able to locate it, despite the 
indications found in the wiki...


Yes, it's a bit out of date. The source file is 
gnucash-git/gnucash/gtkbuilder/dialog-preferences.glade and it's moved to 
build_dir/share/gnucash/gtkbuilder/dialog-preferences.glade by make/ninja and 
installed in $PREFIX/share/gnucash/gtkbuilder/dialog-preferences.glade.

On MacOS application preferences are written to plists in 
~/Library/Preferences. Ours is named org.gnucash.Gnucash.plist.

Regards,
John Ralls


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Ideas for account type-ahead modification

2020-03-12 Thread Jean Laroche

you saw
https://wiki.gnucash.org/wiki/Adding_Preferences?


Well, it looks like this is out of date.
For example src/gnome-utils/gtkbuilder/dialog-preferences.glade no 
longer exists.

I can only see:
./gnucash/gtkbuilder/dialog-preferences.glade
./share/gnucash/gtkbuilder/dialog-preferences.glade

Following the instructions as best as I could, I'm still unable to make 
it work. I'm not sure what to do next. I'm replicating exactly what is 
done for the "enter-moves-to-end" preference, yet the pref does not work.
Where is the actual preference file located? (i.e., where gnucash saves 
its pref for the next time it opens). I haven't been able to locate it, 
despite the indications found in the wiki...


J.
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Noob: setup and build master

2020-03-12 Thread Jean Laroche

Not having luck building master.
I followed John's instructions.
- I have no libgnc or libgnucash in $PREFIX/lib
- I created the xcode project using cmake -G Xcode -D 
CMAKE_INSTALL_PREFIX=$PREFIX -D GTEST_ROOT=$SRCROOT/googletest 
$SRCROOT/gnucash-git


But the build fails with this error:

Ld 
/Users/jlaroche/gnucash-stable/build_xcode_master/lib/libgnc-core-utils.dylib 
normal x86_64

cd /Users/jlaroche/gnucash-stable/src/gnucash-git
export MACOSX_DEPLOYMENT_TARGET=10.13

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ 
-arch x86_64 -dynamiclib -isysroot 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk 
-L/Users/jlaroche/gnucash-stable/build_xcode_master/lib 
-F/Users/jlaroche/gnucash-stable/build_xcode_master/lib -filelist 
/Users/jlaroche/gnucash-stable/build_xcode_master/libgnucash/core-utils/gnucash.build/Debug/gnc-core-utils.build/Objects-normal/x86_64/gnc-core-utils.LinkFileList 
-install_name @rpath/libgnc-core-utils.dylib -mmacosx-version-min=10.13 
-Xlinker -object_path_lto -Xlinker 
/Users/jlaroche/gnucash-stable/build_xcode_master/libgnucash/core-utils/gnucash.build/Debug/gnc-core-utils.build/Objects-normal/x86_64/gnc-core-utils_lto.o 
-Xlinker -no_deduplicate -fobjc-link-runtime -dynamiclib 
-Wl,-headerpad_max_install_names 
/Users/jlaroche/gnucash-stable/lib/libboost_date_time.dylib 
/Users/jlaroche/gnucash-stable/lib/libboost_regex.dylib 
/Users/jlaroche/gnucash-stable/lib/libboost_locale.dylib 
/Users/jlaroche/gnucash-stable/lib/libboost_filesystem.dylib 
/Users/jlaroche/gnucash-stable/lib/libboost_system.dylib 
-L/Users/jlaroche/gnucash-stable/lib -lintl -lglib-2.0 
-L/Users/jlaroche/gnucash-stable/lib -lgobject-2.0 -lintl -lglib-2.0 
-L/Users/jlaroche/gnucash-stable/lib -lgtkmacintegration-gtk3 -lgtk-3 
-lgdk-3 -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 
-lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lintl 
-lglib-2.0 -lobjc -framework Cocoa -framework Security -framework Carbon 
-lgtkmacintegration-gtk3 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 
-lharfbuzz -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 
-lobjc -framework Cocoa -framework Security -framework Carbon -Xlinker 
-dependency_info -Xlinker 
/Users/jlaroche/gnucash-stable/build_xcode_master/libgnucash/core-utils/gnucash.build/Debug/gnc-core-utils.build/Objects-normal/x86_64/gnc-core-utils_dependency_info.dat 
-o 
/Users/jlaroche/gnucash-stable/build_xcode_master/lib/libgnc-core-utils.dylib


Undefined symbols for architecture x86_64:
  "boost::system::detail::system_category_instance", referenced from:
  boost::system::system_category() in gnc-filepath-utils.o
  "boost::system::detail::generic_category_instance", referenced from:
  boost::system::generic_category() in gnc-filepath-utils.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see 
invocation)


Does this ring a bell for anyone?
Jean

On 3/11/20 8:13 PM, John Ralls wrote:




On Mar 11, 2020, at 2:35 PM, jeanl  wrote:

Hi People,
Thanks to John I was able to setup and build maint on my mac. I'm now trying
to setup and build master which I've pulled into src/gnucash-git

Can someone clarify these points:
- I imagine I need to edit jhbuildrc-cusom and change the branch to master.
Do I do that before any of the following?
- Do I need to re-run jhbuild bootstrap?
- Do I need to re-run jhbuild bootstrap-gtk-osx?
- Do I need to re-run jhbuild build? (assuming yes).



Jean,

You only need to reconfigure and rebuild gnucash. At this point all dependencies are the same 
between master and maint. I do that in a jhbuild shell because as I said elsewhere I build from 
the terminal prompt, so I want to make an edit and then run ninja && ninja check (or 
more often ninja test-target && bin/test-program, TDD and all that).

There's one cmake change between the two branches. In maint you set 
-DGTEST_ROOT=path/to/googletest/googletest -DGMOCK_ROOT=path/to/googletest/googlemock 
and in master you set only -DGTEST_ROOT=path/to/googletest. It works best to have a 
separate build directory and rm -rf * && cmake ... to switch branches.

One other thing, make sure you uninstall GnuCash beforehand, the maint and master 
libraries are incompatible and Guile will dlopen the installed libraries in 
preference to the ones in the build directory. ninja uninstall doesn't always 
work, so if it fails try xargs rm < install_manifest.txt. If *that* fails the 
`rm -r $PREFIX/lib/libgnc* $PREFIX/lib/gnucash` should be sufficient.

Regards,
John Ralls



___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Ideas for account type-ahead modification

2020-03-12 Thread jean laroche
Ah crap no, I had not seen that! I looked though, I'm not sure how I 
missed that. Somehow I missed the wiki. Thanks a bunch.


I will update the wiki, but to be fair, it's already pretty good. The 
issues I ran into were real issues that were fixed by John so there 
isn't that much to add to the wiki (except perhaps a few lines 
clarifying what each jhbuild command does, and possibly a paragraph on 
switching branches).

Thanks again!

Jean


On 3/11/2020 11:14 PM, Frank H. Ellenberger wrote:

Jean,

Am 11.03.20 um 22:03 schrieb Jean Laroche:
:

PREFERENCES:
If someone can point me in the right direction for preferences, it would
be great. I essentially replicated the code for "Enter moves to blank
transaction" (by searching all references of the defines for that pref,
and adding the ones needed for the new option) but I must be missing
something because the code says the preference key is invalid. The new
option shows in the preferences, but the rest isn't working.

you saw
https://wiki.gnucash.org/wiki/Adding_Preferences?

BTW, it would be nice, if you would improve the wiki at places, where
you had problems like
https://wiki.gnucash.org/wiki/MacOS/Quartz#Building.

Regards
Frank


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Noob: setup and build master

2020-03-11 Thread jean laroche

Thanks John,
What about building the xcode project, are there differences between the 
cmake command to do that between the two branches?

Jean


On 3/11/2020 8:13 PM, John Ralls wrote:



On Mar 11, 2020, at 2:35 PM, jeanl  wrote:

Hi People,
Thanks to John I was able to setup and build maint on my mac. I'm now trying
to setup and build master which I've pulled into src/gnucash-git

Can someone clarify these points:
- I imagine I need to edit jhbuildrc-cusom and change the branch to master.
Do I do that before any of the following?
- Do I need to re-run jhbuild bootstrap?
- Do I need to re-run jhbuild bootstrap-gtk-osx?
- Do I need to re-run jhbuild build? (assuming yes).


Jean,

You only need to reconfigure and rebuild gnucash. At this point all dependencies are the same 
between master and maint. I do that in a jhbuild shell because as I said elsewhere I build from 
the terminal prompt, so I want to make an edit and then run ninja && ninja check (or 
more often ninja test-target && bin/test-program, TDD and all that).

There's one cmake change between the two branches. In maint you set 
-DGTEST_ROOT=path/to/googletest/googletest -DGMOCK_ROOT=path/to/googletest/googlemock 
and in master you set only -DGTEST_ROOT=path/to/googletest. It works best to have a 
separate build directory and rm -rf * && cmake ... to switch branches.

One other thing, make sure you uninstall GnuCash beforehand, the maint and master 
libraries are incompatible and Guile will dlopen the installed libraries in 
preference to the ones in the build directory. ninja uninstall doesn't always 
work, so if it fails try xargs rm < install_manifest.txt. If *that* fails the 
`rm -r $PREFIX/lib/libgnc* $PREFIX/lib/gnucash` should be sufficient.

Regards,
John Ralls




___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Ideas for account type-ahead modification

2020-03-11 Thread Jean Laroche

People,
I have a version you can test here: 
https://github.com/jeanlaroche/gnucash.git , fix_autocompletion branch.

A couple notes:
- I worked off of maint, which I shouldn't have since this is probably a 
new feature. I'll fix that eventually.

- The feature is fully functional, as far as I can tell.
- I added an option in the preferences to use type-ahead-search 
(register), but at this point, it's not working right (it does not hold, 
so I must be missing some code).
- I tested on accounts with large number of accounts (> 8000), and as 
far as I can tell it works OK. When you start typing there are 
potentially thousands of matching accounts but I only display the first 
30 to avoid making the UI horribly sluggish, I think that's a good 
compromise.


Give that a shot and let me know what you think. The code is not ready 
for a PR as I still have lots of comments that would need to go.


PREFERENCES:
If someone can point me in the right direction for preferences, it would 
be great. I essentially replicated the code for "Enter moves to blank 
transaction" (by searching all references of the defines for that pref, 
and adding the ones needed for the new option) but I must be missing 
something because the code says the preference key is invalid. The new 
option shows in the preferences, but the rest isn't working.




On 3/10/20 11:14 AM, Robert Fewell wrote:

Jean,
That patch was for register2 which is stalled, it has no bearing on the 
current version.


Bob

On Tue, 10 Mar 2020 at 16:53, Frank H. Ellenberger 
mailto:frank.h.ellenber...@gmail.com>> 
wrote:


Jean,

    Am 10.03.20 um 17:41 schrieb Jean Laroche:
 > Frank,
 > I tried reviving this patch, but git patch failed. I recreated
the patch
 > manually (which wasn't very hard given that it contains few
changes) but
 > I don't see any effect (not breakpoint is hit). So I'm wondering
whether
 > this patch is still useful.

I believe, Bob will faster understand, what is happening there.

~Frank


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Ideas for account type-ahead modification

2020-03-10 Thread jean laroche
I have the beginning of a solution for type-ahead. It's functional but 
it does not implement the whole idea.

Here's what I did:
- Made it possible to type and see the pop up select the *first* account 
that match the typed string (in real-time, as you type).
- From then on, if you're happy with the account selected, you do 
arrow-up the arrow-down and the account name appears where you typed.


This works quite well for such a simple modification, but it's not great 
because the pop up still shows *all* the accounts, not just those that 
match the string you inserted. Ideally, the popup should only show the 
accounts that match.
Also, it's currently incompatible with the previous type-ahead model so, 
you'd have to pick between the old and the new, possibly in the 
preferences (not implemented).


But it's a start.
Jean


On 3/10/2020 9:54 AM, David Carlson wrote:
I would like to see account selection by account number capability 
expanded to be able to have some visibility when typing.  Currently we 
need to have a good memory or a cheat sheet by the keyboard.


David Carlson

On Tue, Mar 10, 2020 at 11:48 AM Jean Laroche <mailto:rip...@gmail.com>> wrote:



On 3/10/20 9:23 AM, Adrien Monteleone wrote:
> Can account number entry be part of the solution? (or is that a
separate ball of wax?) I know I’ve seen that asked for as well.
(and would use it myself if it existed) The current work around is
to include the account number in the account name (though it has
its own field) and even then it requires too many key presses to
use properly.

Yes possibly...
___
gnucash-devel mailing list
gnucash-devel@gnucash.org <mailto:gnucash-devel@gnucash.org>
https://lists.gnucash.org/mailman/listinfo/gnucash-devel



--
David Carlson


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Ideas for account type-ahead modification

2020-03-10 Thread Jean Laroche
That patch was for register2 which is stalled, it has no bearing on the 
current version.


Bob


OK Thanks, that makes sense.
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Ideas for account type-ahead modification

2020-03-10 Thread Jean Laroche
I agree, if we implement this (typing by account number) the pop up list 
must show the account numbers as well as the account names, I imagine...


On 3/10/20 9:54 AM, David Carlson wrote:
I would like to see account selection by account number capability 
expanded to be able to have some visibility when typing.  Currently we 
need to have a good memory or a cheat sheet by the keyboard.


David Carlson

On Tue, Mar 10, 2020 at 11:48 AM Jean Laroche <mailto:rip...@gmail.com>> wrote:



On 3/10/20 9:23 AM, Adrien Monteleone wrote:
 > Can account number entry be part of the solution? (or is that a
separate ball of wax?) I know I’ve seen that asked for as well. (and
would use it myself if it existed) The current work around is to
include the account number in the account name (though it has its
own field) and even then it requires too many key presses to use
properly.

Yes possibly...
___
gnucash-devel mailing list
gnucash-devel@gnucash.org <mailto:gnucash-devel@gnucash.org>
https://lists.gnucash.org/mailman/listinfo/gnucash-devel



--
David Carlson

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Ideas for account type-ahead modification

2020-03-10 Thread Jean Laroche


On 3/10/20 9:23 AM, Adrien Monteleone wrote:

Can account number entry be part of the solution? (or is that a separate ball 
of wax?) I know I’ve seen that asked for as well. (and would use it myself if 
it existed) The current work around is to include the account number in the 
account name (though it has its own field) and even then it requires too many 
key presses to use properly.


Yes possibly...
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Ideas for account type-ahead modification

2020-03-10 Thread Jean Laroche

Frank,
I tried reviving this patch, but git patch failed. I recreated the patch 
manually (which wasn't very hard given that it contains few changes) but 
I don't see any effect (not breakpoint is hit). So I'm wondering whether 
this patch is still useful.


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Ideas for account type-ahead modification

2020-03-10 Thread Jean Laroche
Thanks for pointing me to this bug report! I don't know how I missed it. 
I looks like a patch was created a long time ago, commented upon, but 
then nothing was done about it, which is really too bad.



It might be useful for small private acoount herarchies.
But on major business templats with over 1000 accounts it would be
annoying in several aspects:
1. slow down on building the  list,
2. exposing irrelevant parts, example:
Assets:Tax paid:{x %|y %|z %}
Liabilities:Tax collected:{x %|y %|z %}
Expense:Purchases at:{x %|y %|z %}
Income:Sells at:{x %|y %|z %}
which currently is straight forward.


About the slow down, I'm not too sure. Searching through 1000 or 2000 
strings is pretty much instantaneous on current machines, but building 
the drop down list may be far slower.



I would divide the business users in 2 groups:
learned accountants would enter the account code and are not affected,
but oters with some economic knowledge would prefer to enter e.g.
"I:S:x". Will that still be possible?


I concur. A change like that could not be enforced to users who don't 
want/need it. There should be a preference that selects the type of 
completion the user wants, for sure.

I'll take a look at the attached patch and see if it can be improved...
But the fact that there was the beginning of a solution, and that this 
was abandoned is a bit discouraging: the reviewers asked for 
improvements, but in the end instead of a better solution, we got no 
solution at all. That's definitely not ideal.

Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] A little hint for xcode usage (scheme)

2020-03-09 Thread Jean Laroche
I compile with xcode, and run from xcode, yet breakpoints are ignored... 
I'm trying it on a different machine, I'll keep you posted.

J.

On 3/9/20 11:26 AM, chris graves wrote:

Not sure that I can be of much help here, but I'm able to set breakpoints from 
within Xcode but also compiled gnucash with Xcode.  Did you compile gnucash 
with Xcode or jhbuild (not sure that it makes a difference).


On Mar 8, 2020, at 10:23 PM, jean laroche  wrote:

Well, I don't have enough history with Emacs to go back to it after so many 
years! In the meantime, breakpoints are not working in xcode, and that's quite 
annoying. I've looked online for possible reasons for that, but so far no 
results. When it works xcode debugging is quite useful and easy to use, but I'm 
a bit stuck with this... gonna have to investigate some more :( .


On 3/8/2020 9:52 PM, Christopher Lam wrote:

Emacs + magit + ripgrep does all we need...


On Mon, 9 Mar 2020, 11:44 am Mike Alexander,  wrote:


I used to use XEmacs much like John describes, although I did use the
debugging mode in XEmacs.  That was long enough ago that lldb wasn't
around, at least not for what I was working on.  Now I use XCode for
debugging and BBEdit for editing.  They work together pretty well and
XCode's debugging GUI is quite nice.  I remember debugging using address
stops and console switches, so this is a big step up.

 Mike

On 8 Mar 2020, at 23:27, John Ralls wrote:


 From the command line, lldb bin/gnucash

br se -n foo
or you can use the gdb compatibility version, b foo.

emacs gud mode apparently doesn't support lldb and I've never bothered
to try anyway. I do sometimes wish for compiling in emacs when I'm
working through 400 lines of template errors, but so far not enough to
figure out how to import all of the necessary environment to make it
work. Immediate productivity always seems more important than taking a
week to learn a new tool.

I'm occasionally tempted to consider switching to bbedit or vscode,
but after 35 years of emacs it would be a lot of learning time that
could be spent on more useful things.

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel



___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] A little hint for xcode usage (scheme)

2020-03-08 Thread jean laroche
Well, I don't have enough history with Emacs to go back to it after so 
many years! In the meantime, breakpoints are not working in xcode, and 
that's quite annoying. I've looked online for possible reasons for that, 
but so far no results. When it works xcode debugging is quite useful and 
easy to use, but I'm a bit stuck with this... gonna have to investigate 
some more :( .



On 3/8/2020 9:52 PM, Christopher Lam wrote:

Emacs + magit + ripgrep does all we need...


On Mon, 9 Mar 2020, 11:44 am Mike Alexander,  wrote:


I used to use XEmacs much like John describes, although I did use the
debugging mode in XEmacs.  That was long enough ago that lldb wasn't
around, at least not for what I was working on.  Now I use XCode for
debugging and BBEdit for editing.  They work together pretty well and
XCode's debugging GUI is quite nice.  I remember debugging using address
stops and console switches, so this is a big step up.

 Mike

On 8 Mar 2020, at 23:27, John Ralls wrote:


 From the command line, lldb bin/gnucash

br se -n foo
or you can use the gdb compatibility version, b foo.

emacs gud mode apparently doesn't support lldb and I've never bothered
to try anyway. I do sometimes wish for compiling in emacs when I'm
working through 400 lines of template errors, but so far not enough to
figure out how to import all of the necessary environment to make it
work. Immediate productivity always seems more important than taking a
week to learn a new tool.

I'm occasionally tempted to consider switching to bbedit or vscode,
but after 35 years of emacs it would be a lot of learning time that
could be spent on more useful things.

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] A little hint for xcode usage (scheme)

2020-03-08 Thread jean laroche
I'm familiar with bbedit and emacs but how do you handle breakpoints? 
That's the part I'm not familiar with. I know how to do it in xcode.


iTerm2 is awesome, I really like it.
J.


On 3/8/2020 5:21 PM, Mike Alexander wrote:

On 8 Mar 2020, at 19:41, John Ralls wrote:

For my part I seldom use Xcode at all. I use emacs for editing and do 
the builds in a terminal window (I use iTerm2 rather that Terminal).


That works too.  Back when I developed code for Windows and Unix as 
well as Mac I used XEmacs for everything, including my shell 
environment.  Now that I'm basically Mac only, and XEmacs is dead, I 
use BBEdit and XCode.  The BBEdit worksheet is unusual (much like the 
old MPW worksheet if you're old enough to remember that) but I like 
it.  BBEdit is a bit like [X]Emacs: it's an environment, not just an 
editor.


    Mike
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Build on MacOS

2020-03-08 Thread jean laroche
Thanks Frank, that's a very good start! Thanks for pointing me in the 
right direction! Indeed, I saw quite a few feature requests I could get 
behind! :)
In the spirit of the open source project, I'll start by trying to fix 
bug(s). I'm very grateful to the many developers for the enormous amount 
of work that has been put in this project.


Jean


On 3/8/2020 12:21 AM, Frank H. Ellenberger wrote:

Hi Jean,

Am 08.03.20 um 07:55 schrieb jean laroche:

Thanks John, I'm going to retry from a clean slate.
A million thanks for all you've done to make this a lot easier for noobs
like me.
Now that I"m able to build, I wonder where/how I can contribute. I know
of things that I would love to change to make them more streamlined for
me, but that's just me.
J.

read the intro in https://wiki.gnucash.org/wiki/Bugzilla.
If you then see desired changes also in https://bugs.gnucash.org/
or https://gnucash.uservoice.com/
then it is not only you.

Regards
Frank


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Build on MacOS

2020-03-07 Thread jean laroche

Thanks John, I'm going to retry from a clean slate.
A million thanks for all you've done to make this a lot easier for noobs 
like me.
Now that I"m able to build, I wonder where/how I can contribute. I know 
of things that I would love to change to make them more streamlined for 
me, but that's just me.

J.


On 3/7/2020 8:27 PM, John Ralls wrote:



On Mar 6, 2020, at 9:27 PM, jean laroche  wrote:

Thanks John,

Tonight I was able to successfully run jhbuild build, then to build and run 
gnucash on my mac at home.
Doing so required some manual fixes which I'm listing below. If it's not 
possible to patch them, at least they should be mentioned in the instructions 
for building on mac. I would be willing to update them if so, I would just need 
directions on how to do that.
Here are my notes for the errors I'm still getting when running jhbuild build. 
I would love to hear what your take is on these 3 issues.

• I ran into the libxml2 issue (libxml2 is missing so itstools can't be 
built). Dropped to shell, tried pip3.6 install libxml2-python3. That worked on my 
machine at work. John says instead to create links form python -> python3.
On the home mac, that did not work, some includes could not be found to build libxml2. I found that 
I needed to ln -s "/Users/gnucash/gnucash-stable/include/libxml2" 
"/usr/local/include/." and ln -s 
/Users/gnucash/gnucash-stable/src/libxml2-2.9.8/os400/iconv/iconv.h /usr/local/include/.  I don't 
know why this happened on my home mac, but not on my work mac.
• Ran into xmlsec error (dirty dir)
. I tried [6]. Then another error occurred: I had to update the two Makefiles 
(replace -ru by -r or replace cp by rsync) in docs and docs/api and that 
worked. Rsync should be used instead of cp because cp -ru does not exist on the 
mac, instead rsync -ru does.

• Got the error: Your intltool is too old. This is caused by perl v 
5.26 (see https://github.com/raspberrypi/noobs/issues/470
) which does not accept unescaped { and } in regexps. I patched intltool-update 
by looking for ${ and adding\ to { and }. Seems to have fixed it, but it was 
tedious to say the least.


But other than these 3 errors, all the rest now works fine. Thanks for all the 
required updates. I understand that once you have your build environment you 
don't need to re-create it, so I imagine it's not obvious to detect when 
jhbuild build fails for one reason or another.

I pushed just before supper changes that for me anyway get it to build all the 
way through without intervention. One of the changes is to jhbuildrc so you 
need to rerun gtk-osx-setup.sh or have a git clone of gtk-osx to pull to to get 
it. Alternatively you could add the line
   os.environ['PYTHON'] = "/usr/bin/env python3"
to jhbuildrc-custom.

You should have *nothing* in /usr/local. Homebrew uses that and it's risky 
because Apple has in the past clobbered /usr/local as part of a system upgrade. 
Everything for building should either be in $PREFIX (aka $JHBUILD_PREFIX) or in 
the virtenv.

The xmlsec version is locked in the module set so it doesn't matter a whit if 
it can't switch the dirty tree. Just tell it to ignore the problem and continue 
to configure.

Intltool hasn't been maintained for a long time so it's not too surprising that 
newer perls choke on it or cause it to choke. Fiddle your jhbuild environment 
so that it finds the system perl: Apple hasn't updated perl for about as long 
as it's been since intltool was last updated. That said, I wonder if intltool 
is even needed any more. I'll run a few tests.

Regards,
John Ralls




___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Build on MacOS

2020-03-06 Thread jean laroche

Thanks John,

Tonight I was able to successfully run jhbuild build, then to build and 
run gnucash on my mac at home.
Doing so required some manual fixes which I'm listing below. If it's not 
possible to patch them, at least they should be mentioned in the 
instructions for building on mac. I would be willing to update them if 
so, I would just need directions on how to do that.
Here are my notes for the errors I'm still getting when running jhbuild 
build. I would love to hear what your take is on these 3 issues.


 *

   I ran into the libxml2 issue (libxml2 is missing so itstools can't
   be built).Dropped to shell, tried pip3.6 install libxml2-python3.
   That worked on my machine at work. John says instead to create links
   form python -> python3.On the home mac, that did not work, some
   includes could not be found to build libxml2. I found that I needed
   to ln -s "/Users/gnucash/gnucash-stable/include/libxml2"
   "/usr/local/include/."and ln -s
   /Users/gnucash/gnucash-stable/src/libxml2-2.9.8/os400/iconv/iconv.h
   /usr/local/include/.  I don't know why this happened on my home mac,
   but not on my work mac.

 * Ran into xmlsec error (dirty dir). I tried [6]. Then another error
   occurred: I had to update the two Makefiles (replace -ru by -r or
   replace cp by rsync) in docs and docs/api and that worked. Rsync
   should be used instead of cp because cp -ru does not exist on the
   mac, instead rsync -ru does.
 * Got the error: Your intltool is too old. This is caused by perl v
   5.26 (see https://github.com/raspberrypi/noobs/issues/470) which
   does not accept unescaped { and } in regexps. I patched
   intltool-update by looking for ${ and adding\ to { and }. Seems to
   have fixed it, but it was tedious to say the least.

But other than these 3 errors, all the rest now works fine. Thanks for 
all the required updates. I understand that once you have your build 
environment you don't need to re-create it, so I imagine it's not 
obvious to detect when jhbuild build fails for one reason or another. 
Cheers, Jean

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Build on MacOS

2020-03-06 Thread Jean Laroche

Cool, thanks John.

On 3/6/20 5:08 PM, John Ralls wrote:

You would have to clone the gnucash-on-osx repository and change 
jhbuildrc-custom to load the local gnucash.modules in that clone instead of the 
Github one, then edit the entries in your local gnucash.modules.

Otherwise, wait until my test build with the updated modules completes and I 
push the update to GitHub.

Regards,
John Ralls



On Mar 6, 2020, at 3:41 PM, Jean Laroche  wrote:

But how do we fix the build so it uses this latest version. I'm not aware of 
where you modify this in the build process...
J.

On 3/6/20 1:39 PM, Frank H. Ellenberger wrote:

HI,
Am 06.03.20 um 20:19 schrieb Jean Laroche:

The fun never ends.
After your patches and latest commits, I restarted the installation from
fresh to figure out what was still broken.
In addition to the things I previously ran into and aren't fixed yet
(which I'll list in a message when I get the build done), there's a new
one as of today:

wget --continue
https://www.aquamaniac.de/rdm/attachments/download/232/aqbanking-5.99.45.tar.gz
-O /Users/gnucash/gnucash-stable/src/pkgs/aqbanking-5.99.45.tar.gz
--2020-03-06 11:15:23--
https://www.aquamaniac.de/rdm/attachments/download/232/aqbanking-5.99.45.tar.gz

Resolving www.aquamaniac.de (www.aquamaniac.de)... 85.214.28.143
Connecting to www.aquamaniac.de
(www.aquamaniac.de)|85.214.28.143|:443... connected.
HTTP request sent, awaiting response... 404 Not Found
2020-03-06 11:15:23 ERROR 404: Not Found.

Apparently, aqbanking-5.99.45.tar.gz has disappeared from that site.
There are new versions dated 3/6/2020 here:
https://www.aquamaniac.de/rdm/projects/aqbanking/files but none of these
are aqbanking-5.99.45.tar.gz

There's a version here:
https://github.com/aqbanking/aqbanking/releases/tag/5.99.45 but that
does not compile for me.

Does anyone know anything about that?
Jean

Yes, it seems Martin cleaned up his repo and removed all beta releases
as there have been several Version 6 releases in between.
https://www.aquamaniac.de/rdm/attachments/download/269/aqbanking-6.1.2.tar.gz
is only a few hours old and fixes again an OFX bug
https://lists.gnucash.org/pipermail/gnucash-devel/2020-February/044585.html
Regards Frank



___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Build on MacOS

2020-03-06 Thread Jean Laroche
But how do we fix the build so it uses this latest version. I'm not 
aware of where you modify this in the build process...

J.

On 3/6/20 1:39 PM, Frank H. Ellenberger wrote:

HI,

Am 06.03.20 um 20:19 schrieb Jean Laroche:

The fun never ends.
After your patches and latest commits, I restarted the installation from
fresh to figure out what was still broken.
In addition to the things I previously ran into and aren't fixed yet
(which I'll list in a message when I get the build done), there's a new
one as of today:

wget --continue
https://www.aquamaniac.de/rdm/attachments/download/232/aqbanking-5.99.45.tar.gz
-O /Users/gnucash/gnucash-stable/src/pkgs/aqbanking-5.99.45.tar.gz
--2020-03-06 11:15:23--
https://www.aquamaniac.de/rdm/attachments/download/232/aqbanking-5.99.45.tar.gz

Resolving www.aquamaniac.de (www.aquamaniac.de)... 85.214.28.143
Connecting to www.aquamaniac.de
(www.aquamaniac.de)|85.214.28.143|:443... connected.
HTTP request sent, awaiting response... 404 Not Found
2020-03-06 11:15:23 ERROR 404: Not Found.

Apparently, aqbanking-5.99.45.tar.gz has disappeared from that site.
There are new versions dated 3/6/2020 here:
https://www.aquamaniac.de/rdm/projects/aqbanking/files but none of these
are aqbanking-5.99.45.tar.gz

There's a version here:
https://github.com/aqbanking/aqbanking/releases/tag/5.99.45 but that
does not compile for me.

Does anyone know anything about that?
Jean


Yes, it seems Martin cleaned up his repo and removed all beta releases
as there have been several Version 6 releases in between.

https://www.aquamaniac.de/rdm/attachments/download/269/aqbanking-6.1.2.tar.gz
is only a few hours old and fixes again an OFX bug
https://lists.gnucash.org/pipermail/gnucash-devel/2020-February/044585.html

Regards Frank


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Build on MacOS

2020-03-06 Thread Jean Laroche

The fun never ends.
After your patches and latest commits, I restarted the installation from 
fresh to figure out what was still broken.
In addition to the things I previously ran into and aren't fixed yet 
(which I'll list in a message when I get the build done), there's a new 
one as of today:


wget --continue 
https://www.aquamaniac.de/rdm/attachments/download/232/aqbanking-5.99.45.tar.gz 
-O /Users/gnucash/gnucash-stable/src/pkgs/aqbanking-5.99.45.tar.gz
--2020-03-06 11:15:23-- 
https://www.aquamaniac.de/rdm/attachments/download/232/aqbanking-5.99.45.tar.gz

Resolving www.aquamaniac.de (www.aquamaniac.de)... 85.214.28.143
Connecting to www.aquamaniac.de 
(www.aquamaniac.de)|85.214.28.143|:443... connected.

HTTP request sent, awaiting response... 404 Not Found
2020-03-06 11:15:23 ERROR 404: Not Found.

Apparently, aqbanking-5.99.45.tar.gz has disappeared from that site. 
There are new versions dated 3/6/2020 here: 
https://www.aquamaniac.de/rdm/projects/aqbanking/files but none of these 
are aqbanking-5.99.45.tar.gz


There's a version here: 
https://github.com/aqbanking/aqbanking/releases/tag/5.99.45 but that 
does not compile for me.


Does anyone know anything about that?
Jean


On 3/5/20 7:50 PM, John Ralls wrote:




On Mar 5, 2020, at 11:59 AM, Geert Janssens  wrote:

Op donderdag 5 maart 2020 20:54:54 CET schreef John Ralls:

That's because its-tool looks for python and python-config instead of
python3 and python3-config so it finds the virtenv python and of course
libxml2.py isn't installed there. As I said I usually drop to the shell and
create those symlinks then re-run itstool's configure. Your fix installed
it in the virtenv instead and that's fine for GnuCash.

Regards,
John Ralls


Would it be hard to patch its-tool's config scripts to look for the right file 
names instead ?


Unfortunately yes. AM_PATH_PYTHON, like so much else automake, is stuck in the 
1990s and that's what itstool uses to find Python.

Regards,
John Ralls



___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Build on MacOS

2020-03-05 Thread Jean Laroche

I am now running into this (again):
You asked me if I told jhbuild to skip mysql, and the answer is no.
Where is the library linked by -lmysqlclient to be found, normally?
Jean

*** Building libdbi-drivers *** [54/71]
make -j 9
make  all-recursive
make[1]: Entering directory 
'/Users/gnucash/gnucash-stable/build/libdbi-drivers-0.9.0'

Making all in drivers
make[2]: Entering directory 
'/Users/gnucash/gnucash-stable/build/libdbi-drivers-0.9.0/drivers'

Making all in mysql
make[3]: Entering directory 
'/Users/gnucash/gnucash-stable/build/libdbi-drivers-0.9.0/drivers/mysql'
/bin/sh ../../libtool  --tag=CC   --mode=link 
/Applications/Xcode.app/Contents/Developer/usr/bin/gcc  -std=gnu99 -arch 
x86_64 
-I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/include 
-isysroot 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk 
-mmacosx-version-min=10.13 -module -avoid-version 
-L/Users/gnucash/gnucash-stable/lib -lmysqlclient -no-undefined -ldbi 
-L/Users/gnucash/gnucash-stable/lib -L/Users/gnucash/gnucash-stable/lib 
-L/Users/gnucash/gnucash-stable/lib -arch x86_64 
-L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/lib 
-isysroot 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk 
-mmacosx-version-min=10.13 -Wl,-headerpad_max_install_names -o 
libdbdmysql.la -rpath /Users/gnucash/gnucash-stable/lib/dbd dbd_mysql.lo
libtool: link: /Applications/Xcode.app/Contents/Developer/usr/bin/gcc 
-o .libs/libdbdmysql.so -bundle  .libs/dbd_mysql.o 
-L/Users/gnucash/gnucash-stable/lib -lmysqlclient -ldbi 
-L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/lib 
 -arch x86_64 -isysroot 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk 
-mmacosx-version-min=10.13 -arch x86_64 -isysroot 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk 
-mmacosx-version-min=10.13 -Wl,-headerpad_max_install_names

ld: library not found for -lmysqlclient
clang: error: linker command failed with exit code 1 (use -v to see 
invocation)

make[3]: *** [Makefile:479: libdbdmysql.la] Error 1
make[3]: Leaving directory 
'/Users/gnucash/gnucash-stable/build/libdbi-drivers-0.9.0/drivers/mysql'

make[2]: *** [Makefile:403: all-recursive] Error 1
make[2]: Leaving directory 
'/Users/gnucash/gnucash-stable/build/libdbi-drivers-0.9.0/drivers'

make[1]: *** [Makefile:454: all-recursive] Error 1
make[1]: Leaving directory 
'/Users/gnucash/gnucash-stable/build/libdbi-drivers-0.9.0'

make: *** [Makefile:384: all] Error 2
*** Error during phase build of libdbi-drivers: ## Error running 
make -j 9  *** [54/71]




On 3/5/20 11:54 AM, John Ralls wrote:

That's because its-tool looks for python and python-config instead of python3 
and python3-config so it finds the virtenv python and of course libxml2.py 
isn't installed there. As I said I usually drop to the shell and create those 
symlinks then re-run itstool's configure. Your fix installed it in the virtenv 
instead and that's fine for GnuCash.

Regards,
John Ralls



On Mar 5, 2020, at 11:42 AM, Jean Laroche  wrote:

No worries. I fixed the issue manually with the help of others.

In jhbuild build, I ran into the libxml2 issue despite the facts that links to 
python3 and python3-config were present in $PREFIX/bin.

To fix this, I Dropped to shell, did pip3.6 install libxml2-python3, returned 
to build and pressed [1]. That worked.
The build is continuing, will keep you posted.

Jean

On 3/5/20 11:29 AM, John Ralls wrote:

Sorry, I pushed a change I shouldn't have. It's fixed and pushed now.

Details: There are two include lines in gnucash.modules, one for including the 
gtk-osx modules from gitlab.gnome.org, the other for including them from my 
local working repository for when I need to test in GnuCash a change in a 
module that builds from gtk-osx (I maintain both along with the Quartz backend 
in Gtk). The local one should be commented out and the gitlab one active, but 
I'd reversed it to test something and forgot to change it back before my last 
push.

Regards,
John Ralls


On Mar 4, 2020, at 9:29 PM, Roger Moore  wrote:

mmm I'm running into a new problem now, which I really don't understand...

Teds-iMac:~ gnucash$ jhbuild build
Loading .env environment variables…
jhbuild build: failed to parse 
/Users/gnucash/Source/jhbuild/modulesets/file:/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules:
 [Errno 2] No such file or directory: 
u'/Users/gnucash/Source/jhbuild/modulesets/file:/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules'

Where does this /Users/john path comes 

Re: [GNC-dev] Build on MacOS

2020-03-05 Thread Jean Laroche

NOTE:
The xmlsec error does not disappear when choosing [6] (wipe and retry). 
The error is:
make[3]: Entering directory 
'/Users/gnucash/gnucash-stable/build/xmlsec/docs/api'

Copying api-docs...
/bin/cp: illegal option -- u
usage: cp [-R [-H | -L | -P]] [-fi | -n] [-apvXc] source_file target_file
   cp [-R [-H | -L | -P]] [-fi | -n] [-apvXc] source_file ... 
target_directory


On my mac, cp -u isn't an option. So as I described previously I had to 
edit the Makefiles to change -Ru -> -R. That fixes the error.

Jean

On 3/5/20 11:54 AM, John Ralls wrote:

That's because its-tool looks for python and python-config instead of python3 
and python3-config so it finds the virtenv python and of course libxml2.py 
isn't installed there. As I said I usually drop to the shell and create those 
symlinks then re-run itstool's configure. Your fix installed it in the virtenv 
instead and that's fine for GnuCash.

Regards,
John Ralls



On Mar 5, 2020, at 11:42 AM, Jean Laroche  wrote:

No worries. I fixed the issue manually with the help of others.

In jhbuild build, I ran into the libxml2 issue despite the facts that links to 
python3 and python3-config were present in $PREFIX/bin.

To fix this, I Dropped to shell, did pip3.6 install libxml2-python3, returned 
to build and pressed [1]. That worked.
The build is continuing, will keep you posted.

Jean

On 3/5/20 11:29 AM, John Ralls wrote:

Sorry, I pushed a change I shouldn't have. It's fixed and pushed now.

Details: There are two include lines in gnucash.modules, one for including the 
gtk-osx modules from gitlab.gnome.org, the other for including them from my 
local working repository for when I need to test in GnuCash a change in a 
module that builds from gtk-osx (I maintain both along with the Quartz backend 
in Gtk). The local one should be commented out and the gitlab one active, but 
I'd reversed it to test something and forgot to change it back before my last 
push.

Regards,
John Ralls


On Mar 4, 2020, at 9:29 PM, Roger Moore  wrote:

mmm I'm running into a new problem now, which I really don't understand...

Teds-iMac:~ gnucash$ jhbuild build
Loading .env environment variables…
jhbuild build: failed to parse 
/Users/gnucash/Source/jhbuild/modulesets/file:/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules:
 [Errno 2] No such file or directory: 
u'/Users/gnucash/Source/jhbuild/modulesets/file:/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules'

Where does this /Users/john path comes from?
I didn't change anything to my setup, came back 5 days later, and I'm getting 
this error now... Does jhbuild run git in the background?

Any idea what I should do now?
Jean
On Wed, Mar 4, 2020 at 8:11 PM jean laroche  wrote:
Thanks John,
Of course, I know it's never a good option to press [3] and skip, but
this way you could see all errors that weren't caused by previous errors.

  > Did you tell jhbuild to skip mysql?
No, I don't even know how to do that! :)


You have a bad boost download so you'll have to delete the downloaded file and 
try again.

OK.
I'm going to try your recommendations and report.
Thanks!
Jean

On 2/29/2020 12:42 PM, John Ralls wrote:

Skipping the itstool module caused the gtk-doc failure, and skipping that 
caused the gtk+ failure, and so on. When a build fails you have to fix it, so 
don't *ever* use [3] give up on module.

The itstool failure itself is because python3 when built from scratch doesn't 
create a python or python-config symlink so itstool looks in the wrong place 
for the the python libxml2 module. I usually drop to the shell (option 4 on the 
jhbuild failure menu) cd to $PREFIX/bin, create the two symlinks, exit the 
shell and pick [1] from the menu to try again.

For xmlsec use either [2] ignore and continue to build or [6] wipe directory 
and start over.

Did you tell jhbuild to skip mysql?

You have a bad boost download so you'll have to delete the downloaded file and 
try again.

I pushed fixes for libgpg-error and libdbi-drivers tests/cgreen include 
problem. The latter involves a patch so you need to delete the source directory 
for it to apply.

Regards,
John Ralls



On Feb 29, 2020, at 9:00 AM, jean laroche  wrote:

I started from a fresh user, with no trace of brew. I'm getting many fails.
I created a pastebin with the messages of a re-run of jhbuild build, so you can 
see the details:
https://pastebin.com/293FMgVk

Let me know what you think. I'll be away from the mac until next Wed, but I'll 
be within email contact.

A million thanks for the help!
Cheers,
Jean


On 2/28/2020 8:06 PM, John Ralls wrote:

Jean,

Please remember to copy the list on all replies.


On Feb 28, 2020, at 8:26 PM, jean laroche  wrote:

Thanks for the pointers John! Very useful! As a newbie building this, I have no 
idea what's import

Re: [GNC-dev] Build on MacOS

2020-03-05 Thread Jean Laroche
To clarify John, you create a link python -> python3? (and same for the 
config)?


On 3/5/20 11:54 AM, John Ralls wrote:

That's because its-tool looks for python and python-config instead of python3 
and python3-config so it finds the virtenv python and of course libxml2.py 
isn't installed there. As I said I usually drop to the shell and create those 
symlinks then re-run itstool's configure. Your fix installed it in the virtenv 
instead and that's fine for GnuCash.

Regards,
John Ralls



On Mar 5, 2020, at 11:42 AM, Jean Laroche  wrote:

No worries. I fixed the issue manually with the help of others.

In jhbuild build, I ran into the libxml2 issue despite the facts that links to 
python3 and python3-config were present in $PREFIX/bin.

To fix this, I Dropped to shell, did pip3.6 install libxml2-python3, returned 
to build and pressed [1]. That worked.
The build is continuing, will keep you posted.

Jean

On 3/5/20 11:29 AM, John Ralls wrote:

Sorry, I pushed a change I shouldn't have. It's fixed and pushed now.

Details: There are two include lines in gnucash.modules, one for including the 
gtk-osx modules from gitlab.gnome.org, the other for including them from my 
local working repository for when I need to test in GnuCash a change in a 
module that builds from gtk-osx (I maintain both along with the Quartz backend 
in Gtk). The local one should be commented out and the gitlab one active, but 
I'd reversed it to test something and forgot to change it back before my last 
push.

Regards,
John Ralls


On Mar 4, 2020, at 9:29 PM, Roger Moore  wrote:

mmm I'm running into a new problem now, which I really don't understand...

Teds-iMac:~ gnucash$ jhbuild build
Loading .env environment variables…
jhbuild build: failed to parse 
/Users/gnucash/Source/jhbuild/modulesets/file:/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules:
 [Errno 2] No such file or directory: 
u'/Users/gnucash/Source/jhbuild/modulesets/file:/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules'

Where does this /Users/john path comes from?
I didn't change anything to my setup, came back 5 days later, and I'm getting 
this error now... Does jhbuild run git in the background?

Any idea what I should do now?
Jean
On Wed, Mar 4, 2020 at 8:11 PM jean laroche  wrote:
Thanks John,
Of course, I know it's never a good option to press [3] and skip, but
this way you could see all errors that weren't caused by previous errors.

  > Did you tell jhbuild to skip mysql?
No, I don't even know how to do that! :)


You have a bad boost download so you'll have to delete the downloaded file and 
try again.

OK.
I'm going to try your recommendations and report.
Thanks!
Jean

On 2/29/2020 12:42 PM, John Ralls wrote:

Skipping the itstool module caused the gtk-doc failure, and skipping that 
caused the gtk+ failure, and so on. When a build fails you have to fix it, so 
don't *ever* use [3] give up on module.

The itstool failure itself is because python3 when built from scratch doesn't 
create a python or python-config symlink so itstool looks in the wrong place 
for the the python libxml2 module. I usually drop to the shell (option 4 on the 
jhbuild failure menu) cd to $PREFIX/bin, create the two symlinks, exit the 
shell and pick [1] from the menu to try again.

For xmlsec use either [2] ignore and continue to build or [6] wipe directory 
and start over.

Did you tell jhbuild to skip mysql?

You have a bad boost download so you'll have to delete the downloaded file and 
try again.

I pushed fixes for libgpg-error and libdbi-drivers tests/cgreen include 
problem. The latter involves a patch so you need to delete the source directory 
for it to apply.

Regards,
John Ralls



On Feb 29, 2020, at 9:00 AM, jean laroche  wrote:

I started from a fresh user, with no trace of brew. I'm getting many fails.
I created a pastebin with the messages of a re-run of jhbuild build, so you can 
see the details:
https://pastebin.com/293FMgVk

Let me know what you think. I'll be away from the mac until next Wed, but I'll 
be within email contact.

A million thanks for the help!
Cheers,
Jean


On 2/28/2020 8:06 PM, John Ralls wrote:

Jean,

Please remember to copy the list on all replies.


On Feb 28, 2020, at 8:26 PM, jean laroche  wrote:

Thanks for the pointers John! Very useful! As a newbie building this, I have no 
idea what's important and what not. Here are my notes.

Note that a lot of this is hacking, trying to get to a point where I can build. 
The solutions are just band-aids, and they may not be good ones either!

• Build complained about perl XML parser. I started a shell at the point 
where it failed and followed this.  perl -MCPAN -e shell, followed by install 
XML::Parser. This fixed it.

xml-parser, along with several other critical infrastructure packages, is 
insta

Re: [GNC-dev] Build broken on MacOS

2020-03-05 Thread Jean Laroche
That was a mistake on my part, I thought I was creating a new thread, 
but instead hijacked this one!

Very sorry about that.
Jean

On 3/5/20 11:43 AM, Frank H. Ellenberger wrote:

Hi Jean,

as I watch it the second time, I have just a note: Do not hijack
threads. See
https://wiki.gnucash.org/wiki/Mailing_Lists#Netiquette

In this thread we were discussing 'Single User Installation location on
Linux'.

Thanks,
Frank

Am 05.03.20 um 19:19 schrieb Jean Laroche:

The build seems to be broken on Mac OS.

:


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Build on MacOS

2020-03-05 Thread Jean Laroche

No worries. I fixed the issue manually with the help of others.

In jhbuild build, I ran into the libxml2 issue despite the facts that 
links to python3 and python3-config were present in $PREFIX/bin.


To fix this, I Dropped to shell, did pip3.6 install libxml2-python3, 
returned to build and pressed [1]. That worked.

The build is continuing, will keep you posted.

Jean

On 3/5/20 11:29 AM, John Ralls wrote:

Sorry, I pushed a change I shouldn't have. It's fixed and pushed now.

Details: There are two include lines in gnucash.modules, one for including the 
gtk-osx modules from gitlab.gnome.org, the other for including them from my 
local working repository for when I need to test in GnuCash a change in a 
module that builds from gtk-osx (I maintain both along with the Quartz backend 
in Gtk). The local one should be commented out and the gitlab one active, but 
I'd reversed it to test something and forgot to change it back before my last 
push.

Regards,
John Ralls


On Mar 4, 2020, at 9:29 PM, Roger Moore  wrote:

mmm I'm running into a new problem now, which I really don't understand...

Teds-iMac:~ gnucash$ jhbuild build
Loading .env environment variables…
jhbuild build: failed to parse 
/Users/gnucash/Source/jhbuild/modulesets/file:/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules:
 [Errno 2] No such file or directory: 
u'/Users/gnucash/Source/jhbuild/modulesets/file:/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules'

Where does this /Users/john path comes from?
I didn't change anything to my setup, came back 5 days later, and I'm getting 
this error now... Does jhbuild run git in the background?

Any idea what I should do now?
Jean
On Wed, Mar 4, 2020 at 8:11 PM jean laroche  wrote:
Thanks John,
Of course, I know it's never a good option to press [3] and skip, but
this way you could see all errors that weren't caused by previous errors.

  > Did you tell jhbuild to skip mysql?
No, I don't even know how to do that! :)


You have a bad boost download so you'll have to delete the downloaded file and 
try again.

OK.
I'm going to try your recommendations and report.
Thanks!
Jean

On 2/29/2020 12:42 PM, John Ralls wrote:

Skipping the itstool module caused the gtk-doc failure, and skipping that 
caused the gtk+ failure, and so on. When a build fails you have to fix it, so 
don't *ever* use [3] give up on module.

The itstool failure itself is because python3 when built from scratch doesn't 
create a python or python-config symlink so itstool looks in the wrong place 
for the the python libxml2 module. I usually drop to the shell (option 4 on the 
jhbuild failure menu) cd to $PREFIX/bin, create the two symlinks, exit the 
shell and pick [1] from the menu to try again.

For xmlsec use either [2] ignore and continue to build or [6] wipe directory 
and start over.

Did you tell jhbuild to skip mysql?

You have a bad boost download so you'll have to delete the downloaded file and 
try again.

I pushed fixes for libgpg-error and libdbi-drivers tests/cgreen include 
problem. The latter involves a patch so you need to delete the source directory 
for it to apply.

Regards,
John Ralls



On Feb 29, 2020, at 9:00 AM, jean laroche  wrote:

I started from a fresh user, with no trace of brew. I'm getting many fails.
I created a pastebin with the messages of a re-run of jhbuild build, so you can 
see the details:
https://pastebin.com/293FMgVk

Let me know what you think. I'll be away from the mac until next Wed, but I'll 
be within email contact.

A million thanks for the help!
Cheers,
Jean


On 2/28/2020 8:06 PM, John Ralls wrote:

Jean,

Please remember to copy the list on all replies.


On Feb 28, 2020, at 8:26 PM, jean laroche  wrote:

Thanks for the pointers John! Very useful! As a newbie building this, I have no 
idea what's important and what not. Here are my notes.

Note that a lot of this is hacking, trying to get to a point where I can build. 
The solutions are just band-aids, and they may not be good ones either!

• Build complained about perl XML parser. I started a shell at the point 
where it failed and followed this.  perl -MCPAN -e shell, followed by install 
XML::Parser. This fixed it.

xml-parser, along with several other critical infrastructure packages, is 
installed by `jhbuild bootstrap-gtk-osx`, which you need to run before starting 
the build proper. I wonder how you were able to proceed without that.


• There was an error finding gpg-error.h, which is here: 
/usr/local/Cellar/libgpg-error/1.37/include/gpg-error.h so I did ln -s -> 
/Users/gnucash/gnucash-stable/include/gpg-error.h

Gtk-OSX is incompatible with Home-brew. Not only must you not try to install 
into /usr/local/Cellar, you must purge your environment of any paths (PATH, 
DYLD_LIBRARY_PATH, PKG_CONFIG_PATH, etc.) pointing into it. Same for MacPo

Re: [GNC-dev] Build broken on MacOS

2020-03-05 Thread Jean Laroche
Found the issue, the same edit needs to be done in 
~/.cache/jhbuild/gnucash.modules-

Now building proceeds...
Where is this edit requirement described in 
https://wiki.gnucash.org/wiki/MacOS/Quartz ???

Should it not be added there?
J

On 3/5/20 10:46 AM, chris graves wrote:

IIRC, the fix is to edit ~/.cache/jhbuild/gnucash.modules and make the 
following change:

   https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/modulesets-stable/gtk-osx.modules"/>
  

Chris


On Mar 5, 2020, at 10:34 AM, Derek Atkins  wrote:

Did you follow the instructions and set the environment to match yours?  I
doubt your username is "john"...

-derek

On Thu, March 5, 2020 1:19 pm, Jean Laroche wrote:

The build seems to be broken on Mac OS.
Starting from fresh, new user,
sh gtk-osx-setup.sh works
jhbuild bootstrap works
jhbuild bootstrap-gtk-osx works
jhbuild build errors with

Loading .env environment variables…
jhbuild build: failed to parse
/Users/gnucash/Source/jhbuild/modulesets/file:/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules:
[Errno 2] No such file or directory:
u'/Users/gnucash/Source/jhbuild/modulesets/file:/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules'

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel




--
   Derek Atkins 617-623-3745
   de...@ihtfp.com www.ihtfp.com
   Computer and Internet Security Consultant

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Build broken on MacOS

2020-03-05 Thread Jean Laroche
I do have this edit in  ~/.cache/jhbuild/gnucash.modules, but I see a 
lot more /Users/john when I grep .cash/jhbuild ...


On 3/5/20 10:46 AM, chris graves wrote:

IIRC, the fix is to edit ~/.cache/jhbuild/gnucash.modules and make the 
following change:

   https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/modulesets-stable/gtk-osx.modules"/>
  

Chris


On Mar 5, 2020, at 10:34 AM, Derek Atkins  wrote:

Did you follow the instructions and set the environment to match yours?  I
doubt your username is "john"...

-derek

On Thu, March 5, 2020 1:19 pm, Jean Laroche wrote:

The build seems to be broken on Mac OS.
Starting from fresh, new user,
sh gtk-osx-setup.sh works
jhbuild bootstrap works
jhbuild bootstrap-gtk-osx works
jhbuild build errors with

Loading .env environment variables…
jhbuild build: failed to parse
/Users/gnucash/Source/jhbuild/modulesets/file:/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules:
[Errno 2] No such file or directory:
u'/Users/gnucash/Source/jhbuild/modulesets/file:/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules'

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel




--
   Derek Atkins 617-623-3745
   de...@ihtfp.com www.ihtfp.com
   Computer and Internet Security Consultant

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Build broken on MacOS

2020-03-05 Thread Jean Laroche

Indeed, my username is not "john".
Which instructions are you talking about? I'm following this: 
https://wiki.gnucash.org/wiki/MacOS/Quartz and I don't see a place where 
you're supposed to change or modify your username.
Beside, last week I was able to run jhbuild build without running into 
this error...

I've grepped -R looking for where this john comes from, with no result
J.

On 3/5/20 10:34 AM, Derek Atkins wrote:

Did you follow the instructions and set the environment to match yours?  I
doubt your username is "john"...

-derek

On Thu, March 5, 2020 1:19 pm, Jean Laroche wrote:

The build seems to be broken on Mac OS.
Starting from fresh, new user,
sh gtk-osx-setup.sh works
jhbuild bootstrap works
jhbuild bootstrap-gtk-osx works
jhbuild build errors with

Loading .env environment variables…
jhbuild build: failed to parse
/Users/gnucash/Source/jhbuild/modulesets/file:/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules:
[Errno 2] No such file or directory:
u'/Users/gnucash/Source/jhbuild/modulesets/file:/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules'

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel





___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


[GNC-dev] Build broken on MacOS

2020-03-05 Thread Jean Laroche

The build seems to be broken on Mac OS.
Starting from fresh, new user,
sh gtk-osx-setup.sh works
jhbuild bootstrap works
jhbuild bootstrap-gtk-osx works
jhbuild build errors with

Loading .env environment variables…
jhbuild build: failed to parse 
/Users/gnucash/Source/jhbuild/modulesets/file:/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules: 
[Errno 2] No such file or directory: 
u'/Users/gnucash/Source/jhbuild/modulesets/file:/Users/john/Development/GTK-OSX/gtk-osx-build/modulesets-stable/gtk-osx.modules'


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Build on MacOS

2020-03-04 Thread jean laroche

Thanks John,
Of course, I know it's never a good option to press [3] and skip, but 
this way you could see all errors that weren't caused by previous errors.


> Did you tell jhbuild to skip mysql?
No, I don't even know how to do that! :)


You have a bad boost download so you'll have to delete the downloaded file and 
try again.

OK.
I'm going to try your recommendations and report.
Thanks!
Jean

On 2/29/2020 12:42 PM, John Ralls wrote:

Skipping the itstool module caused the gtk-doc failure, and skipping that 
caused the gtk+ failure, and so on. When a build fails you have to fix it, so 
don't *ever* use [3] give up on module.

The itstool failure itself is because python3 when built from scratch doesn't 
create a python or python-config symlink so itstool looks in the wrong place 
for the the python libxml2 module. I usually drop to the shell (option 4 on the 
jhbuild failure menu) cd to $PREFIX/bin, create the two symlinks, exit the 
shell and pick [1] from the menu to try again.

For xmlsec use either [2] ignore and continue to build or [6] wipe directory 
and start over.

Did you tell jhbuild to skip mysql?

You have a bad boost download so you'll have to delete the downloaded file and 
try again.

I pushed fixes for libgpg-error and libdbi-drivers tests/cgreen include 
problem. The latter involves a patch so you need to delete the source directory 
for it to apply.

Regards,
John Ralls



On Feb 29, 2020, at 9:00 AM, jean laroche  wrote:

I started from a fresh user, with no trace of brew. I'm getting many fails.
I created a pastebin with the messages of a re-run of jhbuild build, so you can 
see the details:
https://pastebin.com/293FMgVk

Let me know what you think. I'll be away from the mac until next Wed, but I'll 
be within email contact.

A million thanks for the help!
Cheers,
Jean


On 2/28/2020 8:06 PM, John Ralls wrote:

Jean,

Please remember to copy the list on all replies.


On Feb 28, 2020, at 8:26 PM, jean laroche  wrote:

Thanks for the pointers John! Very useful! As a newbie building this, I have no 
idea what's important and what not. Here are my notes.

Note that a lot of this is hacking, trying to get to a point where I can build. 
The solutions are just band-aids, and they may not be good ones either!

• Build complained about perl XML parser. I started a shell at the 
point where it failed and followed this.  perl -MCPAN -e shell, followed by 
install XML::Parser. This fixed it.

xml-parser, along with several other critical infrastructure packages, is 
installed by `jhbuild bootstrap-gtk-osx`, which you need to run before starting 
the build proper. I wonder how you were able to proceed without that.


• There was an error finding gpg-error.h, which is here: 
/usr/local/Cellar/libgpg-error/1.37/include/gpg-error.h so I did ln -s -> 
/Users/gnucash/gnucash-stable/include/gpg-error.h

Gtk-OSX is incompatible with Home-brew. Not only must you not try to install 
into /usr/local/Cellar, you must purge your environment of any paths (PATH, 
DYLD_LIBRARY_PATH, PKG_CONFIG_PATH, etc.) pointing into it. Same for MacPorts.

Note that the Home-brew recipe for GnuCash simply downloads and installs the 
Mac release bundle from our distribution repository: Even they don't support 
building GnuCash from source. MacPorts does, but you have to decide to use 
either MacPorts or Gtk-OSX.


• Had to do brew install postgresql

See above.


• Got: “configure.ac: No such file or directory” Went into shell copied 
everything from /Users/gnucash/gnucash-stable/src/libgpg-error-1.27 locally, 
and retried. It worked.

That's the wrong thing to do. Instead cd to the source dir and run either 
`autoreconf -fis` or `./autogen.sh`.


• Xmlsec refused because of “dirty” dir. I removed the entire xmlsec 
directory. But then I get an error with cp -u which does not work on macos, 
which I fixed by removing -ru in line 749 of docs/Makefile.* and 619 in 
docs/api/Makefile.*

How did you remove the directory? The correct way is to use selection 6, "delete directory and 
start over" from the jhbuild error menu. It should take care of getting the build restarted. 
OTOH I usually pick 2, "ignore the error and continue to configure" because it's frankly 
not that important to have the latest xmlsec code.


• Ran into a problem with libdbi-drivers: Had to add 
-L/Users/gnucash/gnucash-stable/build/libdbi-drivers-0.9.0/drivers/mysql to the 
Makefile located there, and link 
/usr/local/Cellar/mysql@5.6/5.6.46_2/lib/libmysqlclient.18.dylib there as well.

See above about Home-brew.


• Ran into: “can’t find cgreen/parameters.h” for libdbi-drivers-0.9.0. 
I linked 
/Users/gnucash/gnucash-stable/src/libdbi-drivers-0.9.0/tests/cgreen/include/cgreen
 to the target dir. That fixed it.

I've been meaning to write a patch about that.


• Intltool complained

Re: [GNC-dev] Build on MacOS

2020-02-29 Thread jean laroche

I started from a fresh user, with no trace of brew. I'm getting many fails.
I created a pastebin with the messages of a re-run of jhbuild build, so 
you can see the details:

https://pastebin.com/293FMgVk

Let me know what you think. I'll be away from the mac until next Wed, 
but I'll be within email contact.


A million thanks for the help!
Cheers,
Jean


On 2/28/2020 8:06 PM, John Ralls wrote:

Jean,

Please remember to copy the list on all replies.


On Feb 28, 2020, at 8:26 PM, jean laroche  wrote:

Thanks for the pointers John! Very useful! As a newbie building this, I have no 
idea what's important and what not. Here are my notes.

Note that a lot of this is hacking, trying to get to a point where I can build. 
The solutions are just band-aids, and they may not be good ones either!

• Build complained about perl XML parser. I started a shell at the 
point where it failed and followed this.  perl -MCPAN -e shell, followed by 
install XML::Parser. This fixed it.

xml-parser, along with several other critical infrastructure packages, is 
installed by `jhbuild bootstrap-gtk-osx`, which you need to run before starting 
the build proper. I wonder how you were able to proceed without that.


• There was an error finding gpg-error.h, which is here: 
/usr/local/Cellar/libgpg-error/1.37/include/gpg-error.h so I did ln -s -> 
/Users/gnucash/gnucash-stable/include/gpg-error.h

Gtk-OSX is incompatible with Home-brew. Not only must you not try to install 
into /usr/local/Cellar, you must purge your environment of any paths (PATH, 
DYLD_LIBRARY_PATH, PKG_CONFIG_PATH, etc.) pointing into it. Same for MacPorts.

Note that the Home-brew recipe for GnuCash simply downloads and installs the 
Mac release bundle from our distribution repository: Even they don't support 
building GnuCash from source. MacPorts does, but you have to decide to use 
either MacPorts or Gtk-OSX.


• Had to do brew install postgresql

See above.


• Got: “configure.ac: No such file or directory” Went into shell copied 
everything from /Users/gnucash/gnucash-stable/src/libgpg-error-1.27 locally, 
and retried. It worked.

That's the wrong thing to do. Instead cd to the source dir and run either 
`autoreconf -fis` or `./autogen.sh`.


• Xmlsec refused because of “dirty” dir. I removed the entire xmlsec 
directory. But then I get an error with cp -u which does not work on macos, 
which I fixed by removing -ru in line 749 of docs/Makefile.* and 619 in 
docs/api/Makefile.*

How did you remove the directory? The correct way is to use selection 6, "delete directory and 
start over" from the jhbuild error menu. It should take care of getting the build restarted. 
OTOH I usually pick 2, "ignore the error and continue to configure" because it's frankly 
not that important to have the latest xmlsec code.


• Ran into a problem with libdbi-drivers: Had to add 
-L/Users/gnucash/gnucash-stable/build/libdbi-drivers-0.9.0/drivers/mysql to the 
Makefile located there, and link 
/usr/local/Cellar/mysql@5.6/5.6.46_2/lib/libmysqlclient.18.dylib there as well.

See above about Home-brew.


• Ran into: “can’t find cgreen/parameters.h” for libdbi-drivers-0.9.0. 
I linked 
/Users/gnucash/gnucash-stable/src/libdbi-drivers-0.9.0/tests/cgreen/include/cgreen
 to the target dir. That fixed it.

I've been meaning to write a patch about that.


• Intltool complained about version. I have the right version, so I 
removed check in the configure file.

It probably couldn't find the right version because of Home-brew.

• Then I was missing aclocal-1.15 … Ran  autoreconf -f -i as suggested.
• For libsoup same complaint about intltool version. Same action.
• Building shared-mime-info: manuallly ran configure 
--disable-dependency-tracking, then skipped to build, but hit Makefile 1161: 
*** missing separator. Edited. Also changed INTNL-UPDATE to intnl-update in 
Makefile.in.in in po. Also remove everything after “check” at line 149 same 
file.
Then I get a hard crash:
OSError: [Errno 2] No such file or directory: 
'/Users/gnucash/gnucash-stable/_jhbuild/root-shared-mime-info/Users/gnucash/gnucash-stable'
File "/Users/gnucash/Source/jhbuild/jhbuild/frontends/buildscript.py", line 
172, in build error, altphases = module.run_phase(self, phase)
I added a pdb.set_trace() in the python script and created the dirs, then 
continued the command. That worked.
It would be great if you could tell me if these errors ring a bell for you, and 
what better steps I should have taken to fix them... Not knowing anything about 
this build process I went for the most expedient solution I could find, chances 
are, not the best!

Thanks! I appreciate the help!

Jean

BTW: swig-unittest-support-guile.c  is nowhere to be found in the tree, neither 
built nor src, so something's not right.

Unfortunately you've probably scre

Re: [GNC-dev] Build on MacOS

2020-02-28 Thread jean laroche

Thanks for all the answers!
I knew I must have been doing something wrong. I started doing the build 
using a new user account, as is recommended in the docs and ran into 
lots of problems. I didn't realize you have to avoid homebrew at all 
cost... my bad.
I *did* run jhbuild bootstrap-gtk-osx as a first step, as instructed in 
the doc. But who knows what happened after that.


I'll restart the build from scratch using a new account with no homebrew 
and a pruned down .bashrc. I'll let you guy know what problems I run 
into. Hopefully it'll be a lot smoother (at least I hope!)


Jean


On 2/28/2020 8:06 PM, John Ralls wrote:

Jean,

Please remember to copy the list on all replies.


On Feb 28, 2020, at 8:26 PM, jean laroche  wrote:

Thanks for the pointers John! Very useful! As a newbie building this, I have no 
idea what's important and what not. Here are my notes.

Note that a lot of this is hacking, trying to get to a point where I can build. 
The solutions are just band-aids, and they may not be good ones either!

• Build complained about perl XML parser. I started a shell at the 
point where it failed and followed this.  perl -MCPAN -e shell, followed by 
install XML::Parser. This fixed it.

xml-parser, along with several other critical infrastructure packages, is 
installed by `jhbuild bootstrap-gtk-osx`, which you need to run before starting 
the build proper. I wonder how you were able to proceed without that.


• There was an error finding gpg-error.h, which is here: 
/usr/local/Cellar/libgpg-error/1.37/include/gpg-error.h so I did ln -s -> 
/Users/gnucash/gnucash-stable/include/gpg-error.h

Gtk-OSX is incompatible with Home-brew. Not only must you not try to install 
into /usr/local/Cellar, you must purge your environment of any paths (PATH, 
DYLD_LIBRARY_PATH, PKG_CONFIG_PATH, etc.) pointing into it. Same for MacPorts.

Note that the Home-brew recipe for GnuCash simply downloads and installs the 
Mac release bundle from our distribution repository: Even they don't support 
building GnuCash from source. MacPorts does, but you have to decide to use 
either MacPorts or Gtk-OSX.


• Had to do brew install postgresql

See above.


• Got: “configure.ac: No such file or directory” Went into shell copied 
everything from /Users/gnucash/gnucash-stable/src/libgpg-error-1.27 locally, 
and retried. It worked.

That's the wrong thing to do. Instead cd to the source dir and run either 
`autoreconf -fis` or `./autogen.sh`.


• Xmlsec refused because of “dirty” dir. I removed the entire xmlsec 
directory. But then I get an error with cp -u which does not work on macos, 
which I fixed by removing -ru in line 749 of docs/Makefile.* and 619 in 
docs/api/Makefile.*

How did you remove the directory? The correct way is to use selection 6, "delete directory and 
start over" from the jhbuild error menu. It should take care of getting the build restarted. 
OTOH I usually pick 2, "ignore the error and continue to configure" because it's frankly 
not that important to have the latest xmlsec code.


• Ran into a problem with libdbi-drivers: Had to add 
-L/Users/gnucash/gnucash-stable/build/libdbi-drivers-0.9.0/drivers/mysql to the 
Makefile located there, and link 
/usr/local/Cellar/mysql@5.6/5.6.46_2/lib/libmysqlclient.18.dylib there as well.

See above about Home-brew.


• Ran into: “can’t find cgreen/parameters.h” for libdbi-drivers-0.9.0. 
I linked 
/Users/gnucash/gnucash-stable/src/libdbi-drivers-0.9.0/tests/cgreen/include/cgreen
 to the target dir. That fixed it.

I've been meaning to write a patch about that.


• Intltool complained about version. I have the right version, so I 
removed check in the configure file.

It probably couldn't find the right version because of Home-brew.

• Then I was missing aclocal-1.15 … Ran  autoreconf -f -i as suggested.
• For libsoup same complaint about intltool version. Same action.
• Building shared-mime-info: manuallly ran configure 
--disable-dependency-tracking, then skipped to build, but hit Makefile 1161: 
*** missing separator. Edited. Also changed INTNL-UPDATE to intnl-update in 
Makefile.in.in in po. Also remove everything after “check” at line 149 same 
file.
Then I get a hard crash:
OSError: [Errno 2] No such file or directory: 
'/Users/gnucash/gnucash-stable/_jhbuild/root-shared-mime-info/Users/gnucash/gnucash-stable'
File "/Users/gnucash/Source/jhbuild/jhbuild/frontends/buildscript.py", line 
172, in build error, altphases = module.run_phase(self, phase)
I added a pdb.set_trace() in the python script and created the dirs, then 
continued the command. That worked.
It would be great if you could tell me if these errors ring a bell for you, and 
what better steps I should have taken to fix them... Not knowing anything about 
this build process I went for the most expedient solution I coul

[GNC-dev] Build on MacOS

2020-02-28 Thread Jean Laroche

Hi guys,
I'm trying to build on MacOS (macbook pro, High Sierra, 10.13.4).
Setting up the build was *not* easy, I had to deal with many issues 
during the jhbuild build phase (I kept notes so if it's interesting to 
someone I could list all the issues, and what I had to do to fix them).


My question, though is this:

Immediately upon starting to build gnucash-git (maint) I get this error:
CMake Error at common/test-core/CMakeLists.txt:43 (add_library):
  Cannot find source file:


/Users/gnucash/gnucash-stable/src/gnucash-git/common/test-core/swig-unittest-support-guile.c

Indeed, the file is nowhere to be found.


Is this related to something I see during the build:
*** Building googletest *** [63/71]
ninja
ninja: no work to do.

This ^^ is puzzling to me, nothing is getting built.

Can someone give me a pointer?
Thanks!
Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Docker for building GC?

2020-02-20 Thread Jean Laroche

Found some answers to my own question. For example this:
https://github.com/diablodale/gnucash-dev-docker
Sorry for the bother.
Jean

On 2/20/20 9:45 AM, Jean Laroche wrote:
Do you guys know if someone has ever created a docker image to allow 
building GC without having to install a bunch of stuff? Asking before I 
start setting up for building...

Jean

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


[GNC-dev] Docker for building GC?

2020-02-20 Thread Jean Laroche
Do you guys know if someone has ever created a docker image to allow 
building GC without having to install a bunch of stuff? Asking before I 
start setting up for building...

Jean
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


  1   2   >