John Ralls
e618b98950
Show the full test result alist on failure if expected value isn't defined.
...
With the new SRFI-64 implementation tests are failing without setting
expected and actual values on the test result. Dump the test-result-alist
to get more information.
4 months ago
John Ralls
c8e424344b
Bug 799702 - build breaks with guile 3.0.11
...
Guile 3.0.11 has a new implementation of SRFI-64 that is more strict about
what test-group-with-cleanup accepts as parameters and it revealed a
couple of misplaced closing parens.
4 months ago
Christopher Lam
cfc357a430
[backend/xml] fast string setters for acct/trans/split
...
Avoids allocating/g_free temporary strings when DOM text
exists. Replaces dom_tree_to_text() with dom_node_to_text() fast-path
for Account, Transaction, and Split string setters.
4 months ago
Christopher Lam
a63a3e3ce3
[sixtp-dom-parsers.cpp] introduce dom_node_to_text for solo text node
...
allocation-free
returns const char* or nullptr
4 months ago
Christopher Lam
2f7e51cf2a
[sixtp-dom-parsers.cpp] Remove unnecessary commodity allocation during XML load
...
dom_tree_to_commodity_ref() is called for every transaction or
price. It created and destroyed a commodity only to read its namespace
and mnemonic when loading books. Rewrite to avoid creating temporary
commodity.
dom_tree_to_commodity_ref_no_engine () is called when creating
commodities.
Introduce get_commodity_ns_mnemonic() to parse namespace/mnemonic
directly, and use it in both code paths.
4 months ago
John Ralls
b397a34424
Add a Postponed column to the Scheduled Transactions list.
...
As requested by Bug 799664.
The column is hidden by default since it's not useful to people who don't
postpone scheduled transaction instances.
5 months ago
Christopher Lam
a57cd653e5
[backend/xml] dom_tree_to_guid returns std::optional<GncGUID> instead of GncGUID*
...
therefore GncGUID is stack-allocated, removing the need for guid_free
5 months ago
Christopher Lam
2e3fd090ff
[gnc-autoclear.cpp] restore abort explanation message
5 months ago
Christopher Lam
722a455593
[guid.cpp] string->guid should disallow 'g' char
...
off-by-1 error in alpha test. only 'a'-'f' should be allowed.
5 months ago
Christopher Lam
1cfda5a71a
[test-gnc-guid.cpp] use EXPECT_THROW
...
instead of try..catch
5 months ago
Christopher Lam
cdb9dfa0ee
[guid.cpp] fast_string_to_guid: -1<<4 is UB, fix UB
...
when parsing invalid chars, hi|lo would return -1. convert to unsigned
to avoid UB.
5 months ago
Christopher Lam
3e4e334944
[guid.cpp] string->guid: parse into uuid data, avoids memcpy
5 months ago
Christopher Lam
534bea748f
[guid.cpp] Specialise guid<->32-byte string
...
- string->guid has branch-lite unrollable loop, fallback to slow
boost parser
- guid->string uses lookup table
- avoids creating several temporary heap-allocated std::strings
5 months ago
Christopher Lam
3c5a1801e2
[guid.cpp] fix guid==nullptr comparison retvals
...
- if guid_1 guid_2 are both null they should return int(0) or bool(true)
5 months ago
John Ralls
7e5f559724
Merge Christian Wehling's 'improve_strings' into stable.
5 months ago
John Ralls
aa882808f8
Merge Kaligula's 'SX-action-description' into stable.
5 months ago
John Ralls
a901abb1ef
Merge latest translations from Weblate into stable.
5 months ago
Tgol Mgol
f4f9318484
Translation update by Tgol Mgol <tgolmgol@gmail.com> using Weblate
...
po/glossary/ar.po: 98.1% (209 of 213 strings; 3 fuzzy)
0 failing checks (0.0%)
Translation: GnuCash/Glossary (Arabic)
Translate-URL: https://hosted.weblate.org/projects/gnucash/glossary/ar/
Translation update by Tgol Mgol <tgolmgol@gmail.com> using Weblate
po/ar.po: 68.5% (3884 of 5662 strings; 1209 fuzzy)
717 failing checks (12.6%)
Translation: GnuCash/Program (Arabic)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ar/
Co-authored-by: Tgol Mgol <tgolmgol@gmail.com>
5 months ago
DGDS
4311d9f758
Translation update by DGDS <dagrinddontstop@users.noreply.hosted.weblate.org> using Weblate
...
po/zh_CN.po: 99.9% (5661 of 5662 strings; 1 fuzzy)
28 failing checks (0.4%)
Translation: GnuCash/Program (Chinese (Simplified Han script))
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/zh_Hans/
Co-authored-by: DGDS <dagrinddontstop@users.noreply.hosted.weblate.org>
5 months ago
Szia Tomi
422d6029d8
Translation update by Szia Tomi <sziatomi01@gmail.com> using Weblate
...
po/hu.po: 86.9% (4921 of 5662 strings; 171 fuzzy)
42 failing checks (0.7%)
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: 86.8% (4920 of 5662 strings; 172 fuzzy)
42 failing checks (0.7%)
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: 86.8% (4916 of 5662 strings; 175 fuzzy)
43 failing checks (0.7%)
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: 86.6% (4906 of 5662 strings; 177 fuzzy)
44 failing checks (0.7%)
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: 86.6% (4904 of 5662 strings; 178 fuzzy)
45 failing checks (0.7%)
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: 86.5% (4902 of 5662 strings; 178 fuzzy)
45 failing checks (0.7%)
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: 86.5% (4901 of 5662 strings; 179 fuzzy)
45 failing checks (0.7%)
Translation: GnuCash/Program (Hungarian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/hu/
Co-authored-by: Szia Tomi <sziatomi01@gmail.com>
5 months ago
Christopher Lam
7c7c8b0992
[gnc-pricedb.cpp] plug leak when fiscal_end_date is null
...
fiscal_end_date was assigned g_date_new but never freed. merge with
invalid fiscal_end_date too.
5 months ago
Christopher Lam
04af7b5fa6
[qofobject.cpp] check col!=nullptr instead of obj
...
because obj was already verified non-nullptr a few lines prior. this
logic error present since original qofobject.c
5 months ago
Christopher Lam
5de6a0800f
gnc_ui_namespace_picker_ns must be g_freed
5 months ago
Christopher Lam
13e4485c18
[dialog-commodity.cpp] fix indent
5 months ago
Christopher Lam
0a3fa2a70e
[dialog-account.c] plug gdk_rgba_to_string leak
5 months ago
Christopher Lam
85e92229a1
[gnc-plugin-page-register.cpp] plug a GtkWidget* leak
5 months ago
Christopher Lam
4bb490fb56
GncPlugins must chain up the parent class in finalize
5 months ago
Christopher Lam
434546f731
[account-quickfill.c] free link and node with g_list_delete_link
...
instead of g_list_remove_link which doesn't free the node.
5 months ago
John Ralls
4dd347a61f
Merge Jaime Marquínez Ferrándiz's 'fix-test-userdata-dir-invalid-home' into stable.
5 months ago
Jaime Marquínez Ferrándiz
98772cc991
test-userdata-dir-invalid-home: Unset XDG_DATA_HOME
...
On some test environments XDG_DATA_HOME may be configured with a path that
actually exists, so we unset it to actually get the temporary directory.
5 months ago
John Ralls
1debab5cae
About dialog: Use the environment variable names for user directory labels.
...
Instead of capitalized versions of the variables in gnc-filepath-utils.
The environment variables are documented in the wiki and are what the user
can change.
5 months ago
John Ralls
bacb5bde17
Make the About dialog path labels (e.g. GNC_BIN) selectable for copying.
5 months ago
Christopher Lam
20575991f1
[search-param.c] free GSList
5 months ago
Christopher Lam
052e120abf
[gnucash-sheet.c] plug some leaks
5 months ago
Christopher Lam
88f77efa43
[gnc-date-edit.c] plug some leaks
5 months ago
Christopher Lam
fbd4a86f5a
g_object_unref to plug some leaks
5 months ago
Christopher Lam
7c73e2ab2c
[gnc-autoclear.cpp] prune search if remaining amounts are too small
...
this optimisation will greatly reduce the search size. first, sort
splits by reverse absolute amount. then precompute the positive and
negative sum(amounts) of remaining splits. when exploring any branch,
if the target is falls outside the range remaining negative to
positive sums, then any combination of subsequent splits will not
reach target. bail early.
5 months ago
Christopher Lam
e4d61b3073
[test-autoclear] add some more tests
...
- worst case scenario 2^N amounts with 2^N theoretical paths
- amounts with mixed signs
- off-by-1 target amounts
- amounts include zero
5 months ago
Christopher Lam
43561deda4
[window-reconcile.cpp] offer auto-clear if combination found
5 months ago
Christopher Lam
03af620442
[gnc-autoclear] upgrade - improve Subset Sum Problem
...
- still O(2^n) runtime but uses O(n) stack size, and *much* less memory
- a runtime monitor, limiting time (default 1s)
5 months ago
John Ralls
60410172db
Merge latest translations from Weblate.
5 months ago
Adolfo Jayme Barrientos
9ded033789
Translation update by Adolfo Jayme Barrientos <fitojb@ubuntu.com> using Weblate
...
po/es.po: 100.0% (5662 of 5662 strings; 0 fuzzy)
2 failing checks (0.1%)
Translation: GnuCash/Program (Spanish)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/es/
Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
5 months ago
Jesús Martínez
53d10f8f1c
Translation update by Jesús Martínez <weblate@jandemor.com> using Weblate
...
po/es.po: 100.0% (5662 of 5662 strings; 0 fuzzy)
2 failing checks (0.1%)
Translation: GnuCash/Program (Spanish)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/es/
Co-authored-by: Jesús Martínez <weblate@jandemor.com>
5 months ago
Deleted User
6de5643ada
Translation update by Deleted User <noreply+48943@weblate.org> using Weblate
...
po/es.po: 100.0% (5662 of 5662 strings; 0 fuzzy)
2 failing checks (0.1%)
Translation: GnuCash/Program (Spanish)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/es/
Co-authored-by: Deleted User <noreply+48943@weblate.org>
5 months ago
Francisco Serrador
ac1ef245c2
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% (5662 of 5662 strings; 0 fuzzy)
2 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>
5 months ago
தமிழ்நேரம்
9fb427edec
Translation update by தமிழ்நேரம் <tamilneram247@gmail.com> using Weblate
...
po/ta.po: 100.0% (5662 of 5662 strings; 0 fuzzy)
0 failing checks (0.0%)
Translation: GnuCash/Program (Tamil)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ta/
Translation update by தமிழ்நேரம் <tamilneram247@gmail.com> using Weblate
po/ta.po: 100.0% (5662 of 5662 strings; 0 fuzzy)
110 failing checks (1.9%)
Translation: GnuCash/Program (Tamil)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ta/
Co-authored-by: தமிழ்நேரம் <tamilneram247@gmail.com>
5 months ago
Olesya_Gerasimenko
2962d6de13
Translation update by Olesya_Gerasimenko <gammaray@basealt.ru> using Weblate
...
po/ru.po: 100.0% (5662 of 5662 strings; 0 fuzzy)
196 failing checks (3.4%)
Translation: GnuCash/Program (Russian)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/ru/
Co-authored-by: Olesya_Gerasimenko <gammaray@basealt.ru>
5 months ago
Ceaus
56b507bea2
Translation update by Ceaus <github@pohw.nl> using Weblate
...
po/nl.po: 99.7% (5649 of 5662 strings; 7 fuzzy)
4 failing checks (0.1%)
Translation: GnuCash/Program (Dutch)
Translate-URL: https://hosted.weblate.org/projects/gnucash/gnucash/nl/
Co-authored-by: Ceaus <github@pohw.nl>
5 months ago
John Ralls
38c1538e53
Merge John Ralls's 'gnc-home' into stable
5 months ago
John Ralls
035e8842a0
Protect the special environment file prefix variables.
...
https://lists.gnucash.org/pipermail/gnucash-user/2025-November/118103.html
reported that GnuCash crashes when he runs it with GNC_HOME=<somewhere
random>. We use GNC_HOME to set XDG_DATA_DIR in the environment file to
accommodate relocating GnuCash on macOS and Windows and GnuCash crashes
when the schemas aren't found.
This commit prevents the user from setting the 6 special environment
variables either from the environment or by editing the environment file.
5 months ago