Geert Janssens
616a672d52
Rewrite boost::process call to properly capture both stdout and stderr
...
The previous version of the code could only capture one
but not both at the same time.
2022-10-02 11:50:25 -07:00
Geert Janssens
a6771754d5
GncQuotes - start implementation of fetch/fetch_all
2022-10-02 11:50:25 -07:00
Geert Janssens
f3fdc5de12
Rewrite gnc-fq-helper as finance-quote-wrapper
...
This rewritten version takes JSON input and spits out JSON.
Additionally inverted currency quotes will only be flagged.
The old code also swapped currencies in the result.
GncQuotes will be written towards these new implementation
choices.
2022-10-02 11:50:25 -07:00
Geert Janssens
1d94887a0b
Rewrite gnc_commodity_table_get_quotable_commodities as gnc_quotes_get_quotable_commodities
...
It only makes sense in that context.
2022-10-02 11:50:25 -07:00
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
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
283a5b7ce9
Fix dist, files moved
2022-10-01 17:39:31 -07:00
Christopher Lam
c78bb3c22c
[test-gnc-option-scheme-output.scm] more scheme typos
...
Addendum to 11d395185
2022-09-27 21:36:05 +08: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
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
Christopher Lam
6ba0f849ba
[assistant-stock-transaction] refactor: centralize price calculator
...
Price was being computed in 3 places: the stock_value page, the
summary-table info list, and the final pricedb creation function. This
commit centralizes it into 1 function which returns std::nullopt if
the price is not computable.
Also fixes price display to follow global pref general/force-price-decimal
2022-09-17 23:12:00 +08:00
Christopher Lam
9a8bc8f7e5
[assistant-stock-transaction] disallow selection in summary table
...
... because selection hides the red color from last commit. There's no
action attached to selection in the treeview. It can be disabled.
2022-09-17 14:21:51 +08:00
Christopher Lam
596ff26928
[assistant-stock-transaction] if negative Units, render in red color
...
...in the summary table
2022-09-17 13:52:01 +08:00
Christopher Lam
58c1a51897
Merge branch 'master-budget-changes' #1238
2022-09-16 23:15:24 +08:00
Christopher Lam
8e6c07db1e
Merge branch 'maint-currency-edit-completion' #1429
2022-09-16 18:06:38 +08:00
Christopher Lam
84ac769b14
Merge branch 'maint'
2022-09-16 18:06:28 +08:00
Christopher Lam
8dd063b84d
Merge branch 'maint-stock-assistant-stock-split' into maint #1414
2022-09-15 20:54:43 +08:00
Christopher Lam
723189b26c
[assistant-stock-transaction] special stock_amount input stock splits
2022-09-15 08:04:07 +08:00
Christopher Lam
ab06e1e065
[assistant-stock-transaction] specialises stock_amount input
2022-09-15 07:59:49 +08:00
Christopher Lam
1d4e522597
[assistant-stock-transaction] refactor create_split
...
takes gnc_numeric instead of GtkWidget*
2022-09-15 07:59:48 +08:00
이정희
5c97da5d87
Translation update by 이정희 <daemul72@gmail.com> using Weblate
...
po/ko.po: 63.8% (3449 of 5401 strings; 1015 fuzzy)
263 failing checks (4.8%)
Translation: GnuCash/Program (Korean)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ko/
Translation update by 이정희 <daemul72@gmail.com> using Weblate
po/ko.po: 62.2% (3364 of 5401 strings; 1085 fuzzy)
315 failing checks (5.8%)
Translation: GnuCash/Program (Korean)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ko/
Translation update by 이정희 <daemul72@gmail.com> using Weblate
po/ko.po: 62.2% (3363 of 5401 strings; 1085 fuzzy)
315 failing checks (5.8%)
Translation: GnuCash/Program (Korean)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ko/
Co-authored-by: 이정희 <daemul72@gmail.com>
2022-09-15 01:27:09 +02:00
Christopher Lam
b21756119b
Merge branch 'CDB-Man-changes' into maint #1431
2022-09-15 07:23:27 +08:00
Christopher Lam
1ddb492638
[assistant-stock-transaction] remove combined transactions types
...
They will be recorded separately.
* Dividend Reinvestment = Dividend + Long Buy
* Reverse Split with Cash-in-Lieu = Sell or Cover Buy + Reverse-Split
2022-09-15 00:36:47 +08:00
Christopher Lam
fe48d56a66
[assistant-stock-transaction] if applicable, show price to insert
2022-09-14 23:40:05 +08:00
Christopher Lam
692cbfc844
[assistant-stock-transaction] add forgotten default memo
2022-09-14 23:40:05 +08:00
이정희
d167b017a8
Translation update by 이정희 <daemul72@gmail.com> using Weblate
...
po/ko.po: 57.7% (3120 of 5401 strings; 1258 fuzzy)
433 failing checks (8.0%)
Translation: GnuCash/Program (Korean)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ko/
Co-authored-by: 이정희 <daemul72@gmail.com>
2022-09-13 17:50:57 +02:00
Wellington Terumi Uemura
f232ae48d3
Translation update by Wellington Terumi Uemura <wellingtonuemura@gmail.com> using Weblate
...
po/pt_BR.po: 100.0% (5401 of 5401 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>
2022-09-13 17:50:56 +02:00