Re: [GNC-dev] Preferences for Accounting Period start-date and end-date lost on 4.9 Install

2022-01-14 Thread john
Chris,

Geert is right, at least for now, both because of the OpenSP failure and 
because the latest MSYS2 updates require a new webkit build and I haven't yet 
done the 64-bit one.

You can't just run the 32-bit build, though, because you've installed the 
64-bit dependencies. You could reinstall them by hand but it's much easier to 
re-run setup-mingw64.ps1 and leave off the -x86_64 $true argument. Note that I 
haven't tried doing this on an already-built environment. It might not work.

The TARGET environment variable is read by jhbuildrc to decide which branch to 
build. The default is master, generally not what you want.

Regards,
John Ralls

> On Jan 14, 2022, at 1:11 AM, Geert Janssens  
> wrote:
> 
> Hi Chris,
> 
> I don't think we support building a 64bit version on Windows.
> 
> Can you run your commands in the 32bit mingw64 shell (MSys2 64bit/MSys2 MinGW 
> 32-bit) 
> to at least avoid any additional bugs due to the different environment ?
> 
> Note the name is confusing. MingW64 is the name of the project (to 
> differentiate from an 
> older MingW32 project), but it provides both a 32bit and a 64bit environment 
> for 
> development. So far gnucash has only used the 32bit environment.
> 
> Regards,
> 
> Geert
> 
> Op vrijdag 14 januari 2022 08:01:09 CET schreef Chris Good:
>> Hi Devs,
>> 
>> I'm trying to build gnucash-on-windows so I can find where the "subscribe"
>> error above is coming from.
>> I ran setup-mingw64.ps1 like:
>> E:
>> cd \Data\GnuCash\gcdev64
>> .\setup-mingw64.ps1 -target_dir "e:\\Data\\GnuCash\\gcdev64" -download_dir
>> "e:\\Data\\GnuCash\\gcdev64\\downloads" -x86_64
>> 
>> The setup seems to have worked with the exception of HtmlHelp but I don't
>> need to build the documentation so I've ignored that.
>> 
>> The build is failing when I run in a MSYS2 64Bit / MSYS2 MinGW x64 window
>> (not as admin):
>> (As suggested by
>> https://wiki.gnucash.org/wiki/Building_on_Windows#Running_a_build)
>> 
>> cd /e/Data/GnuCash/gcdev64/src/gnucash-on-windows.git
>> TARGET=gnucash-maint jhbuild -f jhbuildrc build
>> 
>> Please see attached full log.
>> 
>> Note the output from the setup says:
>> 
>> Your build environment is now ready to use. Open an MSys2/mingw64 shell from
>> the start menu, cd to /e/Data/GnuCash/gcdev64, and run
>> jhbuild -f src/gnucash-on-windows.git/jhbuildrc build
>> 
>> Should I be doing that before the above "TARGET=... command or instead of?
>> 
>> 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] Preferences for Accounting Period start-date and end-date lost on 4.9 Install

2022-01-14 Thread Geert Janssens
Hi Chris,

I don't think we support building a 64bit version on Windows.

Can you run your commands in the 32bit mingw64 shell (MSys2 64bit/MSys2 MinGW 
32-bit) 
to at least avoid any additional bugs due to the different environment ?

Note the name is confusing. MingW64 is the name of the project (to 
differentiate from an 
older MingW32 project), but it provides both a 32bit and a 64bit environment 
for 
development. So far gnucash has only used the 32bit environment.

Regards,

Geert

Op vrijdag 14 januari 2022 08:01:09 CET schreef Chris Good:
> Hi Devs,
> 
> I'm trying to build gnucash-on-windows so I can find where the "subscribe"
> error above is coming from.
> I ran setup-mingw64.ps1 like:
> E:
> cd \Data\GnuCash\gcdev64
> .\setup-mingw64.ps1 -target_dir "e:\\Data\\GnuCash\\gcdev64" -download_dir
> "e:\\Data\\GnuCash\\gcdev64\\downloads" -x86_64
> 
> The setup seems to have worked with the exception of HtmlHelp but I don't
> need to build the documentation so I've ignored that.
> 
> The build is failing when I run in a MSYS2 64Bit / MSYS2 MinGW x64 window
> (not as admin):
> (As suggested by
> https://wiki.gnucash.org/wiki/Building_on_Windows#Running_a_build)
> 
> cd /e/Data/GnuCash/gcdev64/src/gnucash-on-windows.git
> TARGET=gnucash-maint jhbuild -f jhbuildrc build
> 
> Please see attached full log.
> 
> Note the output from the setup says:
> 
> Your build environment is now ready to use. Open an MSys2/mingw64 shell from
> the start menu, cd to /e/Data/GnuCash/gcdev64, and run
> jhbuild -f src/gnucash-on-windows.git/jhbuildrc build
> 
> Should I be doing that before the above "TARGET=... command or instead of?
> 
> Regards, Chris Good


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


Re: [GNC-dev] Preferences for Accounting Period start-date and end-date lost on 4.9 Install

2022-01-13 Thread Chris Good
-Original Message-
From: Chris Good  
Sent: Friday, 7 January 2022 7:23 PM
To: 'john' 
Cc: gnucash-devel@gnucash.org
Subject: RE: [GNC-dev] Preferences for Accounting Period start-date and
end-date lost on 4.9 Install

-Original Message-
From: john 
Sent: Monday, 3 January 2022 11:40 AM
To: Chris Good 
Cc: gnucash-devel@gnucash.org
Subject: Re: [GNC-dev] Preferences for Accounting Period start-date and
end-date lost on 4.9 Install

> On Jan 2, 2022, at 4:25 PM, Chris Good  wrote:
> 
> Hi All,
> 
> I installed Gnucash 4.9 on my Windows 10 machine (was 4.4) and the 
> Preferences for Accounting Period start-date and end-date were lost.
> 
> They have gone back to the default 1/1/1970.
> 
> Looking in the registry I can see they have been migrated (moved) from 
> HKCU\Software\GSettings\org\gnucash\window\pages\account-tree\summary\
> [start -date etc]
> 
>  To
> 
> HKCU\Software\GSettings\org\gnucash\GnuCash\window\pages\account-tree\
> summary
> 
> but the Preference dialog and the Accounts page still seem to be 
> looking at the old keys.
> 
> I set them again using the preferences dialog and now they are in both 
> the old and new locations.
> 
> After View, Refresh the Accounts page is showing the correct
> Total(Period) figures again.
> 
> If it makes any difference, the first time I opened 4.9 it was with 
> the --nofile arg.
> 
> Should the old or new schema location be used?
> 
> HKCU\Software\GSettings\org\gnucash\general\prefs-version = 404
> HKCU\Software\GSettings\org\gnucash\GnuCash\general\prefs-version =
> 4009

The new schema is correct for GnuCash 4.7 and later.

Regards,
John Ralls

Hi John,

I put the registry back to how it was before I ran 4.9 (my BackupGnuCash
utility saves the state of the Registry) and started 4.9 with args --debug
--log gnc.pref=debug --log gnc.app-utils.gsettings=debug (no --nofile this
time).

This did something different to last time. Now the old path
HKCU\Software\GSettings\org\gnucash\window\pages\account-tree\summary
 is still correct and the new path
HKCU\Software\GSettings\org\gnucash\GnuCash\window\pages\account-tree\summar
y
exists but is empty.

The tracefile shows lots of subscribe warnings in the preferences migration
and also afterwards:

* 18:14:11  INFO  [migrate_one_key]
Migrating 'org.gnucash.dialogs.import.csv:last-geometry' to
'org.gnucash.GnuCash.dialogs.import.csv:last-geometry'
* 18:14:11 DEBUG  [enter
C:/gcdev64/gnucash/releases/src/gnucash-4.9/libgnucash/app-utils/gnc-gsettin
gs.cpp:gnc_gsettings_get_settings_ptr()]
* 18:14:11 DEBUG  [gnc_gsettings_get_settings_ptr]
Looking for schema org.gnucash.dialogs.import.csv returned gsettings

* 18:14:11  WARN  subscribe() failed: only 64
different paths may be watched.

It seems this is from:
https://gitlab.gnome.org/GNOME/glib/-/blob/main/gio/gregistrysettingsbackend
.c
Because we have to cache every registry value locally, reads are done
 * from the cache rather than directly from the registry. Writes update
 * both. This means that the backend will not work if the watch thread
is
 * not running. A GSettings object always subscribes to changes so we
can
 * be sure that the watch thread will be running, but if for some reason
 * the backend is being used directly you should bear that in mind.

/* Testing (on Windows XP SP3) shows that WaitForMultipleObjects fails with
 * "The parameter is incorrect" after 64 watches. We need one for the
 * message_sent cond, which is allowed for in the way the watches_remaining
 * variable is used.
 */
#define MAX_WATCHES   64

g_registry_backend_subscribe()
  if (g_atomic_int_dec_and_test (>watch->watches_remaining))
{
  g_atomic_int_inc (>watch->watches_remaining);
  g_warning ("subscribe() failed: only %i different paths may be
watched.", MAX_WATCHES);
  return;
}

I've no idea why g_registry_backend_subscribe() is being called.
Perhaps it is for every GSettings object so the warning thread can monitor
changes?
I cannot find anything in the GSettings doco about a 64 limit on
subscriptions.

Anybody have any ideas about what in GnuCash is causing these errors in
Windows?
I haven't seen any of these subscribe warnings in my Linux system.

I may try to setup a Windows build environment so I can get a stack trace
when I get some time.
Do you have to pay for anything to do this for Windows?

Regards, Chris Good

Hi Devs,

I'm trying to build gnucash-on-windows so I can find where the "subscribe"
error above is coming from.
I ran setup-mingw64.ps1 like:
E:
cd \Data\GnuCash\gcdev64
.\setup-mingw64.ps1 -target_dir "e:\\Data\\GnuCash\\gcdev64" -download_dir
"e:\\Data\\GnuCash\\gcdev64\\downloads" -x86_64

The setup seems to have worked with the exception of HtmlHelp but I don't
need to build the documentation so I've ignored that.

The build is failing when I run in a MSYS2 64Bit / MSYS2 MinGW x64 window
(not as admin):
(As suggested by

Re: [GNC-dev] Preferences for Accounting Period start-date and end-date lost on 4.9 Install

2022-01-07 Thread Chris Good
-Original Message-
From: john  
Sent: Monday, 3 January 2022 11:40 AM
To: Chris Good 
Cc: gnucash-devel@gnucash.org
Subject: Re: [GNC-dev] Preferences for Accounting Period start-date and
end-date lost on 4.9 Install

> On Jan 2, 2022, at 4:25 PM, Chris Good  wrote:
> 
> Hi All,
> 
> I installed Gnucash 4.9 on my Windows 10 machine (was 4.4) and the 
> Preferences for Accounting Period start-date and end-date were lost.
> 
> They have gone back to the default 1/1/1970.
> 
> Looking in the registry I can see they have been migrated (moved) from
> HKCU\Software\GSettings\org\gnucash\window\pages\account-tree\summary\
> [start -date etc]
> 
>  To
> 
> HKCU\Software\GSettings\org\gnucash\GnuCash\window\pages\account-tree\
> summary
> 
> but the Preference dialog and the Accounts page still seem to be 
> looking at the old keys.
> 
> I set them again using the preferences dialog and now they are in both 
> the old and new locations.
> 
> After View, Refresh the Accounts page is showing the correct 
> Total(Period) figures again.
> 
> If it makes any difference, the first time I opened 4.9 it was with 
> the --nofile arg.
> 
> Should the old or new schema location be used?
> 
> HKCU\Software\GSettings\org\gnucash\general\prefs-version = 404
> HKCU\Software\GSettings\org\gnucash\GnuCash\general\prefs-version = 
> 4009

The new schema is correct for GnuCash 4.7 and later.

Regards,
John Ralls

Hi John,

I put the registry back to how it was before I ran 4.9 (my BackupGnuCash
utility saves
the state of the Registry) and started 4.9 with args
--debug --log gnc.pref=debug --log gnc.app-utils.gsettings=debug
(no --nofile this time).

This did something different to last time. Now the old path
HKCU\Software\GSettings\org\gnucash\window\pages\account-tree\summary
 is still correct and the new path
HKCU\Software\GSettings\org\gnucash\GnuCash\window\pages\account-tree\summar
y
exists but is empty.

The tracefile shows lots of subscribe warnings in the preferences migration
and also afterwards:

* 18:14:11  INFO  [migrate_one_key]
Migrating 'org.gnucash.dialogs.import.csv:last-geometry' to
'org.gnucash.GnuCash.dialogs.import.csv:last-geometry'
* 18:14:11 DEBUG  [enter
C:/gcdev64/gnucash/releases/src/gnucash-4.9/libgnucash/app-utils/gnc-gsettin
gs.cpp:gnc_gsettings_get_settings_ptr()] 
* 18:14:11 DEBUG 
[gnc_gsettings_get_settings_ptr] Looking for schema
org.gnucash.dialogs.import.csv returned gsettings 
* 18:14:11  WARN  subscribe() failed: only 64
different paths may be watched.

It seems this is from:
https://gitlab.gnome.org/GNOME/glib/-/blob/main/gio/gregistrysettingsbackend
.c
Because we have to cache every registry value locally, reads are done
 * from the cache rather than directly from the registry. Writes update
 * both. This means that the backend will not work if the watch thread
is
 * not running. A GSettings object always subscribes to changes so we
can
 * be sure that the watch thread will be running, but if for some reason
 * the backend is being used directly you should bear that in mind.

/* Testing (on Windows XP SP3) shows that WaitForMultipleObjects fails with
 * "The parameter is incorrect" after 64 watches. We need one for the
 * message_sent cond, which is allowed for in the way the watches_remaining
 * variable is used.
 */
#define MAX_WATCHES   64

g_registry_backend_subscribe()
  if (g_atomic_int_dec_and_test (>watch->watches_remaining))
{
  g_atomic_int_inc (>watch->watches_remaining);
  g_warning ("subscribe() failed: only %i different paths may be
watched.", MAX_WATCHES);
  return;
}

I've no idea why g_registry_backend_subscribe() is being called.
Perhaps it is for every GSettings object so the warning thread can monitor
changes?
I cannot find anything in the GSettings doco about a 64 limit on
subscriptions.

Anybody have any ideas about what in GnuCash is causing these errors in
Windows?
I haven't seen any of these subscribe warnings in my Linux system.

I may try to setup a Windows build environment so I can get a stack trace
when I get some time.
Do you have to pay for anything to do this for Windows?

Regards, Chris Good

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


Re: [GNC-dev] Preferences for Accounting Period start-date and end-date lost on 4.9 Install

2022-01-02 Thread john



> On Jan 2, 2022, at 4:25 PM, Chris Good  wrote:
> 
> Hi All,
> 
> 
> 
> I installed Gnucash 4.9 on my Windows 10 machine (was 4.4) and the
> Preferences for Accounting Period start-date and end-date were lost.
> 
> They have gone back to the default 1/1/1970.
> 
> 
> 
> Looking in the registry I can see they have been migrated (moved) from
> 
> 
> HKCU\Software\GSettings\org\gnucash\window\pages\account-tree\summary\[start
> -date etc]
> 
>  To
> 
> 
> HKCU\Software\GSettings\org\gnucash\GnuCash\window\pages\account-tree\summar
> y
> 
> 
> 
> but the Preference dialog and the Accounts page still seem to be looking at
> the old keys.
> 
> 
> 
> I set them again using the preferences dialog and now they are in both the
> old and new locations.
> 
> After View, Refresh the Accounts page is showing the correct Total(Period)
> figures again.
> 
> 
> 
> If it makes any difference, the first time I opened 4.9 it was with the
> --nofile arg.
> 
> 
> 
> Should the old or new schema location be used?
> 
> 
> 
> HKCU\Software\GSettings\org\gnucash\general\prefs-version = 404
> 
> HKCU\Software\GSettings\org\gnucash\GnuCash\general\prefs-version = 4009

The new schema is correct for GnuCash 4.7 and later.

Regards,
John Ralls

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


[GNC-dev] Preferences for Accounting Period start-date and end-date lost on 4.9 Install

2022-01-02 Thread Chris Good
Hi All,

 

I installed Gnucash 4.9 on my Windows 10 machine (was 4.4) and the
Preferences for Accounting Period start-date and end-date were lost.

They have gone back to the default 1/1/1970.

 

Looking in the registry I can see they have been migrated (moved) from

 
HKCU\Software\GSettings\org\gnucash\window\pages\account-tree\summary\[start
-date etc]

  To

 
HKCU\Software\GSettings\org\gnucash\GnuCash\window\pages\account-tree\summar
y

 

but the Preference dialog and the Accounts page still seem to be looking at
the old keys.

 

I set them again using the preferences dialog and now they are in both the
old and new locations.

After View, Refresh the Accounts page is showing the correct Total(Period)
figures again.

 

If it makes any difference, the first time I opened 4.9 it was with the
--nofile arg.

 

Should the old or new schema location be used?

 

HKCU\Software\GSettings\org\gnucash\general\prefs-version = 404

HKCU\Software\GSettings\org\gnucash\GnuCash\general\prefs-version = 4009

 

Regards,

Chris Good

 

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