Files
gnucash/libgnucash/engine
Brent McBride 5a4115d370 Resolve both gains splits in xaccSplitDetermineGainStatus
Rework xaccSplitDetermineGainStatus() to resolve the gain status of
both ends of a marker/source pair in a single call, and to use the
xaccSplitGetGainsSourceSplit() accessor instead of a raw KVP lookup.

When the function resolves one split it now also resolves its partner
(the source for a marker, the marker for a source) if that partner is
still UNKNOWN. This makes gain-status resolution order-independent:
whichever split xaccSplitComputeCapGains() reaches first, the other is
already resolved, so the marker->source switch-over no longer finds an
unresolved source and never re-creates an orphaned gains split.

This supersedes the one-line switch-over patch in cap-gains.cpp, which
is reverted.
2026-10-02 15:15:00 -07:00
..
2024-11-02 09:55:15 +01:00
2017-08-10 18:45:00 +02:00
2024-05-05 14:35:38 +08:00
2017-08-10 18:45:00 +02:00
2023-04-28 16:31:07 -07:00
2023-02-16 09:19:19 +00:00
2024-05-23 15:10:05 +02:00
2024-11-02 09:55:15 +01:00
2024-11-02 09:55:15 +01:00
2025-06-21 15:45:42 +02:00
2017-08-10 18:45:00 +02:00
2023-01-26 18:40:44 +08:00
2026-06-15 08:43:39 +08:00
2024-06-10 01:33:06 +08:00
2023-01-26 18:40:44 +08:00
2023-01-24 13:22:18 +00:00
2018-09-23 16:00:41 +02:00
2023-03-03 18:55:42 +00:00
2024-11-02 09:55:15 +01:00
2024-11-02 09:55:15 +01:00
2022-04-14 18:02:17 -07:00
2023-01-24 13:22:18 +00:00
2024-06-10 01:33:06 +08:00
2021-03-02 01:15:32 +01:00
2023-04-28 16:31:07 -07:00
2017-08-10 18:45:00 +02:00
2021-02-16 13:23:16 -08:00
2017-08-10 18:45:00 +02:00
2021-02-16 13:23:16 -08:00
2017-08-10 18:45:00 +02:00
2017-08-10 18:45:00 +02:00
2026-06-15 08:43:39 +08:00
2025-10-15 23:52:45 +08:00
2023-03-03 18:55:42 +00:00
2017-08-10 18:45:00 +02:00
2017-08-10 18:45:00 +02:00
2026-06-15 08:43:39 +08:00
2024-06-10 01:33:06 +08:00
2026-06-15 08:43:39 +08:00
2023-05-15 13:21:30 +01:00
2024-05-23 15:10:05 +02:00
2026-07-14 14:20:09 -07:00
2024-04-02 21:09:39 +08:00
2024-05-05 14:35:38 +08:00
2026-07-09 01:12:49 -07:00
2024-05-31 22:06:55 +08:00
2024-05-05 14:35:44 +08:00

This directory contains code for the accounting engine.
Its fairly clean but far from perfect, and it certainly
lacks advanced features.

There should be no GUI code in this subdirectory, and,
ideally, it should build cleanly and independently of 
any GUI elements or assumptions.

For design documentation, please read our doxygen documentation.
This can be found at https://code.gnucash.org/docs/STABLE/
Alternatively you can build it yourself by running
 [ninja|make] doc
The result will be found in
{builddir}/libgnucash/doc/html/index.html

The same information can mostly be found directly in the header
files in this directory as well (though in marked up source format).