delvani
9f7b5f3318
Translation update by delvani <del.cidrak@users.noreply.hosted.weblate.org> using Weblate
...
po/pt_BR.po: 98.0% (5545 of 5656 strings; 95 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: delvani <del.cidrak@users.noreply.hosted.weblate.org >
2026-02-22 04:10:04 +00:00
Milo Ivir
d01660481c
Translation update by Milo Ivir <mail@milotype.de> using Weblate
...
po/hr.po: 98.2% (5558 of 5656 strings; 1 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 >
2026-02-22 04:10:02 +00:00
Francisco Serrador
8d1341c334
Translation update by Francisco Serrador <fserrador@gmail.com> using Weblate
...
po/es.po: 100.0% (5656 of 5656 strings; 0 fuzzy)
3 failing checks (0.1%)
Translation: GnuCash/Program (Spanish)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/es/
Translation update by Francisco Serrador <fserrador@gmail.com > using Weblate
po/es.po: 100.0% (5656 of 5656 strings; 0 fuzzy)
0 failing checks (0.0%)
Translation: GnuCash/Program (Spanish)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/es/
Translation update by Francisco Serrador <fserrador@gmail.com > using Weblate
po/glossary/es.po: 100.0% (213 of 213 strings; 0 fuzzy)
0 failing checks (0.0%)
Translation: GnuCash/Glossary (Spanish)
Translate-URL: https://hosted.weblate.org/projects/gnucash/glossary/es/
Translation update by Francisco Serrador <fserrador@gmail.com > using Weblate
po/glossary/es.po: 100.0% (213 of 213 strings; 0 fuzzy)
0 failing checks (0.0%)
Translation: GnuCash/Glossary (Spanish)
Translate-URL: https://hosted.weblate.org/projects/gnucash/glossary/es/
Translation update by Francisco Serrador <fserrador@gmail.com > using Weblate
po/es.po: 100.0% (5656 of 5656 strings; 0 fuzzy)
1 failing checks (0.1%)
Translation: GnuCash/Program (Spanish)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/es/
Co-authored-by: Francisco Serrador <fserrador@gmail.com >
2026-02-22 04:09:59 +00:00
Yegor Derevenets
c2cda6bd91
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com> using Weblate
...
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
104 failing checks (1.8%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Co-authored-by: Yegor Derevenets <yegor.derevenets@gmail.com >
2026-02-22 04:09:57 +00:00
Szia Tomi
a45ef0b570
Translation update by Szia Tomi <sziatomi01@gmail.com> using Weblate
...
po/hu.po: 90.2% (5107 of 5656 strings; 125 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 90.2% (5106 of 5656 strings; 125 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 90.2% (5105 of 5656 strings; 125 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 90.2% (5103 of 5656 strings; 126 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 90.1% (5101 of 5656 strings; 126 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 90.1% (5099 of 5656 strings; 126 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 90.1% (5097 of 5656 strings; 126 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Co-authored-by: Szia Tomi <sziatomi01@gmail.com >
2026-02-22 04:09:54 +00:00
hamaryns
bdf04d6877
Translation update by hamaryns <hendrik@hendrikmaryns.name> using Weblate
...
po/nl.po: 98.0% (5543 of 5656 strings; 107 fuzzy)
16 failing checks (0.2%)
Translation: GnuCash/Program (Dutch)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/nl/
Co-authored-by: hamaryns <hendrik@hendrikmaryns.name >
2026-02-22 04:09:51 +00:00
John Ralls
6983adb14a
Merge Noerr Noah's 'fix-gsettings-segfault' into stable.
2026-02-20 12:10:14 -08:00
Christopher Lam
2b7043b4ba
[reports] use gnc_date_interval_format
2026-02-13 22:01:48 +08:00
Christopher Lam
47938d1a2c
[gnc-date.cpp] gnc_date_interval_format localisable with ICU
2026-02-13 21:58:01 +08:00
Noah
587cc4b91e
Use g_return_val_if_fail / g_return_if_fail for NULL guards
...
Replace verbose if-block NULL checks with idiomatic GLib
precondition macros, per review feedback.
2026-02-12 09:11:23 -08:00
Claude
606fc45582
Fix segfault in gnc_gsettings_get_settings_obj when GSettings schemas are not installed
...
Add NULL guards before dereferencing return values from GLib calls to prevent
segmentation faults when GSettings schemas are missing (e.g., in library-only builds).
The crash occurred when g_settings_schema_source_get_default() returned NULL
and was passed directly to g_settings_schema_source_lookup(), causing a NULL
pointer dereference. The existing G_IS_SETTINGS check came too late.
Changes:
- Add NULL check for schema_source before using it
- Add NULL check for schema before calling g_settings_new_full()
- Add NULL guard in gnc_settings_dump_schema_paths() for consistency
- All callers already handle NULL returns via G_IS_SETTINGS checks
Fixes: https://bugs.gnucash.org/show_bug.cgi?id=799740
https://claude.ai/code/session_01Cdnp3XkAQ29hG1eCxUSAUw
2026-02-09 18:35:56 +00:00
John Ralls
3cee6a3bbc
Merge Roy Hansen's 'improve/csv-import-date-format-info' into stable.
2026-02-06 15:59:37 -08:00
Roy Hansen
f32abb9194
Improve usability of csv-transaction-import by adding tooltip
...
for date-format selection.
The date-format selection box displayes all variations with a "-"
separator, however this separator also matches "/" and ".".
The tooltip explains this behavior.
2026-02-02 12:43:41 +01:00
John Ralls
2a67864ae4
Merge latest translations from Weblate.
2026-02-01 13:58:52 -08:00
Giuseppe Foti
5675de8afc
Translation update by Giuseppe Foti <foti.giuseppe@gmail.com> using Weblate
...
po/it.po: 96.6% (5468 of 5656 strings; 138 fuzzy)
29 failing checks (0.5%)
Translation: GnuCash/Program (Italian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/it/
Co-authored-by: Giuseppe Foti <foti.giuseppe@gmail.com >
2026-02-01 21:47:22 +00:00
Yegor Derevenets
e53a62d837
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com> using Weblate
...
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
104 failing checks (1.8%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
104 failing checks (1.8%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
104 failing checks (1.8%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
104 failing checks (1.8%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
104 failing checks (1.8%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
102 failing checks (1.8%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
102 failing checks (1.8%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
99 failing checks (1.7%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
99 failing checks (1.7%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
99 failing checks (1.7%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
99 failing checks (1.7%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
99 failing checks (1.7%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
99 failing checks (1.7%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
93 failing checks (1.6%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
93 failing checks (1.6%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
93 failing checks (1.6%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
91 failing checks (1.6%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
91 failing checks (1.6%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
91 failing checks (1.6%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
91 failing checks (1.6%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
91 failing checks (1.6%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Translation update by Yegor Derevenets <yegor.derevenets@gmail.com > using Weblate
po/ru.po: 99.4% (5627 of 5656 strings; 27 fuzzy)
85 failing checks (1.5%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Co-authored-by: Yegor Derevenets <yegor.derevenets@gmail.com >
2026-02-01 21:47:21 +00:00
Szia Tomi
e322398421
Translation update by Szia Tomi <sziatomi01@gmail.com> using Weblate
...
po/hu.po: 90.0% (5095 of 5656 strings; 126 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 89.9% (5088 of 5656 strings; 126 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 89.9% (5088 of 5656 strings; 126 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 89.9% (5088 of 5656 strings; 126 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 89.9% (5085 of 5656 strings; 126 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 89.8% (5080 of 5656 strings; 126 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 89.8% (5080 of 5656 strings; 126 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 89.8% (5080 of 5656 strings; 126 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 89.7% (5076 of 5656 strings; 127 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 89.6% (5073 of 5656 strings; 127 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 89.6% (5072 of 5656 strings; 127 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 89.6% (5071 of 5656 strings; 127 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Translation update by Szia Tomi <sziatomi01@gmail.com > using Weblate
po/hu.po: 89.6% (5071 of 5656 strings; 127 fuzzy)
31 failing checks (0.5%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Co-authored-by: Szia Tomi <sziatomi01@gmail.com >
2026-02-01 21:47:20 +00:00
David
478e94e43d
Translation update by David <davidgmartins98@gmail.com> using Weblate
...
po/pt_BR.po: 97.7% (5526 of 5656 strings; 114 fuzzy)
20 failing checks (0.3%)
Translation: GnuCash/Program (Portuguese (Brazil))
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/pt_BR/
Co-authored-by: David <davidgmartins98@gmail.com >
2026-02-01 21:47:20 +00:00
hamaryns
acf23646d3
Translation update by hamaryns <hendrik@hendrikmaryns.name> using Weblate
...
po/nl.po: 97.9% (5541 of 5656 strings; 109 fuzzy)
16 failing checks (0.2%)
Translation: GnuCash/Program (Dutch)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/nl/
Co-authored-by: hamaryns <hendrik@hendrikmaryns.name >
2026-02-01 21:47:19 +00:00
Mirek Špaňko
38941538c1
Translation update by Mirek Špaňko <mirekspanko@hotmail.cz> using Weblate
...
po/cs.po: 40.3% (2285 of 5656 strings; 2077 fuzzy)
888 failing checks (15.7%)
Translation: GnuCash/Program (Czech)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/cs/
Translation update by Mirek Špaňko <mirekspanko@hotmail.cz > using Weblate
po/glossary/cs.po: 27.6% (59 of 213 strings; 2 fuzzy)
0 failing checks (0.0%)
Translation: GnuCash/Glossary (Czech)
Translate-URL: https://hosted.weblate.org/projects/gnucash/glossary/cs/
Co-authored-by: Mirek Špaňko <mirekspanko@hotmail.cz >
2026-02-01 21:47:18 +00:00
John Ralls
f4169c9d5a
Merge Roy Hansen's 'CSV-reparse' into stable.
2026-02-01 13:46:18 -08:00
John Ralls
ce4af95212
Merge Stefann Koch's 'fix-798873' into stable.
2026-02-01 12:54:39 -08:00
Christopher Lam
e0d9d336ba
Merge branch 'add_search_invoices_to_customer_list_popup' #2062 into stable
2026-01-31 13:04:12 +08:00
Christopher Lam
d44f3d68fc
Addendum parent commit -- expand to other owner documents
2026-01-31 13:03:47 +08:00
Stefan Koch
e1bbb9bb7b
Bug 798873 - Crash when scrubbing after "undoing” changes
...
Fix double delete in qof_instance_kvp_remove_guid and remove vestigial glist support.
In the KvpValue::Type::FRAME case if the guid matches, it does both:
delete inst->kvp_data->set_path({path}, nullptr);
delete v;
Where earlier the v was set to be:
auto v = inst->kvp_data->get_slot({path});
The second delete is a duplicate of the first and should be removed.
2026-01-30 09:50:21 -05:00
Stefan Koch
52bbcf72c5
Fix innocuous bug in qofinstance idata property.
2026-01-30 09:50:21 -05:00
Christopher Lam
7296407457
[new-owner-report.scm] fix display/due-date tooltip
2026-01-29 07:29:38 +08:00
Christopher Lam
0b4f14e107
[Transaction.cpp] use g_list_copy_deep avoiding g_list_append
2026-01-27 23:43:49 +08:00
Christopher Lam
6ccbafd1db
[gnc-log-replay.cpp] don't need to strdup const char*
...
thereby fixing leak.
2026-01-27 23:43:47 +08:00
Christopher Lam
d64c8c8d59
[account.cpp] remove unused static var
2026-01-27 23:43:44 +08:00
Christopher Lam
dfe7295a08
[trep-engine.scm] grid: replace cell data with nested hash tables
...
Replace the list-based grid-cell storage with nested hash tables keyed
by row and column, with per-cell commodity collectors.
Eliminates repeated list traversals and duplicate filtering when
building and rendering the subtotal table, reducing gc load.
2026-01-27 23:21:04 +08:00
Christopher Lam
7825beed0b
[report-utilities.scm] gnc:make-commodity-collector 'getmonetary-strict
...
will find monetary with desired commodity or #f if does not
exist. this is similar to 'getmonetary but does not return a
zero-amount gnc:monetary object.
2026-01-27 22:29:10 +08:00
Christopher Lam
f0856f7ff3
Merge branch 'trep-col-totals' #2170 into stable
2026-01-25 11:09:23 +08:00
Christopher Lam
9d07ed7726
[trep-engine] Encapsulate grid state behind a closure
...
Instead of passing the grid list into grid-* procedures, `make-grid`
now returns a dispatcher that owns the grid and implements operations
selected by an argument.
• Removes repeated `grid` parameters from helpers
• Makes row/column/HTML logic operate on shared private state
• Provides a clearer API: 'add 'get-html
2026-01-25 11:08:45 +08:00
Christopher Lam
9bbe29b42d
[trep-engine.scm] tally secondary subtotals in subtotal table
...
when displaying secondary-level subtotals, also tally the amounts in
the row-total grid
2026-01-25 11:08:45 +08:00
Christopher Lam
d3baa74e72
[trep-engine.scm] refactor grid renderer
...
for each row with multiple commodities, instead of working on
commodities via their indices, work on the commodities directly.
without this refactoring, a subtotal table row with multiple
commodities may show different commodities on the same line.
with this refactoring, the row will show a stable list of commodities.
2026-01-25 09:51:55 +08:00
Christopher Lam
a33a1f2f1b
[trep-engine.scm] upgrade grid-add
...
formerly, grid-add was simply adding a new (vector row col data) to
the grid. it was assuming there was no existing data in row/col.
upgrade so that it will consider the existing grid row/col; if there's
existing data it will add the monetary amounts into it.
2026-01-25 09:43:23 +08:00
Christopher Lam
5f5caf49b9
[trep-engine.scm] use :grid-cell record type
2026-01-25 09:42:19 +08:00
Christopher Lam
3a2ac526a6
[gnc-commodity.cpp] improve gnc_commodity_compare
...
ensure it is a stable sort
2026-01-24 23:49:30 +08:00
Roy Hansen
44bc641131
Bug - When importing csv-transactions, currency_format is not always
...
properly applied.
Reparse/tokenize all import lines when changing date/currency
formats. In addition, make sure this also happens when setting
base_account.
2026-01-24 11:46:56 +01:00
Robert Fewell
c32002bd77
Bug 799705 - Remove Old Prices by Namespace
...
Add visibility of the namespace used for commodities so prices to
remove can be more specific.
Add a further option to restrict which namespaces are shown in the
list view. This also allows for quick selection by entering the
namespace in the combo entry.
2026-01-18 10:25:19 +00:00
John Ralls
e5fe2f3e0e
Merge Stefan Koch's 'sk-unittest-qofid' into stable.
2026-01-17 17:11:27 -08:00
Christopher Lam
cad455e3c0
Merge branch 'account-col-earliest-date' into stable #2168
2026-01-16 06:31:42 +08:00
Stefan Koch
113af56272
fixup: Review comments about style of code.
2026-01-15 13:14:36 -05:00
Stefan Koch
7f0d66d439
fixup: Add the new test-qofid.cpp file the the source distribution.
2026-01-15 13:00:52 -05:00
Stefan Koch
be5933a1ec
fixup: Remove memory leaks in the test code.
2026-01-15 11:52:59 -05:00
Stefan Koch
0e3853bfb7
Fix undefined behaviour in collection_compare_cb function.
...
The collection_compare_cb function set the user_data pointer to point to a local variable
of the function. That pointer is then used in the (only) calling function
qof_collection_compare to make decisions. This is undefined. It is likely not an actual
problem because the stack depth of the qof_collection_foreach followed by
collection_compare_cb is deeper than the qof_collection_get_data call (and others
in between if any) that the stack data user data stays uncorrupted.
But, it is undefined behavior, and could cause really subtle bugs if these there are code
changes that have deeper stack between the setting and using.
Also, using this local variable is not necessary, the qof_collection_compare function
already sets up a variable local to its scope for this that the collection_compare_cb can
use directly.
This commit removes the local (to collection_compare_cb) variable and uses the one setup
in qof_collection_compare.
The full coverage test for qofid.cpp passed before and after this change.
2026-01-15 08:52:50 -05:00
Stefan Koch
6e9a20dfeb
Implement full test coverage of libgnucash/engine/qofid
...
NOTE: This does not have full coverage because the "if (!target || !ent)" body in the
collection_compare_cp function cannot be reached. There is too much safety in the rest of
the system to test this error.
NOTE: I made this a separate test from the test-engine so that I was able to check that it
by itself could test the full coverage of the qofid.cpp file. If it was part of the larger
test, I could have missed some parts that were covered incidentally elsewhere.
2026-01-15 08:52:50 -05:00
Stefan Koch
a2cc9881df
Explicitly set the is_dirty attribute in qof_collection_new
...
It is likely that the memory was zeroed anyway, but the explicitness makes it easier to read.
2026-01-15 08:52:50 -05:00
Stefan Koch
9079d87307
Remove unused qof_collection_from_glist function.
2026-01-15 08:52:50 -05:00