The GnuCash development team announces GnuCash 5.0.
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
Help translate GnuCash on Weblate: https://hosted.weblate.org/engage/gnucash/
Known Problems: A complete list of all open bugs:
https://bugs.gnucash.org/buglist.cgi?bug_severity=blocker&bug_severity=critical&bug_severity=major&bug_severity=normal&bug_severity=minor&bug_severity=trivial&bug_status=NEW&bug_status=ASSIGNED&bug_status=NEEDINFO&bug_status=REOPENED&limit=0&list_id=8149&order=priority%2Cbug_severity&query_format=advanced
Documentation
Concurrent with the release of GnuCash 5.0 we're pleased to also release a
new version of the companion Manual and Tutorial and Concepts Guide
Note that the document formerly titled Help is now the Manual
The installation of the documentation has changed to match the XDG-Documentation
recommendations so that recent releases of Gnome Desktop's Yelp can find it.
Getting GnuCash for Windows and MacOS
GnuCash is provided for both Microsoft Windows 8.1? and later and MacOS 10.13
(High Sierra)? and later in pre-built, all-in-one packages. An installer is
provided for Microsoft Windows? while the MacOS? package is a disk image
containing a drag-and-drop application bundle.
The SHA256 Hashes for the downloadable files are:
cfc13bab31aed8e4962805ef56530f9772889604910b5678cb5c79c283138824
gnucash-5.0.tar.bz2
66dd5e32829cb6d8dd9a7e017a894583c7579932d13c4fe024329d9c6cfe956d
gnucash-5.0.tar.gz
e9d30e36163a7f047daf2523ac35bf2218d2e661bcfc7f279d57d4d396caa33d
gnucash-5.0.setup.exe
c8ea60b2ccbeab5f6997a927939a0fad715fbbe494644e586c6c386bfec6857a
Gnucash-Intel-5.0-2.dmg
02a1d6d0d8c61aae47b1200af482967ed16322a41f31dd8cf3a6679e7159edb1
gnucash-docs-5.0.tar.gz
Microsoft Windows:
https://github.com/Gnucash/gnucash/releases/download/5.0/gnucash-5.0.setup.exe
https://downloads.sourceforge.net/gnucash/gnucash%20%28unstable%29/5.0/gnucash-5.0.setup.exe
Apple macOS:
https://github.com/Gnucash/gnucash/releases/download/5.0/Gnucash-Intel-5.0-1.dmg
https://downloads.sourceforge.net/gnucash/gnucash%20%28unstable%29/5.0/Gnucash-Intel-5.0-1.dmg
Getting GnuCash as source code
If you want to compile GnuCash 5.0 for yourself, the source code can be
downloaded from:
https://github.com/Gnucash/gnucash/releases/download/5.0/gnucash-5.0.tar.bz2
https://github.com/Gnucash/gnucash/releases/download/5.0/gnucash-5.0.tar.gz
https://downloads.sourceforge.net/gnucash/gnucash%20%28unstable%29/5.0/gnucash-5.0.tar.bz2
https://downloads.sourceforge.net/gnucash/gnucash%20%28unstable%29/5.0/gnucash-5.0.tar.gz
To compile GnuCash from the source code by yourself, you will need at least Gtk+
3.22.29, Guile 2.0, Boost 1.67, WebKitGtk 2.4, GoogleTest 1.8.0, cmake 3.10 and
SWIG 2.0.12. Please consult the README.dependencies file in the sources for the
exact list of dependencies and versions.
Getting the documentation
Note that the documentation for unstable releases is not on the GnuCash website.
It is built daily and may be found on the development server under the locale
directory; "C" is English, "de" is German, and so on.
The documentation is included in the MacOS and Windows application bundles.
If you want to compile the GnuCash Documentation 5.0 for yourself, the source
code can be downloaded from:
Sourceforge:
https://downloads.sourceforge.net/gnucash/gnucash%20%28unstable%29/5.0/gnucash-docs-5.0.tar.gz
GitHub:
https://github.com/Gnucash/gnucash/releases/download/5.0/gnucash-docs-5.0.tar.gz
You can also checkout the sources directly from the git repository as
described at https://wiki.gnucash.org/wiki/Git.
About the Program
GnuCash is a free, open source accounting program released under the GNU General
Public License (GPL) and available for GNU/Linux, *BSD, Solaris, MacOS, and
Microsoft Windows. Programming on GnuCash began in 1997, and its first stable
release was in 1998.
Regards,
John Ralls