@jralls jralls released this Sep 30, 2018 · 100 commits to maint since this release

Assets 7

The GnuCash development team announces GnuCash 3.3, the fourth release of the 3.x stable release series.


Between 3.2 and 3.3, the following bugfixes were accomplished:

The Following fixes and improvemts were not associated with bug reports:

  • Set toolbar buttons to show both icon and text.

    And make the icon small to recover some vertical screen estate. The motivation for this is that Gtk has dropped the ability for users to change a toolbar's appearance. And as our icons are often less than descriptive many users benefit from having textual descriptions as well. This is the best compromise we can make until the gui gets an in-depth redesign.

  • Add preference for forcing prices to decimal display.

    Anticipating that some users might prefer to see exact prices, add a preference to General>Numbers to configure whether prices are rounded to decimals or are displayed as exact fractions.

  • Revert the "Average Cost" pricing changes made in 2.6.17.

    These changes broke trial balances in many books.

  • Allow saving to xml over an existing sqlite3 file and the other way around.
  • Add customer/vendor ID in client section of invoices.

    Partly fixes bugs 430259 and 742086; full fixes would require not-backward-compatible data model changes.

  • Change the default filter for General Ledger.

    The General Ledger default for the number of days shown is 30 but for the Register it is 0, meaning show all. So change the default filter based on ledger type and use this when determining if the setting should be saved or removed.

  • Fix gtk accelerator mixups by explicitly disabling actions that are not relevant.

    For example, File->Print and its variants for various page types all use the same '<primar>p' as global accelerator. It was possible to have gnucash invoke the 'Print Report...' action instead of the 'Print Invoice...' action when hitting <primary>p on an invoice page. If no report page was open at this point, gnucash would crash. If a report was open, gnucash would invoke the print action on that report instead of opening an invoice report for the invoice.

  • [job-report] Prevent Crash if there is no AR account
  • Add the ability to cascade account colours in account tree.

    The colour on an account that has sub-accounts can be applied to its sub-accounts; by default only those sub-accounts that don't have a colour set are affected, but there's a preference to override that.

  • Speed up loading the preference dialog by blocking register updates until the dialog is fully loaded.
  • Update change_tax_code.py, add basic test for python query.
  • Simplify GNCQueryView's data model: It was managing a number of redudant parameters which were leaking memory all over the place. The information that was tracked could easily be extracted from the underlying GtkTreeView, GtkTreeModel or GtkTreeSelection when needed.
  • Open customer/vendor/employee report when double-clicking an the respective owner the cust/vend/empl overview page.
  • Update Overview of README based on https://lists.gnucash.org/pipermail/gnucash-devel/2018-September/042748.html
  • Many new tests for reports.
  • Some substantial speedups when loading large amounts of business transactions from a SQL backend.
  • Clean up a lot of memory leaks.
  • Remove all use of Timespec in the program. Provide deprecated wrapper functions supporting timespecs for custom reports; users should update the reports as soonas possible.

The following translations are updated: Farsi, Ukrainian

Known Issues

The following are open bug reports new to the 3.x series considered significant by the development team:


Concurrent with the release of Gnucash 3.3 we're pleased to also release a new version 3.3 of the companion Help and Tutorial and Concepts Guide.

Documentation changes:

Getting GnuCash for Windows and MacOS X

GnuCash is provided for both Microsoft Windows XP® and later and MacOS X 10.9 (Mavericks)® and later in pre-built, all-in-one packages. An installer is provided for Microsoft Windows® while the MacOS X® package is a disk image containing a drag-and-drop application bundle.

The SHA256 Hashes for the downloadable files are:

  • 8396ed8d2a88ac358ecf458c253cf38f55a13aaba7958e4fde3dd85c222e393f  gnucash-3.3.tar.bz2
  • 491735df36cb7ba9d04de28e28df53c3e5d928bda52009708d2f83ab9a42f820  gnucash-3.3.tar.gz
  • 869a227120e20e805b5c0455b0312b826b4bb3e305d4a4b477c93ed9aba1e668  gnucash-3.3.setup.exe
  • c1d97818e9f34e5113d030b4d9a850a297cb2d2ffb871e7cb9b80d5cf3ff2336  Gnucash-Intel-3.3-1.dmg
  • 0cf34e858a6e13fbef3c3987109bed895deb94a60bcd42d61dca43c36f716dab  gnucash-docs-3.3.tar.gz

Downloads will be found in the links at the top of this release message, Don't use the links labeled "Source Code" in the links at the top. Use either gnucash-3.3.tar.gz or gnucash-3.3.tar.bz2.

You can also checkout the sources directly from the git repository as described here.

To compile GnuCash from the source code by yourself, you will need at least Gtk+ 3.10, Guile 2.0, Boost 1.54, WebKitGtk 2.4, and GoogleTest 1.7.0. In addition you will need SWIG 2.0.10 if compiling from git. Please consult the README.dependencies file in the sources for the exact list of dependencies and versions.

Getting the documentation

The documentation is available at Documentation page of the GnuCash website. The 3.3 documentation can be found under "GnuCash v3 (current stable release)" in multiple languages both for reading online and for download in pdf, epub, and mobi formats. The documentation is included in the MacOS and Windows application bundles.

If you want to compile the GnuCash Documentation 3.3 for yourself, the source code can be downloaded above.

About the Program

GnuCash is a free, open source accounting program released under the GNU General Public License (GPL) and available for GNU/Linux, *BSD, Solaris, Mac OSX, and Microsoft Windows. Programming on GnuCash began in 1997, and its first stable release was in 1998.