Commit Graph

26716 Commits

Author SHA1 Message Date
Geert Janssens
466db526b2 Move source files for GncQuotes to app-utils
It will depend on functions in that library. This can probably be
fixed by cleaning up app-utils, but that's not the topic of
this feature.
2022-10-02 11:50:25 -07:00
Geert Janssens
8c4bd86c7b Fix memory leak as suggested by Christopher Lam 2022-10-02 11:50:25 -07:00
Geert Janssens
9d62755b4a Make GncQuotes::check() a private function, returning nothing
At the same time do an explicit reinstantiation of quotes_cached at first use
to work around what seems to be a race condition between static instantiation
and binreloc.
2022-10-02 11:50:25 -07:00
Geert Janssens
32df095d4f Catch potential boost::process exceptions
Could happen if the perl executable isn't found and perhaps also
if there's a stream exception.
2022-10-02 11:50:25 -07:00
Geert Janssens
d79306f7db Protect boost process output read loop from deadlock
As per the boost::process tutorials
2022-10-02 11:50:25 -07:00
Geert Janssens
f658ff409f Tweak line endings in output streams
Flush only at the very end.
2022-10-02 11:50:25 -07:00
Geert Janssens
8b772384cd Various performance fixes based on feedback
- const correctnes
- avoid unnecessary copying
- avoid need to reverse GList
2022-10-02 11:50:25 -07:00
Geert Janssens
2f7ed7f25d Initial version of libgnc-quotes
This library intends to wrap Finance::Quote the way price-quotes.scm currently does.
In this first commit the library replaces price-quotes.scm's library to install
quote sources. In addition it exposes a new command line parameter  in gnucash-cli
to show which version of Finance::Quote is installed on the system (if any) and
which quotes sources that verions exposes.
2022-10-02 11:50:25 -07:00
John Ralls
eb24099a91 Limit instantiation of GncInt128 constructors to integral values.
Instead of using static_assert. This prevents the compiler from even
trying and avoids weird compilation errors when testing types for
instantiating other templates.
2022-10-02 11:43:06 -07:00
John Ralls
23ca899a77 Fix build on Apple Silicon or maybe Apple-clang-14.0
The compiler complains that there's no matching
gnc_register_number_range_option for GncOptionDB*, which without this
commit is true because the explicit templates are for GncOptionDBPtr&.
Note that the original template definition is for GncOptionDB* and
that the header-defined inlines that take GncOptionDBPtr& call the
GncOptionDB* version.
2022-10-02 11:42:52 -07:00
John Ralls
b0ae402c23 Limit instantiation of GncInt128 constructors to integral values.
Instead of using static_assert. This prevents the compiler from even
trying and avoids weird compilation errors when testing types for
instantiating other templates.
2022-10-02 10:15:15 -07:00
John Ralls
3c75d212ab Fix build on Apple Silicon or maybe Apple-clang-14.0
The compiler complains that there's no matching
gnc_register_number_range_option for GncOptionDB*, which without this
commit is true because the explicit templates are for GncOptionDBPtr&.
Note that the original template definition is for GncOptionDB* and
that the header-defined inlines that take GncOptionDBPtr& call the
GncOptionDB* version.
2022-10-02 10:15:01 -07:00
John Ralls
a6e2842ea0 More distcheck fixes. 2022-10-02 09:47:35 -07:00
Philippe Lamare
41a0e25f8d
Translation update by Philippe Lamare <ph.lamare@free.fr> using Weblate
po/fr.po: 100.0% (5401 of 5401 strings; 0 fuzzy)
1 failing checks (0.1%)
Translation: GnuCash/Program (French)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/fr/

Co-authored-by: Philippe Lamare <ph.lamare@free.fr>
2022-10-02 17:52:07 +02:00
John Ralls
283a5b7ce9 Fix dist, files moved 2022-10-01 17:39:31 -07:00
John Ralls
8cb8f5067d Remove non-ISO4217 currency codes from gnc-euro table.
They're not reachable because they don't have commodities associated with them.
2022-09-30 15:12:19 -07:00
John Ralls
d8417c3cfa Move gnc-euro.[ch] to engine and unit test it. 2022-09-30 15:12:12 -07:00
John Ralls
2774f8f88c Bug 798614 - Croatia to join the Euro
Add HRK to the conversion array.
2022-09-30 13:51:28 -07:00
ovari
6269e3c156
Translation update by ovari <ovari123@zoho.com> using Weblate
po/hu.po: 60.4% (3265 of 5401 strings; 1286 fuzzy)
508 failing checks (9.4%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/

Translation update  by ovari <ovari123@zoho.com> using Weblate

po/hu.po: 58.9% (3183 of 5401 strings; 1288 fuzzy)
507 failing checks (9.3%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/

Co-authored-by: ovari <ovari123@zoho.com>
2022-09-30 13:18:56 +02:00
Guille Lopez
804cda8be0
Translation update by Guille Lopez <willelopz@gmail.com> using Weblate
po/es.po: 99.9% (5400 of 5401 strings; 1 fuzzy)
2 failing checks (0.1%)
Translation: GnuCash/Program (Spanish)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/es/

Co-authored-by: Guille Lopez <willelopz@gmail.com>
2022-09-30 13:18:56 +02:00
Christopher Lam
bb830cec3a gtk_file_chooser_get_filename|uri returns a char* which must be freed 2022-09-30 07:52:56 +08:00
Christopher Lam
c78bb3c22c [test-gnc-option-scheme-output.scm] more scheme typos
Addendum to 11d395185
2022-09-27 21:36:05 +08:00
Sarekashi
a27adb78e3
Translation update by Sarekashi <sarekashi@tuta.io> using Weblate
po/id.po: 96.0% (5187 of 5401 strings; 189 fuzzy)
186 failing checks (3.4%)
Translation: GnuCash/Program (Indonesian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/id/

Co-authored-by: Sarekashi <sarekashi@tuta.io>
2022-09-27 10:20:28 +02:00
ovari
6e10fba497
Translation update by ovari <ovari123@zoho.com> using Weblate
po/hu.po: 58.6% (3165 of 5401 strings; 1304 fuzzy)
540 failing checks (9.9%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/

Translation update  by ovari <ovari123@zoho.com> using Weblate

po/hu.po: 58.6% (3165 of 5401 strings; 1304 fuzzy)
540 failing checks (9.9%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/

Co-authored-by: ovari <ovari123@zoho.com>
2022-09-27 10:20:27 +02:00
Luis D. Lafaurie
2c00c03bdc
Translation update by Luis D. Lafaurie <luis.lafaurie@tecnativa.com> using Weblate
po/es.po: 99.9% (5400 of 5401 strings; 1 fuzzy)
2 failing checks (0.1%)
Translation: GnuCash/Program (Spanish)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/es/

Co-authored-by: Luis D. Lafaurie <luis.lafaurie@tecnativa.com>
2022-09-27 10:20:26 +02:00
Vik
db123cb281
Translation update by Vik <k3kelm4vw@mozmail.com> using Weblate
po/glossary/ru.po: 82.8% (179 of 216 strings; 16 fuzzy)
0 failing checks (0.0%)
Translation: GnuCash/Glossary (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/glossary/ru/

Translation update  by Vik <k3kelm4vw@mozmail.com> using Weblate

po/glossary/ru.po: 82.8% (179 of 216 strings; 16 fuzzy)
0 failing checks (0.0%)
Translation: GnuCash/Glossary (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/glossary/ru/

Co-authored-by: Vik <k3kelm4vw@mozmail.com>
2022-09-27 10:20:26 +02:00
Milo Ivir
0abad502f3
Translation update by Milo Ivir <mail@milotype.de> using Weblate
po/hr.po: 100.0% (5401 of 5401 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>
2022-09-27 10:20:25 +02:00
John Ralls
11d395185c Fix spelling of xaccAccountGetType. 2022-09-26 09:31:47 -07:00
John Ralls
3949821da6 Merge branch 'maint' 2022-09-25 11:50:10 -07:00
John Ralls
ebd340674e Release GnuCash 4.12 2022-09-24 14:06:53 -07:00
Maxime Leroy
6f0d1fa60f
Translation update by Maxime Leroy <lisacintosh@gmail.com> using Weblate
po/fr.po: 99.9% (5399 of 5401 strings; 2 fuzzy)
3 failing checks (0.1%)
Translation: GnuCash/Program (French)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/fr/

Co-authored-by: Maxime Leroy <lisacintosh@gmail.com>
2022-09-24 07:54:05 +02:00
Minjae Isaac Kwon
87c1e4752a
Translation update by Minjae Isaac Kwon <minjae.isaac.kwon@gmail.com> using Weblate
po/ko.po: 63.8% (3450 of 5401 strings; 1015 fuzzy)
263 failing checks (4.8%)
Translation: GnuCash/Program (Korean)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ko/

Co-authored-by: Minjae Isaac Kwon <minjae.isaac.kwon@gmail.com>
2022-09-24 07:54:05 +02:00
Eduardo Malaspina
9c4fac3da7
Translation update by Eduardo Malaspina <vaio0@swismail.com> using Weblate
po/es.po: 99.8% (5391 of 5401 strings; 10 fuzzy)
10 failing checks (0.1%)
Translation: GnuCash/Program (Spanish)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/es/

Co-authored-by: Eduardo Malaspina <vaio0@swismail.com>
2022-09-24 07:54:05 +02:00
Christopher Lam
ae993503ee [assistant-stock-transaction] better punctuation for error messages. 2022-09-24 13:53:18 +08:00
Christopher Lam
1cac132214 [gnc-plugin-page-register] hide toolbar and menu in regular register
Instead of toggling sensitivity according to xaccAccountIsPriced,
toggle visibility instead.
2022-09-22 22:50:57 +08:00
Christopher Lam
05f952dbe8 [assistant-stock-transaction] use cpp form for struct
...and remove unused pointer in struct
2022-09-22 22:50:57 +08:00
Christopher Lam
788c3ee617 [import-main-matcher] setup_entry handles NULL and empty initial
gtk_entry_set_text throws a warning if initial is empty. Avoid calling
when initial==NULL.

Also, if the imported transaction has empty-string desc/notes/memo, we
don't want to populate the GtkEntryCompletion with it.
2022-09-21 00:11:55 +08:00
Christopher Lam
3e4a4dbfe1 [import-main-matcher] initialize hash tables in common setup
... otherwise the hash tables aren't initialized when the CSV importer
calls the import matcher.
2022-09-21 00:11:55 +08:00
John Ralls
2505955ab9 Fix test failure from Bug 798616 fix. 2022-09-20 09:09:34 -07:00
Robert Fewell
8aa035144b This commit changes the GNCAccountSel widget to use a common account
list store based on the account-quickfill. Only the store is used here
with a filter model on top which is used by the combo.

When the first GAS is created, an account-quickfill list store is
created, kept up to date with account change events all subsequent uses
of GAS widget use this list store. With the use of a filter model the
GAS can tailored for use.
2022-09-20 15:16:39 +01:00
Robert Fewell
e211626638 Add an entry width property to GNCAccountSel widget
Add a property to GNCAccountSel widget so that you can specify the
entry width. This can be used to specify the width of the GAS when you
do not want it to take up all the space available.
2022-09-20 12:42:52 +01:00
Robert Fewell
4d96c0d74c Change GNCAccountSel horizontal expand to a property
Add a horizontal expand property to GNCAccountSel widget and set the
default expansion to TRUE.
2022-09-20 12:38:47 +01:00
Robert Fewell
13bb321c06 Update delete sub accounts GAS
When deleting accounts and moving sub-accounts, placeholder accounts
can be used so change property of GAS accordingly.
2022-09-20 12:36:37 +01:00
Robert Fewell
1d163b7f26 Add ability to hide placeholder and hidden accounts to GAS
Change the GNCAccountSel widget to hide placeholder and hidden
accounts. By default these accounts are hidden, but with the use of a
secondary icon a popup menu is presented where the list can be
configured to show them. Also when the GNCAccountSel is set to a
specific account with with gnc_account_sel_set_account, the placeholder
and hidden properties are checked and appropriate changes made so the
account will be visible.
2022-09-20 12:34:42 +01:00
Robert Fewell
3b3f574c8b Bug 798475 - GNCAccountSel could have shortcuts
Add ability to enter e:g:t in account select entry widget which would
generate the full account path 'Expenses:Goverment:Taxes'. This is done
by an 'insert-text' callback that looks for the account separator key
being pressed. Also change the completion function so that it will
present a list of any account full paths that contain an entered search
string any where in the full path.
2022-09-20 11:54:19 +01:00
Arve Eriksson
43b6c17b92
Translation update by Arve Eriksson <031299870@telia.com> using Weblate
po/sv.po: 100.0% (5401 of 5401 strings; 0 fuzzy)
0 failing checks (0.0%)
Translation: GnuCash/Program (Swedish)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/sv/

Co-authored-by: Arve Eriksson <031299870@telia.com>
2022-09-20 03:18:37 +02:00
John Ralls
7c350c3ae5 Bug 798616 - Can't register amount greater than 9,000,000,000
Because when loading the value the split in the xml backend doesn't yet
have a parent so the code tried to convert to GNC_COMMODITY_MAX_FRACTION
and if the numerator was larger than 10^10 that would overflow.

To fix it this changes the "don't know" response to get_currency_denom
and get_commodity_denom to GNC_DENOM_AUTO which will normally leave
the denominator alone.
2022-09-19 18:17:58 -07:00
Christopher Lam
1752f1d19d [assistant-stock-transaction] disallow stock split ratio of 0.
otherwise the reverse stock split would allow a new stock amount
balance of zero.
2022-09-20 08:45:07 +08:00
Christopher Lam
84f4f3b6f8 [assistant-stock-transaction] add to toolbar 2022-09-19 10:03:28 +08:00
Christopher Lam
cfd37c9102 [assistant-stock-transaction] fix stock split creation algorithm
* stock_amount was reduced as a previous bugfix attempt
* remove references to Stock Split Assistant
2022-09-19 09:37:19 +08:00