GNUCash Portable Changelog

What's new in GNUCash Portable 5.6

Apr 2, 2024
  • Bug 798946 - start/end of current/last quarter have off-by-one error
  • Bug 799093 - Cannot reconcile since v5.4
  • Bug 799179 - SLR won't allow change from "Reminder" to any other state
  • Bug 799210 - Bad encoding of accented chars in account names in "Import CSV" wizard
  • Bug 799213 - SIGSEGV caused by revising an auto completed transaction
  • Bug 799222 - Crash when changing the parent of an account that has had two or more levels of sub-accounts auto-created using the register in the current session.
  • Bug 799224 - Import of QIF gets Bug detected during duplicates (partial fix: If the new-splits object is null, it means the new account tree from the current import has no splits. Therefore the (apply min|max dates) will fail. Omitting the date query is a simple fix to prevent crashing. This is a partial fix because the crash is likely a symptom of another bug which causes the new account-tree to be empty.
  • Bug 799225 - QIF Importer Crashes Silently after "Start Import" Button: Don't allow a QIF investment transaction without an action (buy/sell/etc)
  • Bug 799246 - import matcher will rename incorrect splits
  • The following fixes and improvements were not associated with bug reports:
  • Numeric parsing and string handling improvements in the Engine and XML backend.
  • [gnc-dense-cal.c] sx popup: show date in preference (cf.locale) format because the date format preference is user-facing and customisable. it's jarring if the preference is dd/mm/yyyy and the display shows mm/dd/yyyy in accordance to the locale.
  • Correct misleading description about creating Scheduled Transaction.
  • Date parsing efficiency improvements.
  • Update minumum Python version to 3.8, made necessary by updating the C API in the Python bindings.
  • Replace deprecated distutils.sysconfig with sysconfig. distutils is not present in Python 3.12.2.
  • Query user via dialog for date when creating a reverse transaction.
  • More C++ conversions
  • Avoid deprecation warning for -py3 in swig >= 4.1
  • [gnc-commodities.cpp] gnc_new_iso_codes is a std::unordered_map
  • Replace some naked for loops with C++ algorithms
  • Convert gnc-commodity to C++ and make GncQuoteSources a C++ class.
  • [test-commodities.cpp] add some tests for gnc_quote_sources
  • Remove the SLR status sort as it is too confusing
  • Allow sorting of the transaction column in the Since Last Run dialog by schedule name or occurrence date. To sort by schedule name, a schedule name is first selected and then the column header is pressed to change order. To sort by occurrence date, a date is selected and then the column header is pressed to change order based on the date of the first occurrence. A tool tip has been added to indicate the sort order being used.
  • [gtest-gnc-numeric] add operator comparisons with example int64 numbers
  • [assistant-stock-transaction] store & retrieve associated account as metadata
  • Update Form/Schedule line references for 2023 for the US Income Tax Report
  • Update another gnucash-help to gnucash-manual
  • [invoice.scm] centralize layout components into layout-key-list instead of maintaining 2 assoc lists.
  • [invoice.scm] normalize header section generators, changing the functions to require 1 options argument only
  • Update invoice.scm: Add spacing for long Invoice ID's (Displayed as "Reference" on the Invoice)
  • New and Updated Translations: Croatian, Dutch, English (Australia), English (New Zealand), English (United Kingdom), French, German, Hebrew, Hungarian, Indonesian, Japanese, Norwegian Bokmål, Polish, Portuguese, Slovak, Spanish, Swedish
  • Documentation
  • Between 5.5 and 5.6, the following bugfixes were accomplished:
  • Bug 799237 - Dead Link
  • The following fixes and improvements were not associated with bug reports:
  • C, de:Manual:Finance-Quote: Note about Expected Time Commitment
  • C, de:Manual:Finance-Quote: Tip about 'gnc-fq-update: Command not found'
  • docbook: gnc-gui-de: Improve accelerator of menuitems
  • Link https://wiki.gnucash.org/wiki/Documentation_Translation#The_Procedure in recent gnc-gui-*.dtd files
  • Replace *dquote entities by <quote> tags
  • C:Manual:Tools:Unify main section titles and other minor improvements
  • Unify filename extension
  • C:Manual:CSV Import: show icons
  • xmlformat: Apply changes at the element 'screeninfo'
  • xmlformat.conf: new element 'screeninfo' with no entry- and no exit-break
  • New and Updated Translations: German

New in GNUCash Portable 5.5 (Dec 30, 2023)

  • Between 5.4 and 5.5, the following bugfixes were accomplished:
  • Bug 607000 - SLR visible transactions
  • Change the Since Last Run dialog to show only transactions with a non-empty Status.
  • Bug 792241 - Allow sorting scheduled transactions
  • Bug 798025 - SLR Value entry not tied to location
  • Disable scrolling and the horizontal scroll bar while an entry has focus.
  • Bug 798760 - SLR OK button to complete value entry
  • With this change the Since Last Run dialog's OK button will commit an in-progress edit and advance to the next edit requiring input. It will close the dialog only if there are no more edits.
  • Bug 798760 - SLR change reminder with value entry
  • Change transaction state from Reminder to ToCreate when the user has provided the needed value and clicked OK.
  • Bug 798890 - Printing Problem
  • Bug 799087 - Import - Unbalanced (need acct) transactions now show in red (previously orange).
  • Bug 799090 - Right Clicking scheduled transaction
  • Ensure that the selection highlight changes to the item under the pointer when right-clicking in the SX Editor.
  • Bug 799092 - GnuCash 5.4 leaves background process running on exit
  • Clear the schema_hash at app shutdown via gnc_prefs_remove_registered and make that function available to the Python bindings so that python programs can do so too.
  • Bug 799099 - Crash when trying to get quotes
  • Bug 799104 - "Asset Chart" broken
  • Bug 799108 - "Since Last Run" crashes if there are any errors creating a scheduled transaction
  • Capture errors and display them in a dialog box instead.
  • Bug 799113 - "Start Import" button reports "Failed"
  • Bug 799121 - Parse error on CSV import on MacOS
  • Bug 799130 - split-register.c:1847:gnc_split_register_save: assertion failed: (xaccTransIsOpen (blank_trans))
  • Bug 799134 - Fails to build with GCC 14 (‘find_if’ is not a member of ‘std’; did you mean ‘find’)
  • Bug 799138 - Port to new Python C config API
  • Bug 799143 - FTBFS on 32bit architectures
  • Bug 799144 - Date Completion is broken after 5.4 upgrade
  • Bug 799148 - Reliable crash when saving a modified saved report configuration
  • Bug 799150 - Can't paste text (with Ctrl+V) in Notes field in Account Tree View
  • Bug 799151 - gnc_date_get_last_mday () does not account for leap years correctly.
  • Bug 799152 - normalize_reldate_tm() does not handle dates with months greater than 11 or less than -11 correctly.
  • Bug 799156 - normalize_struct_tm() does not normalize seconds,minutes, and hours correctly.
  • The following fixes and improvements were not associated with bug reports:
  • Cancel the QIF import instead of inserting the default directory if the user cancels the file-selection dialog.
  • Memory leak fixes
  • Rename the scheduled transaction edit/new/delete menus to resolve a shortcut conflict.
  • Allow saving the sort column in the Since Last Run dialog
  • Ensure that Print Checks obtains for the check amount the sum of all splits in the current register account and subaccounts.
  • Ensure that report page actions are re-enabled after editing options. Some actions (Print, PDFExport, and Report Options) had been left disabled.
  • Ensure GncDateEntry always reverts to today if the user enters an invalid date string.
  • Direct cmake to find the base installed Python3 instead of the latest version installed. Reference Cmake Issue 24126, Cmake Issue 24878, and CMake merge request 8287. Note that this requires CMake 3.20 or later; users of older versions will still get the newest installed Python version.
  • CI: Run distcheck on one workflow to catch quickly instances where someone adds a file but forgets to update the distribution.
  • Primarily of interest to developers: We've added a new CMAKE_BUILD_TYPE, Asan, with two options -DLEAKS and -DODR, both of which default to OFF. This creates a non-optimized, with-symbols build with the Address Sanitizer hooks compiled in. While the primary motivation is a CI run to ensure that there aren't any memory allocation errors revealed in the test suite, this is also a useful build to use when debugging a segfault crash, many of which are caused by use-after-free errors. When building on non-Apple platforms -DLEAKS=ON will add leak detection, dumping a stack trace for the allocation of any leaked heap or free-store allocations. Similarly and on non-Apple platforms only -DODR=ON will log violations of the C++ one definition rule.
  • Also of interest to developers: A new cmake option -DCOVERAGE. When on and in a non-optimized build this will instrument the program and libraries to count usage for every source line. The option also adds three targets, lcov-initialize, lcov-collect, and lcov-generate-html. The primary motivation is to assess the completeness of tests in CI, see Coverage-HTML for the latest results.
  • New and Updated Translations: Chinese (Simplified), Croatian, Dutch, English (Australia), English (New Zealand), English (United Kingdom), Finnish, German, Gujarati, Hungarian, Italian, Norwegian Bokmål, Polish, Portuguese, Portuguese (Brazil), Romanian, Russian, Slovak, Spanish, Swedish

New in GNUCash Portable 5.4 (Sep 29, 2023)

  • Bug 728875 - Back button does not work in QIF import assistant
  • Bug 797507 - GnuCash Splash screen may disappear before the main window appears
  • Bug 798709 - Total(Period) column does not refresh period's value after update of the period in settings.a>
  • Bug 798904 - GnuCash on Windows opens a CMD window at startup.
  • Bug 798925 - Python bindings: "invalid unclassed pointer in cast to 'QofInstance'".
  • Bug 798944 - Program crashes when matching transactions
  • Bug 798950 - Bug Report: Incorrect Currency Conversion and Provider Invoice Payment Recording
  • When balancing lots use the split amount, not the value
  • Recalculate the values using deduced exchange rates after adjusting split amounts.
  • Be conservative when recalculating values after breaking up a split to avoid imbalances caused by rounding.
  • Bug 798958 - gncScrubLotLinks will infinite loop in some conditions
  • Bug 798982 - GetQuotes crashes if Finance::Quote returns an empty date.
  • Bug 798983 - Empty Orphan account appears after entering transactions in 5.3
  • Bug 798990 - Notes No Longer Autofills
  • Bug 798991 - Incorrect Account Name Order in Transaction Report
  • Bug 798995 - Keystrokes ignored during ledger entry
  • Bug 798998 - Job Report Not Working
  • Bug 799004 - Update of Prices attaches incorrect Date
  • Bug 799010 - gnc-register-account-sel-limited-option errors doesn't work
  • Bug 799020 - widget of gnc-register-list-option disregards user's clicks
  • Bug 799021 - Saved report renders default of gnc-register-list-option
  • Bug 799036 - Import prices from a CSV date problem
  • Bug 799039 - gnc:strify produces unusual results or crashes GnuCash when fed an option from gnc-lookup-option
  • Bug 799048 - Hover on tab not correct
  • Bug 799051 - Shortcut Ctrl + Tab not working in 5.3
  • Bug 799054 - Stock Assist not functioning
  • Bug 799060 - Consistent Crash in Invoices
  • Bug 799068 - csv export active register not working
  • Bug 799069 - Multicurrency Invoice Payment
  • Bug 799075 - Saving display tab changes in Report Options does not work.
  • Bug 799084 - Unable to create new scheduled transaction

New in GNUCash Portable 5.3 (Jun 30, 2023)

  • Bug 798967 - Cannot Save to Any Path After Upgrading to 5.2 Fix inverted if statement condition for save success flag

New in GNUCash Portable 5.1 (May 19, 2023)

  • Bug 765920 - Running balance not accurate when sorted different ways
  • Renamed option to "Account Balance" to avoid confusion with running total.
  • Added helper function to ensure running balance and balance forward are only shown when transaction are grouped by account and sorted as in register. In that case column heading remains "Running Balance" and balance forward is shown. Otherwwise column heading is renamed "Account Balance" and balance forward is not shown.
  • Also added missing code for Common Currency conversion.
  • Bug 797879 - [Transaction Report] running balance column not consistent with amount column for SAME transaction date
  • Bug 798461 - balance sheet shows positions with zero balances despite report options
  • Bug 798775 - Why is General Journal called "Register" in the tabs?
  • Bug 798802 - Online Price quote - Stocks not working GNU 5.0 Windows Bis
  • Bug 798802 - Online Price quote - Stocks not working GNU 5.0 Windows
  • Bug 798807 - Keyboard shortcuts not working
  • Bug 798808 - Saved reports shown on main menu
  • Bug 798810 - Income Statement (multicolumn) - account sorting is 'reversed' each time you restart.
  • Bug 798812 - crashes after I open a customer report and select…
  • Bug 798813 - Under File->Import, Missing OFX/QFX menu item
  • Bug 798815 - flatpak run --command=gnucash-cli cannot download quotes since 5.0.
  • Bug 798821 - Crash when running report in window
  • Bug 798834 - CSS-based Stylesheet Help Button not working
  • Bug 798839 - Edit -> Preferences string not translatable
  • Bug 798844 - "Assign as Payment" does nothing in 4.14 & 5.0
  • Bug 798845 - User Config and User Data link broken
  • Bug 798851 - Account Balance 'include subaccounts' not saved
  • Bug 798854 - Softkey 'Save Config' remains dark
  • Bug 798862 - Merge identical strings
  • Bug 798863 - Crash on clicking Settings button second time
  • Bug 798864 - Budget Reporting on select reports are wrong
  • Bug 798869 - Transaction Import MAP
  • Bug 798872 - Reload inoperative for reports
  • Bug 798877 - Program crashes upon selection of CSV profile
  • Bug 798885 - Accented character in folder name on Account Export
  • Bug 798886 - [Transaction Report] Subtotal upper headings do not follow font style of lower headings
  • Bug 798893 - several menu tip messages in reports are marked translatable but unused.
  • Bug 798894 - TOTD with ellipsis broken.
  • The following fixes and improvements were not associated with bug reports:
  • Add filters to the File>Open dialog in File mode to show only files with GnuCash extensions, only those matching GnuCash's backup file pattern, or any extension.
  • Select the first result in the Customer/Vendor search box. This allows faster keyboard navigation -- Find Customer, input search string, press ENTER, use up/down to select desired object, press ENTER to open object.
  • Improve foreign currency handling in budget report
  • Improve handling of the blank transaction when the register is sorted in reverse:
  • Change the preference option 'Future transactions after blank transaction'
  • Change tooltip for 'Blank Transaction' in register to mention moving to the blank transaction.
  • Show the blank transaction at top of register
  • Prevent infinite recursion from gnucash_item_edit_focus_out when using an input method.
  • Create obsolete features list with first member book_currency.Obsolete features set in the book will be removed from the book's KVP and ignored.
  • Restore existence, but not implementation, of GNC_FEATURE_BOOK_CURRENCY.
  • At least one user has managed to get it set on their book so even though it was supposed to be unimplemented it got through somehow. Restoring it allows books with it set to load.
  • Offer to force edit non-identical fields when multiple matches are selected in the import matcher window. Previously only identical Desc/Notes/Memo were unlocked for editing.
  • Guard against there being no namespaces in the new security dialog
  • Fix Finance::Quote use on Win32 by dealing with Win32 rn newlines on return from finance-quote-wrapper.
  • Fix some menu labels that were not marked for translation
  • Fix category in CSV export with simple layout.
  • If Trading accounts is enabled, and the transaction is a transfer between two accounts of differing commodities, the CSV simple-layout export would incorrectly show "--Split Transaction--" as the category.
  • When configuring Guile use pkg-config before searching for binaries.
  • The following fixes and improvements were not associated with bug reports:
  • Add details for some CSV import options.

New in GNUCash Portable 5.0 (Apr 4, 2023)

  • New Features:
  • A new Stock Transaction Assistant to guide you through entering most investment transactions for stocks, bonds, and mutual funds. You can access it from Actions>Stock Assistant when the focus tab is the Accounts page or a Stock or Fund account register.
  • A new Investment Lots report showing a graph of capital gains and losses in a period by investment lot. Note that if you don't use the View Lots dialog to manage capital gains and losses this report won't have anything to show you. Use Reports>Assets & Liabilities>Investment Lots to see the report.
  • The Online Quotes facility has been completely rewritten and the old gnc-fq-check, gnc-fq-dump, and gnc-fq-helper programs have been replaced with finance-quote-wrapper. The functions performed by those programs may now be accomplished by passing commands to gnucash-cli -Q, see gnucash-cli --help for specifics. The perl module requirements have changed with the rewrite: The new version doesn't need Date::Manip but needs JSON::Parse instead. gnc-fq-update has been, er, updated to reflect that.
  • A new tab on the New/Edit Account dialog called More Properties includes entries to set a high and low limit on an account. That's coupled to a new column that's available on the Accounts Page, Balance Limit. If you set a high or low limit and the account balance falls above or below the respective limit an indicator will be shown in the Balance Limit column.
  • The description field quickfill in the register now displays a drop-down list of possible completions instead of just one inline completion.
  • File import menu items for the MT940, MT942, and DTAUS formats is replaced with a single Import from AQBanking that supports importing any file format supported by AQBanking, including the frequently requested CAMT. (Note that some CAMT profiles are under the XML format.)
  • The import matcher now permits editing descriptions, notes, and memo fields in the matcher window before creating the transactions. Right-click and select from the context menu.
  • The report generated by the Print Invoice button on the Edit Invoice tab can now be configured as a book option at the bottom of the Business tab; this permits selecting a saved configuration of one of the standard invoice reports. Another option enables a delay, during which a dialog box will appear enabling the user to select a different report. Note: When saving a configuration make sure that the invoice number is not set or you'll get that particular invoice instead of the one that you pressed the button for.
  • Significant Code Changes:
  • Deprecations (will be removed in GnuCash 6.0):
  • _ (the alias for gettext. Use G_ instead
  • gnc:make-account-list-limited-option
  • gnc:make-account-list-option
  • gnc:make-account-sel-limited-option
  • gnc:make-account-sel-option
  • gnc:make-budget-option
  • gnc:make-color-option
  • gnc:make-commodity-option
  • gnc:make-complex-boolean-option
  • gnc:make-counter-format-option
  • gnc:make-counter-option
  • gnc:make-currency-option
  • gnc:make-date-format-option
  • gnc:make-font-option
  • gnc:make-internal-option
  • gnc:make-invoice-option
  • gnc:make-list-option
  • gnc:make-multichoice-callback-option
  • gnc:make-multichoice-option
  • gnc:make-number-plot-size-option
  • gnc:make-number-range-option
  • gnc:make-owner-option
  • gnc:make-pixmap-option
  • gnc:make-query-option
  • gnc:make-radiobutton-option
  • gnc:make-simple-boolean-option
  • gnc:make-string-option
  • gnc:make-taxtable-option
  • gnc:make-text-option
  • gnc:option-set-default-value
  • gnc:option-set-value
  • gnc:option-setter
  • gnc:option-value
  • gnc:register-option
  • The invoice option to gnc:register-report-create-internal
  • Report and Book Options:
  • This major change will affect everyone who has written custom reports in Guile Scheme.
  • The report and book options code has been completely rewritten in C++ with SWIG providing Guile Scheme access for reports. The new design requires directly registering options with for example gnc-optiondb-register-string-option instead of calling gnc:make-string-option to create an option followed by gnc:register-option to insert it in the report's options.
  • Value access is also changed: Instead of retrieving an option and then querying or setting its value with gnc:option-value one will query the optiondb with gnc-option-value, the arguments to which are the optiondb, the section, and the option name.
  • Supporting the new options backend the options dialog code in gnc-dialog-options, gnc-business-options, and the new gnc-option-gtk-ui have also been rewritten in C++.
  • Online Price Retrieval:
  • As noted under New Features the interface to Finance::Quote has been completely rewritten in C++ with much of the behavior previously coded in external perl scripts moved into GnuCash proper. This permits much better access to Finance::Quotes's facilities and in particular should provide much richer error reporting.
  • Stability Improvements:
  • There are hundreds of small changes to prevent memory leaks, reduce unnecessary memory allocations, and fix compiler and static analyzer warnings.
  • Use of deprecated API in C/C++ is now an error (with 3 exceptions), including for the minimum required version of GLib and Gtk.
  • Extensive changes to the CSV importer, resolving most known bugs.
  • Remove all unused variables and made an unused variable a compile error.
  • Move all extern "C" declarations into the respective header files and remove extern "C" wrappers around #include statements.
  • Separate the scheme financial functions into a separate module so that all other scheme code can be banished from libgnucash to bindings.
  • Modernization:
  • The menus and toolbars now use the GAction and GActionGroup actuation functions, replacing the deprecated GtkAction and GtkActionGroup APIs.
  • The experimental Register2 implementation is removed, as is the never-used Jalali calendar code and partly-written option code for creating a book currency.
  • New and Updated Translations: Chinese (Simplified), Croatian, Czech, English (Australia), English (New Zealand), English (United Kingdom), Hungarian, Japanese, Macedonian, Polish, Portuguese, Portuguese (Brazil), Russian, Spanish, Swedish, Ukrainian

New in GNUCash Portable 4.13 (Dec 25, 2022)

  • Between 4.12 and 4.13, the following bugfixes were accomplished:
  • Bug 760274 - The Statusbar "forgets" when register doesn't have focus
  • Bug 798545 - Crash when updating document link on vendor bill
  • Bug 798614 - Croatia to join the Euro
  • Bug 798629 - gnucash crashes attempting to import OFX file
  • Bug 798633 - 4.12 build failure on 32-bit Linux: "No code for module"
  • Bug 798640 - Segfault when running saved report
  • Bug 798649 - Crash when closing Edit Style Sheets dialog while Style Sheet Properties dialog is still open.
  • Bug 798653 - Schedule Calendar event description pop up window does not track mouse position
  • Bug 798657 - Import Summary language is wrong
  • Bug 798664 - Result of 'gnucash --nofile' is marked dirty
  • Bug 798669 - Multicolumn Balance Sheet not printing exchange rates
  • include equity accounts in the exchange rate commodities list.
  • Bug 798672 - Preferences are not saved nor loaded, ERROR <GLib-GIO> g_settings_new_full: assertion 'schema != NULL' failed
  • Bug 798680 - Not able to match a reverse transaction of a previously matched transaction.
  • Bug 798681 - Previously imported investment income transactions may not be filtered.
  • Bug 798694 - Cursor in the wrong place after pasting with auto-completion
  • The following fixes and improvements were not associated with bug reports:
  • Don't normalize text when pasting from the clipboard or appending descriptions or notes during imports.
  • [register] Delay post-ime reset of the selection to works around bug 798587.
  • [ofx import] Clean up importing investment transactions for smoother workflow and better UI behavior.
  • [account-piecharts] drill-down piechart: tree-depth is at most 6
  • Fix numerous memory leaks.
  • [ifrs-report] From Bug 798004 allow Cr cash to offset Dr fee and remove invalid "dividend reinvestment" during short.
  • [gtest-qofevent.cpp] Add comprehensive tests for qofevent
  • [test-qofbook] Test that gnc_features_test_unknown returns a suitable error message
  • [test-qofbook.c] add test for gnc_features_set_unused
  • [gnc-features.cpp] backport gnc_features_set_unused from master
  • [qofbook.cpp] backport qof_book_unset_feature from master
  • Move gnc-euro.[ch] to engine and unit test it.
  • [test-qofbook] basic features test: Sets a feature and tests it's set. it's impossible to design a book with unknown features using the API.
  • po/README: Remove relics from ancient context forms
  • [test-ifrs-cost-basis] amend tests to accommodate extra column.
  • [ifrs-cost-basis] compare register vs calculated capgain per transaction.
  • Accomodate WebKit package version update to webkit2gtk-4.1.
  • [assistant-stock-transaction] input positive capgains for Credit income account.
  • Deprecations:
  • qof_book_get_features
  • New and Updated Translations: Chinese (Simplified), Croatian, English (Australia), English (New Zealand), English (United Kingdom), French, Hungarian, Indonesian, Japanese, Korean, Macedonian, Polish, Spanish, Urdu

New in GNUCash Portable 4.12 (Sep 27, 2022)

  • Between 4.11 and 4.12, the following bugfixes were accomplished:
  • Bug 794584 - Register not updated when scheduled transactions created
  • Bug 798262 - Scheduled transactions with blank amounts do not get created.
  • Bug 798385 - Description to often only "Landesbank Hessen-Thuringen Girozentrale"
  • Prepend the Ulitimate Creditor or Ultimate Debtor to the transaction description.
  • Bug 798565 - Import map editor: deletion of a map does not mark gnucash document as dirty
  • Bug 798573 - Tab Width Behaviour
  • Formerly when the notebook tabs on the left or right, the space used fluctuated depending on tab label width. This change sets the label width to the preference setting when the tabs are on the left or right but when top or bottom the width is set to the number of characters when shorter than the preference setting so they take up less room.
  • Bug 798578 - MT940 imports broken - all transactions have date of first transaction
  • Bug 798585 - segfault running sample script
  • simple_business_create.py.
  • Bug 798588 - sx scrubbing was using incorrect free function
  • Bug 798590 - Transaction report: wrong type argument in position 1
  • Bug 798598 - Selecting a line in a Vendor Credit Note changes display of Subtotal cell to 0.00
  • Bug 798611 - Date changing when changing timezone by one hour
  • When getting a date from the date editor anywhere in the program set the time to neutral time instead of the beginning of the day unless get_date_internal is called with GNC_DATE_EDIT_SHOW_TIME in which case the user-provided time is used.
  • 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 in get_currency_denom and get_commodity_denom to GNC_DENOM_AUTO which will normally leave the denominator alone.
  • The following fixes and improvements were not associated with bug reports:
  • It is now possible to edit the description, notes, and memo fields of new transactions in the import matcher and to do so for multiple transactions. The option is accessed via a context menu on selected import lines.
  • Show GnuCash's installation and configuration configuration paths in the About dialog. List the same from the command line with a --paths option.
  • Add account hierarchy templates for locale es_AR
  • Continued work on the Stock Transaction Assistant. If you want to try out this new way of recording your investment transactions start GnuCash with the --extra option. The stock assistant is available on the toolbar and from the Actions menu when a register for a STOCK or FUND account is focused.
  • Replace the very obsolete ghelp: URI scheme with help: and install the documentation according to the XDG documentation spec on non-Mac Linux systems. This ensures that the Help menu documentation items work with Gnome 42 and later.
  • Conforming to the XDG documentation spec, rename the root page of the Help manual to index from help. This has the happy side effect of removing some special-case code from the macOS documentation links.
  • Standardize the top-level Equity and Assets account names in the French templates to "Capitaux propres" and "Actif" respectively.
  • [gnc-ab-utils] concise string accumulator
  • [gnc-glib-utils] gnc_g_list_stringjoin skips NULL data
  • [ifrs-cost-basis] identify sale/purchase according to truth table instead of via flawed heuristics
  • [ifrs-cost-basis] add options used as a report footer
  • [lot-viewer] Show Open & Close dates only when they have a value.
  • Fix use-after-free crash in gnc_set_busy_cursor.
  • Create Swiss SMB account chart acctchrt_pme-19.gnucash-xea.
  • [date-utilities] avoid report crash if start > end date
  • [html-chart] add percent formatter for numbers for older javascript.
  • [trial-balance] set default price-source to average-cost to minimise complaints (see Bug 798550)
  • Use macos-latest github runner for mac tests.
  • [dialog-price] Price Database: Insert help buttons
  • Disable transaction type (i.e. Bill or Invoice) in Invoice/Bill Registers, determining the type by inspecting the money flow.
  • Fix python tests dependencies so that ninja check works from a clean build directory with Python enabled.
  • Review of account templates C—missing placeholders, redundancies
  • Fixed a variety of memory leak, poor list handling, and dangling reference errors.
  • New API:
  • gnc_tm_get_today_neutral to complement gnc_tm_get_today_begin and gnc_tm_get_today_end.
  • gnc_get_dialog_widget_from_id
  • gnc_list_all_paths

New in GNUCash Portable 4.11 (Jun 28, 2022)

  • Between 4.10 and 4.11, the following bugfixes were accomplished:
  • Bug 797163 - qof_book_get_option segfaults when retrieving a non-leaf frame
  • Bug 798053 - Accounts renumeration (renumbering)
  • Bug 798471 - Can't see or select Income or Expense accounts in Income Tax Information GUI
  • Bug 798483 - GnuCash Crashing With SIGSEGV During QFX Import Transaction Matching
  • Bug 798491 - MT940 of day 28.02.2022 ends in transactiondate 01.01.1970
  • Bug 798493 - Invoice Report Quantity & Unit Price fields have limited decimal precision on printed invoices
  • Bug 798496 - gncEntry Quantity and Discount are misusing commodity scu
  • Bug 798499 - Expense Chart data tables include extra columns of data
  • Bug 798500 - FTBFS (tests failure) on armhf
  • Bug 798501 - Balance wrong date end of period
  • Bug 798531 - Selecting "Print" from the file menu on a report crashes gnucash
  • Bug 798533 - Crash when importing quicken @ currency
  • Bug 798535 - Crash when increasing the number of periods in a budget
  • Bug 798547 - Calculated Due Date is short 1 day when posting on day of fall change from Daylight Time to Standard Time.
  • The following fixes and improvements were not associated with bug reports:
  • Partially fix Bug 771095 by inserting a help button in the Since-Last-Run dialog.
  • Lock down GITHUB_TOKEN permissions on workflows.
  • [g_option_context_get_help() returns a char* which must be freed.
  • [assistant-stock-transaction] dividends must include stock account.
  • Fix arch linux CI build failures.
  • Add a help button to the financial calculator dialog.
  • [assistant-stock-transaction] avoid resetting txn_types unnecessarily.
  • [assistant-stock-transaction] reorder of Pages - date before type.
  • [import matcher] Only append description if there's something to append to.
  • Otherwise just set the new string.
  • [balsheet-pnl] test "lvl <= depth-limit" outside add-indented-row as a first step trying to fix bug 798502.
  • [gnc-main-window] page->window is not main_window, skip warning.
  • [gnc-plugin-page-register] if account==NULL, skip AccountIsPriced because gnc_plugin_page_register_ui_initial_state may be called for non-account registers (eg the sx editor) and account may be null.
  • [gnc-account-sel.c] prepend & reverse while building acct list
  • and don't use confusing double pointer
  • Fix use-after-free in unable to save database dialog.
  • [account.cpp] restore breadth-first search for 2 functions
  • gnc_account_lookup_by_name and gnc_account_lookup_by_code were searching breadth-first and accidentally changed to depth-first in 4.7.
  • [account.cpp] gnc_accounts_and_all_descendants converted from scm
  • [CI]Work around new git security measure.
  • [balsheet-pnl] faster definition of balance lists
  • [gnc-numeric.cpp] Reduce logging level of gnc_numeric exception message because exceptions are expected in some use cases.
  • Redo icon handling in cmake
  • Using globs for file copying prevents cmake from discovering newly added icons. Writing rules that explicitly use lists of icons will fix this as a new icon in the sources will have to be added to the list and will force reparsing by cmake. We have to maintain the lists anyway for our dist target so there's actually no extra work involved for the devs.
  • [assistant-stock-transaction] better Dr/Cr imbalance error message
  • New API:
  • gnc:accounts-and-all-descendants-sorted
  • gnc-accounts-and-all-descendantsNone
  • Deprecations:
  • gnc:account-path-less-p
  • gnc:accounts-and-all-descendants
  • New and Updated Translations: Arabic, Chinese (Simplified), Croatian, English (Australia), English (New Zealand), English (United Kingdom), French, German, Hebrew, Hindi, Hungarian, Italian, Korean, Nepali, Norwegian Bokmål, Polish, Portuguese (Brazil), Russian, Spanish, Swedish, Ukrainian

New in GNUCash Portable 4.10 (Apr 5, 2022)

  • Between 4.9 and 4.10, the following bugfixes were accomplished:
  • Bug 684507 - commodity namespace should be localized
  • Bug 741674 - Newly created Scheduled Transactions appear in existing search windows
  • Bug 797501 - Currency symbols in Hebrew (RTL) language
  • Bug 797772 - Allow reconciliation report to double filter by both posting and reconciliation date
  • Bug 798164 - Import transaction window does not allow changing the transaction description.
  • Bug 798272 - up/down arrow keys do not work in account selection pop-up
  • Bug 798375 - Transfer Account Selection not editable after typing error
  • Bug 798386 - Cannot increment date by 1 day with Japanese keyboard.Allow ';' to increment the date because on those keyboards + is shift-;.
  • Bug 798391 -OFimport routine keeps prompting for accepted (and reconciled) transactions when imported again
  • Bug 797610 - Scrolling is too fast to follow
  • Bug 798392 - Reports do not display when Reports JavaScript dependencies are located at a filepath that includes special characters like hash ("#")
  • Bug 798395 - ofxdirectconnect downloads crash gnucash 4.9
  • Bug 798408 - The calculation in budgets UI and reports are wrong.
  • Bug 798411 - Untranslated/Unused string [pt only]
  • Bug 798415 - Due Bills Reminder Dialog - Right align 'amount'This was a right-to-left language (e.g. Hebrew) problem.
  • Bug 798435 - Crash on print after printing checks
  • Bug 798438 - on reconcile window, click on the last column 'R' does not order the entries according with the status
  • Bug 798448 - Column 'num' cannot be null
  • Bug 798458 - Build failure with gcc 12
  • Bug 798474 - Windows 10: Mouse scroll wheel on register only scrolls 1 pixel at a time (instead of 1 line at a time)
  • The following fixes and improvements were not associated with bug reports:
  • Added a BETA Stock Transaction Assistant to help create a variety of securities transactions. To try it out start GnuCash with the --extra option, open a stock-type register, and select Actions>Stock Assistant. Please note any issues on Bug 798004.
  • Remove the hard-coded default namespaces"AMEX", "NASDAQ", "NYSE", "EUREX", and "FUND" from the New Security dialog. These namespaces were added to the list of existing namespaces; it was necessary to create a commodity that used one of them to make that one an actual namespace, so users who have commodities in e.g. the namespace NYSE will still see that namespace in the selection list. Reasoning: The list was necessarily incomplete and confused new users.
  • Fixed the Income Statement report table formating so that all sections get laid out to the same width.
  • [Python Bindings]Implement some comparison and arithmetic operators for GncNumeric
  • Budgets are sensitive to readonly status
  • Disable some budget features if book is readonly
  • Fisuppression of "cut split/transaction" warnings for the current session
  • These were not working because they were missing from the temporary warnings settings schema. The warnings could only be dismissed permanently. Add them to the temporary warnings section of the settings schema.
  • Currencies in several locations not displayed correctly for Hebrew
  • [category-barchart] Added option to show ratios
  • [html-chart] Add format style option for numbers
  • Better wording for tatable changed info message.
  • [register] Checkboany value other than 0x20 (ASCII space) is true, because it can be or U+2716 now and could be something else in future. Fixes in particular the disappearing tax-included and tax-table in the Invoice/Bill entry register.
  • [Python Bindings]Provide the complete set of QOF enums in gnucash
  • [Pyton Bindings]Provide wrapper for qof numeric predicate
  • Python bindings already have some wrapping objects for qof predicates. This adds the one missing for GncNumeric comparisons. Additionally fixes a wrong number for QOF_NUMERIC_MATCH_ANY in example file.
  • Remove commodity-table.scm, no longer required after adjusting qif-dialog-utils
  • Preferences, Import: UPDATE AND RECONCILE should be UPDATE AND CLEAR on preference "Enable update match action" tooltip text.
  • [register] Enable horizontal scrolling with a touchpad.
  • [business]Add diagnostic messages to GncEntry and GncInvoice.
  • Replace code style guidance with reference to the wiki Coding Standard page.
  • Update Form/Schedule line references for 2021 for the US Income TaReport
  • Update the register help label when cell read only
  • Change AR/AP Type cell to be read only. The Type cell in AR/AP registers should not be changeable from the register so make the cell read only.
  • Tip-of-the-Day, new tip: the full file path is shown in the status bar.
  • [assistant-qif-import] Prevent ambiguous mnemonic
  • Mnemonic N clashes with GtkAssistant "Next". Change to D which does not clash.
  • Numerous performance and code-clarity improvements.

New in GNUCash Portable 4.9 (Dec 22, 2021)

  • Between 4.8 and 4.9, the following bugfixes were accomplished:
  • Bug 797502 - (RTL) - Right edge of the reports are locked while scrolling down
  • Running gnucash in Hebrew, the right edge of the reports are locked while scrolling down and do not scroll with the rest of the report.
  • Bug 797618 - Spanish translation of Shares and Stock
  • Bug 797678 - OFX importer should supplement, not replace, existing Notes (and Description and Memo) fields
  • Add an "Append" checkbox to the bottom of the "Generic import transaction matcher" window to the left of the "Reconcile after match" checkbox. When ticked, this causes the imported Description/Notes to be appended to the matched transaction Description/Notes respectively. The selected ticked/unticked state of the "Append" checkbox is saved in a key value pair for the import account, so the next import for that account will automatically default it to the saved state. As these mods are limited to the code for the matcher window, this should work for all the imports that use it - ie ofx & csv file imports (both tested) & aqbanking (cannot test).
  • Bug 797772 - Allow reconciliation report to double filter by both posting and reconciliation date
  • Bug 798222 - Account search dialog: Pushing enter does nothing
  • Bug 798266 - Dropdown picker menu for category does not appear
  • Bug 798313 - "File/Import/Import Transactions From CSV" crashes Gnucash.
  • Bug 798320 - Error message indicating a crash of GNUcash when closing application - MacOS 10.15.7 (19H1419)
  • Bug 798325 - New Currency for Venezuela (VED)
  • Bug 798327 - Ofx import stops too early for multi-account OFX and one account has no new transactions
  • Bug 798335 - No longer possible to change trading account
  • Strip trading splits only if "Use Trading Accounts" is enabled for the book so that users who want to manage trading accounts by hand may do so.
  • Bug 798341 - Right align in Hebrew - Account screen
  • Bug 798346 - crashes when running check & repair
  • Bug 798352 - Decimal Precision when Entering Mutual Fund Transaction
  • Let xaccParseAmount parse up to 12 decimal places instead of 8.
  • Bug 798382 - Typo corrections in comments
  • The following fixes and improvements were not associated with bug reports:
  • More memory leak plugging and GList efficiency improvements.
  • Fix build with cmake older than 3.18
  • 3.18 introduced 'cmake -E cat', but we still have to support versions starting from 3.14.
  • [account-piecharts] don't use gnc:make-internal-option
  • Several improvements to the experimental IFRS cost-basis report.
  • Fix two minor issues with displaying links in the Document Link dialog.
  • Fix obsolete links to bugzilla.gnome.org in translations.
  • L18N: Fix glossary/es.po:906: duplicate message definition...
  • 901: ...this is the location of the first definition
  • [budget-flow] delay creating exchange-fn until a valid budget exists
  • because it needs budget period end-date.
  • [options.scm] Addon previous commit... need to initialize with guid
  • [options.scm] gnc:make-budget-option stores guid instead of object
  • because object may become stale if UI is used to delete it, leading to stale pointer and segfault. storing guid is safer, and will return null if budget is deleted.
  • support SEPA internal transfer
  • Fix issue with failure to run reconciliation with all accounts present in a multi-account OFX file. Do that by saving a GList of statements, rather than a pointer to a single one. Also freeing of info happens during the call to process_next_file.
  • Import of OFX files with many securities opens too many matching dialogs Because ofx import is currently split per target account, and since each security has its own accounts, importing such OFX is a tedious process. The fix is to only split the transactions if we identify a potential transfer, currently based on amount, date and accounts. To do that, we insert transactions one by one into a list, making sure we have not already inserted one that has the same date, and the same absolute amount. If we have, we keep this potential transfer for a second phase. A naive approach would loop through added transactions for each new transaction by that ends up being O(N^2), which matters if we have many transactions. Instead, I'm using a hash to make this O(N log N).
  • [date-utilities.scm] remove unused date selectors code & string
  • Adjust GNC_DEFINE_TYPE_EXTENDED_END
  • To match new signature of g_once_init_enter and g_once_init_leave.
  • Fix build with glib2 2.67.x.
  • glib headers should not be included with 'extern "C"'.
  • Add explanatory note for gnc_add_scheme_deprecated_module test code
  • The immediate parent commit removes old deprecated scheme modules. Link to the old modules for example code.
  • [test-engine-extras] don't create splits of opposing amt/value signs
  • Splits' value and amount should never be of opposite signs. Fix test book which had created this incorrect value/amount pair. Strengthen env-create-multisplit-transaction to disallow test book errors.
  • [dialog-search] another QofQuery "q" must be destroyed
  • because qof_query_merge creates a newly allocated QofQuery, its 2 QofQuery must be freed separately.
  • [trep-engine] new option "Date Filter" to specify dates to filter by
  • [dialog-sx-since-last-run] don't allocate repeatedly to combine strings
  • [test-transaction] "Report Currency" renamed to "Report's currency"
  • Separate the warnings for "cut split/transaction" and "delete split/transaction"
  • [gnc-autoclear] Move autoclear algorithm into gnome-utils
  • GSettings - fix GObject warning when old prefs-version is unset
  • This will happen when current master (future 5.0) has been run at least once.
  • [utest-gnc-pricedb] add tests for gnc_price_list_equal
  • Also need to change PWARN which causes test failure, to PINFO
  • [reconcile-view][bug] dr/cr query tests amount instead of value
  • Because split->amount and split->value are generally of equal sign, EXCEPT in stock transactions whereby split->value can be zero and split->amount is non-zero. e.g. a stock split transaction. Querying the split amount instead will allow stock accounts with stock splits to be reconciled.
  • [split-register-model.c] Hide price==1 for zero-amount splits
  • mainly of interest in zero-amount zero-value splits in the stock register eg dividend splits.
  • [core-utils] introduce gnc:format
  • (gnc:format str [binding value]...) str will contain ${binding} which will be replaced to value.
  • [import-main-matcher] show destination acct for auto-match
  • GSettings - add 'deprecate' and 'obsolete' conversions for user preferences
  • 'deprecate' is technically a noop. It serves to remind maintainers the 'deprecated' preference is to be obsoleted in the next major release. 'obsolete' goes one step further in that it will cause gnucash to reset the preference, effectively clearing the value stored in the preferences backend. This is the final phase of a preference. Following this it will be completely removed from the GSettings schema in the next major release. Notes * 'deprecate' and 'migrate' are related. Both are a reminder the preference is to be obsoleted in the next major release. 'deprecate' does only that though while 'migrate' will also trigger a copy of the old value to a new location in the databse. * This commit readds a couple of preferences that had been removed in the past to be able to properly obsolete them (and to test the obsoleting code)
  • New and Updated Translations: Chinese (Simplified), Chinese (Traditional), Croatian, French, German, Hebrew, Italian, Norwegian Bokmål, Portuguese, Portuguese (Brazil), Spanish, Ukranian.
  • Documentation:
  • Concurrent with the release of GnuCash 4.9 we're pleased to also release a new version of the companion Help and Tutorial and Concepts Guide
  • Between 4.8 and 4.9, the following bugfixes were accomplished:
  • Bug 797950 - Reconcilation docs don't mention automatic credit card payment feature.
  • The following fixes and improvements were not associated with bug reports:
  • Guide:C: Add a directory with datafiles for faster regeneration of images
  • Chapter "Online-Quotes" created.
  • Description of the installation and configuration of F::Q (moved from Help_ch_Account-Actions-xml).
  • Remove several Autotools remains
  • Drop TravisCI as we are using Github Workflows now.
  • Removed the information of HACKING file from README.
  • Add ghelp to the default target
  • At some point in the past ghelp didn't have to be built, as one could develop and test simply from the source directory. That is no longer the case so perform a build by default if ghelp is enabled.
  • New and Updated Translations: German

New in GNUCash Portable 4.8 (Oct 1, 2021)

  • The following fixes and improvements were not associated with bug reports:
  • [gsettings] Avoid crash from settings schema not being registered.
  • Rethink how gsettings migration file is constructed
  • GSettings hotfix - resolve crash due to bad schema reference
  • [gnc-plugin-page-register] call invoice editor with parent window
  • [assistant-stock-split] set parent window properly

New in GNUCash Portable 4.6 (Jun 29, 2021)

  • Between 4.5 and 4.6, the following bugfixes were accomplished:
  • Bug 648335 - Display Created Transactions setting
  • Add a preference for the 'Review Created Transactions' setting in the 'Since Last Run' dialog so that the default can be specified.
  • Bug 743753 - Nearest in time security price selection is incorrect in reports
  • Add new price source - 'nearest before report date' will ignore prices *after* report date.
  • Bug 743999 - Deleting a digit from an existing number greater than four digits in length generates an error message.
  • Because the grouping is off. Checking grouping on input is pointless so just ignore the grouping separator when parsing number input.
  • Bug 753283 - Current Selection Highlight Lost After Transaction Edit in Scheduled Transaction Window
  • Bug 787813 - Price change from editing a transaction not reflected in pricedb.
  • Bug 794877 - Intro text of "Online Banking Setup" is outdated
  • Bug 795804 - Extremely slow save
  • Only update the status bar when the percentage changes by at least 1% because running the mainloop is expensive on macOS and Microsoft Windows. This speeds up all operations that run the progress bar with overly-fine resolution.
  • Bug 796761 - Newline (char(10)) is inserted into the end of the string if copy & paste text from excel into the description field of transaction
  • Bug 797787 - Feature request: preference setting to open new tabs adjacent to currently active tab
  • tests preference; if enabled then new tab inserted after current. if disabled then new tab is at the end.
  • Bug 797928 - Since last run asks for security price when no shares traded
  • Bug 798093 - Changing the symbol/abbreviation of a security after the trading account was created breaks GnuCash.(Reopened)
  • Bug 798133 - Gnucash crash when any custom action is entered
  • Bug 798144 - Reconciliation uses different number than entered
  • If a number was pasted into the balance end value with a currency symbol the number would silently fail on evaluate and cause the wrong value to be used. With previous changes to the GNCAmountEdit widget a warning symbol will indicate a validation error and prevents going forward.
  • Bug 798148 - "Accounts" page Present (USD) column uses future prices
  • Bug 798151 - Value entry box not tied to associated transaction in Since Last Run assistant
  • Bug 798156 - glib 2.68.0 breaks gnucash
  • Bug 798159 - Keyboard shortcut bug in 'manage document link'
  • Bug 798162 - Type Ahead Initialization Problem
  • Bug 798170 - Unbound variable: gnc-budget-lookup when running saved report Budget Report via gnucash-cli
  • Bug 798177 - Price of new stock transactions not saved in price database
  • Bug 798186 - Incorrect result editting account in register when overtyping a part selection.
  • Bug 798188 - The Invoice Editor -> Printable Invoice toolbar button crashes on Windows
  • Bug 798196 - not building with Boost 1.76
  • Bug 798199 - Pasting invalid value in date column crashes GnuCash
  • Bug 798202 - Register input ignores theme on KDE rendering black text on black background
  • Bug 798203 - g_assert fault while reversing transaction
  • Bug 798204 - Creation of Imbalance Accounts
  • Bug 798212 - right-click the down-arrow in the date register changes focus to first split
  • The following fixes and improvements were not associated with bug reports:
  • Improve transaction sorting on effective num field so that alpha charachters and numbers larger than 1 billion will be ordered. Ordering is now numeric for leading numbers (so that 9 sorts before 10) and lexical beginning with the first non-numeric character. Note that if one of the values begins with an alpha character ordering will be entirely lexical. Lexical sorting is localized; as in the rest of GnuCash only standard ASCII numbers (codepoints U+0030 - U+0039) are treated as numbers.
  • Add import preferences for the difference in time considered when matching an existing transaction to an imported one. A difference less than the matching-date-threshold raises the score of the match; a difference greater than match-date-not-threshold lowers the score.
  • Add experimental report "IFRS weighted-average cost basis report". This is a work-in-progress to help calculate the cost basis of securities priced in a foreign currency.
  • [income-gst-statement] amend headers post Brexit. UK left EU, therefore VAT headers have now changed.
  • Plug a bunch of memory leaks.
  • Change how the print_info is obtained for the register: Currently the register sets up some 'print_info' values using the default account but if the register is a stock register they should be obtained from a parent account with a currency.
  • Change monetary value for gnc_default_share_print_info: Share values are not currencies so set the monetary value to 0 for the GNCPrintAmountInfo
  • Parse the register monetary cells for a currency symbol: Add the ability to strip the currency symbol from a registry monetary cell if it is pasted with one so it can be validated.
  • SKR-49 Account Template: Add codes 4500-4504, drop a duplicate, correct code 0674.
  • [gnc-plugin-page-register] Disable reverse on blank split
  • Make balancing transactions with trading accounts easier by removing and recalculating all trading splits. This ensures that there will be only one trading split pair per exchange and relieves the user of having to adjust the trading splits to match the accounting splits.
  • Don't bother scrubbing for orphans if there's no transaction currency. If it found one it would try to create an orphan account with no currency which will crash later.
  • [chartjs] upgrade chartjs to 2.9.4. Fixes CVE-2020-7746
  • [report-core] disallow define-report with incomplete export info. If exporting is allowed, 'export-types and 'export-thunk must both be defined.
  • [test-engine-extras] augment book data generators
  • ignore .vscode folder
  • Reorder and relabel price source list for better coherence
  • Python Bindings: Provide a deprecated GncPriceDB.lookup_latest_before_t64 to avoid breaking user scripts.
  • Update gnucash_core.py with gnc-pricedb function name change
  • Change some functions to use const gnc_commodity for gnc_pricedb
  • Reformat schedule transaction source files for white space
  • Add depreciation warnings for the removal of individual option tool tips
  • Remove individual tool tips from radio button options
  • Removes the function gnc_option_permissible_value_description
  • ESC key was not working on load of Scheduled Transaction Editor
  • [budget.scm] show correct tooltip for report option
  • [html-acct-table] Remove unused 'pre-adjusting balances option
  • Bugfix: export-code for category-barchart reports would fail.
  • This stems from trying to handle file-name when calling export code. Export code no longer require file-name, The export-code returns a string in the html-document object instead. Remove all file-name handling in reports. No backward compatibility issues because most users would not copy a GnuCash >=4.6 report code onto a <4.5 installation.
  • [gnucash-cli] improve discoverability of export-type. Formerly, selecting --export-type EXT would dump the cryptic "Report REPORTNAME has no export code". Modify to hint the user on acceptable reports with export-code.
  • New API:
  • [report-utilities] Functions to dump splits in whole book:
  • gnc:dump-book - splits grouped by account
  • gnc:dump-all-transactions - splits grouped by transaction
  • gnc:dump-split - dumps single split
  • Rename a couple of gnc-pricedb functions that have not been used:
  • gnc_pricedb_lookup_latest_before_t64 to gnc_pricedb_lookup_nearest_before_t64
  • gnc_pricedb_lookup_latest_before_any_currency_t64 to gnc_pricedb_lookup_nearest_before_any_currency_t64
  • Add retrieval functions for price before the date given:
  • gnc_pricedb_convert_balance_nearest_before_price_t64 that retrieves the balance using the last price dated before a specified date like today for the preset value.
  • gnc_pricedb_get_nearest_before_price does the retrieval.
  • Deprecations:
  • gnc:get-start-next-year
  • gnc:get-end-next-year
  • gnc:get-start-next-month
  • gnc:get-end-next-month
  • gnc:get-start-next-quarter
  • nc:get-end-next-quarter
  • gnc:get-one-month-ago
  • gnc:get-one-month-ahead
  • gnc:account-code-less-p
  • gnc:account-name-less-p
  • Chinese (Simplified) translation moved from the Gnu Translation Project to weblate
  • New and Updated Translations:
  • Catalan, Chinese (Simplified), Chinese (Traditional), Croatian, Dutch, French, German, Greek, Hebrew, Indonesian, Italian, Japanese, Norwegian Bokmål, Polish, Portuguese, Portuguese (Brazil), Spanish, Turkish, Ukrainian

New in GNUCash Portable 4.4 (Jan 4, 2021)

  • Bug 798038 - Incorrect spelling in german account templates 'common' and 'full' part 2: AT
  • Bug 798063 - Crash when opening SX Editor

New in GNUCash Portable 4.2 (Sep 30, 2020)

  • Between 4.1 and 4.2, the following bugfixes were accomplished:
  • Bug 102787 - Currency selection should do autocompletion
  • Bug 476114 - Goto register by date feature req
  • Adds ability to jump to arbitrary date:
  • Bug 554391 - Tax Options dialog - can only assign one TXF category at a time
  • If the Tax options dialog is opened from the Chart of Accounts and an account is selected then the tax dialog will preselect that account:
  • Bug 787295 - Allow UI jump from Business accounts to their relevant invoice/bill/voucher
  • Bug 797514 - Changing transaction unreconciles a split inconsistently
  • Partial: This make sure that the split's reconcile status gets updated before the transaction is committed:
  • Bug 797730 - Transaction matching can match multiple imported transactions to the same existing one
  • Bug 797839 - Auto-complete prevents entering non-ASCII transaction descriptions
  • Bug 797852 - Error in Accounts Payable Aging re cut off dates
  • Bug 797857 - Edit->Preferences: Help/Close buttons unreachable
  • Bug 797874 - Errors in register and new-account UI
  • Bug 797878 - Pie chart displays fractions and long decimal representations
  • Ensure amounts rendering is rounded to report-currency SCU:
  • Bug 797880 - [gnucash-cli] encoding and font differing from manually exported reports (Win10, German locale).
  • Bug 797883 - [Transaction Report] non-localized string
  • Bug 797889 - editing amounts in dr / cr behaving oddly
  • Bug 797893 - Unable to change font size in charts
  • Use the stylesheet font values instead of hard-coded ones:
  • Bug 797895 - Hang for a long time (9 minutes per account) importing a QFX file.
  • Bug 797896 - [HBCI] crash when downloading transactions
  • Bug 797897 - Cannot select multiple accounts in Tax Report Options
  • Bug 797898 - [reconciliation] calculated balance amount per reconcilation date depending on actual time.
  • Bug 797900 - Crash caused by Quitting while Check and Repair All is running
  • Bug 797923 - Running employee report results in "Unbound variable: txn"
  • Bug 797924 - Crash when searching for customer to process payment.
  • Bug 797935 - Strange formal register headers
  • In languages other than English because of poorly constructed translatable strings.
  • Bug 797936 - Lot viewer notes field too narrow
  • Bug 797945 - Tools -> Import Map Editor causes GnuCash to lock up

New in GNUCash Portable 4.1 (Jul 27, 2020)

  • Between 4.0 and 4.1, the following bugfixes were accomplished:
  • Bug 775582 - Change "Petrol" (or Gas if seen in USA) to "Fuel"
  • Bug 797759 - Some transactions are not highlighted in the matching window
  • Bug 797787 - Feature request: preference setting to open new tabs adjacent to currently active tab (as opposed to at the end of the tab list)
  • Bug 797825 - OFX import crashes on import of investment transaction
  • Bug 797827 - 4.0.1 gnucash-cli seg faults on macOS Catalina
  • Bug 797828 - Budget Barchart was not upgraded
  • Bug 797830 - Expense over time has extra empty row
  • Bug 797831 - Printer not found
  • Bug 797834 - Ctrl+A in account register fields chimes after any element newly focussed.
  • Bug 797835 - Zero Crossing in 4.0 that wasn't in 3.10
  • Bug 797842 - Windows: Insertion cursor invisible in Edit Account or New Account windows until text fields have content
  • Bug 797843 - Quickfill broken with Cyrillic input language
  • Bug 797844 - Typing account number to select account fails
  • Bug 797845 - Backspace key produces incorrect result
  • Bug 797847 - Best match probability calculation on import is too pessimistic
  • Lowering the minimum value for the auto-clear preference. This is to allow user to still auto clear even when date don't match quite exactly.
  • Bug 797850 - Account register credit/debit column headings untranslated
  • Bug 797853 - Crash on 'Save As' in MacOS Mojave and Gnucash 4
  • Bug 797854 - Global Register Preference to prompt for interest payment is not being honored.
  • Replace the global preference item with a per-account option, enabled only on those account types where interest might be paid or charged.
  • Bug 797858 - Transaction date is one day too early from SWIFT MT940 import.
  • Bug 797861 - Yearly / Monthly average reporting displays zeros
  • Bug 797873 - New Account Hierarchy selects en_US
  • The following fixes and improvements were not associated with bug reports:
  • Accommodate Guile-3.0 in Scheme code.
  • [html-style-info] Display fractional amounts as decimal in price-render
  • Warn against using xaccTransGetSplit for iteration instead of encouraging it.
  • Quickfill cells: Remove the selection after a delete.
  • Accommodate AQBanking < 6 use of GWEN_TIME instead of GWEN_DATE.
  • ensure averaging-multipler returns exact numbers rather than floats
  • [gnucash-cli] improve "-R show" to describe report
  • Don't leak the libofx contexts in gnc_file_ofx_import_process_file/
  • Make the edit dialog refresh the auto-interest flag display based on pref
  • Remove global preference for auto-interest-transfer
  • [Reports] Use SRFI-9 records for HTML styling.
  • [html-style-sheet] combine 2 similar functions
  • Let environment override AppleLanguages on Macs.
  • [balsheet-eg] remove unused functions
  • [balsheet-eg] modernize accrec to use srfi-9 record
  • [account.cpp] prevent crash in gnc_account_get_currency_or_parent.
  • CMakeLists: mark deprecation of .scm files
  • [eguile-utilities] Ensure that fmtnumeric renders numbers as decimals instead of exact fractions.
  • [Python Bindings] Implement keyword paramters to selected functions.
  • [Python Bindings] Adapt to use of sessionOpenMode in qof_session_begin
  • introduce python submodule deprecation.
  • Link with libm.so on those platforms that require it.
  • [account-piecharts] round account->balance to report-currency SCU
  • [report-utilities] ensure commodity-collector doesn't round amounts
  • [advanced-portfolio] simplify basis functions
  • [advanced-portfolio] simplify basis-builder and use scheme division which is more accurate than gnc_numeric_div. tests need to change slightly.
  • [git-release-notes.pl] html-escape strings in the html output.
  • Updated Translations: Croatian, Hebrew, Italian, Japanese, Romanian, Ukrainian

New in GNUCash Portable 4.0 (Jul 6, 2020)

  • Major Highlights:
  • A new Transaction Association dialog, available from the Update Association for Transaction menu item that has replaced the two association items in 3.x, allows setting, changing, and deleting associations.
  • A symbol (paperclip for files, chain links for URLS) is now displayed in the Associations column (visible in double-line mode) in the register in place of the letters when a transaction has an association. This doesn't work on MacOS.
  • Associations may now be added to bills, credit notes, invoices, and vouchers. The actual association when present is added as a link button which is shown below the notes.
  • New type-ahead search is added to sequential search when selecting an account or an Action in the register: Instead of typing the first few characters of a top level account, the separator, the first few characters of the next level account and so on you may instead type a few characters of any part of a full account name and the drop-list will be filtered to contain only matching accounts. Once you have a small enough list you can use the arrow keys to select the account that you want.
  • A new separate executable, gnucash-cli (gnucash-cli.exe on Microsoft Windows) for doing command-line things like updating the prices in your book. gnucash-cli gains the ability to run reports from the command line. Specify reports to run by name or guid. It also provides an export format and an output file name without which it will output the report to stdout.
  • gnucash-cli --report run --name=[reportname/guid] datafile.gnucash
  • gnucash-cli --report run --name=[reportname/guid] --output-file=x.html datafile.gnucash
  • gnucash-cli --report run --name=[reportname/guid] --output-file=x.html --export-type=TYPE datafile.gnucash
  • gnucash-cli --help will display a screen listing all of the available commands and their options.
  • The GUI program, gnucash, still responds to the options it always has, though --get-price-quotes is deprecated in favor of gnucash-cli --quotes get.
  • Graphic User Interface:
  • When creating a new account hierarchy it's now possible to load account templates from locales other than the one set for the user interface.
  • On the Choose Accounts to Create page there are two drop-downs above the Account Types selector, one for language and one for country, the choices in the latter depending on the former. The default is the current locale but they may be used to select account templates from any locale.
  • When deleting accounts the destination accounts of moved splits will be checked to ensure that they have the same commodity as the source account. If they don't you'll get a warning and the opportunity to pick another account or to carry on regardless.
  • Reversing transactions will now pop a dialog box to request a posting date.
  • Business Functions:
  • Business Document Column Widths
  • Entry column widths in Invoices, Bills, and Employee Vouchers may now be saved as defaults for each type of document.
  • Two menu items are added to the View menu when a Bill, Invoice, or Voucher tab has focus:
  • Use as Default Layout for Vendor Documents
  • Reset Default Layout for Vendor Documents
  • Vendor Documents is for Bills and is replaced by Customer or Employee Documents for Invoices or Vouchers respectively.
  • The first saves the current document's column widths and makes them the default for all documents in the same type. The second menu item removes the customization and documents of that type will therafter use the computed default widths.
  • Importing Transactions:
  • Support for AQBanking Version 6. This is required to support new FinTS protocols for the European Payment Services Directive (PSD2).
  • The Import Map Editor (Tools>Edit Import Maps) will scan for Bayesian associations with non-existent accounts and display a dialog offering to remove any that are found. It also adds a button at the bottom of the Import Map Editor to delete them if one chooses not to use the dialog.
  • The OFX file importer can now import more than one file at a time.
  • OFX imports having balance information will now offer to immediately reconcile, passing the balance information in the file to the reconcile info.
  • The import transaction matcher window column headings are changed from R to C and from U+R to U+C, reflecting that the matcher marks transactions cleared but doesn't reconcile them.
  • Account matcher will decline to match accounts with a different commodity from the imported split if the import information includes the commodity.
  • Ellipsize the Description and Memo fields in the account matcher.
  • Reports:
  • A new report menu supbmenu Multicolumn contains the old custom-multicolumn report and a new Dashboard report containing Account reports for expenses and income, an income-expense chart, and an account summary.
  • Support for UK VAT and Australian GST have been added to the Income-GST report. The report's options are changed from source accounts to source sales and purchase accounts to permit proper reporting of capital purchases. N.B. This is incompatible with previous versions of the report and will require regenerating saved configurations.
  • Budgets:
  • Optionally include the account code option in budget view.
  • Enable adding notes to budgets.
  • Account codes may now optionally be displayed in the Budget Tree View..
  • Compatibility:
  • GnuCash 4.x and later will no longer migrate old gconf settings from GnuCash 2.4.x.
  • Customization and Scripting:
  • The GnuCash widget hierarchy for CSS has been revised to be more consistent with Gtk practice. You may need to spend some time with the GtkInspector to get your custom CSS back the way you like it.
  • Python bindings are now localized and their strings available for translation.

New in GNUCash Portable 3.9 (Mar 31, 2020)

  • 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
  • Bug 797566 - Crash on use of context menu in importer
  • Bug 797569 - Swedish account templates not accessible
  • Bug 797570 - Unable to import vendors
  • Bug 797572 - Customer Report (beta): "Period Totals" includes total debit and credits outside the current period
  • 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
  • Bug 797636 - Incorrect Online account matches cannot be deleted
  • 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
  • Bug 797656 - Immediate crash when retrieving quotes

New in GNUCash Portable 3.7 (Sep 12, 2019)

  • Changes:
  • Between 3.6 and 3.7, the following bugfixes were accomplished:
  • Bug 605602 - precision of Financial Calculator seems to depend on locale
  • Bug 746937 - Template transaction splits are loaded in reverse order and then not sorted before saving.
  • Actually not sorted after loading because the template accounts weren't being committed.
  • Bug 752395 - Start Day of weekly report doesn't respond to change in locale
  • Redefines some functions to ensure weekly grouping in transaction report obeys locale's start-of-week.
  • Bug 784623 - GNUCash does not work with sql backend, I can open in read only mode
  • Upgrade the splits table as well, an oversight from the original fix.
  • Bug 793018 - Balance (with >>eguile<<) - Report Title can't be changed
  • Bug 795251 - googletest detection cannot be overridden
  • Bug 796819 - bad icon with Spanish localization
  • Temporary fix for Farsi, which was afffected, too. As it is maintained by TP, the final fix has to come from them.
  • Bug 796952 - Report formatting (justify) is broken
  • Preveious patch reverted and replaced with a more correct one.
  • Bug 797085 - Import Bills & Invoices – headers not translated.
  • Make strings translatable. Translators: This adds 22 new translatable strings.
  • Bug 797158 - gnc:make-account-sel-limited-option is not working
  • Option was being deliberately reset to default_value every time.
  • Bug 797279 - Reports RTL do not support RTL
  • Fix guile-2.0 string handling to prevent munging unicode in report-titles etc. while loading/saving reports.
  • Bug 797295 - problems with entering swedish åäö in company address
  • Bug 797297 - GNUCash is in English even though MacOS is set-up to French.
  • Bug 797301 - Register Menu View > Refresh doesn't work in 'with subaccounts' window.
  • Bug 797306 - "URL cannot be shown" when one clicks an account line link in report.
  • Bug 797316 - New Mauritanian ouguiya MRU not supported
  • Bug 797319 - Mauritanian ouguiya MRO shows too few decimals
  • Bug 797339 - Online banking frame to small
  • Bug 797349 - "A"ssociate header badly translated.
  • Bug 797353 - Add copyright and release info in appdata file
  • Bug 797355 - General Journal report seems to be off balance
  • Previously, for general-journal, each split was being analyzed, and only the source split was counted for totals. This change will means the source split *and* its peers were accounted for.
  • Bug 797377 - cmake fails on debian-8 and ubuntu-14.04 with gnucash.appdata.xml.in does not exist
  • Bug 797378 - QIF file import fails: Loading gives wrong type argument in position 2
  • Bug 797389 - Random Crashes while attaching a document.
  • The following fixes and improvements were not associated with bug reports:
  • New feature: Multiselection in the import transaction matcher. Use control-left-click, shift-left-click, or click-and-drag to select multiple unmatched transactions to match them with a single account, then right-click to bring up a single-item context menu sith "Assign Transfer Account".
  • Set a FinTS product version key when the installed AQBanking supports it.
  • Change translatable strings with context to use the modern gettext three-parameter function instead of the ':' hack.
  • Stop duplicate entries for the invoice taxtable cell.
  • Do not log an error when no default tax tables are set.
  • Fix cmake dependency tree so that make/ninja check works without having to first run make/ninja.
  • Remove the accelerator for the Clear buttons on the Loan Calculator because they were all the same and also the same as the Close button's accelerator.
  • Change the transfer account notation for single-split transactions in basic view from "--Split Transaction--" (they're obviously not) to "None".
  • Correctly parse decimal values between 0 and -1 (e.g. -0.5) in register caclulations: The negative sign was being stripped.
  • Require CMake 3.5 or later for all platforms.
  • Rework the building of libgtest.a from source when the builder sets GTEST_ROOT or the distro doesn't provide a pre-build one.
  • Fix crash when trying to display a tooltip in the register split view when a split has focus.
  • Fix repeated requests to create a new account when you click No.
  • Suppress bogus error when creating a new account from register split view.
  • Fix price conversion report crashes in Balance Sheet PNL and all average balance calculations.
  • Upgrade the Budget reports to support accumulated accounts.
  • Redefine gnc:debug to use QofLog instead of writing to stdout.
  • Change the Balance Sheet PNL account depth to mean the deepest *selected* account rather than the deepest account.
  • Set the Owner Report date option to default to today.
  • Much Scheme cleanup and more testing.
  • API Deprecations:
  • gnc:easy-invoice-report-create-internal - Unused.
  • gnc:entry-type-percent-p
  • gnc:fancy-invoice-report-create-internal - Unused.
  • gnc:get-relative-date-strings - Unused
  • gnc:html-acct-table-comm-row-helper - Unused
  • gnc:html-build-acct-table - Unused
  • gnc:make-customer-option - Unused
  • gnc:make-employee-option - Unused
  • gnc:make-general-journal-report - Unused.
  • gnc:make-reldate-hash - Unused
  • gnc:make-vendor-option - Unused
  • gnc:sum-collector-stocks - Unreachable
  • gnc:time64-ge-date - Unused
  • gnc:time64-le-date - Unused
  • make-simple-class - Use make-record-type
  • make-simple-obj - Use construct
  • simple-obj-getter - Use record-accessor
  • simple-obj-print - Use write
  • simple-obj-setter - Use record-modifier
  • simple-obj-to-list - Use record-type->list
  • simple=obj-from-list-obj - Use list-record-type
  • gnc:html-acct-table-cell - Unused.

New in GNUCash Portable 3.6 (Jul 8, 2019)

  • Bug 397927 - Save the window size/position for Qif Account picker dialog
  • Bug 577968 - Values are not stored by pressing in budget page
  • Bug 583277 - Ask for confirmation for cancelling QIF import
  • Bug 624176 - budget report - rollup-budget ignored
  • Bug 642824 - Check for Placeholder Accounts in Qif Import: Placeholder accounts do not allow transactions so when the account picker dialog is presented, add an error dialog for placeholder selection and a column to display that the account is a placeholder.
  • Bug 646361 - Estimate budget option to have same amount in each budget period
  • Bug 668349 - Scroll to selected accounts in QIF import tree views
  • Bug 676810 - Wrong accounting in multi-currency budget report
  • Bug 679800 - Shortcut to allow population of all budgeting periods
  • Bug 689753 - Budget Report: Neg Num Not Colored Red
  • Bug 728873 - In Qif importer use the enter on account entry
  • Bug 751290 - Rethinking the invoice ledger view
  • Bug 754710 - Add column sorting to Qif import Match views
  • Bug 781345 - Equity disregarded by budget totals
  • Bug 788157 - Open Budget Menu Item Doesn't Select Default Budget
  • Bug 796949 - Fix division and rounding of zero.
  • Bug 797051 - Change Overwrite price confirmation
  • Bug 797051 - Follow up - Change defaults for new price
  • Bug 797051 - Overwrite prices without warning
  • Bug 797089 - Wrong time for accounting period end date
  • Bug 797104 - Translations not showing in receipt options
  • Bug 797123 - Export transactions to CSV file.
  • Bug 797126 - It is annoying to run cmake to get an updated mo file
  • Bug 797127 - Company name and address in reports not display properly
  • Bug 797134 - Decimal separator: Windows configured as dot,...
  • Bug 797165 - Crash on price deletion.
  • Bug 797169 - GnuCash hangs loading XML file
  • Bug 797170 - gnucash-3.5 fails to compile with GTK+3-3.20.x
  • Bug 797175 - Gnucash will not open from UNC paths.
  • Bug 797175 - Opening a file from a gvfs mount point fails
  • Bug 797183 - association head path with spaces displayed wrong
  • Bug 797185 - Correct the sorting for the Transaction Association Dialog
  • Bug 797186 - gtk crash closing parent window edit->stylesheets
  • Bug 797188 - Default invoice prints credit note as invoice
  • Bug 797196 - Allow for per-payment rounding in amortization calculations
  • Bug 797197 - Transaction report: Error message when sorting on month
  • Bug 797204 - Qif import Tradable commodities page
  • Bug 797207 - Chart reports show blank when run from the build directory
  • Bug 797215 - Add sorting to QIF duplicates page
  • Bug 797223 - Preference missing tooltip
  • Bug 797230 - Use after free in
  • Bug 797232 - Convert dialog-ab.glade to gtk3
  • Bug 797233 - Balance Sheet, Chart of Accounts, and other reports...
  • Bug 797240 - Multicolumn report not showing each report name
  • Bug 797241 - Some reports skip transactions of the last day of the selected period
  • Bug 797244 - Remove the invert prices for less than 1
  • Bug 797246 - Cleared Balance Remains Red After Turning Positive
  • Bug 797249 - Cutting home account causes transaction to disappear
  • Bug 797262 - Change "Today date format"
  • Bug 797266 - Missing translation settings
  • Bug 797277 - Assets over time ignores nested liabilities
  • Bug 797278 - Create an option for type of commodity for Price import: Currently when you use the 'Commodity From' column for Price imports it can match against the wrong commodity like COP (Conoco Philips) would match against the currency COP (Columbian Peso). To fix this add a new column type 'From Namespace' and rename 'Commodity From' to 'From Symbol' so they match the Security Editor.
  • Bug 797281 - Gnucash crashes when attempting to match online accounts
  • The following fixes and improvements were not associated with bug reports:
  • Rewrite the Customer Summary Report to correctly handle multiple currencies.
  • Improve the Owner Report's find-first function to consider currency when selecting the account.
  • Prevent cutting the "anchor" split or pasting another split on top of it in account registers so that the transaction won't suddenly disappear from the register page. Displays an explanatory dialog just like trying to delete the anchor split does. Allow deleting, cutting, and pasting over all splits in Journal View registers which don't have anchor splits because they're not associated with any account.
  • Disable editing the "blank split" (the new split at the bottom of a transaction in split view) if the transaction itself is read-only.
  • Use the customer and vendor currency instead of the default currency from preferences when generating bills, invoices, or credit notes.
  • Allow assigning a single target account to more than one transaction in the import matcher.
  • To do this select the new transactions and right-click to open a single-item context menu. Click the menu item to open the account selection dialog box. Note that imported transactions that match transactions already in the eriger, i.e. those marked "update" or "reconcile and update" are not eligible for inclusion.
  • This feature still has some rough edges that are being addressed for the next release.
  • Use the default currency from Properties>Accounts for the summary bar currency to make it configurable.
  • Allow CSV export of grand total amounts from reports using the trep-engine.
  • Fix XML file import failures into GnuCash for Android.
  • Raise minimum CMake version to 3.5 for all platforms.
  • Prevent crash in Aging Report when the book has no AP or AR accounts.
  • Fix operation of the "default budget" option.
  • Change the account-picker dialog to disable the OK button instead of raising a warning dialog if the selected account is a placeholder.
  • Fix crash after unloading all files from the QIF import assistant.
  • Disable the Next button in the QIF import assistant if no files are selected for import.
  • New report "Balance Sheet-PNL" combines a Balance Sheet and an Income Statement in a single report.
  • Rework localization in C++ on Win32 builds, fixing several crashes and speeding up file loading by 10x.
  • Create a console window for displaying stdout/stderr. Define __MSWIN_CONSOLE__ and recompile to enable.
  • Keep the selection in the Securities Editor on the commodity after editing it.
  • Allow the Securities Editor to stack separately from the main window.
  • Much more Scheme cleanup and refactoring.
  • Python console improvements, including switching to Python3 and not killing GnuCash when quitting the console.
  • New API:
  • The following functions can now be used in scheduled transaction credit/debit calculations:
  • gnc:amort_pmt
  • gnc:amort_ppmt
  • gnc:amort_ipmt
  • API Deprecations:
  • gnc:html-table-prepend-column!
  • gnc:html-acct-table-num-cols
  • gnc:html-acct-table-append-row!
  • gnc:html-acct-table-prepend-row!
  • gnc:html-acct-table-append-col!
  • gnc:html-acct-table-prepend-col!
  • gnc:html-acct-table-remove-last-row!
  • gnc:html-acct-table-render
  • gnc:second-html-build-acct-table

New in GNUCash Portable 3.5.1 (May 31, 2019)

  • It fixes two problems:
  • Bug 797178 - 3.5 install-fq-mods.cmd requires ssleay32.dll, but it's no longer installed as part of GnuCash
  • Update the Bugzilla URL for the Report a GnuCash Bug Start Menu item.
  • A few bugs listed as "known problems" in the GnuCash-3.5 release notes have been tested by their reporters and marked as resolved:
  • Bug 795804 - Extremely slow save
  • Bug 796880 - Menu Tooltips Interfere with All Dialogs
  • Bug 796962 - File save hangs
  • Bug 796976 - saving file with scheduled transaction hangs: copy of scheduled transactions missing in tmp file?
  • Bug 797144 - Dates are erased when changing the language to de_DE
  • Bug 797148 - Custom Count fields won't save
  • Bug 797169 - GnuCash hangs loading XML file

New in GNUCash Portable 3.5.0 (Apr 5, 2019)

  • Changes:
  • Between 3.4 and 3.5, the following bugfixes were accomplished:
  • Bug 639049 - Asset Barchart Report includes also the first day of next month transactions If the original date is an end-of-month date, we take it as an indicator they always want monthdelta dates to be end-of-months. This works for monthly/quarterly/halfyearly/annual.
  • Bug 748431 - Wrong average balance for transactions during DST Replace average-splits with custom loop, cycling through the balancelist and splitlist, creating interval summaries along the way.
  • Bug 787401 - Test for the report system - HTML Tests.
  • Bug 795729 - Advanced Portfolio Report - Percentage rates not displaying leading zeros.
  • Bug 796498 - Incorrect starting balance in TXF Report calculations.
  • Bug 796530 - TxnCsvImport - fix loading of saved preset with update of seperator selection. Previously this would cause all but the first column to lose its assigned types.
  • Bug 796687 - Tax Entity name and type for an account won't work under "Tax Reporting Options" in Gnucash 3.2
  • Bug 796826 - Report HTML - not possible to suppress the document header.
  • Bug 796827 - Report HTML - it is not possible to suppress the document title.
  • Bug 796829 - Report HTML - HTML table rows are prepended not as list elements
  • Bug 796831 - Report-HTML - append table column correctly.
  • Bug 796877 - test-stress-options fails.
  • Bug 796946 - Mortgage and Loan Repayment Setup tool crashes when exiting "Loan Repayment Options" page. Because libstdc++ on Windows doesn't support any C++ locales besides "C" and throws an exception if you try.
  • Bug 796952 - Report formatting (justify) is broken.
  • Bug 796956 - Aqbanking 6 will drop DTAUS Adds support for the upcoming AQBanking 6 and removes support for AQBanking earlier than 5.3.4.
  • Bug 796965 - Change the default to show unused accounts.
  • Bug 796989 - some date/time does not honor user locale.
  • Bug 797002 - Program crashes when exporting tax data in txf format.
  • Bug 797011 - GnuCash 3.4 Crashes When Printing Checks with Custom Format.
  • Bug 797013 - Import Customers & Vendors: error in CMakeLists.txt - causes incomplete project in Xcode.
  • Bug 797029 - Import Customer & Vendors: blank name and company in import data row crashes GnuCash
  • Bug 797030 - Import Customer & Vendors: several issues with the matching of data rows.
  • Bug 797031 - Import customer & Vendors: import can create customer and vendors without address data
  • Bug 797041 - enum confusion in qoflog.
  • Bug 797046 - Tools / Price Database / Currencies UI not working since 3.4.
  • Bug 797067 - Date displayed incorrectly in register.
  • Bug 797074 - Reports with averages are displaying fractions Convert amounts to decimal prior to adding to html-table. Also adds tests to make sure averages are displayed in 2 decimal places.
  • Bug 797098 - Quitting Gnucash shortly after clicking Save may abort file save.
  • Bug 797105 - Incorrect local-symbol for SZL currency
  • Bug 797136 - Balance sheet report "Show Exchange rate" broken when foreign currency is sold completely For cases where total(amount)/total(value) = 0/0, the price is reported as 0.
  • The following fixes and improvements were not associated with bug reports:
  • API: Add dedicated api to query build-time, version related compile constants and use it in several location in the code for consistent behaviour.
  • Budget: Save and restore the Account filter settings.
  • Build: Fix deprecation warnings for g_type_class_add_private.
  • CSV Tokenizer: Add additional test to guard against quote parsing regressions.
  • GUI: Replace ambiguous mnemonic for File>Export>Export Active Register...
  • GUI: Rearrange menu accelerators for Actions>Online Actions menu items
  • GUI: Add mnemonic for File>Import>Import Bills...
  • GUI: Move Balance-Forecast report to Reports>Assets & Liabilities
  • GUI: Move Void Transactions item in Report Options from the Accounts tab to the Filter tab.
  • I18N: Fix erratic localization of dates on Windows.
  • Date format selection on Windows relies on Windows National Language functions and those are unaffected by the POSIX setlocale(). We have in the past relied upon gtk initialization to handle this but it has not been reliable since the move to Gtk3. Note that this applies only when the locale is set via a Unix-style environment variable (typically LANG) or in the environment file; it's unnecessary and ignored when using the localization settings in Region & Language.
  • I18N: Unify phrases to remove untranslated msgids.
  • I18N: Restore the global locale after Guile munges it.
  • There's no way to change the environment locale on Windows so calling setlocale(LC_ALL, ""), as guile does in its init routine, reads the user's Language and Region settings instead of the environment variables. We save the discovered environment locale and call setlocale with it again after Guile has initialized.
  • Importing: Remove old (non-SEPA) online transaction code, because now in 2019 the banks will only offer SEPA transactions and no others. This in turn means we don't need the old ktoblzcheck checking functions at all so also remove the dependency.
  • Importing: Usability improvements for Bayes editor window
  • Remove the "Are you sure" question as it is simply annoying but does not help. Fix some string wordings to be more understandable.
  • Online Banking: No longer force existence of local BIC code.
  • Online Banking: Entering of TAN must use normal visibility
  • The visibility of the entered content was set to FALSE (=invisible) always, which was wrong for certain types of input as indicated by the GUI_INPUT_FLAGS. This should now be honored and visibility set to TRUE (=visible) for the correct flags.
  • Online Banking: Fix reconcile timestamps when importing balances.
  • Used to be start-of-day, but needs to be day-neutral.
  • Performance: Provide a single static instance of C++ locale.
  • We can't use std::locale::global because all streams imbue it by default and if it's not 'C' (aka std::locale::classic) then we must imbue all the streams that we don't want localized, and that's most of them.
  • Performance: Add GncDateTime::timestamp().
  • To provide a C++ implementation of gnc_date_timestamp and to avoid using the expensive and localized GncDateTime::format().
  • Performance: Implement a faster date-time serialization function.
  • Has the side effect of recording all date-times in XML files in UTC instead of local time with a timezone. This will help users who like to keep their files under version control because the time strings won't shift every time Daylight time begins or ends.
  • Performance: >Fix XML load CPU hotspot: Scrub.c xaccTransScrubPostedDate
  • The refactoring provides roughly 10% reduction in user CPU use for XML file load by moving an expensive function to within an if-clause where the result is used.
  • Performance: Speed-up of txn match dialog: Suspend GUI refresh during deletion of selected lines.
  • Performance: Sorting speed-up: Cache the bool value of Transaction's is_closing property.
  • Register: Accept URLs or file paths for files associated with transactions. File paths can be relative or absolute. A preference is provided.
  • Reports: Speed up the budget and cash flow report calculation by iterating over accounts only once.
  • Reports: Heavy scrubbing for code readability and performance.
  • Reports: New Report by Ryan Turner: Balance Forecast Report
  • This report forecasts the combined balances of the selected accounts based on the scheduled transactions and plots them on a line graph. You can set a "reserve" amount, which will draw a red line on the graph, so you can easily see if your forecast dips below a given value. There is also a "future minimum" line which shows what the lowest future balance will be at a given point. I find this useful in conjunction with the "target" line for planning.
  • Reports: Fix crash when loading saved-report with unknown choices.
  • If a saved-report with e.g. relative date, multichoice option is unknown, the report would crash, and the Report-Options would segfault. This commit fixes both: report-date defaults to 'today', multichoice-options defaults to default-value. Following this commit, if a report loads a saved-report or .gcm from a future version, a gnc:warn will be emitted and the report will not crash; it will use relative-date today. Multichoice will remain the default value. Report Options will not segfault. The user will be notified via a gnc:gui-warn dialog
  • Reports: Date intervals at end-of-month:
  • Instead of recursing the date, we calculate the next month using an index-based multiplier, and apply modulo/remainder as appropriate to determine the next month/year. Then we attempt to create new mktime, and if the resulting mktime's month is not as expected, reduce the mday by 1 until resulting month is correct. This fixes monthly intervals for end-of-month days. Test via monthly/quarterly deltas, and also includes leapyear calculation.
  • Reports: Date-grouping must allow indenting.
  • Indenting checkbox was erroneously disabled when: sortkey = date, date-subtotal = not 'none.
  • Reports: Table display
  • It is intuitive that if the user wishes to show the subtotal-table, and hide the transactions, then both the main (hidden) transactions and subtotals must be hidden as well.
  • Reports: Update US Income Tax information for 2018.
  • Scheme: Replace account and split utility functions with SRFI-1 functions.
  • Scheme: Testing (create-transaction) adds price trading commodities/currency.
  • This will modify a test which was calibrated to record purchase price only. fix transaction creation to add prices for both purchase and sales, and also fix test which was assuming no sale price was bring recorded.
  • Scheme: Testing (env-create-multisplit-transaction) This is the general case for any transaction creation.
  • Rewrite other transaction creation routines to use it. All tests still work unchanged, which confirms this function works well. This will allow tests to create multisplit transactions, of an arbitrary number of splits. If the list-of-split's values are not balanced (i.e. total 0), the engine will create an Imbalance-CUR split.
  • The motivation is to allow creation of complex multisplit multicommodity transactions eg USD50 + GBP20 (USD25) = EUR66 (USD75) as well as their prices GBP/USD = 25/20 and EUR/USD = 75/66.
  • Scheme: Redesign gnc:account-get-balances-at-dates,
  • replacing the ignore-closing? parameter with a split->amount function parameter having a default value of xaccSplitgetAmount. (split->amount split) should return the amount of the split or #f; in the latter case the split is skipped. This allows for a more general account balance list accumulator with novel balance strategies. For example a split->amount function could test void status and return xaccSplitVoidForerAmount on void splits; test description/memo for some content and vary the returned amount accoridingly; or test the split and return 1 or 0 creating a counter. To recreate the ignore-closing use case pass (lambda (s) (and not (xaccTransGetIsClosingTxn (xaccSplitGetParent s))) (xaccSplitGetAcmount s)))
  • Scheme: Replace some option names. Automatically convert usage of the old names and issue a warning.
  • We have revised translations for Arabic, Croatian (New!), Farsi, French, German, Spanish, Ukrainian
  • Revised or added account templates for Belgium (French) (New!), Frsnce, Croatia (New!), Germany. Switzerland (French)
  • Scheme Deprecations:
  • account-assoc
  • account-hash
  • account-hashtable-ref
  • account-hashtable-set!
  • account-in-alist
  • account-in-list-pred
  • account-in-list?
  • account-same?
  • gnc-commodity-collector-commodity-count
  • gnc-commodity-collector-contains-commodity?
  • gnc:commodity-collectorlist-get-merged
  • gnc:exchange-by-pricedb-helper
  • gnc:exhange-by-pricevalue-helper
  • gnc:get-commoditylist-inst-prices
  • gnc:hook-run-danglers
  • gnc:make-drcr-collector
  • gnc:make-stats-collector
  • gnc:report-template-menu-name/name
  • gnc:report-template-name-to-id
  • gnc:report-template-new-options/name
  • gnc:report-template-renderer/name
  • gnc:restore-report
  • gnc:save-options
  • split-assoc
  • split-hash
  • split-hashtable-ref
  • split-hashtable-set!
  • split-in-list?
  • split-same?

New in GNUCash Portable 3.2.0 (Jul 9, 2018)

  • Between 3.0 and 3.2, the following bugfixes were accomplished:
  • Bug 787401 - Test Report System - Report Definition.
  • Bug 794617 - Can't compile with -DWITH_GNUCASH=NO due to scm-gnome-utils.
  • Bug 795101 - Scroll Bar in Reconcile Window Floats in and covers the check boxes.
  • Bug 795247 - datepicker broken in Persian. GnuCash passes dates as integer y/m/d without using locale-specific formats, so we need to strip out 'E' and 'O' from the format when scanning dates or determining separators in gnc-date. None of '-', 'E', or 'O' are supported by boost (and '-' causes errors), so strip them out from formatters in gnc-datetime as well.
  • Bug 795253 - Have problems input Chinese.
  • Bug 795272 - QIF importer causes application crash if action is invalid.
  • Bug 795276 - Invalid date on price stops file from being parsed.
  • Bug 795362 - Special variable "i" not parsed in function calls. Due to balance tests with insane random values.
  • Bug 795471 - Impossible to Edit Budget Unless Maximized.
  • Bug 795519 - Credit card payment after reconciliation.
  • Bug 795666 - Backslash '' in Description field spoils CSV Import without helpful error message.
  • Bug 795831 - When read only threshold set, dates are silently changed. Display a message box informing the user of the change.
  • Bug 795944 - Cannot store change to Business Suppliers data.
  • Bug 796079 - Repeatable Crash in Tax Report Options.
  • Bug 796081 - Tax Schedule Report - An error occurred while running the report.
  • Bug 796083 - Reconcile Selection Doesn't Work Anymore.
  • Bug 796117 - Connecting 3.1 to an existing mysql db drops all data. Provide a backup recovery function that instead of dropping primaries and restoring backups merges the primaries and backups. This should handle a worst-case safe-save failure where the backup tables don't have a complete set of rows for some reason.
  • Bug 796256 - Main Window stays hidden when starting after closing main window while minimized.
  • Bug 796369 - Notes lost or perhaps just not displaying when using SQLite backend. This bug caused data loss if you saved your SQLite3 database to a different file or database. The problem is that in SQLite3 (though not in MySQL or PgSQL) the subquery ((SELECT DISTINCT guid FROM transactions)) (note the double parentheses) returns only the first guid in the subquery's results. Some transactions are loaded by special queries and those queries are also used to retrieve the transaction's slots so they weren't affected.
  • Bug 796398 - Restrict accelerator keys to valid date range.
  • Bug 796409 - Incorrect Current Value for Stocks. Missed calculating the value in the register summary bar.
  • Bug 796423 - Cannot Input Chinese, seems does not work with other IME too. Toggles not in view with all rows selected weren't being redrawn.
  • Bug 796484 - csv import: iostream error. Unfortunately it turns out that we can't use filestreams because they can't take path arguments containing Unicode on Windows.
  • Bug 796527 - invalid currency on scheduled transactions.
  • Don't even check for price/exchange rate on template transactions, there's no point.
  • Check all split commodities are valid, abort transaction creation if not.
  • If the template transaction's currency isn't used by any of the splits set the new transaction's currency to the first-found currency if there is one, otherwise to the first-found commodity.
  • Bug 796537 - Transaction Report cannot sort by "num".
  • Bug 796586 - QIF import incorrectly converts unicode characters from UTF8 encoded file.
  • Bug 796595 - QIF Import Select Account button to add a new account is labled gnc-account-new but should be New.
  • Bug 796600 - stock split cash-in-lieu income/asset labels backwards.
  • Bug 796614 - Reconciliation report contains incorrect transactions.
  • Bug 796638 - configuration not properly saved for CSV transactions import form.
  • The Following fixes and improvemts were not associated with bug reports:
  • Transaction report improvements:
  • Performance: Do all filtering ops before sorting.
  • Move the options summary before the subtotals table.
  • New unit tests
  • Enable computing averages in subtotal grid.
  • Generate the subtotal grid only if the primary sort key enables subtotals.
  • Fix subtotal grid to support multiple commodities.
  • New filters.
  • Much cleaning and refactoring of the internals.
  • Cache the num-split-action book option to avoid thousands of KVP queries for the same value when loading a register.
  • Create a static string for book option KVPs to save an extra malloc/free on old compilers without small-string optimization.
  • Add tooltip support for register cells.
  • New unit tests for the balance sheet report and invoices.
  • Consolidate charting code into a single module.
  • Removed an incomplete and abandoned C implementation of QIF import.
  • Restored libsecret support that had been left out of CMake.
  • Replace old-style html style attributes with css.
  • Modify emitted html to be parseable by the Guile SXML module for testing.
  • Remove support for long-gone gtkhtml renderer.
  • Clean up code generating html tables.
  • Ensure full precision of doubles is saved to SQL. std::iostream's operator<<(double) uses only 6 digits of precision by default.
  • Make float database operations more consistent, working around dbd-sqlite3's failure to support doubles (dbd-sqlite3, not sqlite3 itself).
  • Prevent crash in gnc-tree-view.c: When getting information from the state file, protect against the key not having a '_' which is used to split the string.
  • Add the full account name to the saved register settings If you need to delete the layout for a register in the settings file, the only thing identifying it is the account guid. To make it easier for humans, add the full account name also.
  • When register pages are restored it uses the full account name. When register pages are restored, the account is found from the full name so if the separator changes it will fail. Instead, also save the account guid and use that as default to find the account falling back to the full name.
  • Fix misplaced try block that caused unhandled exception if year out of range.
  • Fix permanent storage of vendor details: Since the data types did not match for the billterms and taxtable, those references/guids were not saved to the database.
  • Update invoice reports to use totals calculate by gncInvoice. This should give a consistent representation of invoice data across the application.
  • Ensure gncEntry rounding is consistent. Internally calculated values in the entry are never rounded. Consumers of gncEntry's calculated values can request them either rounded or not. Next use a pragmatical approach for calculating values on invoices based on the entry values: do the rounding such that we never create an unbalanced transaction while posting. That means:
  • round each entry's net value before summing them in net total
  • accumulate all tax totals on invoice level per tax account before rounding
  • and round before before summing them in a global tax total Hopefully this will catch a few more rounding issues in this area. A complete solution can only offered if we allow users to manually correct tax entries. This requires changes to user interface and data format so that's not going to happen in gnucash 3.x.
  • Use Scheme SRFI-64 test framework for new Scheme unit tests.
  • New compilers (gcc-8.0 and Xcode 9) bring new warnings, so several fixups to mollify them.
  • Lowercase all cmake commands for better readability.
  • Metadate migration (2.6.x->3.x) fixes for Windows.
  • Ensure timezone is set correctly in FreeBSD.
  • The following translations are updated: Dutch

New in GNUCash Portable 2.6.19 (Dec 18, 2017)

  • Between 2.6.18 and 2.6.19, the following bugfixes were accomplished:
  • Bug 787497 - Disabling OFX, AqBanking or python-bindings support cripples the dist build target. (Partial: The requisite files for AQB and OFX are provided. There remain ways to break the distribution.)
  • Bug 789928 - FTBFS with libdbi 0.9.0-5 on Debian
  • Bug 771246 - Failed to create file "/usr/share/glib-2.0/schemas/gschemas.compiled.XY789Y".
  • Some other fixes not associated with reported bugs:
  • A better way to handle MySQL's 0000-00-00 invalid date indicator.
  • Fix python build and test errors on Mac.
  • Add translator hint comments to C and glade files.
  • Improve type of bank accounts in SKR03
  • Stop testing GObject's handling of invalid parameters

New in GNUCash Portable 2.6.18 (Oct 14, 2017)

  • Between 2.6.17 and 2.6.18, the following bugfixes were accomplished:
  • Bug 644898 - Calendar of upcoming SXes has various display issues.
  • Bug 647805 - Interdependent report options fail to change state after using apply for a limited number of times.
  • Bug 771246 - Set Invoice/Bill items date correctly from imported CSV.
  • Bug 784284 - unifying "Clear the entry." tooltip on Loan Repayment Calculator.
  • Bug 787479 - Persian currency symbol is doubled.
  • Some other fixes not associated with reported bugs:
  • Added Catalan Accounts for the New Account Assistant
  • Fixed errors from loading init.py.
  • Run the python bindings tests in a CMake build.
  • Implement dist, distcheck, and uninstall targets for CMake build.
  • Translation Updates: Farsi, German, Japanese, Latvian, Serbian, Spanish

New in GNUCash Portable 2.6.17 (Jul 7, 2017)

  • Between 2.6.16 and 2.6.17, the following bugfixes were accomplished:
  • Bug 603379 - Prevent changing some Account Options if it has transactions Relax the account type change restrictions. In the new implementation account types can't be changed for an account with splits:
  • if the change woud force a commodity change e.g. from type STOCK to BANK as the former takes only non-currency commodities and the latter only currency.
  • for immutable accounts
  • At the time of this commit the following account types are considered immutable:
  • Accounts Receivable
  • Accounts Payable
  • Trading accounts
  • Bug 776396 - Foreign currency reports, amounts are not aligned correctly Improve the styling of the table element used for foreign currencies in the Balance sheet report so they end up aligned with the other currencies.
  • Bug 780845 - link in github repo README file needs correction/editing
  • Bug 780889 - Split-register transactions result in invalid price:type "transaction" Add 'transaction' to the schema and document it in gnc-pricedb.h.
  • Bug 781476 - Online Banking Wizard Crashes for Windows (gnucash-on-windows)
  • Bug 781634 - Alert on missing account currency when opening account Also separate translatable commodity namespace strings from those used in storage: There is now a separate GNC_COMMODITY_NS_ISO_GUI label to be used everywhere the user needs to read 'Currency namespace'. It's currently set to 'Currencies' and can be translated.
  • Bug 782274 - Transactions produced by Transfer Funds or Process Payment dialogs sort to beginning of day and do not honor NUM field for custom sorting.
  • Bug 782897 - Stock Split Assistant crashes GnuCash if you enter a New Price and that already exists in the Price DB
  • Bug 783095 - gnucash-2.6.16 segfaults on startup
  • Bug 784317 - typo in 'import customers or vendors from text file' dialog
  • Some other fixes not associated with reported bugs:
  • Fix crash on Mac when trying to create or edit an AQBanking User. (gnucash-on-osx)
  • Properly define the template namespace rather than using a local string everywhere
  • Correctly store time64 0 in the SQL backend: The SQL backend ignored time64 0 when saving dates. time64 is a perfectly valid timestamp (1970-01-01 00:00:00) and should be stored.
  • Clamp time64 values passed to GDateTime functions to the valid range. Fixes a bug reported on the mailing list wherein a date of 0000-00-00 in a MySql database would crash GnuCash. Such dates may come from a bad conversion of 1970-01-01 or from a crash.
  • Add XSU to iso-4217-currencies
  • Some banks include additional purpose information for a transaction in non-swift-section 17 (aka transaction text). If available, this transaction text is put in front of the other purpose texts to provide full transaction information. Adds a preference to control import behaivour of transaction text.
  • Translation Updates:
  • Arabic, Japanese, Serbian, Spanish, Turkish

New in GNUCash Portable 2.6.15 (Feb 10, 2017)

  • Between 2.6.14 and 2.6.15, the following bugfixes were accomplished:
  • Bug 340991 - Default price source for reports not good.
  • Bug 516920 - Scheduled trasaction calendar popup off screen.
  • Bug 685329 - Crashes on non-existent date.
  • Bug 769124 - Australian (GMT-10) OFX transactions imported have previous day's date.
  • Bug 770364 - Sign of Value in Lots in Account window seems inconsistent.
  • Bug 771246 - Set Invoice/Bill items date correctly from imported CSV.
  • Bug 771617 - Build fails because test test-report-utilities is sensitive to time of day/timezone.
  • Bug 772313 - Invalid DOCTYPE in report generation.
  • Bug 772369 - Replace use of guile's internal date/time functions.
  • Bug 772382 - Date off-by-one after DST change.
  • Bug 772484 - Segfault on Transaction edit.
  • Bug 773808 - Export Report Crash.
  • Bug 774237 - FTBFS under some timezones (eg. GMT-14).
  • Bug 775368 - "Average cost" price source problem.
  • Bug 775385 - Confusing error message which includes the text "file file".
  • Bug 775567 - Importing QIF file from PayPal crashes GnuCash 2.6.14 on Windows XP service pack 3.
  • Bug 775912 - Tips of the Day shows content only once very 3 times.
  • Some other fixes not associated with reported bugs:
  • Fix report html header
  • Changed the default value for date format in Business Options
  • Change report resizing when not in view
  • Add an image for the report tab
  • Show empty business splits in lot viewer
  • Business check & repair - correct lot invoice state
  • When juggling business splits while scrubbing set both value and amount
  • Update progress bar while running Check & Repair
  • Remove lot from account while deleting the lot
  • Ensure that the Namespace combo box is initialized to a valid iter.
  • Fix CSV importer to handle GMT + 13 Timezone (New Zealand Daylight
  • Fix broken german account template 'Kontenrahmen für Wohnungswirtschaft'.Time).

New in GNUCash Portable 2.6.14 (Oct 15, 2016)

  • Between 2.6.13 and 2.6.14, the following bugfixes were accomplished:
  • Bug 643025 - RFE: Ability to select and open multiple invoices.
  • Bug 733153 - Ambiguous view of buttons in search dialog Linux version.
  • Bug 742461 - SQL backend doesn't update customer info.
  • Bug 756416 - CSV data with Posted information will always have last invoice not posted
  • Bug 761667 - Crash opening associated location that has no scheme.
  • Bug 762901 - [PATCH] Fix saving Account Treeview sort order.
  • Bug 769730 - Investments: Lots in This Account, Closed column shows date 25/11/1833 instead of Open.
  • Bug 769746 - Zero interest loan formula fails.
  • Bug 770113 - compiling issue with libdbi.
  • Bug 770136 - 'Reverse Order' in 'View'->'Sort by' is not saved.
  • Bug 770181 - gnc-fq-dump incorrectly says "quote cannot be used...
  • Bug 770196 - cppcheck va_list not closed.
  • Bug 770303 - Incorrect commodity match during import OFX and possible solution.
  • Bug 771246 - Set Invoice/Bill items date correctly from imported CSV.
  • Bug 771379 - GnuCash doesn't support Russian Ruble Symbol.
  • Some other fixes not associated with reported bugs:
  • Build improvements with CMake, accomodation for Guile-2.0.12 on Gentoo.
  • Change the date_posted timestamp from midnight local to 11:00 AM GMT, which will be the same date in nearly all timezones.
  • SX - Recalculate all occurrences of all SX if the calendar is updated to start on another month
  • SX Window: correctly show first sx on calendar when it is moved to next weekday.
  • Work around libofx bug which caused OFX imports to have the wrong date_posted when in an eastern-hemisphere timezone and not daylight time.
  • Indicate in the register when a transaction has an associated file or URI. The indicator will appear in the "reconciled" column in the second transaction line (enable double-line view to see it).

New in GNUCash Portable 2.6.13 (Jun 30, 2016)

  • Bug 637004 - Optionally allow customer and vendor address info to display.
  • Bug 736352 - Expense Voucher adds tax automatically.
  • Bug 748983 - Crash after opening money transfer dialog twice.
  • Bug 760021 - File "Save As" to an existing file...overwrites without warning.
  • Bug 761672 - Transfer made to placeholder account.
  • Bug 764248 - saved-reports-2.4-backup line endings unconventional.
  • Bug 764871 - Crash starting gnu cash.
  • Bug 765859 - The budget reports missing in Hungarian edition
  • Bug 766028 - crash on manual addition of price entry in Price Editor.
  • Bug 766200 - Three-up printing does not position the third check properly. A few bugs in the calculation of check positions while printing checks have been corrected. If you manually edited the check formats to compensate for these positioning errors in previous versions of gnucash, you may have to undo these changes. Please check this before printing your next check.
  • Bug 766688 - Minimal fraction of BYN should be 1/100.
  • Bug 766960 - gnucash-make-guids fails to run due to hardcoded paths.
  • Bug 767824 - Some UTC timezones incorrectly recognized on Windows 7
  • Some other fixes not associated with reported bugs:
  • The gnc_gui_refresh_all statement in gnc_book_options_dialog_apply_cb causes the 'apply' and 'OK' buttons to be set to sensitive on the open Book Options dialog in some circumstances; this commit causes them to be reset to insensitive, as they should be.
  • Check printing: make logic easier to follow.
  • Fix adjust_sql_option_string test on Windows.
  • Don't try to compile test_adjust_sql_options on windows, it won't link.
  • Fix the CMake build by linking gnc-backend-dbi for test-backend-dbi.
  • Improved adjust_sql_options_string, added tests.
  • Improve quickfill performance on huge registers.
  • Mac Localization: Prefer the country to the language for fall-back locales, on the theory that in countries where multiple languages are in use similar date and number formats will apply regardless of language, and especially that the default currency will be the same regardless of language. Also ensure that the specified language is in the list passed to gettext; the net effect of which is that the user will effectively get the requested localization behavior.
  • Update README to refer to wiki Submitting_Patches and regarding pull request policy.

New in GNUCash Portable 2.6.12 (Jun 30, 2016)

  • Bug 482186 - Customer and vendor report for partners who get invoiced/paid in foreign currency show total labeled with the symbol of the default currency
  • Bug 620281 - Adding reversing transaction to bill transactions creates undeleteable transactions
  • Bug 642292 - General Ledger report - 'Primary Sort Key' value is not persistent
  • Bug 687504 - Not possible to reset an invoice/bill counter format
  • Bug 693342 - Print (bottom) prints to middle for 3-check pages
  • Bug 719904 - Decide payment type only based on the account type involved
  • Bug 720934 - Barcharts with many data points have overlapping x-axis labels
  • Bug 722996 - Cannot add stock price on Price Editor
  • Bug 723689 - Splash screen doesn't set the floating hint.
  • Bug 728074 - Posting bill converts currency to itself using 0 rate
  • Bug 728722 - Setting number format details appear wrong in Help, section 10.3.4. Counters Book Options Tab
  • Bug 733164 - [MacOSX] Command-H Invokes Help->Help Contents
  • Bug 742352 - Budget Summary section does not show expense totals
  • Bug 744157 - Tip about subaccount is confusing
  • Bug 754209 - Bills can be posted from "find bill" search results even if bill is already posted and results in extra $ posted to A/P
  • Bug 754856 - scheduled transaction fails without warning
  • Bug 756469 - CSV Invoice Import - Items with double quote escape not imported.
  • Bug 760015 - guile support is automagic
  • Bug 760529 - Get Quotes updates value just once per day
  • Bug 760711 - Non-ASCII characters not shown in Report Name when a report is created with 2.6.12
  • Bug 762971 - Duplicating multiple invoices results in invoices without an ID number
  • Bug 763111 - commodities prices editor creates hidden db entries
  • Bug 763146 - Invalid exchange rate is recorded when entering multi-currency transaction
  • Bug 763279 - GnuCash has empty reports in recent Gentoo builds.
  • Some other fixes not associated with reported bugs:
  • Various memory leaks.
  • More multi-currency fixes related to bug 763146.
  • Be more liberal in accepting business counter custom formats: li, lli, I64i, and whatever is defined to G_GINT_64 or PRIx64 on the system on which GnuCash is compiled.
  • Correctly re-value splits when the transaction currency is changed.
  • Reset the transaction currency to match the currently open account when auto-completing.
  • Refine the MacOS X localization when the system-generated POSIX locale isn't a supported locale: Prefer the country to language when selecting an alternate locale, but still pass the original language to gettext.
  • Check printing: extract address from invoice/bill for payment transactions.

New in GNUCash Portable 2.6.11 (Jan 18, 2016)

  • The following bugfixes were accomplished:
  • Bug 680104 - Scheduled Tranaction formula not calculated when variables are mixed with constants.
  • Bug 756335 - When importing, date selection causes exit crash.
  • Bug 759570 - Postponing a repeating SX skips over the instance.
  • Bug 759674 - GNUCash crashes when importing invoices or bills with delimited import.
  • Bug 759859 - Reconcilation does not convert transactions' currency to the main one making reconcilation impossible.
  • Bug 760052 - missing flag translatable in Custom Report.
  • Bug 760079 - Translations comments: Remove translatable flag from placeholder labels in dialog date-close.
  • Bug 760398 - Cancelling the creation of a duplicate bill or invoice doesn't reset the invoice number counter
  • Some other fixes not associated with reported bugs:
  • Add Account.AssignLots to python bindings.
  • Allow panel that provides information about TXF categories to be adjusted by the user in the Income Tax Information dialog under Edit->Tax Report Options.
  • Minor improvement to information provided about TXF categories in the Income Tax Information dialog under Edit->Tax Report Options.

New in GNUCash Portable 2.6.10 (Dec 28, 2015)

  • Between 2.6.9 and 2.6.10, the following bugfixes were accomplished:
  • Bug #627692 - Report options, Account Selection, "select all" => not all accounts selected, only visible ones.
  • Bug #646129 - Account selection in reports: 'Select Children' doesn't actually select children if they are collapsed.
  • Bug #662126 - Cannot create scheduled transaction for dividend reinvestment.
  • Bug #742321 - Reset temporary prefs on application startup.
  • Bug #745101 - No warning when quitting with unsaved file. When the file was first created without the New File Assistant.
  • Bug #746155 - Reports: html-acct-table prepend-row! & prepend-col! unknown variables Fixed following the suggestions by Tony Kerns.
  • Bug #754192 - Since Last Run Dialog asks for security price even if not needed.
  • Bug #754533 - No Account Templates Error Patch.
  • Bug #755781 - Files with copyright but no grant of license.
  • Bug #756335 - When importing, date selection causes exit crash.
  • Bug #756339 - Prices table not updated.
  • Bug #756720 - configure fails to find libgoffice 0.10-10 (0.10.18-1) While we can't support libgoffice 0.10 because that would require gtk3 we can improve the error message if no libgoffice 0.8.x version is found.
  • Bug #757378 - Display the user-defined display symbol for non-currency commodities.
  • Bug #759224 - illegal dates in stock transactions cause corrupt file.
  • Bug #759294 - New the billing term are not saved during invoice editing. Prevent editing the terms from the invoice view.
  • Some other fixes not associated with reported bugs:
  • Revert the automatic inversion of prices whose value is less than 1.0. This corrects several regressions from 2.6.8 and 2.6.9; it proved to be to big a change for a maintenance branch and will re-appear in the next major release.
  • Fix test failure due to trying to parse nanoseconds, which we don't actually use.
  • Use @SHELL@ instead of hardcode /bin/sh in test shell scripts. This is a workaround for MacOS X 10.11's System Integrity Protection.
  • Improve the revert action: Ask user confirmation and don't ask to save before reverting.
  • Have a more generic mechanism to set Save action's sensitivity and use it for Revert action as well.
  • Avoid assert in gnc_split_register_balance_trans if default_account is null.
  • Performance improvements in the Cash Flow report.
  • Add new account chart for Duch small businesses.
  • Add some developer documentation.
  • New Translation: Portugal Portuguese
  • Translations Updated: Arabic, German.

New in GNUCash Portable 2.6.9 (Oct 15, 2015)

  • Bug #755920 - Crash (Freeze) when using File Save As.. in Windows OS Fix termination of the loop so that it's not dependent upon Linux paths
  • Bug #755778 - Test failure: test-engine: duplicate test case paths
  • Bug #755781 - Files with copyright but no grant of license
  • Translations Updated: German

New in GNUCash Portable 2.6.8 (Oct 15, 2015)

  • Bug #724738 - Value in "Display Symbol" field not saved.
  • Bug #746998 - "Months Remaining" spinbox in Loan Assistant is non-obvious. Provide a tool tip explaining what it's for.
  • Bug #747795 - Attached file not found. MSWin only. ShellExecuteW("open") doesn't decode http escapes on file: IRIs.
  • Bug #749077 - wrongfully invalidating any account save location/path starting with ".gnucash"
  • Bug #752035 - Transaction Report "Filter By" Not Always Working.
  • Bug #752204 - .gml2 files are modified during build. Since there's no real benefit to saving the files most of the time, don't, but leave the save line in, commented out, to make it easy to write new files if necessary.
  • Bug #752879 - Finance::Quote TZ Date::Manip config variable is deprecated.
  • Bug #753146 - free(): invalid pointer on duplicate transaction when Use Split Action Field for Number is set.
  • Bug #754617 - Gnucash should use PKG_PROG_PKG_CONFIG
  • Bug #754764 Budget Doxygen documentation - gnc-budget-view.c.
  • Some other fixes not associated with reported bugs:
  • Clean up deprecated Gtk functions to make eventual migration to Gtk3 easier.
  • Improve storage of prices in the price db so that there is only one per day and a preference list determines what sources can overwrite existing prices. Prices are stored in the direction that the price is greater than one to preserve precision for large prices that would be small in the other direction.
  • Correct the Stock, Bond, Market Index, and Mutual Fund account types to ASSET in the template accounts. STOCK and MUTUAL are not compatible with currency.
  • Clean up some non-fatal asserts.
  • Developer documentation improvements.
  • Fix backend Sync errors not being reported.
  • Restore Date::Manip as an explicit dependency in gnc-fq-update; it's required for gnc-fq-helper, not Finance::Quote.

New in GNUCash Portable 2.6.7 (Sep 29, 2015)

  • Between 2.6.6 and 2.6.7, the following bugfixes were accomplished:
  • Bug #681225 - income statement displays blank base currency entries when trading account transactions are present during the report period.
  • Bug # 734183 - Set value to zero before calling gnc_exp_parser_parse.
  • Bug #739271 - pt_BR translation wrong word "limpesa". Should be "limpeza".
  • Bug #740955 - Correct general journal and general ledger reports to properly handle Use-Split-Action-For-Num option in File->Properties.
  • Bug #744858 - Update exchange rate on bill only possible once per session (after unpost/repost).
  • Bug #746163 - Custom register colors (table rows) not recognized from .gtkrc-2.0.gnucash file.
  • Bug #746792 - process payment in foreign currency leads to broken equation.
  • Bug #746873 - Gnucash asks sql passwords before wallet password.
  • Bug #746977 - scm ccache files should be in pkglibdir not pkgdatadir.
  • Bug # 747300 - SQL backend missing from most recent DMG?
  • Bug #747377 - Fix overly restrictive input validation for IBAN of SEPA transfer.
  • Bug #747812 - unset LDFLAGS when unsetting CFLAGS.
  • Some other fixes not associated with reported bugs:
  • Fix hidden panes in lot viewer.
  • Fix some abs() errors from new clang and gcc versions.
  • Fix dbi driver detection on linux and similar.
  • Improve "Auto pay on posting" message.
  • Enable travis continuous integration tests on the gnucash repository.
  • Translations Updated: Azerbaijani, Basque, Catalan, Chinese (Simplified), Czech, Danish, Dutch, German, Kinyarwanda, Persian (Farsi), Portuguese, Slovak, Swedish, Turkish, Ukrainian.
  • New Translations: Serbian
  • Documentation:
  • Concurrent with the release of Gnucash 2.6.7 we're pleased to also release a new version 2.6.7 of the companion Help and Tutorial and Concepts Guide. Only minor changes have been made since the last documentation release.

New in GNUCash Portable 2.6.6 (Apr 9, 2015)

  • Between 2.6.5 and 2.6.6, the following bugfixes were accomplished:
  • Bug #619899 - Use normal gettext or intltool toolchain also for scm files
  • Bug #649933 - Creating cash flow report takes a long time
  • Bug #672760 - Postponed transaction applied invalid date
  • Bug #721196 - CSV. Cannot import lines with empty fields for deposit or withdrawal in bank transaction download.
  • Bug #723409 - Incorrect symbol for Turkish lira
  • Bug #727466 - The symbol of CNY changed to 元
  • Bug #727647 - "gncInvoiceGetTotal" is not read-only function?
  • Bug #731889 - guile 2 exports different autoconf macros than what is expected
  • Bug #733685 - Fancy Date Format doesn't stick
  • Bug #738749 - Broken account template en_GB/uk-vat.gnucash-xea.
  • Bug #739228 - Advanced Portfolio report: wrong calculation of Value Correctly convert the value into the report's currency.
  • Bug #739584 - gnucash-2.6.4 segfaults regularly on transfer .
  • Bug #740471 - Applying payment to invoice Segmentation fault
  • Bug #741228 - "Red line" threshold applies to Template scheduled transactions
  • Bug - Compilation fails because of creating .gnucash
  • Bug #742089 - Decimal places. Set the debit and credit cells' print_info to the account so that the decimal places are correct for the commodity.
  • Bug #742332 - German tax report uses US tax quarters and not real quarters.
  • Bug #742624 - Scheduled Transaction Editor results in immediate segfault
  • Bug #743609 - Add configure options to disable libsecret detection
  • Bug #743807 - Stops critical error messages.
  • Bug #745265 - Segfault in generate_statusbar_lastmodified_message on Windows. Actually change the default date format without AM/PM
  • Bug #745354 - Enhance the Find Transactions dialog. Make it possible to define search criteria that consist of multiple terms anded or ored together. Use this to define a new criterion to look for specified text in any of the Description, Notes, or Memo fields
  • Bug #746517 - gnc-sql-backend.c compile fails with -Werror=format-nonliteral. Use GCC pragma to disable the warning in the one place that trips it
  • Bug #746977 - scm ccache files should be in pkglibdir not pkgdatadir.
  • Some other fixes not associated with reported bugs were accomplished:
  • Let CPAN and ActiveState package managers take care of dependencies instead of explicitly installing a few of them directly.
  • Correct the number field displayed in the reconcile window to correspond with the source specified in File->Options
  • Fix some bugs found by SWIG version 3.0.5. Prior to version 3.0.3 SWIG silently ignored invalid preprocessor directives
  • Scrubbing Improvements, including avoiding a potential infinite loop.
  • Remove build and run of no-longer-existant intl-scm/guile-strings.
  • Rewrite gnc-test-env in perl. This eliminates another guile dependency in the build chain.
  • Switch from guile to xml to manage our iso-currencies source file
  • Numeric values with more than commodity smallest fraction get silently dropped.
  • Update US Income Tax data to reflect minor changes for 2014
  • Advanced portfolio should respect report date when looking for other income/expense
  • Improve income and expense reporting in advanced portfolio report
  • Accept prices of the form n.nnne[+-]nn, i.e. with an exponent. An example requiring this is currency conversion from IDR to USD
  • Added Lithuanian language business accounts
  • Fix crash when running check & repair on an open AP/AR register

New in GNUCash Portable 2.6.5 (Dec 29, 2014)

  • Between 2.6.4 and 2.6.5, the following bugfixes were accomplished:
  • Bug #736359 - Date of 0000-00-00 in MySQL backend crashes GnuCash.
  • Bug #737815 - Graphs Cannot Be Generated Correctly.
  • Bug #738113 - Crash on reload budget report.
  • Bug #738477 - WebKit is broken on Win32.
  • Bug #741418 - Freeze unposting bill, 100% cpu usage.
  • Some other fixes not associated with reported bugs were accomplished:
  • Pre-compile scm files when building with guile 2.
  • Fix build-time hard-coded path introduced by the guile2 compile changes.
  • Prevent crash when standards-report dir doesn't exist.
  • QIF Import crashes when closing via the 'X' button on the last page.
  • Omit file extension on calls to load-extension.
  • Use one common base directory to store all scheme files and modules.
  • Guile module structure cleanup.
  • Harmonize variable names used to refer to guile modules in all makefiles.
  • Add missing comma in call to gtk_tree_store_set(). Thanks to Frédéric Bière for finding and fixing the problem.
  • Revert to using numerical indexes for the x-axis on bar charts.
  • Aqbanking: Add display of aqbanking subaccountid in initial correspondence setup.
  • Aqbanking online SEPA transfer: Allow transfers without BIC, only IBAN. Also add IBAN checking.
  • Aqbanking transfer: Make IBAN and BIC text entry fields filter digits or alphas correctly as needed.
  • Adapt german SKR03 account template to updated tax rate.
  • Allow GUILE1_PROGS as m4 name. Patch by [email protected].
  • Add sv_AX, sv_FI, zh_HK, and zh_TW to Makefiles & configure.
  • Translations Updated:
  • Danish, German, Italian
  • New Translations:
  • Assamese, Gujarati, Kannada, Konkani (Latin).

New in GNUCash Portable 2.6.4 (Sep 29, 2014)

  • Changes:
  • Bug #120199 - Incorrect sort order in "Sort by Statement Date".
  • Bug #434462 - register color don't work correct with system theme color.
  • Bug #509263 - Since Last Run dialog won't allow resizing of Status column.
  • Bug #610202 - gnucash silently closes when no X11/$DISPLAY is present.
  • Bug #630638 - 'Process payment' should allow to select equity accounts for payment
  • Bug #671615 - French: 'New Customer' button in Find Customer dialog is translated to 'Nouvel onglet'
  • Bug #688965 - Page Up, Page Down keys cause GnuCash to hang.
  • Bug #692249 - Add Help button in Custom Reports dialog box,
  • Bug #695240 - mortgage wizard empty table.
  • Bug #707243 - Hard-coded font colors in account tree?
  • Bug #711440 - Tab labels have different background colour than containing gui element.
  • Bug #711567 - Cannot save a custom report if a path contain diacritic chars
  • Bug #719457 - Template for Home Mortgage Loan isn't properly nested.
  • Bug #719457 - Template for Home Mortgage Loan isn't properly nested.
  • Bug #720427 - Review of french account templates
  • Bug #720934 - Barcharts with many data points have overlapping x-axis labels.
  • Bug #722140 - Add option to control inclusion of trading accounts in cash flow report.
  • Bug #722200 - configure script does not pick the correct am_cv_scanf version.
  • Bug #723145 - Currency display does not respect locale.
  • Bug #723442 - Report Options - Report Name too short.
  • Bug #725054 - Re-numbering sub accounts crashes the program.
  • Bug #725366 - Formula Parsing Error with Scheduled Mortgage Transactions
  • Bug #726449 - Budget Barchart does not show up if running sum is selected.
  • Bug #726888 - cancel button is available on all pages of assistant.
  • Bug #727130 - Crash when newline in Report Title
  • Bug #727338 - Translation and Account file updates for Latvian.
  • Bug #728103 - Invoice opened does not contain the Job under circumstances.
  • Bug #728717 - Ubuntu 14.04 - GNUcash crashes on close.
  • Bug #728841 - XML backend does not always store KVP slots.
  • Bug #729157 - Bill Term discount days are allowed to be more than due days.
  • Bug #729497 - Saved Report Configuration selection window resize.
  • Bug #730255 - Python bindings: Assigns bill entries to non-existant invoice.
  • Bug #731519 - The fix sets the upper limit before it sets the value of the end row spin button.
  • Bug #733107 - Search for reconcile status doesn't work right.
  • Bug #733283 - [PATCH] Loss of fractions when importing OFX investment transactions.
  • Bug #733506 - (ForwadDisableQIF) The forward button is not active even though a file is selected.
  • Bug #734183 - Set all of the denominators correctly on the currency values.
  • Bug #736703 - Scheduled transaction are registered without credit/debit.
  • Bug #732545 - gnucash-2.6.3 segfaults when started.
  • Some other fixes not associated with reported bugs were accomplished:
  • Add business lot scrubbing to Check & Repair->All/This transaction(s).
  • Add context to generic translatable string. This was suggested in bug 671615 by Jérôme Rapinat.
  • Add scrub function to reduce the amount of lot links used. Only lot links between two or more document lots must remain. All lot links between document and payment lots can be scrubbed.
  • Add some date format checking and make sure generated dates are the correct user selected format, not always locale format.
  • Allow the ability to skip rows when importing transactions.
  • Always use the price we display to calculate the current value of an account.
  • Better period totals formatting in Invoices.
  • CSV Export: factor out function to generate regular expression.
  • CSV Import transform macro into function.
  • Convert ISO-8859-1 account chart templates to UTF-8.
  • Correct txf output to use a minus sign, rather than parenthesis.
  • Fix document type dispay for credit notes on owner report.
  • Fix test-backend-dbi segfault with libdbi-0.9.0.
  • Handle the case of scrubbing a lot link between two non-document lots.
  • Make scrub in lot viewer scrub business lots using the new scrub functions.
  • Move account type checking functions into the engine.
  • Prevent older gnucash versions from opening a data file if previously unhandled kvps are used.
  • Python bindings. Add function gncVendorNextID, complementary to gncCustomerNextID.
  • Re-enable loading and saving gnucashdotdir/accelerator-home on OSX.
  • Refactor OS-specific ifdef to reduce code duplication, which results in reduced risk on typos in either branch
  • Refactor get_pay_split into gncOwnerFindOffsettingSplit. In this form it can be used both for scrubbing lot links and for adding new payments
  • Refactor gncOwnerReduceSplitTo out of reduce_biggest_split. It can now be used both for scrubbing and when applying payments
  • Refactor gnc_doc_doc_link into gncOwnerSetLotLinkMemo and move it. It can now be used both for scrubbing and when applying payments
  • Refactor scrub_doc_pay_link into scrub_other_link and make it more generic. It can now be used both to:
  • move a payment to a document lot (its original use case)
  • move a refund to a payment lot or the other way around
  • Relax requirements for booleans in invoice line, accepting 'y' as well as 'yes', 't' as well as 'true'.
  • Replace C++ reserved words for future compatibility with C++.
  • Rework assistant csv import regex code to eliminate the mandatory dummy field.
  • Rewrite invoice payment logic to fix lot link proliferation.
  • SQL: Save commodity namespace changes from template.
  • Set default currency for French account chart templates.
  • Tweak the get_pay_split function to prefer the best possible match.
  • Use libsecret if available since gnome-keyring has been deprecated.
  • Use more significant digits for SX function returns.
  • Use same default setting for quotes in csv import and export.
  • Widen the scope of the subsplit merge scrub function. When used in a strict sense it will only merge splits that are marked as subsplits of each other. In relaxed mode it will merge any split two splits that are both in the same lot and the same transaction.
  • double_to_gnc_numeric: Return overflow error immediately on invalid input.
  • Ensure that the root account is saved to the SQL backend.
  • Chart-of-Account Templates Updated:
  • Latvian, French, Swedish
  • Translations Updated:
  • Brazilian Portuguese, Dutch, Konkani (includes replacing Raman character set with Devangari) ,Latvian, Marathi, Tamil,
  • New Translations:
  • Bodo, Hindi, Kashmiri, Telugu, Urdu. Thanks to The Centre for Development of Advanced Computing (C-DAC), Pune, India. Translation Team Leader: Chandrakant Dhutadmal

New in GNUCash Portable 2.6.3 (Apr 3, 2014)

  • Bug #721196: Cannot import lines with empty fields for deposit or withdrawal in bank transaction download,
  • Bug #721654: Style sheet preference is not saved for a Preconfigured Report.
  • Bug #723975: Dialog box displayed during QIF import has placeholder text.
  • Bug #724995:Gnucash crashes due to assertion failed when opening sqlite file.
  • Bug #726430: Python: account.getName() raises TypeError.
  • Bug #726891: Segmentation fault on session.end().
  • Fix resizing of columns in budget view
  • Fix guile 2 stack overflow errors for large reports
  • Fix basis calculation for FIFO or LIFO when less than one lot is sold.
  • Update Window and Menu item from "Preconfigured-" to "Saved-" Report and add lables to the dialog with help texts
  • Aqbanking: SEPA transfer improvements - fix origin labels and add possibility to edit sender's name.
  • Prevent crash reported in Bug 711567. The bug itself wasn't fixed.
  • Translations Updated: Catalan, Danish, Italian

New in GNUCash Portable 2.6.2 (Mar 7, 2014)

  • Bug #497831: Can't change the date of a transaction with certain locales
  • Bug #721472: Fix Reconcile description column.
  • Bug #721677: Customer Summary does not include inactive customers
  • Bug #722123: Zero price entry added to price database on stock purchase
  • Bug #722903: Poor performance of account hierarchy, budgets, reconcile window,...
  • Bug #723051: Implement gncCustomerNextID in Python bindings.
  • Bug #723373: Don't create any sx in the since-last-run dialog if this is a read-only file
  • Bug #723644: Make sure that gnc_search_invoice_on_id() returns the correct type of object.
  • Bug #724211: Can't select march 6 date on register
  • Bug #724426: Errors in account plan
  • Bug #724578: Problems clearing incompletely paid invoices
  • Bug #724753: Saved Multicolumn Report Error
  • Bug #725131: Adding Payments to Fancy Invoice
  • Translations Updated: Catalan, Italian

New in GNUCash Portable 2.6.1 (Mar 7, 2014)

  • Bug #454827: Reports: Incorrect share value of stocks in foreign currency
  • Bug #553020: Reports: Incorrect share value of stocks in foreign currency
  • Bug #555182: Security Type template hidden
  • Bug #605991: Help button on New and Edit Job dialogs brings up wrong help page.
  • Bug #677489: Critical error reported when initializing an Invoice
  • Bug #721211: Reconciliation checkboxes fail to sync for split transactions across sub-accounts
  • Bug #721251: Incorrect Transaction Dates
  • Bug #721260: Crash on startup: gnucash cannot handle default locale
  • Bug #721290: SX Editor: Pressing "Enter" too soon hides transaction
  • Bug #721306: Account hierarchy column widths are reset when restarting a second time without changing the widths
  • Bug #721447: Entries with values of ,50 are imported as ,51
  • Bug #721464: Program won’t open the website link
  • Bug #721576: Gnucash can not work with files, that have russian symbols in path.
  • Bug #721600: Segmentation fault on startup if report Income/Expense Chart was opened since last running
  • Bug #721607: fix GnuCash version numbers and remove/update links.
  • Bug #721667: Accelerator key map loaded from one file and saved
  • Bug #721770: "Choose accounts to create" has no effect
  • Bug #721791: Segmentation fault when correcting invalid date
  • Bug #721825: Online prices displayed as unreadable fractions in 2.6.0
  • Bug #721913: Fetch Rate crashes application
  • Bug #721929: Importing a customer list causes a crash.
  • Bug #721954: Multiple Scheduled Transaction Editors
  • Bug #721966: --add-price-quotes ignoring compress files preference
  • Bug #722035: Missing space in the Spanish translation of msgid "Total For "
  • Bug #722123: Zero price entry added to price database on stock purchase
  • Translations Updated: Catalan, Danish, German, Italian

New in GNUCash Portable 2.4.15 (Mar 7, 2014)

  • Bug #721434: OFX import broken in release 2.4.14
  • Bug #721436: Account Report fails in release 2.4.14
  • In addition, txf.scm has been updated for 2013 US Income Tax form/schedule changes

New in GNUCash Portable 2.4.14 (Mar 7, 2014)

  • Bug #584869: Net change line in general journal report broken
  • Bug #589685: In the report "Budget flow" period it doesn't work ok change the report head line to show the period date for (- period 1). Author : Carsten Rinke
  • Bug #627575: Stylesheet names with non-alphanumeric characters and saved-reports -- addendum
  • Bug #632362: Unable to create "reversing transaction" again after it is removed
  • Bug #632588: Scrub doesn't fix missing currency
  • Bug #644044: Lots: SQL backend loses link to Gain/Loss Txn
  • Bug #653594: related to check printing.
  • Bug #674862: 2038 bug in libdbi
  • Bug #684670: Interest amount calculation is wrong in Sqlite3 format
  • Bug #699686: Startup dialog windows should be top level windows Author: Simon Arlott
  • Bug #701670: Command-V in reconcile window pastes data in register
  • Bug #704183: OFX file import tries to match online_id against ACCTID[space]ACCTKEY even when ACCTKEY is empty.
  • Bug #705123: qofbookmerge.c: bad if statement
  • Bug #710055: advanced portfolio report counts capital gains split as dividend
  • Bug #710311: Missing ChangeLogs
  • Bug #711317: Indian Rupee Symbol appears as "?" marks
  • Bug #712528: Decompress zipped XML files ourself instead of letting libxml2 do it. As of version 2.9.1 it has a bug that causes it to fail to decompress certain files.
  • the Danish translation was updated and a new Arabic translation was added.

New in GNUCash Portable 2.4.13 (Apr 27, 2013)

  • OFX file handling was broken in the Windows versions

New in GNUCash Portable 2.4.11 (Jul 24, 2012)

  • [22080]Fix make dist for Swedish accounts files Reported by Robert Fewell
  • [22260]Rewrite the tip-of-the-day parsing logic Since commit 22246, an empty tip of the day appears in the list of tips. This is due to the way the file is parsed. This commit rewrites the parsing logic to avoid such problems. As an added bonus, you can now add newlines in tips by using '\n' in the string.
  • [22248]Bug #678848 - Customer/Vendor reports off-by-one on start date Additionally removes a superfluous module load
  • [22246][PATCH] Fix tip-of-the-day with gcc-4.7 When making the text file tips-of-the-day, GnuCash expects 'gcc -E' to preserve at least one of the whitespace lines between entries. However, this relies on behavior of 'gcc -E' that isn't actually part of the spec, and is a historical accident. And it changed in gcc-4.7, such that all the whitespace is removed. Work around this by explicitly adding a newline in the sed expression. Pre gcc-4.7 there will be two newlines between tips, but this has no impact on the tip displaying code. Patch by Bill Nottingham
  • Bug #631611 - Check printing fails because fonts are too tiny on Windows Lesson learned: don't use cairo_identity_matrix on a cairo_t managed by GtkPrintContext. It kills a number of transformations that were already configured by GtkPrintContext. On Windows this breaks proper scaling.
  • Fix a double free crash when the required features dialog is shown
  • Bug #611853 - Entering a 2-digit year in the opening balance tab results in "Parsing Error" This bug was already fixed on trunk as part of the patch that converted the new account dialog from glade to gtkbuilder. This commit extracts only the parts required to fix bug #611853
  • [22224] Bug #671323 - Scheduled monthly transactions lose "except on weekends" setting when using MySQL
  • [22229] Bug #678214 - GnuCash fails to open some post-processed XML files Patch by Daniel Harding
  • Bug #677570 - Error creating net worth linechart report Remove doubled file contents. Changeset 21628 has already done this for trunk.
  • Add formatting to table. Add cell padding to columns in table.
  • Bug #677570 Error creating net worth linechart report Revert "Added user settable line width and data point markers to net worth" Removed entire commit in order to make report work. Details of error still need to found so that the feature can be reinstated. This reverts r21644. Note, this feature works in trunk.
  • [22197]Add EXTRA_CFLAGS for compiling on Win7 Configure gets confused by some gcc builtins on Win7: Disable them so that configure finds the right settings.
  • Add EXTRA_CFLAGS to inst_gnucash compile line so that cflags can be added by custom.sh
  • [r22171][Bug 674862] Gnucash crashes after creating a new SX using the Mortgage Wizard and SQL Backend This addresses the crash reported on Ubuntu with Postgres by Krzysiek. The stack trace he posted showed the crash was the result of dereferencing a NULL GDate*, and this change protects against that. It still doesn't address the more basic problem of why on Win32 and with mysql and pgsql (but not SQLite3) the mortgage wizard is writing corrupt dates.
  • [r22188][Bug #674862] Gnucash crashes after creating a new SX using the Mortgage Wizard and SQL Backend Special-cases dbi_result_get_datetime returning -1 to work around a bug in MinGW's implementation of gmtime().
  • [22157] Bug #674494: Fix version and method of downloading isocodes in win32 packaging Patch by Mark Jenkins
  • [r22154][Bug 674283] With mysql crash after deleting accounts included into a budget Never assume a pointer is NULL unless you set it to NULL!
  • [22097] [Win32 build] Update gwenhywfar/aqbanking versions.
  • [22090] Revert r22083, "Adapt German account templates to updated tax rate." A pure renaming is not the correct solution, I've been told.
  • [22083] Adapt German account templates to updated tax rate.
  • [22067] Remove potentially abandoned file (that has a GPLv2-only license, too). The last contributors here, Josh Sled and Chris Lyttle, have put their code under "GPLv2 and GPLv3" license, see r22063, but I'm too lazy to look up the copyright holders on the file as a whole so I'd rather remove it. If someone wants to add a similar packaging file again, feel free to do so, but please don't use GPLv2-only code to do so.
  • [22066] Bug #670727: Extend license of 3 files to be GPLv2 and GPLv3. This has been granted by the gnumeric copyright holders. See https://bugzilla.gnome.org/show_bug.cgi?id=670727#c7
  • [22063] Bug #670727: Clarify license of a file to be GPLv2 and GPLv3 gnc-dense-cal.h: License remark was forgotten in r19507, but the author Josh Sled agreed on GPLv2 and GPLv3 licensing in his gnucash-devel message on 2010-08-28.
  • Fix skipping of alternate rows when there is a customer id mis-match and fix gtk_entry_set_text errors. Fix already exists in trunk.
  • Revert "Fix skipping of alternate rows when there is a customer id mis-match." Doesn't fully work. Will redo. This reverts commit 63c4689a36aa042564d7c29b40ee970533e3d81f.
  • Fix skipping of alternate rows when there is a customer id mis-match. Fix already exists in trunk.
  • Fix translatable strings. Patch provided by Aurimas Fišeras.
  • Properly handle Windos end-of-line markers in determining file versions.
  • [21905] Bug #668196: Fix installation of python bindings With this patch, files are correctly installed together. Patch by Vincent Untz.
  • [22018] Bug 632931: Advanced Portfolio: total gains does not include income - new column layout as suggested on bugzilla. Total return is now an amount (not a percentage), and includes income as well as capital gains. New column "Rate of return" gives the percentage. - changed default value for "Ignore brokerage fees when calculating returns", the default is now to NOT ignore the fees. Patch by Sebastien Alborini
  • [22012] Bug #669494 - Swedish account plan provided (BAS 2012) Additionally this commit adds some required changes to get the Swedish account plans to actually show up in GnuCash (both BAS and the earlier committed Swedish small business account plan)
  • [22011] Fix a GtkWarning in the Account Hierarchy Druid which occurs if the Example Account file doesn't contain a long description.
  • Fix translatable strings code for tax invoice report.
  • Fix translatable strings code for some reports. Patch provided by Aurimas Fišeras.
  • [21978] Move the features tests to its own source files. This allows for - other engine consumers to use the features test as well (think CuteCash, python bindings,...) - a central point for developers to check for feature definitions - a central point to manage all feature related code
  • Windows: Update Gtk+ to 2.24.10

New in GNUCash Portable 2.4.10-1 (Feb 28, 2012)

  • The GnuCash development team is pleased to announce that we have released GnuCash 2.4.10-1, a special Windows-only release which upgrades the included Gtk+ library to permit its use with a 16-bit color depth. Gnucash users who are not using a 16-bit color depth (it isn't a default, so you'll know if you are) need not upgrade from 2.4.10.

New in GNUCash Portable 2.4.10 (Feb 14, 2012)

  • Between 2.4.9 and 2.4.10, the following bugfixes were included:
  • Win32 installer: always remove previously installed versions. This avoids problems when libraries or reports have been moved around in newer versions.
  • [Bug #667900] no clipboard editing in Release 2.4.9 Update Gtk+ to 2.24.8 for Windows, to pick up da756d51 (win32: fix gdk clipboard).
  • Turn on AQBAnking 5 in 2.4 branch.
  • Win32: Restore default gtk theme to MS-Windows Our problems with this theme have been resolved in gtk+ 2.24.8
  • [Bug 666849] Non-privileged user first run trouble The problem is that the first run was creating the slib catalog. This introduces a script to do that as part of installation, guaranteed to be run as an admin user.
  • Update xml file backend to recognize a newer version file on load attempt, not load, and alert user of need to upgrade Gnucash.
  • Reports: Make report Budget Flow 100% translatable
  • Update txf.scm in stable branch to reflect changes to US Income Tax Forms and Schedules for 2011.
  • [r21867]Reverse the test for HAVE_DBI ac_cv_header_dbi_dbi_h is set only if want_dbi is true, so testing for != no succeeds if dbi isn't enabled -- which is not what we want.
  • [21860]Bug #667417 - Fix build with glib 2.31.x Patch by Vincent Untz
  • [21840] Add dependency on qofbook.h for swig generated file. Otherwise the old generated file complains about a missing declaration from r21832.
  • In 2.4.10, the following languages had their translations updated: Lithuanian, Finnish, German.

New in GNUCash Portable 2.4.8 (Jan 27, 2012)

  • Bug #655901 - Fix build with guile 2.0
  • Fix handling a directory as a dataset file.
  • Bug #626970 - Crash when saving a transaction whose destination account was deleted in the meantime
  • Bug #661721 - Exposed Password
  • Bug #651522 - crash in query_free_compiled, gnc_query_list_reset_query
  • Use "Nimbus" gtk theme on Windows. A previous attempt failed to set this in the installer.
  • Bug #644977 - Add new Quicken Check 21 format. Thanks to Steve Holland
  • Update Mac customizations for gtk-mac-integration-1.0.0. Mac integration has had a name and api change from ige-mac-integration as part of migration from Sourceforge to Gnome.
  • Bug #553432 - Status line of edit invoice page mixes invoice currency amount with default currency symbol
  • Bug #365928 - Jobs do not stick in Expense Vouchers
  • Find the python libraries and includes even if the path to them includes a symlink. When python is installed using MacPorts there is a symlink in the path.
  • Bug #612562 - Transfer Funds dialog - 'Show Income/Expense' checkboxes are not working. Subaccounts of income and expense are not always shown.
  • Make sure that exiting conn_test_dbi_library on a failure doesn't leave the locale at "C".
  • Bug #645216 - Fix wrong permissions on server result in bogus error message.
  • Change default post date: * customer invoices: post at the current date * bills/vouchers: post at the last date on the bill/voucher
  • Bug #658244 - Custom css stylesheet and logo in Tax Invoice report require protocol in exported HTML
  • Bug #655901 - Fix build with guile 2.0 Patch by Petr Gajdos
  • Fix critical error regarding the color tabs when trying to display the search results and also on the scheduled transactions template. Patch by Robert Fewell
  • In 2.4.8, the following languages had their translations updated: Japanese, Lithuanian, Latvian, Russian, Hungarian.

New in GNUCash Portable 2.2.8 (Dec 20, 2008)

  • Fixed Bugs:
  • #115066: "Search For" dialog shows all when criteria is left as default
  • #128774: "Edit exchange rate" context menu item disfunctional often
  • #137017: date of transaction change with time zone change
  • #339433: TiaaCref price quote dates off by one day
  • #340041: 0 as an amount should be allowed in Exchange Editor
  • #345980: changing Stylesheet doesn't commit
  • #347274: to track the difference between budgeted and actual amounts in the budget report
  • #348860: Error with saved multicolumn reports
  • #405472: Unable to save changes on files opened over FUSE and sshfs
  • #432457: Security/stock import should follow tutorial regarding Account Name
  • #435427: "Generic import transaction matcher" dialog does not sort by date
  • #436342: Currency exchange druid does not show on changed
  • #436920: crash on loading OFX data for a commodity that exists without cusip field
  • #492417: currency mapping of New Israeli Shekel
  • #529494: Wrong fractional precision in register with multi-currency transactions
  • #532889: Monthly scheduled payments preview shows wrong dates
  • #536299: Fix two underlinking issues
  • #539947: OpenSolaris:__FUNCTION__ not defined in sun cc
  • #543332: Severe performance regression in Average Balance report
  • #548218: OpenSolaris: $(expression) cause configure error on solaris
  • #554042: OpenSolaris: configure fail on checking 'unsigned long is at least as big as guint32'
  • #557604: date-utilities.scm typos
  • #557374: MT940 import does not work
  • #563160: Multicolumn report: Confusing order of "Column span" and "Row span"
  • #563273: crash in GnuCash Finance Management: Starting GnuCash
  • #564033: aqbanking plugin: g_module_open failed: WEXITSTATUS undefined
  • Other Changes:
  • Fix account defaulting for posting vendor bill
  • Fix tax-related inconsistency in UI
  • Fix the average cost price source computation for a certain case
  • Add account templates: Dutch, Finnish
  • Update account templates: Italian, Slovak
  • Update translations: Finnish, German, Hebrew, Italian, Japanese, Russian, Slovak, Simplified Chinese