Skip to content

GnuCash 2.7.3 Release 2017-12-31

Pre-release
Pre-release
Compare
Choose a tag to compare
@jralls jralls released this 31 Dec 16:35

The Gnucash Development Team is pleased to release Gnucash 2.7.3, the fourth release of an unstable series leading to Gnucash 3.0

Notice that we've decided that beginning with the upcoming major release we will use two-digit release numbers and that the next stable release will be 3.0. Maintenance releases will be 3.1, 3.2, etc. The next unstable release will be 3.900 and will lead to 4.0.

This release is UNSTABLE and SHOULD NOT BE USED in production.

This release changes file locations, binding APIs, report options, and can make your data file no longer compatible with previous versions. See the Update Notes Page for details.

See the KNOWN PROBLEMS list at the bottom of the announcement.

With this release we set feature freeze and string freeze. Translators and documentors are implored to begin work so that the localization and documentation will be ready for the 3.0 release.

New Features for Users

  • A greatly enhanced Transaction report with many new options and features including a reconciliation report thanks to Chris Lam.
  • Removed 6-figure rounding from price calculations, allowing prices to have up to 18 digit precision.
  • A flatter storage scheme for Bayes account-matching scores, thanks to Aaron Laws. This is a compatibility change guarded by a feature.
  • GnuCash no longer supports Guile-1.8 and now does support Guile-2.2
  • A CSV Price importer, thanks to Bob Fewell.
  • Enhanced python bindings exposing more GnuCash API thanks to Guy Taylor

Bugs fixed in this release

Some other fixes not associated with reported bugs:

  • Tests now pass in all timezones.
  • More dialogs are made "transient for" so that they pop up centered on the main Gnucash window instead of somewhere on the left edge of the screen.
  • A lot of Gtk3 issues and errors are fixed, thanks to Bob Fewell.
  • Test struct tm* returns from gnc_gmtime and gnc_localtime to ensure that we don't crash for dereffing a nullptr.
  • Removed the gnc:numeric type from Scheme code in favor of Scheme's own rational numbers. This allows direct conversion between Scheme numbers and gnc_numeric without the performance or accuracy penalties arising from using doubles as an intermediary.
  • Pass KVP paths as a collection of elements instead of a delimited string. This allows keys to contain '/'. Thanks to Aaron Laws.
  • Added a frameowrk for migrating preferences.
  • Made separate functions for finding a widget's parent window: gnc_ui_get_gtk_window tries to find the immediate parent and gnc_ui_get_main_window tries to find the widget's parent toplevel, returning the first-mapped window.
  • Make the splash/lock screen the transient parent for dialog boxes if the main window is not yet mapped.
  • Rework directory determination in CMake builds.

    Sets paths for finding componenents depending on the state of ENABLE_BINRELOC, GNC_UNINSTALLED, GNC_BUILDDIR and whether any install paths have been set outside of CMAKE_INSTALL_PREFIX.

    GNUInstallDirs changes the name of CMAKE_INSTALL_LIBDIR depending on the operating system and distro. When CMAKE_INSTALL_PREFIX is /usr, /usr/local, or any subdirectory of /opt it also changes CMAKE_INSTALL_FULL_SYSCONFDIR to /etc. An earlier commit by Aaron Laws mirrors the name of CMAKE_INSTALL_LIBDIR to the build library directory.

    It's possible for builders to set any of the install directories anywhere they please. Setting any directory outside of CMAKE_INSTALL_PREFIX breaks Binreloc so the toplevel CMakeLists.txt now detects that and disables Binreloc. If Binreloc is enabled then all path queries use it to find paths. This works in the build directory because the gnucash executable and all of the test programs are in build_directory/bin and LIBDIR, DATADIR, and SYSCONFDIR can be found in the same root path. If Binreloc is disabled then in order to build or run programs from the build directory one must set GNC_UNINSTALLED and set GNC_BUILDDIR to the absolute path of the build directory. When those are set GNC_BUILDDIR replaces CMAKE_INSTALL_PREFIX in all paths that are subdirectories of CMAKE_INSTALL_PREFIX; paths that are not in CMAKE_INSTALL_PREFIX are appended whole to GNC_BUILDDIR. This process is constent between CMake and gnc_path_get_foo. GnuCash is unlikely to run from a DESTDIR without Binreloc.

KNOWN PROBLEMS:

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.

SourceForge:
Github

Getting GnuCash as source code

If you want to compile GnuCash 2.7.3 for yourself, the source code can be downloaded from:

The SHA256 Hashes for the downloadable files are:

  • 5ea0912a527874f8410e80f63d94d63608ead2ff4c3ae25a8b203c25d1ee4749  gnucash-2.7.3.tar.bz2
  • 3420546911e5cc6aa4ec595cd0566aba49aab4e9b7a5086acf366aaf3edb0288  gnucash-2.7.3.tar.gz
  • 71f2d6e16fea330967fc11fcf4a7ee811851ab751913768cae431de6a9f087d1  gnucash-2.7.3.setup.exe
  • 47246f9b0da50a80a3d7bb7a894a997d94f3e0bfa1517d0cfc83f97e980fee71  Gnucash-Intel-2.7.3-1.dmg

Please consult the README.dependencies file in the sources for the required dependencies and versions needed to build GnuCash from source. Additional information on building GnuCash may be found in the Wiki

Getting the documentation

The documentation is available at Documentation page of the GnuCash website. Please refer to the "Nightly Builds" section at the bottom of the page.

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.