Skip to content

Releases: Gnucash/gnucash

GnuCash 4.9 Released.

19 Dec 20:22
Compare
Choose a tag to compare

The GnuCash development team announces GnuCash 4.9, the tenth release in the stable 4.x series

Between 4.8 and 4.9, the following bugfixes were accomplished:

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 API

None

Deprecations

None

New and Updated Translations: Chinese (Simplified), Chinese (Traditional), Croatian, French, German, Hebrew, Italian, Norwegian Bokmål, Portuguese, Portuguese (Brazil), Spanish, Ukranian.

Help translate GnuCash on Weblate

Known Problems

Read more

GnuCash 4.8 Released

28 Sep 20:54
Compare
Choose a tag to compare

The GnuCash development team announces GnuCash 4.8, the ninth release in the stable 4.x series

This is a snap release to fix crashes during migration. The macOS and Win32 GnuCash bundles were not affected; if you use either of those you do not need this release.

Between 4.7 and 4.8, the following bugfixes were accomplished:

None

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 API

None

Deprecations

None

New and Updated Translations: None.

Known Problems

Complete list of all open bugs.

.

Documentation

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

Between 4.7 and 4.8, the following bugfixes were accomplished:

None

The following fixes and improvements were not associated with bug reports:

  • Remove obsolete files.
  • Remove autotools.

New and Updated Translations: None

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:

  • 15b8e4ff8336168eba88ef2faade377e5c5ff08e48b4660da1a33a8a407feb12  gnucash-4.8.tar.bz2
  • 37e6fbdee7e2ac41299cdb4ffef189c160b03f992ab30e823369df90ebb0d61f  gnucash-4.8.tar.gz
  • b8c4a4bad5a073f53ea07ad46d4c13096a5d26d906ceda8c049842a8362d0a86  gnucash-4.8.setup.exe
  • 20af888f1d1293a036b595145ad9e5338b3a92f868b6e4fca021d4cc7d9df36b  Gnucash-Intel-4.8-2.dmg
  • 988011168a3ab2c3601a5af75f5caad89fb18a4e880311f3538b8fc7c9a068d3  gnucash-docs-4.8.tar.gz

GnuCash is now available as a flatpak from Flathub.org. Instructions for installing and running.

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.

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.

GnuCash 4.7 Released

26 Sep 19:35
Compare
Choose a tag to compare

The GnuCash development team announces GnuCash 4.7, the eighth release in the stable 4.x series

Compatibility Notice

In order to allow flatpak users to share preferences with installations outside of the sandbox we need to change the preference path from /org/gnucash to /org/gnucash/GnuCash. This release of GnuCash does that and it will automatically migrate existing preferences. It does not, however, continue to write preferences to the old path and it runs the migration only once. If you go back and forth between GnuCash 4.7 and an older versions you'll have two sets of preferences, one for GnuCash 4.7 and later and another for GnuCash 4.6 and earlier. This includes the file history list and last-opened file.

Between 4.6 and 4.7, the following bugfixes were accomplished:

The following fixes and improvements were not associated with bug reports:

  • Lots of memory-leaks plugged
  • Change the preferences path to org.gnucash.GnuCash to comply with flatpak requirements and migrate existing preferences to the new paths. This won't provide for automatic sync between a system-installed GnuCash and a flatpak one unless the system-installed one is GnuCash 4.7 or later. Please see the Wiki for more information and a procedure to convert your existing preferences.
  • Cleanup - minimal glib=2.56.1 - drop all conditionals on older versions
  • Add code to handle ofx files that include transfers between accounts
  • During transaction import, ignore splits whose account is not the destination account
  • Do not drop a potential match just because it has an online_id.

    Now that we don't exclude from import a transaction with an FITID that matches an already existing transaction, if one accidentally re-imports a transaction, this allows it to be automatically matched against the previously imported transaction.

  • Add test for Transaction GetDate() in python bindings, pursuant to Bug 798284.
  • In find customer dialog, add a column for "Shipping Contact" parameter
  • Prep early splash screen messages for translation
  • Change text for SX preference option 'Review created transactions' to better align with existing SX text.
  • Fixed an XML backend problem where trying to open a locked file would clear the lock even if one didn't ask to, so the next attempt would find the file unlocked even if still open in another instance.
  • Fix 2 crashes in Generic Transaction Matcher
  • Handle very large denominators from Finance::Quote's OpenExchange source
  • Update file extension in man pages per mailing list post.
  • Changed some option names:
    • From "Show Accounts until level" to "Levels of Subaccounts"
    • From "Extra notes" to "Extra Notes"
    • from "Report title" to "Report Title"
    • From "Invoice number" to "Invoice Number" to ensure it matches all other invoice reports.
  • Fix missing mnemonic keys after changes to GNCAmountEdit

    With the changes to GNCAmountEdit, the way the mnemonic keys are associated to the entry widget of the GNCAmountEdit needs to change so have created a function gnc_amount_edit_make_mnemeonic_target which does the same as GNCDateEdit.

  • Fix rounding in Stock Split Assistant to correct earlier commit that rounded the share price to that of the currency.
  • [Portfolio Reports] Allow share digits to 9 decimal places to match the maximum commodity fraction.

New API

  • None

Deprecations

  • Date options with a time of day setting.

    Removing the only use, an example in hello-world.scm. GnuCash doesn't use this value in any of its own report options and the feature will be removed in GnuCash 5. Related to bug 798297 Pref "Use 24-hour clock" obsolete?.

  • gnc:owner-report-create

New and Updated Translations: Chinese (Simplified), Croatian, Finnish, French, German, Hebrew, Italian, Japanese, Portuguese, Portuguese (Brazil), Swedish, Ukrainian

Known Problems

Complete list of all open bugs.

.

Documentation

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

Between 4.6 and 4.7, the following bugfixes were accomplished:

The following fixes and improvements were not associated with bug reports:

  • Replace COPYING file from GPL 3 to GPL 2.
  • Substantial editing of the C documentation to make the meanings more understandable to translators.
  • Apply dtd-locale to help/de/Help_para-assist-intro.xml.
  • Add ENTITY(s) prefix guisubmenu, guimenuitem, and guilabel as gsm, gmi, and gl, respectively.
  • Move untranslated entity messages from gnc-docbookx.dtd to each locale file.
  • Make DTD ENTITY(s) translatable. See docbook/README. Bug 798273 - Consider a entity import system like in docbook-xsl
Read more

GnuCash 4.6 Released

27 Jun 21:49
Compare
Choose a tag to compare

The GnuCash development team announces GnuCash 4.6, the seventh release in the stable 4.x series

Between 4.5 and 4.6, the following bugfixes were accomplished:

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 wit...
Read more

GnuCash 4.5 Released

28 Mar 17:58
Compare
Choose a tag to compare

The GnuCash development team announces GnuCash 4.5, the sixth release in the stable 4.x series

Between 4.4 and 4.5, the following bugfixes were accomplished:

The following fixes and improvements were not associated with bug reports:

  • Fix building based on unix makefiles
  • Make the chart on the report page icon larger to align better with the account page icon.
  • Allow the context menu when GncCellRendererTextView is in edit mode.
  • Restructure early locale initialization
    • Move macOS specific bits to its own source file. As this is objective-c use .mm extension
    • Use common function signature for macOS and Windows init function and include via common header file
  • Fix GncDateTime::format_zulu to emit the UTC timezone instead of the GncDateTime's timezone with the UTC timestamp.
  • Fix the implementations of gnc_foo_get_day_neutral. As implemented these returned 10:59 AM local on the day but neutral time is 10:59 UTC.
  • gnc_invoice_window_print_invoice return NULL if invoice is NULL.
  • [dialog-invoice] invoice editor reuses invoice report tab.
  • Allow for Header Bar use in CSV transaction Assistant

    There are a couple of action buttons that are added to the CSV transaction assistant with added alignment based on the action area being a GtkBox which causes errors if the header bar is used so test for the action area type and use appropriate specific functions.

  • Drop default locale currency special case for euro

    The condition mentioned in the comment no longer applies. All European locales on Windows (MingW64) properly present EUR as currency these days

  • Fix fencepost error in calculating the week_num for POSIX timezone rules.
  • Include the contents of PROJECT_DESCRIPTION in the PACKAGE_PREFIX.

    If it's defined. PACKAGE_PREFIX is used to name tarballs and set their base directory. The translation project has requested that we name freeze-string tarballs with a pre1 suffix; this makes that possible.

  • Update python/gnucash_business.py to reflect rename of gncOwnerApplyPayment.
  • I18N: don't mark "<<", ">>" translatable

    They get properly reversed for RTL writing

  • From Budget editor, add toolbar and Edit menu to run budget report

    This parallels the invoice editor "Print Invoice" functionality. Runs the budget report using current budget.

  • [gnc-plugin-page-budget] change note icon to a note page
  • Allow the find account dialog position to be saved when using 'X'
  • Update price database for imported transactions.
  • Replace g_memdup by memcpy

    GLib is deprecating g_memdup and will immediately remove it in the next micro-release because of a CVE.

  • [html-fonts] Prevent sup/sub from affecting baseline

    Source: https://css-tricks.com/snippets/css/prevent-superscripts-and-subscripts-from-affecting-line-height/ Previously <sup> and <sub> would cause the baseline to move vertically.

  • Replace stat calls with GFile to retrieve last modified info

    Avoids code-page problems with non-ASCII characters on Microsoft Windows.

  • [gnc-tree-model-split-reg.c] use xaccSplitListGetUniqueTransactionsReversed

    which is then reversed if required. this removes the need for double reversal.

  • [Split.c]New function xaccSplitListGetUniqueTransactionsReversed

    Same as xaccSplitListGetUniqueTransactions but doesn't reverse the list prior to returning. To be used by gnc-tree-model-split-reg.c Several optimizations

    • doesn't call g_list_find and g_list_append for every iteration
    • uses g_hash_table to cache list of txns already added instead of g_list_find<.
    • does not reverse the result, thereby returning a reversed list.

  • [gnc-recurrence.c] avoid O(N^2) children traversal
  • Ensure that any GncMainWindows containing no tabs are destroyed at shutdown.
  • I18N: drop translatable flag from "xxx" dummies and remove trailing spaces from translatable strings
  • Update Form/Schedule line references for 2020 for the US Income Tax Report.
  • Fix build with glib2 2.67.x.

    glib headers should not be included with 'extern "C"'.

  • [balsheet-pnl] Use last day of the month prices instead of first day of next month.
  • [options.scm AP...
Read more

GnuCash 4.4 Released

28 Dec 23:46
Compare
Choose a tag to compare

The GnuCash development team announces GnuCash 4.4, the fifth release in the stable 4.x series

Between 4.3 and 4.4, the following bugfixes were accomplished:

No other improvements were made.

Deprecations

  • xaccAccountCountSplits: use gnc_account_has_child_splits
  • gnc:html-table-append-column!: Build a new table with all of the columns and copy in the rows.

Updated Translations: German, Italian, Japanese

Known Problems

Complete list of all open bugs.

.

Documentation

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

Between 4.3 and 4.4, the following bugfixes were accomplished:

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:

  • d91e0d126b461d71de1bc1b20d9cf142704353dec07d3e6599d138422759e67a  gnucash-4.4.tar.bz2
  • 521ad979f0d59c3568a6300644d7cf435ebd829b1c2eea88752e983b2fce08b5  gnucash-4.4.tar.gz
  • 34879ef4957a2768f96747ca4f6f8732107d23cac5132d6dc655ae8e53e3798c  gnucash-4.4.setup.exe
  • e6627feea1eb4aa6eafb05dd434fc2bc6954322152d8559f78901848c64631ca  Gnucash-Intel-4.4-1.dmg
  • 298977e7dddce83335e1f988e6977cb010e37b289c31d09b15df4af526e4ba35  gnucash-docs-4.4.tar.gz

GnuCash is now available as a flatpak from Flathub.org. Instructions for installing and running.

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.

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.

4.3

27 Dec 19:22
Compare
Choose a tag to compare
4.3

The GnuCash development team announces GnuCash 4.3, the fourth release in the stable 4.x series

Between 4.2 and 4.3, the following bugfixes were accomplished:

The following fixes and improvements were not associated with bug reports:

  • Add custom unbound-variable exception reporter in guile that identifies what module provides the missing symbol.
  • Balsheet-pnl report: show most recent period first by default
  • Change register page icon to a padlock if read only
  • When a resister is read only make whole sheet insensitive.
  • Add account name to the read-only-register dialog box because under some circumstances it may be unclear to which register the message applies.
  • Strictly use use-modules to import Scheme symbols: Guile 3.0 doesn't like the alternatives. This can cause problems resolving symbols if the source of those symbols isn't yet compiled and hasn't been symlinked into the builddir.
  • Don't try to reload report if the first attempt raised an html error.
  • Barcharts: Limit account drill-down depth to 6.
  • I18N:glossary: add mortgage terms ARM, APR, FRM
  • Change the icons used for the file locked dialog box.
  • Add support for the opening balance accounts flag

    Up to now, opening balance accounts have been identified by means of fixed names and their translations. Support Replacing this with a consistent non-translated tag. The actual replacement will be added to Gnucash 4.4; this change is to ensure a migration path.

  • Replace TravisCI with Github actions for CI testing. TravisCI sharply restricted their free support of Free Software projects.
  • Use LTDL_LIBRARY_PATH instead of (DY)LD_LIBRARY_PATH in environment file.
  • Add a few more CSS classes for labels
  • Add GoogleMocks of some engine objects and refine Import-export unit tests using them.
  • Add auto-clear to register page
  • Change source files dialog-dup-trans.* for space and tabs
  • Fix exception when converting to decimal values that reduce to N/1.
  • Add confirmation of Main Window close when more than one window is displayed
  • Add keyboard shortcuts <Ctrl><Alt><Menu> for the notebook page selection menu and <Ctrl><Alt>A to jump to the Accounts page.
  • Allow using the Ctrl+Alt+PgUp/Down to scroll the report view.
  • Fix report page keyboard focus in the scroll window.
  • Fix some incorrect links to the help file
  • Fix section help on windows not working.
  • Set the visibility of the account column in import-main-matcher depending upon the nubmer of accounts being displayed.
  • Add option to hide memo column on import-main-matcher
  • Fix pressing help button in OFX importer causing main-import-matcher to disappear
  • Preferences dialog: Display the invalid account separator message box only when the user closes the Preferences Dialog instead of after every change to any control.
  • Expose ngettext as gnc:ngettext
  • Add tooltip in import matcher window for description and memo column.
  • Put Macs back on WebKit2.
  • CMake: Mute guile-2.2 again
  • Fix several report stylesheet font-handling issues especially on macOS.
  • Fix price-renderer not converting to decimal.
  • Add some additional places where Check&Repair can be aborted
  • Make the price database list obey the force-prices-to-decimal preference.
  • Several improvements to the auto-clear dialog.
  • Fix some errors found by i18nspector in po files
  • Tax Report Options appeared twice on menu for Chart of Accounts
  • General Journal Report: Allow Report Options>General Title to render document title.
  • ...
Read more

GnuCash 4.2 Released

27 Sep 18:17
Compare
Choose a tag to compare

The GnuCash development team announces GnuCash 4.2, the third release in the stable 4.x series

Between 4.1 and 4.2, the following bugfixes were accomplished:

The following fixes and improvements were not associated with bug reports:

  • Update version in README, add Boost::program_options to dependencies.
  • [report-utilities] compact functions
  • Small fixes for various translation issues:
    • Deduplicate translatable strings
    • Add context to one-letter strings in guile code
    • Fix typo in linked document gui Align translatable strings
  • Expose C_ function (gettext with context string) to guile code, first use is for the document link short code (L)
  • Improve and repair progress bar display on a variety of reports and windows, improving performance on several by reducing the number of progressbar calls.
  • [gnc-main-window] enable show_text for progressbar, allowing gtk_progress_bar_set_text to actually display the progress text.
  • Fix help_label of dialog-doclink.glade, remove question mark from Available, and insert missing spaces into the Business Item variant.
  • Rename all Transaction and Invoice Association identifiers to DocLink to better reflect the purpose and for consistency with other software (e.g. Libre Office).
  • Rename Transaction and Invoice Associations to Document Links. More clearly describes the actions and is more consistent with other software (e.g. Libre Office).
  • RRemove the Remove Linked Document context menu item because that can be done in the Manage dialog box.
  • Fix the horizontal scrollbar in the linked docs window.
  • I18n - deduplicate translatable strings
  • macOS: Give GnuCash time to shut down gracefully instead of letting macOS pull the rug out.
  • I18N: Align glossary to gnucash.pot. Create a similar copyright header. Add missing Report-Msgid-Bugs-To.
  • [report-utilities] More dump data functions:
    • gnc:dump-book - splits grouped by account
    • gnc:dump-all-transactions - splits grouped by transaction
    • gnc:dump-split - dumps single split
  • [business-urls] link to owner report with enddate
  • [dialog-invoice] gnc_business_call_owner_report_with_enddate
  • [new-owner-report][api] owner-report-create-with-enddate; accepts enddate argument like owner-report-create.
  • Enable exporting the tables in charts and some reports as CSV.
  • Tweak a few strings to reuse translations
  • Exported gnc:cmdline-template-export and gnc:cmdline-get-report-id. Handle ambiguous reportnames by returning #f.
  • [price-quotes.scm] ensure missing-alphavantage message can show on console
  • [budget.scm] Fix report crash on books with unreversed budgets
  • [gnucash-cli] -R show should accept & try to load datafile
  • Speed up computation of import match lists by running query only once, committing accounts only once, and doing a bulk insert into the GtkTreeview.
  • Add Python example export_account_totals.py. Exports acount totals of all accounts into a CSV file.

Updated Translations: Dutch, German, Italian, Ukrainian
New Translations: Estonian, Indonesian

Known Problems

Complete list of all open bugs.

.

Documentation

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

The only changes to the documentation since 4.1 were improvements to the build system.

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:

  • 56d8ab039ef7784303ca9eab14bfc20f593f7a3f9b682a8a7eac25906a0d1308  gnucash-4.2.tar.bz2
  • 934f3432bc8d1f98223275d278f4cb2918970f50647ee6643dfb92369080dc68  gnucash-4.2.tar.gz
  • 2cb2d9c1ebe746d6d9c8da517b0bdfcca22ed10e22e4eb2ca1890df3d7559892  gnucash-4.2.setup.exe
  • 66f48acf1aa002e2de86865bb56f6a695cecf1fd3734b4a7e85fc170cf14c6f5  Gnucash-Intel-4.2-1.dmg
  • 051f6a038d2f2d9fb0bad9ac1b9597d3186e48ed63c27f0bb40744ffc05e39dc  gnucash-docs-4.2.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 t...

Read more

GnuCash 4.1 Released

26 Jul 16:35
Compare
Choose a tag to compare

The GnuCash development team announces GnuCash 4.1, the second release in the stable 4.x series

Between 4.0 and 4.1, the following bugfixes were accomplished:

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

Known Problems

Complete list of all open bugs.

.

Documentation

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

The only changes to the documentation since 4.1 were improvements to the build system.

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:

  • a40fc37122e1466c8085ad2be914f0687a111065f15c5d952faede78802225aa  gnucash-4.1.tar.bz2
  • 071b4b40f5ca773ec35cee4b785da5548e82645ba57de3c4bb12a5374c19e74b  gnucash-4.1.tar.gz
  • 836b36be639caf61321c2df24dda48691e57ddeb6b7aa13db49f8eddd5b096e0  gnucash-4.1.setup.exe
  • 9c3685e79027d12b370e9fa79a569f7c532968be91ecfd3b81660d39abe50ab3  Gnucash-Intel-4.1-4.dmg
  • 6eb1504b189ed187ae19ce4a5a39adb83ebe7810c26d30f58ee10928ac4ef8f4  gnucash-docs-4.1.tar.gz

GnuCash is now available as a flatpak from Flathub.org. Instructions for installing and running.

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

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

About the Program

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

GnuCash 4.0 Released

28 Jun 19:02
Compare
Choose a tag to compare

The GnuCash development team announces GnuCash 4.0

Changes

Baseline requirements

Operating Systems:

  • Linux: Ubuntu 18.04LTS
  • MacOS: 10.13
  • Windows: 8.1

Software Dependencies:

  • C++ standard is now C++17, requires gcc 8.0 or clang 6.0.
  • Cmake 3.10
  • boost 1.67.0
  • gettext 0.19.6 for general use, 0.20 to generate gnucash.pot.
  • glib-2.0 2.56.1, gtk 3.22.30
  • googletest 1.8.0
  • ICU, any version.
  • libdbi 0.8.3
  • libxml2 2.9.4
  • swig 3.0.12 Now required for building from tarballs as well as from git.
  • Webkit 2.4.11 Mac & Win32, 2.14.1 Linux/BSD

New Features

  • 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
  • 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.

  • 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.
  • New type-ahead search added to sequential search when selecting an account 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.
  • Python bindings are now localized and their strings available for translation.
  • 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.
  • Allow Associations to be added to invoices. The actual association when present is added as a link button which is shown below the notes.
  • A symbol is now displayed on transactions in the register when they have an attachment and the selected font supports the symbol.
  • The OFX file importer can now import more than one file at a time. This does not work on MacOS, which will continue to use a letter.
  • 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 added to the Income-GST report. The reports 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.
  • The matcher window columns 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. (Bug 797338)
  • OFX imports having balance information will now offer to immediately reconcile, passing the balance information in the file to the reconcile info.
  • Improve quickfill in the account pickers to filter the choices based on any part of the name.
  • 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.
  • 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. (Bug 797472)
  • New Account - Online Account match list to the Import Map Editor.
  • New invalid maps dialog in the Import Map Editor. (Bug 797612)
  • Optionally include the account code option in budget view.
  • 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.
  • Enable adding notes to budgets. (Bug 693180)
  • Support for AQBanking Version 6. This is required to support new FinTS protocols for the European Payment Services Directive (PSD2).
  • GnuCash 4.x will not migrate old gconf settings from GnuCash 2.4.x.
  • Reversing transactions will now pop a dialog box to request a posting date. (Bug 782455)
  • The Accounts page has a new optional column for the hidden property to make it easier to toggle it. Note that in order to see hidden accounts you must still enable that in the Filter by... dialog. (Bug 797486)
  • The Customer, Vendor, and Employee overviews have a process-payment toolbar. (Bug 797605).
  • Account codes may now optionally be displayed in the Budget Tree View. (Bug 797489).

New/Revised Reports

  • Income-GST
  • Owner Report

Significant Code Changes

  • The signature for qof_session_begin(), QofSession::begin(), and QofBackend::begin() are changed to use an enum SessionOpenMode instead of three booleans.
  • gnucash-bin.c has been split into 4 parts, mostly C++:
    • gnucash.cpp, the GUI executable.
    • gnucash-cli.cpp, the command-line executable.
    • gnucash-commands.cpp, implementation for the commands that can be run from the command-line.
    • gnucash-app-core.cpp, common code required by both the command line and gui programs.
    • There's also an auxiliary file, gnucash-windows-locale.c because the localization code proved resistant to compiling as C++. We're planning another auxiliary file for the MacOS localization.
  • A new mock facility for several engine classes to permit better-isolated unit testing of components that depend on those classes.
  • Register filter and sort values are saved in the book's state file (book.gcm) in the user's configdir instead of in the book.
  • QofSession no longer creates its book, instead one must create a book first and pass that to qof_session_new()/QofSession::QofSession().
  • Input Method handling in the register is moved to the GtkEntry where it belongs.
  • gnc_get_current_session() no longer creates an empty session if there isn't one already open.
  • The source directories have been rearranged and most of the loadable modules (e.g. libgncmod-engine.so) are now normal dynamic libraries (libgnc-engine.so), shorn of their gnc-module adapters. Make sure that you clean and rebuild your build directory.
  • All functions marked as deprecated in 3.x are now removed. If you have custom reports be sure to examine gnucash.trace for deprecation warnings and update your reports before trying them in GnuCash 4.0.
  • libgncmod-generic-import is now libgnc-generic-import.
  • Scheme no longer uses libgncmodule, always do (use-modules (gnucash foo))
  • Autocompletion improvements for the transfer-account field.
  • New test for invalid mappings for online accounts and a dialog to fix them.
  • jqplot is replaced by chartjs.
  • Separate most Guile binding code from the code that it wraps. It's now located in bindings/guile.
  • Improve Google test integration in cmake. CMake now requires only GTEST_ROOT and only when cmake isn't able to find Google test without help.
  • Unit tests for Scheme code with SRFI64.

Deprecations (will be removed in GnuCash 5.0

  • gnc:substring-replace-from-to

Known Problems

Complete list of all open bugs.

....
Read more