The GnuCash development team announces GnuCash 3.9, the tenth release of the 3.x stable release series.
Changes
Between 3.8 and 3.9, the following bugfixes were accomplished:
- Bug 685102 - Scheduled Transactions don't always respect weekends for first occurrence
- Bug 794916 - Fails to find environment file at startup when installation prefix is '/opt'
- Bug 796579 - Cannot go forward with empty duplicates screen
- Bug 796911 - Minimum window width to large.To fix this the text labels used have been enabled to ellipsize at the end
- Bug 796984 - Import Bills & Invoices: date of line item is not validated; can lead to unexpected results
- Bug 796985 - Import Bills & Invoices: option 'open not yet posted docs in tab' does not open tab if invoice could not be posted
- Bug 796986 - Import Bills & Invoices: in case of invalid posting date in import file, invoice is posted with unexpected date
- Bug 796987 - Import Bills & Invoices: fixing import items only works in special case
- Bug 797022 - Import Bills & Invoices: expense/income account is not validated - leads to one-sided posting if account is invalid
- Bug 797023 - Import Bills & Invoices: no user confirmation requested for update of invoices, if new invoice is created first
- Bug 797024 - Import Bills & Invoices: import matches csv data rows with too few separators, messing up the import data
- Bug 797025 - Import Bills & Invoices: the type of the post to account is not validated - enabling A/P and A/R postings on regular accounts
- Bug 797042 - OK button in OFX importer doesn't work if nothing is imported.
- Bug 797133 - CSV Import of multicurrency transaction export in multiline form
- Bug 797139 - test-report-utilities failure after 10-march in travis
- Bug 797419 - equity-statement unrealized-gain calculator uses weighted-average
- Bug 797481 - crash on close of unsaved tabs by pressing [X]
- Bug 797522 - Focus after reconcile jumps to a different account
- Bug 797536 - cmake errors out because it cannot find GncPkgConfig (cmake 3.5.2)
- Bug 797540 - Mapping of aqbanking accounts to gnucash accounts doesn't work
- Bug 797546 - Autocomplete not updated when account names changed
- Bug 797548 - multicolumn income statement: some closing entries are not ignored when within reporting period
- Bug 797549 - Reconcile window shows S_tatement Date rather than Statement Date
- Bug 797550 - Crash when changing register tab position
- Bug 797551 - Budget totals line missing in 3.8
Reinstate Income/Expense/Transfer/Total, but rename to:
- Inflow from Income
- Outflow to Expense
- Outflow to Asset/Equity/Liability
- Remaining to Budget
- Bug 797566 - Crash on use of context menu in importer
- Bug 797569 - Swedish account templates not accessible
- Bug 797570 - Unable to import vendors.
In the import of Customer/Vendor or Bill/Invoice, the dialog that lists rows that were not imported shows a scrollable view of only four rows.
- Bug 797572 - Customer Report (beta): "Period Totals" includes total debit and credits outside the current period
Previously Credits was rendered before Debits. Change to formal accounting convention. Can swap to informal headers if set by global preference.
- Bug 797573 - Incorrect value of securities in the Asset Chart
- Bug 797576 - xaccAccountOrder shouldn't sort account codes as base-36
- Bug 797584 - New-owner - bill amount field links to wrong account
- Bug 797588 - Gnucash segfaults when using mysql backend with empty password
- Bug 797591 - multiperiod b/s and PnL reports: add style sheet 'easy'
- Bug 797609 - Backtraces for eguile report errors strips wrong part of stack
- Bug 797613 - Due Invoices Reminder shows Job Name instead of Company Name
- Bug 797624 - At some point Vietnam Dong seemed to drop xu (decimals)
- Bug 797631 - Superfluous account selection dialog on first online retrieval
The online id, which is needed to find a GnuCash account for a transaction or the balance retrieved from an online account, is already assigned to each matched GnuCash account within the Online Banking Setup tool. The online id is removed from the GnuCash account if it is no longer matched with an AqBanking account.
- Bug 797636 - Incorrect Online account matches cannot be deleted
A push button with text "Delete selected matches" is added to the "Match Online accounts with GnuCash accounts" page of the "Online Banking Setup" tool. Additionally, the underlying tree view is set to multiple selection mode from single selection mode. Pushing the button will remove the matched GnuCash account from all selected AqBanking (Online) accounts.
- Bug 797638 - SIGSEGV editing transaction after closing Find Accounts dialog.
- Bug 797640 - The Reconciliation Window starting balance calculator needs to ignore splits after statement date
- Bug 797648 - Cannot reconcile both splits of a transaction with 2 splits for bank account subaccounts if only 1 is cleared
Force all splits in a transaction for the account being reconciled (and its children), to have the same reconciliation status. This fixes a problem when the splits have different statuses.
- Bug 797656 - Immediate crash when retrieving quotes
The following fixes and improvements were not associated with bug reports:
- [report-utilities] fix gnc:account-accumulate-at-dates sorting & operator
This commit performs 2 important fixes:
- The account splitlist walking assumes that the split->date always increases. This is now enforced by sorting the splitlist, *only* if a custom split->date is offered. By default the splits are sorted by posted_date, and if a custom split->date is used, will be stable-sorted to ensure the algorithm works.
- The handling of splits *ON* date boundaries is fixed. Previously if a split->date was equal to a date boundary, it would be considered part of the "after" date section. It is more intuitive that a date boundary includes all splits on and before the date.
- When selecting a file for OFX import, restrict the files listed to .OFX (or .QFX)
- Fix crash when changing account-separator.
- Change the default focus to search entry for 'Find Account' Fix rounding precision when importing prices from CSV
- [trep-engine] subtotals when cells have monetary only
Instead of accumulating subtotals from any non-#f value, ensure value is a gnc-monetary before accumulating subtotals. This paves the way to allow non-monetary in RHS custom-calculated-cells.
- Travis - don't try to copy the removed after-failure file to the test container
- Travis - use ctest built-in feature to verbosely log test failures
- Fix tokenize_string()to prevent empty strings as Bayes account-matching tokens and remove duplicated tokens.
- Fix calculation of Bayes account-matching token info to find exactly matching tokens only.
- Clear online banking KVP from accounts no longer associated with an online one
- Account template improvements for Swiss-German KMU and Germany SKR04.
- Appdata file allows packagers to include distribution release information.
- Ensure that new budgets are saved instead of saving only the state information.
- Update US Income Tax information for 2019.
- Correct double-counting of accounts in some cases in US Income Tax Report.
- Housekeeping - reduce the number of PACKAGE and VERSION related cmake variables
- Restrict gnucash.pot comment collection to ones beginning with "Translators".
At the recommendation of the Translation Project coordinator.
- [html-table][API] html-table can have multirow-col-headers
- NEW API: gnc:html-table-multirow-col-headers and gnc:html-table-set-multirow-col-headers! gnc:html-table col-headers have been augmented to support list of <th> rows.
- BACKWARD COMPATIBILITY is offered. Old use of single-row headers API gnc:html-table-col-headers and gnc:html-table-set-col-headers! should be unchanged; will get/set a single row of <th> elements.
- NEW functions gnc:html-table-multirow-col-headers and gnc:html-table-set-multirow-col-headers! will get/set an arbitrary number of rows of <th> elements.
- using old API gnc:html-table-col-headers on a table, whose multiple row headers have been set, will lead to a warning and return the first row only.
We have revised translations for Croatian, German, Polsih, and Ukrainian
Known Issues
The following are open bug reports to the 3.x series considered significant by the development team:
- Bug 795383 - Gnucash crashes on import of a 1400-transaction (or more) CSV file
- Bug 796955 - Import CSV - Single-line two-currency transactions can't be imported
- Bug 796992 - gnucash --add-price-quotes can't parse drive letters on Windows.
- Bug 796997 - Currency Conversion Dialog appears when recording transactions between same currency accounts.
- Bug 797006 - Balance is misleading in "open subaccounts" when different currencies are involved
- Bug 797037 - Counter formats not saving
- Bug 797064 - crash when try print report
- Bug 797083 - Gnucash crashes when trying to rename budget
- Bug 797092 - Save As fails: tries to save to reserved directory if path contains spaces
- Bug 797113 - Scrubbing crashes when creating small splits that round to value 0.
- Bug 797114 - Fixing an SX due to deleted account stuck in an error loop
- Bug 797115 - Can't 're-activate' an expired SX
- Bug 797211 - Very slow UI - dependent on window size
- Bug 797220 - delete account allows move of all transactions to account having non-matching currency
- Bug 797236 - Regression: Reconcile window transaction list resets to top when new transaction created in account
- Bug 797264 - 3.5 can't use Chinese IME input
- Bug 797283 - Permanent hang on clicking on report tabs
- Bug 797285 - QIF import fails and then crashes
- Bug 797293 - Crash when import "U+R" or "R"
- Bug 797294 - Billing functions freezing
- Bug 797318 - Amounts ending in zero displayed as fractions
- Bug 797325 - [Windows 7] Reports with charts will not load
- Bug 797329 - Using Japanese IME to enter transactions results in unexpected field jumps
- Bug 797334 - Crash on attempting to change account separator character
- Bug 797335 - Crash on subsequent Open after accidentally Opening the current file
- Bug 797336 - CSV Accounts import fails on UTF-8 e-acute in account name
- Bug 797345 - Selecting item in tax table causes gnucash to crash
- Bug 797348 - Wrong column order for RTL writing in GUI elements
- Bug 797351 - General ledger register transaction becomes "zombie" after deletion
- Bug 797363 - Consistent Silent Crash on Converting Saved Reports from 2.6 to 3.6
- Bug 797368 - Cannot download Quantity information from a CSV to a mutual
- Bug 797384 - Gnucash doesn't handle commodity prices with big numerator/denominator properly
- Bug 797385 - Report html files NOT opening in Reports tab or window due to webkit Frame Load Interrupted error
- Bug 797512 - Transaction with stock symbol XLU won't balance, symbol IXLU does.
- Bug 797514 - Changing transaction unreconciles a split inconsistently
- Bug 797646 - Crash When Finishing Reconciliation After Editing Transaction To Un-Anchor To Account
Documentation
Concurrent with the release of Gnucash 3.9 we're pleased to also release a new version 3.9 of the companion Help and Tutorial and Concepts Guide.
Documentation changes:
- Rewrite the translation paragraph in Overview, updating it to match the current status.
- Book options->Trading Accounts: link tutorial
- Remove obsolete basics_main[_]win*.{xcf|png} from guide
- In Business Account Setup of A/R and A/P emphasise 'for each currency'
- Remove redundant leading words in the admonition blocks
- Distinguish 2 "Process Payment" sections
Getting GnuCash for Windows and MacOS
GnuCash is provided for both Microsoft Windows 7® and later and MacOS X 10.9 (Mavericks)® and later in pre-built, all-in-one packages. An installer is provided for Microsoft Windows® while the MacOS® package is a disk image containing a drag-and-drop application bundle.
The SHA256 Hashes for the downloadable files are:
8d02dddc7cbc9d7324f4b577825dffffb8c4c938746701407e7b04bd647eb9ff
gnucash-3.9.tar.bz2524fa3f6b62390e3e0afe59636965f0a8059ae25f85d7cb4dc26f36929dcd9a8
gnucash-3.9.tar.gz760959d41588329ccbceda0527d2b6f847ca85b6460051a935c99f377e2545ff
gnucash-3.9.setup.exe121ccd52e49e27fd998ae8d2a34d65b3afd0ea184a5d752143008406a5e99053
Gnucash-Intel-3.9-1.dmg34a77b28492e7efe8208a695b93cf60f04fd639288cdda1f67d30cf7f39a120d
gnucash-docs-3.9.tar.gz
WARNING Do not try to use the github-generated files labelled "Source Code". They have not been processed with swig and will not build.
To compile GnuCash from the source code by yourself, you will need at least Gtk+ 3.10, Guile 2.0, Boost 1.54, WebKitGtk 2.4, and GoogleTest 1.7.0. In addition you will need SWIG 2.0.10 if compiling from git. Please consult the README.dependencies file in the sources for the exact list of dependencies and versions.
Getting the documentation
The documentation is available at Documentation page of the GnuCash website. The 3.9 documentation can be found under "GnuCash v3 (current stable release)" in multiple languages both for reading online and for download in pdf, epub, and mobi formats. The documentation is included in the MacOS and Windows application bundles.
About the Program
GnuCash is a free, open source accounting program released under the GNU General Public License (GPL) and available for GNU/Linux, *BSD, Solaris, MacOS, and Microsoft Windows. Programming on GnuCash began in 1997, and its first stable release was in 1998.