Commit Graph

24831 Commits

Author SHA1 Message Date
Geert Janssens
9a465fc359 GSettings - add 'deprecate' and 'obsolete' conversions for user preferences
'deprecate' is technically a noop. It serves to remind maintainers
the 'deprecated' preference is to be obsoleted in the next major
release.
'obsolete' goes one step further in that it will cause gnucash to reset
the preference, effectively clearing the value stored in the preferences
backend. This is the final phase of a preference. Following this it
will be completely removed from the GSettings schema in the next
major release.

Notes
* 'deprecate' and 'migrate' are related. Both are a reminder the
preference is to be obsoleted in the next major release. 'deprecate'
does only that though while 'migrate' will also trigger a copy of
the old value to a new location in the databse.

* This commit readds a couple of preferences that had been removed
in the past to be able to properly obsolete them (and to test
the obsoleting code)
2021-10-01 14:46:55 +02:00
Geert Janssens
64576f7d27 GSettings - widen scope from 'migration' to 'transformation'
This commit mostly changes descriptions and variable names to
use the more generic terms 'transformations' or 'conversions'.
'migration' is only one possible transform, future commits will
add others.
There are no functional changes in this commit other than
a logic inversion in parse_one_release_node. It now checks
for nodes named 'migrate' rather than for nodes not named
'migrate' (the code is adapted accordingly to match this
logic change).
2021-10-01 13:59:55 +02:00
TianXing_Yi
71722c46ad
Translation update by TianXing_Yi <ytx.cash@gmail.com> using Weblate
po/zh_CN.po: 99.9% (5358 of 5363 strings; 0 fuzzy)
0 failing checks (0.0%)
Translation: GnuCash/Program (Chinese (Simplified))
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/zh_Hans/

Co-authored-by: TianXing_Yi <ytx.cash@gmail.com>
2021-09-29 19:35:50 +02:00
John Ralls
285017793d Use plain cat instead of cmake -E cat to join the migratable-prefs.
Cmake -E's cat is too new.
2021-09-29 10:35:19 -07:00
John Ralls
29e7b07ed3 Remove superflous schema_source left over from pasting. 2021-09-28 17:17:23 -07:00
John Ralls
d561cc6188 Revert "Revert "[gnc-plugin-page-register] when reversing reversed txn, offer jump""
This reverts commit c96024ab3d.
GnuCash 4.8a having been tagged.
2021-09-28 12:03:48 -07:00
John Ralls
96db26cc1d Retag 4.8 for more GSettings crash repairs. 2021-09-28 11:27:04 -07:00
John Ralls
8bfa5a63f2 [gsettings] Avoid crash from settings schema not being registered. 2021-09-28 11:00:05 -07:00
John Ralls
c96024ab3d Revert "[gnc-plugin-page-register] when reversing reversed txn, offer jump"
This reverts commit b8c9b1a6ce.
Because I need to re-tag 4.8 after more work on g_settings.
2021-09-28 10:23:55 -07:00
Geert Janssens
dee4f5e511 Rethink how gsettings migration file is constructed
The order in which cmake processes subdirectories in gnucash
matters because that also defines the order in which install
rules will be executed.
We have an install rule to compile the install gschema files.
That rule has to be run after all gschema files are installed.
Considering how our code is organized that means directory
gnucash/gschema should be processed after gnucash/import-export.
That requirement was incompatible with how migratable-prefs.xml
was generated (it required the exact opposite processing order).
This conflict causes gnucash to crash on startup because not
all gschema files are compiled as they should.
The changes in this commit should fix this.
2021-09-28 11:57:56 +02:00
John Ralls
a84891a43c Revert "Revert "[gnc-plugin-page-register] when reversing reversed txn, offer jump""
This reverts commit bdb5f3d871, restoring
the new jump-to-transaction facility post-4.8 release.
2021-09-27 18:12:31 -07:00
John Ralls
caa6bcd1ce Release GnuCash 4.8 2021-09-27 17:46:56 -07:00
John Ralls
bdb5f3d871 Revert "[gnc-plugin-page-register] when reversing reversed txn, offer jump"
This reverts commit b8c9b1a6ce so that
we can release 4.8 without any translatable string changes.
2021-09-27 15:35:35 -07:00
Geert Janssens
b7001b52cf GSettings hotfix - resolve crash due to bad schema reference 2021-09-27 09:20:16 +02:00
Christopher Lam
10c1223df2 Merge branch 'maint-progress' into maint #1150 2021-09-27 08:10:02 +08:00
Geert Janssens
2a7566cc40 Win32 - drop conditional code never reached
We had hardcoded HAVE_HTMLHELPW to always be true so the fallback
code that's only reached when it is false was never reached.
Time to drop this dead code.
2021-09-26 22:58:08 +02:00
Christopher Lam
cb4d9529dc [gnc-plugin-page-register] call invoice editor with parent window 2021-09-26 23:33:33 +08:00
Christopher Lam
8bfcc982dd [assistant-stock-split] set parent window properly
without this commit, the assistant-stock-split window will be hidden
if the register is activated.
2021-09-26 09:40:32 +08:00
Christopher Lam
d82bb7b8a2 [Transaction.c] use is_unset static to denote uncached readonly_reason
tests in 128c8d6f88
2021-09-26 09:40:32 +08:00
Christopher Lam
b8c9b1a6ce [gnc-plugin-page-register] when reversing reversed txn, offer jump
When reversing a transaction which is already reversed, offer a jump
to the reversal transaction.
2021-09-26 09:40:32 +08:00
John Ralls
c17d43ba83 Release GnuCash 4.7 2021-09-25 13:54:11 -07:00
Alexandre
2c069c3119
Translation update by Alexandre <nasmi3+weblate@gmail.com> using Weblate
po/fr.po: 75.9% (4072 of 5363 strings; 906 fuzzy)
374 failing checks (6.9%)
Translation: GnuCash/Program (French)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/fr/

Co-authored-by: Alexandre <nasmi3+weblate@gmail.com>
2021-09-25 07:34:45 +02:00
Christopher Lam
128c8d6f88 [utest-Transaction] add tests for xaccTransGetReadOnly 2021-09-25 13:27:56 +08:00
John Ralls
e123d1bec5 Bug 87847 - RFE: Create a 'checkbox' cell type 2021-09-24 16:23:43 -07:00
John Ralls
3d9faf70d8 Parent the AQB balance dialog to the matcher window when it's present. 2021-09-24 15:01:07 -07:00
Christopher Lam
b6cbc97865 Another double g_object_unref in 998e14c107 2021-09-24 09:35:59 +08:00
Christopher Lam
8e144c2d5c Don't double g_object_unref in 998e14c107 2021-09-24 09:32:29 +08:00
jean
d0d4d95e3b Change the wording of the dialog when no new transactions need to be reviewed 2021-09-23 18:31:14 -07:00
Alexandre
7e5f44c0ff
Translation update by Alexandre <nasmi3+weblate@gmail.com> using Weblate
po/fr.po: 75.5% (4052 of 5363 strings; 912 fuzzy)
376 failing checks (7.0%)
Translation: GnuCash/Program (French)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/fr/

Co-authored-by: Alexandre <nasmi3+weblate@gmail.com>
2021-09-23 21:11:06 +02:00
John Ralls
09b2533c0d More OFX_INVBANKTRANS fixes.
Includes fixing broken build if libofx is < v 0.10.
2021-09-23 12:10:40 -07:00
Alexandre
09da6aa183
Translation update by Alexandre <nasmi3+weblate@gmail.com> using Weblate
po/fr.po: 75.1% (4029 of 5363 strings; 934 fuzzy)
384 failing checks (7.1%)
Translation: GnuCash/Program (French)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/fr/

Translation update  by Alexandre <nasmi3+weblate@gmail.com> using Weblate

po/fr.po: 75.1% (4029 of 5363 strings; 934 fuzzy)
384 failing checks (7.1%)
Translation: GnuCash/Program (French)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/fr/

Co-authored-by: Alexandre <nasmi3+weblate@gmail.com>
2021-09-23 13:29:07 +02:00
Milo Ivir
75af645ab0
Translation update by Milo Ivir <mail@milotype.de> using Weblate
po/hr.po: 100.0% (5363 of 5363 strings; 0 fuzzy)
0 failing checks (0.0%)
Translation: GnuCash/Program (Croatian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hr/

Co-authored-by: Milo Ivir <mail@milotype.de>
2021-09-23 01:14:11 +02:00
John Ralls
3cf9f85ea3 Bug 798208 - management fee transactions are ignored on OFX import
Treat INVBANKTRAN like BANKTRAN.
2021-09-22 16:07:49 -07:00
Geert Janssens
8ea52ae212 GSettings - run data model transations while setting up
This makes sure all schema changes are in effect before
the first consumer can query them. For example this will
prevent a one-time re-occurrence of the tip of the day dialog
the first time the new migrations are run.
2021-09-22 15:44:30 +02:00
Geert Janssens
e1039b2dba GSettings Upgrade - add missing aqb and ofx deprecated schema keys
They are unused by GnuCash except for migrating their
values to the newer equivalents. For simplicity they
are added to the main deprecated schema file. They
will be fully removed in a future major release.
2021-09-22 15:31:17 +02:00
Christopher Lam
94f6d11e3d [gnc-budget-view] initialize totals_col_list in reverse
b2b879211 had modified totals_cols_list from g_list_append to
g_list_prepend and g_list_reverse. this assumed that it was already
initialized in reverse. this commit fixes it to ensure
gnc_budget_view_refresh is processing the reversed totals_col_list.
2021-09-22 21:08:57 +08:00
Christopher Lam
c0736a1a04 Merge branch 'maint-leaks' into maint #1135 2021-09-22 21:06:25 +08:00
Frank H. Ellenberger
78d5003375
Translation update by Frank H. Ellenberger <frank.h.ellenberger@gmail.com> using Weblate
po/de.po: 100.0% (5363 of 5363 strings; 0 fuzzy)
231 failing checks (4.3%)
Translation: GnuCash/Program (German)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/de/

Co-authored-by: Frank H. Ellenberger <frank.h.ellenberger@gmail.com>
2021-09-21 21:52:45 +02:00
Christian Wehling
569322c1e2
Translation update by Christian Wehling <christian.wehling@web.de> using Weblate
po/de.po: 99.9% (5361 of 5363 strings; 2 fuzzy)
231 failing checks (4.3%)
Translation: GnuCash/Program (German)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/de/

Co-authored-by: Christian Wehling <christian.wehling@web.de>
2021-09-21 21:52:45 +02:00
Geert Janssens
f1802b6fdf GSettings Upgrade - add code to migrate settings
The rules for migration are read from an xml file. This file was
prepared in a previous commit. Future settings 'data model' changes can
reuse this code by simply adding migration rules in the xml file.

This replaces the hardcoded rules that were currently in place to
migrate a few settings from 2.6 and older to 3.0. These rules are no
longer meaningful as we require users to migrate from one major release
series to the immediate next one. So by the time the new migration rules
in this commit are applied by users they should already have run gnucash
3.x at least once. That run should have taken care of the pre-3.0
migration actions.
2021-09-21 17:10:56 +02:00
Geert Janssens
b3daeecb85 GSettings Upgrade - Compose a list of settings that can be migrated at runtime
This list consists of old and new values for gsettings paths and keys
and will allow gnucash to migrate values from each old path and key
to the corresponding new path and key.
2021-09-21 17:10:56 +02:00
Geert Janssens
f21c7b6e90 GSettings - define old prefix and check settings for the presence of both prefixes while normalizing 2021-09-21 17:10:56 +02:00
Geert Janssens
a203c5b2d5 GSettings - drop logic to relocate our settings
This was ported from GConf, but GSettings doesn't work that way.
Settings locations are defined at compile time and can't be
relocated at run time (unless you make all of the settings
explicitly relocatable. That however is not how GSettings is meant to be
used.)
2021-09-21 17:10:56 +02:00
Geert Janssens
d1113a4534 GSettings - build as cpp 2021-09-21 17:10:56 +02:00
Geert Janssens
02fbf217f6 GSettings Upgrade - change schema prefix from org.gnucash to org.gnucash.GnuCash
The latter is the prefix format prescribed by gsettings itself. The former never
was an issue until flatpak decided to not accept the shorter prefix when
requesting a settings migration from host system to flatpak sandbox.

In order to allow for migration, keep the old schema around in
org.gnucash.GnuCash.deprecated.gschema.in

While we're at it, make the new prefix an internal implementation detail.
There's no need for it to be visible to the rest of the gnucash code.
2021-09-21 17:10:55 +02:00
Geert Janssens
6674b1bb6b Cleanup - minimal glib=2.56.1 - drop all conditionals on older versions 2021-09-21 17:10:55 +02:00
Eric
a20f2defc2
Translation update by Eric <spice2wolf@gmail.com> using Weblate
po/zh_CN.po: 99.9% (5358 of 5363 strings; 0 fuzzy)
0 failing checks (0.0%)
Translation: GnuCash/Program (Chinese (Simplified))
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/zh_Hans/

Co-authored-by: Eric <spice2wolf@gmail.com>
2021-09-21 05:37:43 +02:00
Wellington Terumi Uemura
2870d3f2d2
Translation update by Wellington Terumi Uemura <wellingtonuemura@gmail.com> using Weblate
po/pt_BR.po: 100.0% (5363 of 5363 strings; 0 fuzzy)
0 failing checks (0.0%)
Translation: GnuCash/Program (Portuguese (Brazil))
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/pt_BR/

Co-authored-by: Wellington Terumi Uemura <wellingtonuemura@gmail.com>
2021-09-21 05:37:42 +02:00
Yaron Shahrabani
06346c5ef0
Translation update by Yaron Shahrabani <sh.yaron@gmail.com> using Weblate
po/he.po: 100.0% (5363 of 5363 strings; 0 fuzzy)
0 failing checks (0.0%)
Translation: GnuCash/Program (Hebrew)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/he/

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
2021-09-21 05:37:41 +02:00
Frank H. Ellenberger
1af8deac60 I18N: msgmerge 4.7-pre2 2021-09-20 22:42:35 +02:00