GnuCash Changelog

New in version 2.6.6

March 31st, 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 version 2.6.5 (December 20th, 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 dimstar@opensuse.org.
  • 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 version 2.6.4-2 (October 13th, 2014)

  • This release fixes the following additional bugs compared to the original 2.6.4 release:
  • Bug #737646 - Transfer drop-down menu not visible
  • Bug #738379 - All characters displayed as boxes in 2.6.4-1

New in version 2.6.4 (September 29th, 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 version 2.6.3 (April 2nd, 2014)

  • Between 2.6.2 and 2.6.3, the following bugfixes were accomplished:
  • 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()
  • Some other fixes not associated with reported bugs were accomplished:
  • 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 version 2.6.2 (March 3rd, 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

New in version 2.6.2 (March 3rd, 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

New in version 2.6.1 (January 28th, 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

New in version 2.6.0 (January 3rd, 2014)

  • Preferences have been migrated from GConf to GSettings. This is a simpler and more robust backend which writes to the OS's native prefs -- defaults on OS X and the Registry on MSWindows -- and allows us to remove several troublesome dependencies including GConf, ORBit, and DBus. The change includes a migration script that will run at Gnucash startup.
  • New date handling which allows GnuCash to use dates after March 2038.
  • Guile-2 compatibility: GnuCash now requires either Guile-1.8 or Guile-2.0
  • Documents outside of GnuCash, images of receipts for example, can now be linked to transactions, with the facility of opening them in the default application for the document type.
  • Custom Reports can now be saved without renaming the report, and modifications can overwrite an existing report.
  • The import assistant now finishes much more quickly after assigning contra-accounts.
  • GnuCash now requires Gtk+-2.24.0 and GLib-2.26.0. Most of the dependencies on obsolete libraries have been removed; onlylibgnomecanvas remains. Unfortunately the effort to rewrite the register code to use GtkTreeModel wasn't completed in time, so GnuCash is not on the cusp of converting to Gtk3.
  • The Business Module has been substantially revamped, including support for Credit Notes and import of customers and vendors from a CSV file.
  • The Num field in the register display is now optionally per-split, so for example a check number can be entered for the checking account split and an invoice number for the expense account split.
  • GnuCash can now open locked books read-only so that more than one user can view a file. GnuCash still does not support multiple simultaneous writers.
  • By agreement of all authors, GnuCash is now licensed under the GNU General Public License Version 2 or later rather than simply Version 2. This allows derivative works to be licensed under the GPL Version 3 if the author of such a work so desires.
  • Fixed more than 500 bugs.

New in version 2.5.9 Unstable (December 2nd, 2013)

  • Bug #644044: Lots: SQL backend loses link to Gain/Loss Txn
  • Bug #704506: Connection loss to mysql after resume from hibernation
  • Bug #707311: Tax Invoice fails to open when using guile 2
  • Bug #710871: Python site-packages not found when not installed to default location using --prefix
  • Bug #710905: Column withs, visibility, order and sort order not saved and restored
  • Bug #711289: Win32 time zone handling is inconsistent between 2.4 and 2.5
  • Bug #712299: Tax Invoice with guile 2 doesn't display currency symbols
  • Bug #715041: Crash opening a file when a file is already open.
  • Bug #715184: Bill or Invoice; a new Bill gives a new Invoice
  • Bug #719471: Unused commodities saved to XML file

New in version 2.5.8 Unstable (November 19th, 2013)

  • Bug #707311:Tax Invoice fails to open when using guile 2
  • Bug #709589: make check fails with guile 2
  • Bug #711289: Time Zone Handling is Inconsistent between 2.4 and 2.5
  • Partial fix that may also correct 699997
  • Bug #711294: Gnucash repeatedly asks for associated income account when importing QFX file. Patch by Kuang-che Wu
  • Bug #711493: Fix unselected account that is NULL
  • Translations updated: German

New in version 2.5.7 Unstable (November 5th, 2013)

  • Building Gnucash now requires Automake version 1.11 or later.
  • Configure will abort if --enable-ofx is set but no libofx configuration files are found.
  • Budget periods may no longer set to values greater than the budget's num_periods, and the budget options descriptions will wrap. Contributed by Robert Ratliff.
  • Bug #668530: In budget flow report options, change the maximum value for period to 60 (Note the FIXMEs) Author: Robert Ratliff
  • Bug #687478: Bills due reminder doesn't work well with credit notes
  • Bug #687479: Automatic invoice/payment matching on posting an invoice should be an optional feature
  • Bug #693244: View Lots window enhancements
  • Bug #708659: Totals column moves to right hand side when periods are added Remove unneeded gnc_plugin_page_budget_refresh_cb Author: R Ratliff
  • Bug #710055: advanced portfolio report counts capital gains split as dividend. Author: Jason McCarty
  • Bug #710311: Missing ChangeLogs
  • Bug #710739: Fill in field for remote bank account information also for SEPA transfers.
  • Bug #710979: Crash in gnc_plugin_page_invoice_summarybar_position_changed

New in version 2.5.6 Unstable (October 9th, 2013)

  • Bug #63362: Unable to create "reversing transaction" again after it is removed with the SQL backend.
  • Bug #654196: "Make check" fails when built with --enable-dbi and no dbi backends are installed. Now fails in configure, as it should.
  • Bug #674862: 2038 Bug with Postgres and MySql backends.
  • Bug #682280: Bill/Invoice importer fails to save the imported item to the SQL backend.
  • Bug #684670: Interest amount calculation is wrong in SQL backend. The backend wasn't storing the already-elapsed periods.
  • Bug #699450: New budgets cause Account Name column to expand until display bigger than screen. – Robert Ratliff
  • Bug #708700: Make check fails from missing glib bits – Frédéric Perrin
  • Translations updated: Dutch

New in version 2.5.5 Unstable (September 11th, 2013)

  • Bug #334939: Account Report and Account Transaction Report are apparently the same, but different. Change menu entry for the single transaction Account Report from "Accout Transaction Report" to "Account Report - Single Transaction" Author: Carsten Rinke
  • Bug #603183: Equity statement shows incorrect changes Add function gnc:account-get-total-flow to report-utilities.scm This function filters the splits from the source to the target accounts and returns a commodity collector. It does NOT do currency exchanges. Export the new function gnc:account-get-total-flow from report-utilities.scm. Apply the new function gnc:account-get-total-flow for the "Withdrawal" calculation. Author: Carsten Rinke
  • Bug #629136: Move the code that updates the sensitivity of immutable page actions from gnc_main_window_switch_page to gnc_main_window_generate_title. Patch by Guilherme Salgado.
  • Bug #696492: Change report name in menu or in report output to be consistent Change the register name to "Accout Transaction Report" when the register type is GENERAL_LEDGER, INCOME_LEDGER, or default in function gnc_reg_get_name(). Patch by Carsten Rinke.
  • Bug #704039: time zone is not respected on windows Author: Kuang-che Wu
  • Bug #704056: Online Banking (Online Actions) does not appear in Action menu Ensure that all functions are exported to the dll.
  • Bug #704525: When you have a mix of chart types (bar charts and pie charts). Add new procedure gnc:substring-replace-from-to Similar to gnc:substring-replace, but offers the possibility to replace substrings in a range of occurances. Add calls to gnc:substring-replace-from-to to procedure gnc:report-run. Filter out all occurances of jquery.min.js and jquery.jqplot.js except for the first occurances. Author: Carsten Rinke
  • Translations updated: Lithuanian

New in version 2.5.4 Unstable (August 19th, 2013)

  • Register Rewrite Update:
  • Restore the delete-transaction-up/down feature
  • Replace the filter-and-sort model with a qof query
  • Date and Cursor improvements
  • Revert the Bitcoin support until the patch is rewritten for a better UI
  • Localization Improvements:
  • Make the CSV Account import table header tranlatable
  • Fix translation of table headers
  • Fix dash-marker usage
  • Other translation issues
  • Bug #703897: Functions which can return NULL always return a Python object
  • Bug #704183: OFX file import tries to match online_id against ACCTID[space]ACCTKEY even when ACCTKEY is empty.
  • Bug #704185: GnuCash 2.5 doesn't build on FreeBSD
  • Translations updated: Catalan, Danish, Italian, and Lithuanian

New in version 2.5.3 Unstable (July 8th, 2013)

  • Register Rewrite Update: Better commodity/currency handling
  • Sanity checks when converting TreePaths
  • Posted dates now work like old register
  • Enable online actions in Register2
  • Customized report settings have been redesigned so that it's no longer necessary to change the report's name to save it, multiple versions of the same report can be saved (the names are automatically numbered) using Save As, and saved reports can be easily updated by clicking Save.
  • Faster versions of several reports
  • It's now possible to post multiple invoices from the find dialog. GnuCash was crashing if you searched for all unposted invoices, selected two or more of them, and posted them. This was because the list of invoices to be posted changed while it was being processed. As part of fixing this the prompt for post date, due date, etc. will only be given once, not once per invoice.
  • One can now reorder un-numbered transactions within a date by drag and drop or with arrow keys.
  • List of windows in OSX Windows menu
  • Startup dialog windows should be top level
  • (OSX)Command-V in reconcile window pastes data in register
  • Fix crash in scrubbing code
  • Fix crash on entering a non-valid date
  • Catch scheme exceptions when converting error messages
  • Fix txn creation that forgot to set a txn currency
  • After creation of a new book, make sure to set it to dirt
  • Translations updated: Danish, Italian, German

New in version 2.5.2 Unstable (June 3rd, 2013)

  • Register Rewrite Update:
  • This update fixes the following:
  • Corrects the default behaviour for share/price/value changes
  • A scrolling issue
  • Column resizing
  • Wrong title spelling
  • Allows the mouse to change reconcile / type flags
  • Change transaction paste
  • And adds the following features:
  • Adds commit of transaction by change of transaction by cursor keys with some changes to used functions
  • Added commit of transaction by enter
  • Changed the account accelerator function
  • Changed treeview to fixed height mode
  • Allow mouse to change reconcile flag
  • Allow changes when in sub account view
  • Reduce view default title lengths
  • Add missing help text
  • Changes default find on account page to the new view
  • Support for querying Bitcoin/Litecoin prices via F::Q's MtGox module
  • Win32 build: ? Update versions of gwenhywfar, aqbanking
  • git: fetch potentially new tags before running the tags build
  • Fix path to git build script for tags
  • Build 2.5 tagged releases from git instead of svn
  • Fix charts on Windows. Local filenames should be given as URIs with file://; otherwise browsers will interpret the drive letter (e.g., C:) to be an unknown network protocol.
  • Bug #700197 - Critical SQL backend errors when creating customers via python bindings
  • Round properly when computing fraction of the transaction's value due to a given split. Also use GNC-DENOM-AUTO instead of a constant zero when appropriate.
  • Bug #682800 Generated balances on Report different than calculated balances on Ledger when using "open subaccounts"
  • Bug 640962 Make check failure: test_backend_dbi
  • Bug #622778 Miscalculation in cashflow reports
  • Bug #589865 In the report "Budget flow" period it doesn't work ok
  • Bug #584869 net change line in general journal report broken
  • Translations updated: Danish, German, Italian

New in version 2.4.13 (April 22nd, 2013)

  • Bug #697133: OFX file handling was broken in the Windows versions

New in version 2.5.0 Unstable (April 9th, 2013)

  • A rewrite of the register (Gnucash's primary interface window) to use the GtkTreeModel (select "register 2" from the menu) as well as a new CSV import/export facility for account trees. Take care not to try to open a single account in both the old and new registers at the same time. Doing so will crash Gncuash
  • Gnucash now requires Gtk+-2.24 and GLib-2.26. We've removed most of the dependencies on libraries obsoleted by project Ridley and will be in position to move to Gtk+-3.x once the GtkTreeModel register window work is complete. This means that Gnucash 2.5 requires Debian 6, RHEL 6, or one of the more aggressive distributions like Ubuntu.
  • Gnucash now works with Guile-2.0.
  • The business module has been revamped and we introduce some new features:
  • Credit Notes
  • Customer and Vendor Overview Pages
  • Customer Overview Reports
  • Existing Transactions may be reassigned as invoice payments
  • Support for duplicate invoices
  • Improved invoice and bill handling: Post, print, or duplicate multiple items directly from a search results list
  • Better invoice printing setup: Choose a default invoice report as a
  • preference
  • Reorder invoice entries in the invoice window
  • The "Num" field is now optionally per-split rather than per-transaction.
  • Gnucash can print to a PDF for reports and invoices
  • Account "Filter By" settings can be saved and recalled
  • Account entries in the Chart of Account can be colored
  • When opening a locked "book" one now has the option of opening it read-only. Note that Gnucash is still a single-user program and that the database backends are still used only as a data store.
  • Gnucash is no longer subject to the "2038" bug, so that 30-year mortgages can now be entered correctly.
  • By agreement of all authors we have relicensed Gnucash to the Gnu Public License Version 2 or later from just Version 2.

New in version 2.4.12 (April 1st, 2013)

  • Bug #696469: Renumbering subaccounts does not preserve original order
  • Bug #695423: Fix OFX Commodity Account handling. Patch by Burke.
  • Bug #661832: MySQL database error after wireless reconnect
  • Bug #667093: Update taxtxf.scm to fix beginning balance sign and signs for Transfer From/To amounts for liability/equity accounts
  • Bug #680086: Each Tip of the Day has an n shown at the end
  • Bug #672364: does not properly handle XML parse errors, leading to possible data loss
  • Fix #638955: Connect the `Help' button in the `Close Book' dialog box (Tools > Close Book) to newly-written help section on book closing.
  • Bug #638971: Multicolumn report does not show more than one graph
  • Bug #680887: Updated RELAX NG schema for v2.4.11 XML file format
  • Bug #677488: DROP INDEX missing ON
  • Bug #632931: Advanced portfolio: add "rate of gain" column
  • Bug #610648: Change Reconciled Split Dialog ignores pressing Cancel
  • Bug 680402: Tests fail due to unused translations
  • Add all scheme files to POTFILES.skip so that intltool-update > 0.50 will ignore them. Scheme file translation strings are handled by intl-scm/.
  • Bug #680613: Date format setting seems to be ignored since version 2.4.9
  • Work around strange side-effect of r21665 which caused LC_TIME to be changed after it had been set by setlocale(LC_ALL) in set_mac_locale().
  • Bug #680887: RELAX NG schema for 2.4.11 XML file format
  • Bug #680576: Transaction report: date takes up two lines when using Canadian locale format.
  • Change date cells type from text-cell to date-cell to apply white-space: nowrap style.
  • Bug #680671: Configure should check for the python-devel package if called with --enable-python

New in version 2.4.11 (July 17th, 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
  • 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
  • [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.
  • [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.
  • 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.
  • [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.
  • [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.
  • [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 version 2.4.10 (April 11th, 2012)

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

New in version 2.4.9 (January 27th, 2012)

  • Bug #666329 Empty database after a little while Separate the two uses of QofBook::dirty -- indicating that the book object itself has been edited and indicating that some object in the dataset has been changed -- into two separate variables with separate getters & setters. Use gnc_dbi_safe_sync_all (which doesn't lose data if the save partion errors out) for all be->sync. Reverse qof_book_mark_saved and qof_instance_mark_clean so that the book is dirty for qof_book_mark_saved when it's the instance. Original commit by jralls
  • Bug #667105: Fix grammatical error in some accounts file.
  • Bug #667276 : Fiix Korean accounts files. Patch submitted by Eulgyoon Lim.
  • Bug #457401 - Print invoice should not be disabled for unposted invoices. Enable printing for unposted invoices.
  • Add a "features" table to the KVP frame, and pop up an error message if we find a feature we don't know about. Currently there are no known features, so essentially we will error out if we see anything.
  • Bug #665998 Replace no-op function force_account_dirty with qof_book_mark_dirty.
  • Bug #658247 - First time setup should prompt to save file. Fix supplied by Bob referenced in bug #665996.
  • Bug #642276 Bayesian association with Sqlite Wraps the kvp_frame_set_slot_path with xaccAccountBeginEdit()/xaccAccountCommitEdit(). Also clean up some other cases where KVP was set without committing an edit.
  • Fix table number alignment.
  • Fix number alignment in table.
  • Bug #649362 - Transfer Funds Window Exchange Rate and Decimal Points Rounding in Bill/Invoices This patch fixes the rounding by showing the actual value to convert. As a result the exchange rate direction had to be swapped as well to avoid lots of confusion.
  • Abort posting if not all required exchange rates are given. Note that any exchange rate successfully entered before the posting is aborted are still saved with the invoice.
  • Bug #665202 - Improve python-finding code. Patch by Pacho Ramos
  • Bug #661383 - GnuCash segfault on Linux (Fedora 16 beta) because of shared library load / unload weirdness
  • Fix right align for number cells in table.
  • Added user settable line width and data point markers to net worth line chart.
  • Commented line width. This value really should be passed from .scm file
  • Fix setting of line color for line charts.
  • Bug #664862 - New report showing net assets over time Added new line chart report for assets, net-linechart.scm. Distantly related to Bug #570011
  • Add missing Root Account part. Original commit by mikee.
  • Bug #664764 - Account setup for Swedish small business Added Swedish chart of accounts for small businesses. Original commit by mikee.
  • Bug #663368 When importing CSV files, the word 'Deposit' appears in Num/Action column
  • Bug #630804 - make check failure in business module
  • Don't install a script that is only used for building and testing. This fixes Secunia Advisory SA42048
  • Bug #663638 - Posting Invoices asks for curency conversion for blank lines
  • Bug #639082 - General Journal report reports an error
  • Bug #662477 - Desktop file not compliant with FreeDesktop spec and GNOME goal Patch by Sébastien Villemot
  • In 2.4.9, the following languages had their translations updated: French, German, Lithuanian .

New in version 2.4.8 (January 27th, 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 version 2.4.6 (May 30th, 2011)

  • Preserve selection around the call to gtk_editable_set_position. This lets us drop the racy gnucash_sheet_select_data_cb, which fixes problems with lost input.
  • Add a gnc_quartz_set_menu call to main_window_new() so that newly created windows get their menus on the mac menu.
  • Fix up the Mac shutdown process to give Gnucash a chance to clean up without spewing critical errors about the main loop already running (because of calling gnc_shutdown in an event handler).
  • Bug #650241: Fix style for aging table in owner reports that has changed (after defining doctype) Prevent inheriting the parent tablestyle for aging table in owner-report.
  • Bug #650757: Fix Easy & footer styles output wrong tags iso preventing HTML 4.01 Transitional validation This patch removes the wrong tags and closes the center tag in the footer and easy stylesheets.
  • Bug #645221: Patch to show the headline as an h3 across all stylesheets The attached patch makes sure that the title fonts set through the options menu behaves consistently across all style sheets.
  • Bug #620123: Patch to make account name a header cell, iso td in trial-balance
  • Bug #648554: SQL backend doesn't correctly save taxable flag on bills.
  • Bug #650163: Fix Technicolor style that outputs wrong tags instead of
  • Bug #650139: Fix missing doctype preventing HTML 4.01 transitional validation Exported reports lack a document type, preventing HTML validation. When exporting this may lead browsers to incorrectly read the reports generated by GnuCash.
  • Bug #650138: Style plain: Fix incorrect tag around preventing HTML 4.01 transitional validation
  • Bug #649992: Let owner-report aging table include due date / post date options in aging. The attached patch patches the owner report to: *Allow a choice between the use of Due Date and Date Posted *Report with the current bucket
  • Bug #649608: Skip non-enabled Scheduled Transactions for Future Txn report
  • Update Slovak translation, copied from the Translation Project.
  • Bug #646729: Create the lockfile with at least read write user permissions
  • Bug #647945: Add sanity check to hopefully fix crash when running custom reports
  • Bug #644897: Correctly link in libgncmod-report-gnome.la to avoid linking against an installed version.
  • Bug #646268: Fix missing GWEN_SYNCIO initialization.
  • Bug #644762: Deprecated __new__() call in function_class.py
  • Bug #647360: Invoice entries in expense voucher are created in old voucher, not in new one. It worked fine for customer invoices, and vendor bills, but not expense vouchers, where the feature was broken all along.
  • Bug #647242: Fix broken averaging for quarter or half-year step size
  • Bug #647316: Fix crash when deleting custom report if no backup file existed. Before deleting the backup file by (delete-file), it must be checked whether the to-be-deleted file exists, otherwise the guile procedure will crash.
  • Fix warning about NULL guid_list in xaccQueryAddAccountGUIDMatch, which caused some total amounts in reports to disappear. Apparently gnc:account-get-trans-type-splits-interval didn't watch out for empty lists of accounts, and the resulting split list somehow was bogus. Now that we check for empty account list, all is fine again. This was broken for some months by now, maybe since r20404?
  • Bug #628342 - Quick open on File menu deleted if failed
  • Bug #629156 Recently Used Filenames incorrectly displayed

New in version 2.4.5 (April 11th, 2011)

  • User-visible changes:
  • [20457] Improve message printed on screen
  • Note last stable version number:
  • Updated translations or translation-related changes
  • [20507] Various spelling fixes in comments and translatable strings.
  • Updated Dutch translation, copied from the translation project.
  • Updated Italian translation.
  • Bugs fixed:
  • [20496] Bug #645518: Partly revert r20378, "Correct memory leaks found with valgrind" The original author (Alex) asked to have this part reverted as it seems to cause the crash explained in the bugreport, but he doesn't have time to investigate this in detail right now.
  • [20481] Bug #645640: Online transfer must not allow to change amount in second window
  • Bug #642176: Add four decimals to CLF (Chilean Unidades de fomento) Oops, I forgot 1 digit
  • Bug #642176: Add four decimals to CLF (Chilean Unidades de fomento) While we could not find a document, which defines the decimals, they are indispensable for the conversion of payments in "real" CLP.
  • Bug #645173 - [PATCH] Configure check uses hardcoded webkit library name Patch by Andy Clayton.
  • Bug #641645 - Support ActivePerl 5.12 for Finance:Quote on Windows
  • Bug #644688: Account edit fails to detect that no changes have been made and marks the account 'dirty'.
  • Other code/build changes
  • [20501] During win32 build, if a component is already installed, print the installation path Original patch by plongstaff.
  • [20491] Fix glade message with unintended whitespaces.
  • [20487]Windows nightly build: fix webserver directory creation hack
  • [20475] Windows build: fix weekly 2.4 build and move log files into separate directory
  • [20461] Windows build: allow reset.sh to remove mingw
  • [20460] Windows build: fix upload code
  • [20456] Some additional Windows nightly build fixes: - restore the original mingw/msys link, even when the build script abort (due to a die command) - only restore the mingw/msys link if it was saved before - weekly builds should be on Monday, not Tuesday - upload tag rebuilds to a directory named 'releases' instead of 'tags'
  • [20455] Build server: automatically create directories on webserver for new branches
  • [20454] Rework the Windows weekly 2.4 build to avoid parallel builds (which would fail)
  • [20452] Adapt the windows build system to deal with swapping mingw installations on one build machine
  • Start the 2.4 stable branch so that trunk is now experimental again
  • Add some convenience getter functions to gncOwner.
  • Whitespace and spelling corrections
  • Make error message on missing more verbose.

New in version 2.4.0 (February 28th, 2011)

  • User-visible changes
  • Update copyright notice dates to include 2010
  • Use proper decimal separator for monetary amounts
  • If you have a parent account with a subaccount whose commodity allows more decimal places in the amount field than the parent account does things don't work right if you open a register for the parent account and all subaccounts. This situation can occur if you have a broker account with subaccounts for the securities held in that broker account. If you open a register for the top account and all subaccounts, it is impossible to enter a transaction to buy or sell a fractional share of the security where there are more digits after the decimal point than the parent account allows. This change fixes this if the subaccount allows no more than six digits after the decimal point.
  • When creating a new style sheet, make sure the name for it is non-empty.
  • Implement (but currently deactivated) auto-completion in the invoice ledger using all entries from the current book. Eventually, this will enable drawing the auto-completion from all entries in the previous invoices (i.e. book-wide), but in order to give the user a good enough feedback during typing we additionally need a quick-fill object over those book-wide entries. Currently, the user cannot see whether the current description would result in an auto-completion from another invoice, and that's not yet enough.
  • Implement auto-completion in the invoice/bill entry ledger.
  • Take a first shot at adding auto-completion in the business ledger, but currently it doesn't do anything yet.
  • Updated translations or translation-related changes
  • Updated POTFILES.in
  • Mark erroneous translation as fuzzy because it doesn't have the correct c-format.
  • Reverse inadvertent mods to po/POTFILES.in in r19904
  • Updated Greek translation provided by Nikos Charonitakis.
  • Updated Japanese translation, copied from the Translation Project.
  • Add "discount" to all glossary files because some languages use different translations in billing terms and invoices. Additional the german translation is added to glossary/de.po. This change does not break the string freeze as it is not user visible.
  • Update German translation. (This includes the 14 new strings which are already there but not yet being used.)
  • Merge German translation with latest pot template. This is merged using msgmerge --no-location de.po gnucash.pot -o de.new.po and we use "--no-location" to make the updates actually readable. (Unfortunately this doesn't prevent the strings from changing ordering anyway. Oh well.)
  • Remove superfluous whitespace at end of string. Incidentally, this way the string already exists and no broken translation results.
  • When extracting the translation strings from the scheme files, sort the scheme files to obtain a stable ordering of the output.
  • Bugs fixed
  • Bug #637346: Adding python-bindings to doxygen documentation Patch by Christoph Holtermann.
  • Bug #637041: Revert r19861 as the patch from bug#635439 causes a crash. The patch can be re-applied after the 2.4.0 release is out, but for now I prefer to defer it until after the release. To be precise, this patch reverts all parts of bug#635439: r19861, r19860, r19854, r19853.
  • Bug #629446: TRY is now called plain Turkish Lira.
  • Bug #454109: Online banking: grey out online actions when there is no online account Patch by Manfred Usselmann: Online actions are disabled for accounts which have no bankcode and account id assigned This fix does not require initialization of the AB_BANKING object.
  • Bug #635926: Lower-case the name of the lock table to avoid confusing Postgres. Also abstract it to a static variable instead of repeating the string everywhere.
  • Bug #635967: Slots didn't correctly read the path semantics stored by 2.3.15 and earlier. Corrected, but note that 2.3.15 and earlier didn't write lists to the database, so users should re-save from XML using 2.3.17 or later.
  • Bug #635355: Partly implement the correct "DTAUS import and send" feature again. Patch by Manfred Usselmann. The main part of the feature is delayed until the string freeze is lifted. This part (without adding strings) implements the infrastructure for sending only the correctly imported transactions to the bank later.
  • Bug #636459: Recursively delete slots contained in slots of type KVP_TYPE_FRAME or KVP_TYPE_LIST.
  • Bug #635859: Strip all trailing '/'es from kvp_slot paths when loading. This changes round-tripping slightly (because the resulting slot key won't have the trailing slash when it's re-saved as xml). It may also change the behavior of the facility using the slot, because the key is changed. So far, the only known instances which trip this bug are import-map-bayes, because descriptions may have '/'es in them (and why shouldn't they). Unfortunately, fixing this right (so that key values can have embedded '/''es and be saved/retrieved from sql databases will require changing the slot architecture in ways that impact the engine. Since we don't have adequate unit tests to be confident of not introducing a regression, I'm applying this instead.
  • Bug #609472: Fix translation of displayed style sheet names in the style sheet editor.
  • Bug #635911 GnuCash crashes out when trying to save-as MySQL Disclaimer: This fix attempt is purely based on the information given in the bug report and code reading. I never could reproduce this bug but the code suggests an unitialized pointer may be the the cause.
  • Bug #635469: Add a (typemap for a) QofQueryParamList typedef. Patch by Matthijs Kooijman: This is a typedef for a GSList, that is used to identify the path from an object to one of its parameters in search queries and sorting. This typedef replaces GSList everywhere where it's applicable. This relieves the need to special case a few functions in the swig bindings and makes the bindings for a bunch of other functions work as well. Note this is (still) only an in typemap, since no useful functions that return a QofQueryParamList are exposed in the bindings right now anyway.
  • Bug #635632: Update existing eguile reports to use new for syntax. Patch by Matthijs Kooijman : This makes use of the new for syntax introduced in the previous commit, making these reports and templates a bit easier to read and modify.
  • Bug #635632: Add custom for loop syntax for eguile templates Patch by Matthijs Kooijman : The built-in for-each loop construct is a bit cumbersome: It always requires an explicit lambda and the list to loop over is the last argument. Especially the latter makes it very hard to read when the lambda is big and multiple for-each'es are nested. For hashes, this prevents the need of the cumbersome hash-fold and slightly better hash-for-each (which still suffers from the same problems as for-each and is not available in guile 1.6). This new syntax allows for three distinct syntaxes: * Looping over a single list: (for a in lst do (display a)) * Looping over multiple lists: (for (a b) in (lsta lstb) do (display (+ a b))) * Looping over a hash: (for key => value in hash do (display (* key value)))
  • Bug #635469: Add bindings for running a qofquery on invoices. This adds a new typedef "GncInvoiceList" with the corresponding typemap, and adds two new functions qof_query_create_for_invoices and qof_query_run_for_invoices, which are trivial wrappers around qof_query_create_for and qof_query_run respectively.
  • Bug #635355: Add public declaration of gnc_info_dialog. Patch by Manfred Usselmann.
  • Bug #635439: Patch to autoset owner in the payment dialog Patch by Matthijs Kooijman
  • Revert "Bug #635439: Patch to autoset owner in the payment dialog" This reverts commit 232ae4064952cb65e9703d61778cb1531d2e4f56.
  • Bug #635439: Fix "Pay invoice" while the invoice dialog is open. Patch by Matthijs Kooijman : If you use "Pay invoice", normally a new payment dialog is opened which is completely filled in. However, when there was already a dialog open, it was reused but only the owner would be filled in. This patch makes sure that the invoice and amount are filled in as well.
  • Bug #635439: Patch to autoset owner in the payment dialog Patch by Matthijs Kooijman : In the payment dialog, set the owner when an invoice is selected Before, you would always need to select an owner manually. If you would just select an invoice (which was possible, since the invoice selection is not disabled when no owner has been selected yet), pressing OK would error out because no owner was selected. This patch makes sure that when an invoice is selected, but no owner is selected yet, the right owner is filled into the owner selection box automatically. This also happens when the wrong owner is selected, which can happen because the invoice autocompletion is not limited to invoices from the selected owner, but always completes all invoices. This could cause weird behaviour: Select an owner, then use completion to select an invoice by another owner and press ok. This would cause the amount for the invoice by the other owner to be charged against the first owner. This patch prevents that by replacing the first owner by the other owner in the dialog. This patch also changes gnc_invoice_set_owner to no longer reset the invoice selection to NULL. Instead, this is now handled by
  • Other code/build changes
  • Update configure.ac to 2.4.0 Update gnucash-bin.c to indicate stable version is 2.4.0, next stable version 2.6 Here we go...
  • Add gnc-backend-dbi-priv.h to list of header files so that 'make distcheck' passes
  • Fixed date problem in MySql backend
  • Removed accidentally created directory.
  • Add enumeration of indexes in sql backends. This is a first step to rewriting databases in a safe way. Indexes are named entities in sql databases and so need to be renamed along with the tables before creating and populating a new set. This change also introduces a unit test of the new enumeration, and that test has to be able to see data structures which are private to gnc-backend-dbi.c, so those data structures are moved to a new file, gnc-backend-dbi-priv.h, which both gnc-backend-dbi.c and tests/test-stuff.c can include.
  • Add debug helper function qofeventid_to_string.
  • Support for GncCommodityNamespace, better support for GncCommodity, and example enhancements. Patch supplied my Mark Jenkins.
  • Changes to example Script to include added namespace functionality This patch changes the example script to reflect the capability of reading all namespaces. Patch provided by Christoph Holtermann.
  • Cutecash: Add generation of dummy gnc-version.h file.
  • Add missing newline at end of file
  • Replace more obsolete #define'd function names by their current names.
  • Add gitignore for backup files from make check.
  • Replace more obsolete #define'd function names by their current names.
  • Make "make check" work when run from "make distcheck".
  • Replace obsolete #defines by the current function names.
  • Follow-up to r19928: Include gnc-version.h with directory path to avoid picking the wrong file.
  • Improve the cached quickfill for GncEntry description lines of r19941.
  • Add APIs to get/set a flag signifying that a transaction is a book-closing txn. This is necessary for Bug #570042 but doesn't completely solve it until the reports are updated to use the new API. This is backwards-compatible with the slot data inserted by the book closing since 2010-03-02.
  • Adds checking of gnc_commodity_namespace in glists In src/base-typemaps.i check for return type gnc_commodity_namespace is added so that it is returned instead of gnc_type_monetary. Thanks to Christoph Holtermann for the patch.
  • Move price_database_example.py to the correct place and remove incorrect path/file
  • Change indent to 4 sp
  • Implement prerequisites for full auto-completion in the entry ledger. Added a cached quickfill for GncEntry description lines. Extend QuickFillCell interface to be able to use a common cached quickfill.
  • Remove doubled include files. (Also, QuickFill.h doesn't depend on gdk.h)
  • Add messages to backend errors, ensuring that qof_session_backend_get_message() will actually get a useful message, or that there will be a descriptive warning immediately before in the trace file.
  • Move gnc-version.h and gnc-svninfo.h from gnome-utils to core-utils.
  • If the build directory is not the source directory and the source directory is read only, the build fails. Fix by only making guile-strings.c if building from SVN.
  • Get rid of the rest of the gnc-prices man page, r19921 is incomplete
  • Remove variable names that conflict with Python keywords. Relevent when using SWIG autodoc feature for python bindings.
  • Add ature("autodoc", "1"); to gnucash_core.i to pass C documentation through to python interface.
  • New example script for prices dababase. Thanks to Christoph Holtermann for contributing to this.
  • Remove obsolete gnc-prices man page
  • Add Gnucash svn version to sql versions table.
  • Insert missing space
  • Re-enable -Werror in Makefile.am and remove ature("autodoc", "1"); from gnucash_core.i
  • Add commodity price functions to bindings. See Bug 636457 for more details.
  • Add PriceList to typemap for Python bindings
  • Patch by Matthijs Kooijman. In r19863, some qofquery bindings were added. For those to compile, business-core.i now includes qofquery.h. However, this causes the bindings for qofquery.h to be generated twice: Once through engine.i and once through business-core.i. The latter generated broken versions of the bindings, breaking (at least) the receivable aging report. This commit changes the %include to an %import, so the new bindings still compile but the query bindings don't get generated twice.
  • Re-indentation of source code. This re-indentation was done using astyle-1.24 using the following options: astyle --indent=spaces=4 --brackets=break --pad-oper --pad-header --suffix=none
  • Make prototype for gnc_entry_ledger_get_entry public. Add documentation.
  • Fix GtkSpinButton with page-size deprecated warning in gnucash.trace

New in version 2.3.17 Unstable (November 23rd, 2010)

  • Bugs fixed:
  • Bug #589954: No blank split after creating a new account "on the fly" while editing a transaction. Cause was that gnc_split_register_get_account_by_name() turned of "full_refresh" if the account didn't already exist and turned it back on only if the name of the account actually created in the new account dialog box differed from the one originally entered in the transaction. Since "full_refresh" isn't manipulated much, that effectively shut down the ledger for further editing. Probably not what the original author intended!
  • Bug #634906 - Re-enable splash screen preference option
  • Bug #633550 - Help and concepts guide are missing from the prebuilt binary (because xsltproc chokes on undefined entities)
  • Bug #609581 - Gnucash 2.3.8 offers to create db and then fails to do so
  • Bug 628409: SQL coerces identifiers to lowercase, but postgres's C interface is case sensitive.
  • Bug 592643: Set standard_conforming_strings on postgresql databases.
  • Bug 634964: Crash in pgsql_error_fn. The dbi_conn isn't set if the server refuses the connection, so protect dereferences from null pointers.
  • Bug #634357 followup: convert New and Open submenus into plain menus
  • Bug #634812: Improve backend error reporting for Session begin Patch by Mike E: The current error feedback to a python scrpt/user looks something like: call to begin resulted in the following errors, (7,) This change in gnucash_core.py makes the feedback similar to: call to begin resulted in the following errors, ERR_BACKEND_LOCKED This is less cryptic and aid debugging of user python scripts. My only issue though is whether this would break existing user scripts where checking of this error code is used for flow control. Although since the ERR_ codes are imported with gnucash_core_c it *should* have no effect.
  • Bug #634357: Further menu ui cleanup: Reserve File New/Open menu only the file-related items anymore. The menu items under "File" should relate only to the file (database), not to anything within a file. The open/new for all other things (budget, invoice, account) have been moved somewhere else.
  • Minor fix of r19802, bug#634673: config.h is in builddir, not srcdir; add last .i file dependency.
  • Bug 634673: Add dependency information & fix typo in python-bindings Makefile.
  • Bug 634392: New sql database raises clobber warning A fairly extensive change, because I changed may_clobber from a global qof function (which passed through qofbackend and fetched up in the actual backends) to a local static in the individual backends which raise a new qof_backend_error, QOF_ABCKEND_STORE_EXISTS. This was necessary to reorder the existence check before the lock, because with the sql backends, locking creates the database... which then would return may_clobber as true, even though it really wasn't. New parameter "force" added to session_begin() functions, and "create_if_nonexistant" is renamed to simply "create". The reason for the latter is that the file/database is created regardless of whether it already exists; that's what the clobber check is about. The new "force" parameter is set to true the second time through, after the user has responded to the clobber dialog indicating that the data should be destroyed. Many of the extraneous changes are just adding the new parameter to the session_begin() calls. gnc-file changes to handle the error in favor of calling the no-longer-existing qof_check_may_clobber_data() call after session_begin(). Two minor changes to gnc_file_do_save_as: gnc_add_history and gnc_hook_run are now called on new_session instead of old_session; this ensures that the new file/database is used at the next startup of gnucash. Second, the filename/url is filtered before displaying the "may_clobber" dialog box to prevent displaying plaintext database passwords.
  • Bug #634165: Better dealing with a locked database in python Patch by Christoph Holtermann: For the second enhancement proposal i have attached a simple patch which adds the argument ignore_lock to Session.__init__() which is passed through to qof_session_begin. This patch extends the function Session.__init__() with ignore_lock
  • Bug #634357: Move the Budget Open/New menu items to Actions -> Budget -> New Budget / Open Budget because they have nothing to do with the file menu.
  • Bug 634334: Check that subdir argument really is one of the two cases we can handle. Wrap fileURLWithPath in @try/@catch so that we don't crash when it throws. Free bonus fix: If "en" is the language and doesn't have a translation, force the C locale.
  • Bug 634334: Crash on selecting New User Tutorial from new user dialog.
  • Bug #633942: Fix "nil" column header on single account report When I open a report window (barchart in the example) and select only one account, I get a column header saying "nil" near the only data column. Someone accidentally wrote "nil" instead of the empty list '().
  • Bug #634252: Re-enable the splash screen if the user selects open anyway If during startup a file or database turns out to beeing locked the user is presented a dialog with the options to open anyway, create a new file or abort. This dialog, however, closes the splash screen. This may cause confusion, because file loading and report generation may still take quite some time.
  • Updated translations or translation-related changes
  • Updated Italian Translation.
  • Updated dutch translation, copied from Translation Project
  • Minor update of German translation. In the "bills due" dialog we use Bill -> Rechnung, not Lieferantenrechnung.
  • Other user-visible changes:
  • Fix crash when using the function "Import DTAUS and send". The actual function is still implemented, though.
  • Other code/build changes:
  • Correct patch submission instructions to direct patches to bugzilla rather than the mailing list.
  • Splash screen: minor code cleanup
  • Fix error in r19822 which prevented creation of postgres databases.
  • Fix python samples to work with reordered Session.__init__() args
  • Fixed aqbanking transaction type on importing DTAUS online transfers. Patch by Manfred Usselmann.
  • Disable Italian docs generation I just accidentally enabled. It wasn't enabled before the xsltproc issue popped up, so it shouldn't be enabled now.
  • Reactivate English docs generation in Windows build
  • When preparing imported DTAUS jobs, check their availability as well.
  • Fix misplaced comment in gnome-utls/gnome-file.c from 19798
  • Make arguments to Session.__init__() have the same order as to qof_session_begin() to reduce potential confusion.
  • Fix typo in AUTHORS, as pointed out by Mike himself.
  • Add Mike Evans to AUTHORS as he has been providing patches regularly.
  • Win32 build: Update versions of libktoblzcheck, gwenhywfar4.
  • Add force_new parameter to GnuCashCoreClass.__init__, reflecting change to qof_session_begin() in r19798
  • Increase gnutls version to 2.8.6 (might fix bug#632158)

New in version 2.3.16 Unstable (November 8th, 2010)

  • Bugs fixed
  • Bug 632346: Fixed test failures in dbi
  • Bugs 632346 & 632166: Fixup transaction currency scrubbing. Biggest problem was that almost well-formed transactions missing a currency element wouldn't import correctly because the FindCommonCurrencies function only used the old currency values, ignoring the commodity values in the splits' accounts. A new function, xaccFindCommonCurrencies(), looks at those first and then calls xaccFindOldCommonCurrencies only if it fails. That addresses the cause of the import failure reported in 632166 and a big chunk of the warning messages complained about in 632346. A secondary problem, also addressed in this change, was that the last block in xaccTransScrubCurrencyFromSplits always replaced the "amount" with the "value". This is the right thing to do if the commodity for the split account is a currency, but if it isn't, the replacement should be reversed.
  • Bug 629238: Part 2: Extend locking table to SQLite3.
  • Bug 629238: Part 1: Create a lock table for postgresql and mysql backends.
  • Bug 627831: Implements recursion into storing and retrieving nested slot frames and lists.
  • Bug #630770 - Crash when connection lost using db
  • Bug #629524: Fix redundant string.
  • Bug 611077: Removed warnings, webkit handles jumps to anchors internally
  • Bug #502853 - Incorrent tax rounding in invoice (rounding of .5) This patch changes the default rounding behaviour in GnuCash from "Round to nearest even" to "Round away to infinity". See the bugreport for more details on these different rounding methods.
  • Bug #593479 - Account file being deleted because of erroneous checking for lock file. Replaces the pointer arithmetics with string functions and regexes where possible to avoid typical pointer pitfalls.
  • Bug 3786338. Change r19243 deleted a call to xaccTransBeginEdit which causes a crash replaying a log that deletes an existing transaction. Log replay should now do exactly one xaccTransBeginEdit/xaccTransCommitEdit call per logged transaction.
  • Bug 632166: Restore the old session if "save as" fails. Save as would make a new session the "current session" and attempt to save it. If it failed, the new session (with an invalid database) would remain the current session -- and would be marked clean. An XML-only file-save-as dialog would be presented with no instructions about what was going on. With this change, if the "save as" fails, the old session is restored, still marked unsaved. This should be much less confusing to users and more likely to avoid data loss. Yes, there's some duplicated code now, because do_save_as doesn't call save. That's because save did some extra things that do_save_as doesn't need and it didn't allow do_save_as to properly correct the session. This could be refactored into some tiny functions, but that seems a bit excessive to me.
  • Bug 632166: gnc_backend_sql_sync_all: Commit only if all operations were successful; otherwise roll back.
  • Bug 632166: A Better fix that doesn't break string freeze or introduce a Gtk GUI dependency into the backend.
  • Bug 632166: Notify user when something goes wrong with a transaction save.
  • Bug 611077: Warn instead of assert about gtk_html_jump_to_anchor not being implemented in webkit. Note, however, that Webkit seems to take care of this on its own, so even the warning may be unnecessary.
  • Fix #630286 - Please add handling code for GDate kvp values in SQL, too If slots table does not include gdate field, it will be added and all current slots will have a NULL value. Tested on sqlite3 and mysql. Tested using the example gnucash file referenced from the bug report. When saved from XML -> sqlite3 -> XML, some timestamps changed their timezone because of a change of timezone (I'm in North America). I guess this is OK.
  • Bug #631058: Add future date period choices to be available in the date options Patch by Chris Leach: This patch provides date utilities to calculate future dates. This allows easy selection of common future periods. cstim adds: This patch adds new strings, but they are not used anywhere so far, i.e. they will not be user-visible. Hence, I agree those scheme functions may be useful for external report writers and for this reason they are already added. Note: The original submission would have added those options to the standard relative-date chooser report option, but I (cstim) do not support adding those extra option for all reports as standard setting. Hence, the usage of this additional choices has to be added by the report writer explicitly.
  • Bug #593479: Ensure not to accidentally delete our main account file. Original patch by Tim Retout who writes: strptime is passed (name + pathlen + 1) as the string to search. However, when looking at the main account file, strlen(name) == pathlen, so strptime is looking at the point just past the end of name. Sometimes this will be parseable by strptime, and this leads to the account file being unlinked.
  • Bug #554396: Implement a partial TXF output for capital gains
  • Bug #620663: Fix French spelling mistake in preferences window
  • Bug #629641: Fixes WARN messages. Bug in gncIDSearch.c causes "WARN [qof_class_get_parameter()] no object of type string" to be emitted to error log. Currently only affects Python bindings; InvoiceLookupByID(ID_STRING).
  • Bug #118391: Put isocodes in README.dependencies to inform packet maintainers Additional changes in that file: 1. Link to more up to date http://wiki.gnucash.org/wiki/Dependencies 2. Introduce Structure: required, alternatives, optional, at runtime suggested 3. Add webkit
  • Bug #628960 - Column width unchanged after shortening translation string
  • Bug #628865 - Error dialog displays password to MySql database when fails to connect
  • Fix bug 573702. When reading an old data file that doesn't have a template root account for scheduled transactions invent one.
  • Bug #137017: Save the transaction date as a GDate directly, additionally. This way, the date that was entered by the user is now at least saved in the kvp and can later be retrieved in case we really fix the timezone dependence of our txn's dates.
  • Bug #370331: Store the numeric values of SX in their kvp as well, if possible. For SX whose values do not depend on any variables, we now store the numeric value as well. This way, we get rid of locale-dependent parsing errors due to changing decimal separators in changing locales - at least for SX which do not use variables.
  • Bug #616697 - string "Payment rec'd..." should be more cleared.
  • Bug #626681 - date fields missing in GUI, lost in change from 2.2.9 to 2.3.14
  • o Bug #588414 - Got "Entry Point Not Found" errors starting GnuCash, but ran OK The problem is caused by leftover files from a previous install. The solution is to uninstall GnuCash before installing a new version in such cases. This commit adds a compatibility test and uninstall step to the windows installer that will automatically uninstall the previous gnucash release if it is considered 'incompatible' with the one to be installed. The user will be warned of this, so he can decide to cancel the installation if he doesn't like the idea of uninstalling his working GnuCash installation. Currently, versions are considered 'incompatible' if their major or minor version components are different, so 2.3.x is incompatible with 2.2.x and will trigger an uninstall. Likewise, a 2.4.x install is incompatible with a 2.3.x and will trigger an uninstall. This is a nice way to remove all testing 'cruft' from the system once the new release comes out. Note that in the future installing 2.3.16+ over 2.4.x will also trigger the uninstall, which is a good thing IMO. An older release can't know about changes made in a newer one, so it's safer to first uninstall the newer one to avoid leftover files.
  • Bug #504954 - Wrong calculation of TAX
  • [Bug 560052] Force use of internal strptime to work around bug in the Leopard libc.
  • Bug #627325 - Update Subversion URL, patch by Yasuaki Taniguchi
  • Bug #625193: Move newly introduced search-by-id functions into src/engine. Patch by Mike Evans.
  • update po/de.po after r19435 msgmerge 1. 2 dirty and 2 new strings 2. partial spell verification entity -> Entität small typos
  • Updated translations or translation-related changes
  • Updated Latvian translation by Valdis Vitolinš.
  • Updated British English translation by Mike Evans.
  • Updated Bulgarian glossary by Rosi Dimova.
  • Updated Bulgarian translation by Rosi Dimova.
  • Updated Latvian translation by Valdis Vitolinš.
  • Minor update of German translation. "xy anlegen" -> "Neue xy" bill -> "Lieferantenrechnung" to distinguish from invoice -> "Rechnung".
  • Updated Turkish translation by Seyfi Duyan.
  • Minor update of German translation. Kontenbaum (urgh) -> Kontenplan Kontenrahmen -> Kontenplan
  • Minor update of German translation
  • Updated Turkish translation by Seyfi Duyan
  • Updated Dutch translation, copied from the Translation Project.
  • Update German translation.
  • Updated Italian translation.
  • Updated Italian translation.po/it.po
  • Updated Dutch translation copied from translation project
  • Fix 2 nonfatal syntax errors in german SKR49 1 missing Namespace 1 forgotten replacing of the last closing tag This is now also updated in http://wiki.gnucash.org/wiki/AccountHierarchyTemplate
  • Fix erroneous translation of strings with context prefix. The msgstr must not contain the prefix anymore. http://lists.gnucash.org/pipermail/gnucash-devel/2010-September/029481.html
  • Minor update of German translation
  • Updated Polish translations by Radzislaw Galler.
  • Updated Polish translations by Radzislaw Galler.
  • Updates for German account templates, by Frank H. Ellenberger. He writes: Im beiliegenden Patch habe ich ziemlich mechanisch (grep, recode, sed) die folgenden Anpassungen vorgenommen: * encoding="ISO-8859-1" -> utf-8 * USD -> EUR, respektive CHF ** dies betraf auch de_DE/*[brokerage|full]* *: interessanterweise wandelt der Druide die aber anscheinend in die default currency um. * Passiva -> Fremdkapital
  • Updated Japanese translation, copied from TP.
  • Fix disambiguation prefix translation errors, by Valdis Vitolinš
  • Updated Italian translation.
  • I18n: Add German translation for new installer texts. Suggested by Frank H. Ellenberger and edited by myself.
  • Update German translation.
  • Merge most recent pot template into all language po files.
  • Updated Japanese translation for win32 installer wizard by Yasuaki Taniguchi.
  • Added Japanese translation for win32 installer wizard by Yasuaki Taniguchi.
  • Updated Latvian translation for win32 installer wizard by Valdis Vitolinš.
  • Updated Latvian translation for the Windows installer, patch by Valdis Vitolinš
  • Updated Italian translation for win32 installer wizard.
  • Updated Japanese translation, copied from the Translation Project.
  • Updates for Latvian po file, patch by Valdis Vitolinš.
  • Translatable string fixes by Yasuaki Taniguchi One is on the price editor. Namespace: is not marked translatable. Another is about a tip for account editor window. The label "Edit->Income tax Options" was changed to "Edit->Tax Report Options" but an old msgid remains on tip. The last is on the Tax Table. The label "_Edit" is not marked translatable but it should be.
  • Replace misleading "Passiva" in accounts/de_DE/* by "Fremdkapital" with description "alle Verbindlichkeiten" Patch by Frank H. Ellenberger.
  • Remove file locations from de.po file by running msgcat --no-location de.po > tmp ; mv tmp de.po This way, the text diff of translation updates suddenly becomes readable.
  • Fixed a string not translatable.
  • I18n: Replace untranslatable sub-strings by the correct full strings. The implementation is a hacky workaround, but at least better than having weird translations as in the current state. Note: Even though new strings are introduced, they are not yet used in order not to break the string freeze here. The new strings need to be activated once the 2.4.0 string freeze is lifted.
  • Updated Dutch translation, copied from the Translation Project.
  • Updated Latvian translation of business account chart by Valdis Vitolinš.
  • Updated Latvian translation by Valdis Vitolinš.
  • correct syntax error in po/glossary/de.po " must be quoted in strings.
  • Other user-visible changes
  • Fix error in dense-cal widget where the last occurrence of a SX wasn't displayed.
  • Really fix error in sx_get_num_occur for SX which are limited by num_occur. Follow-up to r19757 which was incomplete. Hopefully I now really got everything.
  • Fix error in sx_get_num_occur for SX which are limited by num_occur. The last occurrence wasn't counted because it was still valid but turned num_occur_rem to zero, hence the counting stopped one too early.
  • Revised handling of obsolete security elements, made log messages better. Accounts with security elements would only use the security to update the commodity if there wasn't a commodity; however, the files in the tests had accounts which had a security and a commodity, where the commodity was a currency. That's wrong. so now if the commodity is a currency, the security will overwrite it. Added the account name and element name to the log message to assist in troubleshooting, should that be needed.
  • Preferences window improvements: * Accounting Period: reorder options so the dates are on top * Business: reorder options to clarify which options are general and which apply to invoices or bills only * Business: remove obscure "Number of lines" option * Register defaults: remove obscure "Number of lines" option * General: remove "Show splash screen" option While removing the "Number of lines" options, I have also removed most of the code that used this option. The number of lines was used to calculate the default window size in various places in the code. The code now simply uses sensible defaults for that.
  • Suspend GUI refresh while replaying a log file to avoid flicker and speed it up dramatically.
  • File dialog - make enter activate the default action for mysql/pgsql selection. This was already the case in the standard file selector. This change makes the two selection methods more consistent.
  • Other code/build changes
  • Add 'test-dbi-business' to svn:ignore
  • Add test-dbi-business-stuff.h to EXTRA_DIST so "make distcheck" passes
  • Fix the errors, reduce the noise when testing the dbi backend * Check for a null gdate before attempting to make it a string. Fixes a bunch of CRIT errors. * Comment out the log debug setting in dbi. It's stable enough that it shouldn't be needed routinely. It can, of course, be enabled from the command line. * Add a notice to ignore the warnings about there being no lock on the database when session 3 is closed. Session 3 has to be run with ignore locking or it won't run at all.
  • Fix business-core tests so that all pass
  • Updated tests matching the xml backend as of 2011-11-02
  • Updated test files complying with the xml schema as of 2011-11-02
  • Minor fixups to dbi backend: * dbi_conn_error_flag is deprecated, replace with dbi_conn_error (Thanks, Christian). * Switch from OS-determined HOST_NAME_MAX to locally defined GNC_HOSTNAME_MAX so that the field is always 255 regardless of what OS creates it. * Use G_OS_WIN32 instead of naked WIN32
  • Win32 build: Update ktoblzcheck version number.
  • Some whitespace cleanups
  • Fix gtk warnings when erroneously setting the fixed-width property to zero.
  • INFO message to trace log if a table is automatically upgraded to newer version.
  • Update POTFILES.in with recent file addition.
  • Fix minor typo in error message.
  • Remove gnc_book_mark_saved from gnc_sql_save_book. It's a bit premature to mark the book as saved when we haven't yet saved its contents.
  • qoflog.h: No such macro as G_LOG_LEVEL_FATAL
  • Fix include files. Include files now only include other include files if symbols from the other files are needed by this one.
  • Remove lbgncmod-backend-xml as an additional library in business/business-core/test/Makefile.am. libgncmod-backend-xml.so is a loadable module, not a shared library, and it shouldn't be dynamically linked. While this will do no harm on Linux, it fails on OSX/Darwin.
  • Fix misplaced quote in backend/dbi/test/Makefile.am, broke dbi testing.
  • Rename old gnc_book_get_commodity_table into the newer gnc_commodity_table_get_table.
  • Spelling fixes in comments.
  • Replace all occurrences of the old gnc_book_get_pricedb with the newer gnc_pricedb_get_db
  • Partly revert r19550, "Bug #370331: Store the numeric values of SX..." This caused the numbers in the "SX from txn" to appear as "220/100" ratios, which we do not want.
  • Rework two nearly identical fuctions into a common function with parameters. Keep the old function names as convenience wrappers around the new function.
  • Remove obsolete example files: also remove them from the makefile.
  • Remove incompatible example files (X-Account) and update the README file
  • Commit missed file for gnc-fq-* location fix.
  • Make qof_query_run_subquery() available to scheme as well, and also the gnc_numeric options. Needed to remove an unimplemented function from header.
  • Replace some renamed functions by their real new names, removing the annoying #defines.
  • Make sure the right gnc-fq-* scripts are used. With the original configuration, whatever script was found first on the path was used. When testing development versions, this caused the also installed stable version to be used as it happened to appear first on the path.
  • Separate load paths for shared libraries and gnucash loadable modules. The former should be found on (DY)LD_LIBRARY_PATH, the latter on GNC_MODULE_PATH. These paths shouldn't overlap as that needlessly confuses things.
  • Make the INVOICE-BILLTO query predicate available to scheme also.
  • Fix erroneous extra package that I forgot to remove in r19641. It doesn't have to be reverted because libjpeg-7 shouldn't be needed with a clean webkit rebuild anyway.
  • Revert r19576, r19590, r19593, r19601: "Update gtk versions..." It's been 3 weeks without a working windows build. Apparently this has to wait until we have an updated webkit again. Revert this back once we have a working webkit with gtk-2.20.
  • Fix typos in comments.
  • Re-indentation of source code. This re-indentation was done using astyle-1.24 using the following options: astyle --indent=spaces=4 --brackets=break --pad-oper --pad-header --suffix=none
  • Add wrapper for obtaining a list of business objects as list of owners, and add SWIG wrappers so that scheme can use it.
  • Add a function gncBusinessGetList() that existed previously until r6680 so that a list of all customers can be obtained.
  • Decrease number of test iterations in old engine tests - they take just way too long otherwise. Also, nobody can actually give any reason as for why a higher number of iterations would really cover more of our test cases. My suspicion is that 2-3 iterations would be sufficient anyway, and only more clever test case construction would give a larger test coverage.
  • Add word wrapping to very long label in dialog-tax-info
  • Corrected a problem with c-format attribute.
  • Remove leading character N from tax code, but only if it is there, and remove leading blank character when no tax code.
  • Add kvp_frame_set_gdate() function
  • Win32 build: Temporarily disable the english (C) help compiling because it crashes the hhc.exe compiler.
  • Fix use of accelerator for a string.
  • Fix use of accelerators for some strings.
  • Win32 build: Needs libjpeg-7 in dist as well.
  • Win32 build: The existing webkit binary needs libjpeg-7, so we install that one, too.
  • Enclose book kvp manipulation in begin/commit_edit in aqbanking plugin.
  • Win32 build: Is running again. Some debug output of r19595 can be removed again.
  • Win32 build: Fix libxslt installation. Improve its calling arguments. Download inno before processing the docs (if the latter fails, we at least have inno).
  • Fix typo in osx_accel_map, caused error in Accounts page Actions>Transfer accelerator
  • Win32 build: Switch back gettext to 0.17 because 0.18 require libc++ which we don't want to have.
  • Win32 build: xsltproc needs its suitable iconv and zlib, so install it there.
  • Win32 build: Fix typo
  • Win32: Fix missing gettext-tools (is packaged in gettext-tools-dev)
  • Fix addition of gnc_numeric that was wrong in r19511.
  • Revert to previous version for erroneous commit.
  • add "isocodes" to reset directory
  • Win32: Fix function attributes when using gwenhywfar-4.
  • Win32 build: Remove installation directory before installing the new version. Require exact gwen/aqbanking version.
  • Win32: Try to fix the nightly build errors. (Directory went away?)
  • Win32: Fix checking for goffice installation
  • Win32 build: Update gtk to 2.20; let pkg-config check for the versions, hence triggering the update automatically.
  • Win32 build: Add version number checks for gtk and gconf so that updating them should work more easily.
  • Win32 build: Remove commented-out gtkhtml references.
  • Win32 build: Set gwen/aqbanking version numbers in defaults.sh.
  • Revert r19475. That revision fixed one rounding error, but introduced another one.
  • Add missing header, issue detected via failing make distcheck
  • Fix invalid po file header
  • Eliminate *-vicinity functions from e-guile reports.
  • Fix typo in comment
  • Add some disabled testing code that uses the stock gwenhywfar-gtk2 gui for online banking.
  • De-activate aqbanking5 by default again because it requires gtk-2.18 or higher, which we don't have. Sigh.
  • Fix Stock Split Druid.
  • Add getter function for the date in a datecell as a GDate.
  • Win32: Add gtk's cflags to gwenhywfar configure.
  • Relax configure test for svnversion of BUILDING_FROM_SVN was set beforehand. Helpful when building from git.
  • Fix counting of occurrence number w.r.t. the first valid date in the SX state.
  • Clarify Derek's code to be licensed "GPL v2 or later" as he has confirmed in private email. All of his other code has been licensed this way all along anyway. After this change, all source code files are licensed under both GPL version 2 and GPL version 3, which gives us enough flexibility in case any requirements might switch to GPL v3-only. But currently we are for sure both.
  • Spelling fixes in comments
  • Win32: Add gtk include path to gwenhywfar configure.
  • Win32: Add pkg-config version check for aqbanking so that the new version is installed without removing the old one manually.
  • Updated accounts chart by Seyfi Duyan.
  • Win32: Update aqbanking packages. Enable building with aqbanking5. In r19532 I accidentally already removed the Qt DLLs from the installer. Of course those can only be removed if indeed aqbanking5 is used, otherwise they must still be in the installer.
  • Add newly introduced gconf parameter in the default schema.
  • some bitrot in python bindings examples/tests, patch by Daniele Varrazzo
  • Remove aqbanking2 from windows build scripts. Add optional aqbanking5 instead, which works without QT.
  • Add scheme wrapper for SX cashflow calculation, including a typemap for the resulting GHashTable.
  • Add scheme/swig typemap for GDate.
  • Spelling correction in comment.
  • Consolidate accelerator map loading for OSX with the others. Accelerator maps can't be modified interactively in OSX so there's no point to reloading the saved map.
  • GnuCash on Windows is built with webkit, no need to install gtkhtml
  • Cleanup whitespace
  • Add vendor search to python bindings and refactors files gncIDSearch.c/h with vendor search. Patch by Mike Evans.
  • Remove obsolete file from distribution list
  • Make GnuCash more runtime relocatable by using dynamic paths in the environment file.
  • Restored changes of r19477 inadvertently reverted in r19515
  • Relicense code to GNU GPL v2 or later.
  • Update binreloc to use the free functions for bundle id and resource path
  • Windows build: strip the .la files in their new location
  • Windows version: * reduce footprint by not packaging unused files * move gnc-mod required files to bin * remove libdir from the PATH
  • Windows version: remove obsolete and duplicate parameters from the environment file
  • Implement the evaluation of SX cashflow.
  • More const correctness and refactoring in gnc-sx-instance-model.c.
  • Remove GNC_STANDARD_REPORTS_DIR from gnucash launcher as well.
  • Update man page following the recent removal of command line options.
  • Update license after Josh Sled's relicensing of his code under GPL v2 and/or v3. He wrote to gnucash-devel on 2010-08-28: Much of the last batch code I contributed to gnucash was licensed without the "or any later version" clause of the GPL boilerplate, and thus specifically and only under version 2 of the GPL. I hereby extend that to version 2 and/or version 3. Any contribution I've made to gnucash which was under the GPLv2 only may be considered to be under both v2 and v3.
  • I18n: Fix last remaining user-visible mention of the abbreviation "SX". This should have never appeared in a user message. However, in order not to make this single string untranslated, we add the correct form but don't use it yet so that it can be translated, and we will be using it once 2.4.0 is out and the string freeze lifted.
  • Calculate standard-reports dir internally instead of reading it from the environment. This is a step to make gnucash more run-time relocatable.
  • Readd LD_LIBRARY_PATH to environment to make sure Guile loads the proper shared libraries when multiple installations of GnuCash exist (like stable and devel version on one system).
  • Remove the config-path and share-path command line options. The values set on the command line were never used.
  • Some more uses of PACKAGE_NAME instead of "GnuCash"
  • Fix some obsolete uses of gnucash-bin.
  • Refactoring: replace all GNC_RND_* and GNC_DENOM_* occurences with their GNC_HOW_RND_* and GNC_HOW_DENOM_* equivalents And then remove the deprecated definitions.
  • Add functions to calculate the cash-flow numbers that will be generated by a Scheduled Transaction. Unfinished, though.
  • Add aqbanking5 extensions of GWEN_GUI object. We need to locally store a reference to that particular GWEN_GUI object that was used in Extend because we have more than one such object in use inside gnucash (currently). If accidentally the wrong one would be used in Unextend, a crash occurs.
  • Fix erroneous place of "Bildung" account in hierarchy: Was moved to top-level due to double parent tag.
  • Add new function gnc_sx_get_num_occur_daterange and unittests for this in test-sx.c.
  • And more const-correctnes in SchedXaction.h
  • Make sx-instance-model more const-correct. Improve documentation. Fix minor memory leak in gnc_sx_get_current_instances(void) - was not free'ing the GDate of now.
  • Impove const-correctness of SchedXaction.h functions; improve documentation. Also, replace "void *" by pointers to the actual type.
  • Unify label with src/gnome/gnc-plugin-page-register.c:379.
  • Move business-reports to the reports module.
  • Automatically map pre-2.3.15 report option names to their new 2.3.15 equivalents. This will ensure that users won't lose the settings they stored in saved reports and open report windows when switching from 2.2.x to 2.4. Note that this only works in one direction, from 2.2.x to 2.4. If a user switches back to 2.2.x, the open report windows will lose many settings, almost resetting them to their default state. Saved reports won't have this problem as they are copied to a new file during the migration. In detail: For open reports: pre-2.3.15 -> 2.3.15+ : options for open reports will be migrated 2.3.15+ -> pre-2.3.15 : options for open reports will be migrated For saved reports: 2.2.x -> 2.3.15+ : all options will be migrated, if saved-reports-2.4 does not yet exist pre-2.3.15 -> 2.3.15+ : options for saved reports won't be migrated but reports continue to work. It would be best to save the reports again, but my scheme-fu is not good enough to let the code do that automatically. Alternatively users should remove the file saved-reports-2.4 to recreate it on the next run, based on saved-reports-2.0. 2.3.15+ -> 2.2.x : options are unaffected, sine 2.2.x and 2.15 use different saved reports files 2.3.15+ -> pre-2.3.15 : reports saved in 2.3.15 will lose their options, older reports are unaffected. But returning to 2.3.15+, the options will continue to work.
  • Aqbanking: Enable gwengui-gtk2 implementation and fix setup wizard. Setup wizard was missing OnlineInit/OnlineFini calls around it; with them and the newest gwenhywfar, the setup wizard is now working again in a gtk2 implementation.
  • Add lookup of linker flags of libgwenhyfar-gui-gtk2. It is still disabled until more testing has been done, though.
  • Add instantiation of gwengui-gtk2 object in gnucash, which enables the setup wizard again, but it doesn't fully work yet. In particular, a quick test runs into significant UI work which is still needed, and also occasional crashes might occur. Hence, the gwengui-gtk2 parts have to be enabled manually by un-commenting USING_GWENHYWFAR_GTK2_GUI.
  • Minor simplification of aqbanking version number check.
  • Check for upgrading an older aqbanking configuration to its current version. This way, an older configuration is now updated automatically. Patch by Bill Nottingham, confirmed by Martin Preuss, adapted to aqbanking5 by myself.

New in version 2.3.15 Unstable (September 21st, 2010)

  • Bugs fixed:
  • Bug #626459: Change Transaction Report default account selection to none I think in the specific case of the "Transaction Report" this is the better choice. The error message will be clear enough ("No accounts selected. Click here to Edit report options"), and it will probably meet the user expectation that some account needs to be selected anyway before something can be seen.
  • Bug #625193: Added 'search by ID' in python binding for invoices, customers and bills. Patch by Mike E and Mark Jenkins: When creating or appending to invoices, customers and bills, searching by ID is likely more useful than by GUID. I've added this functionality to the Python bindings. Search by ID using the python code: tmp = gnucash.gnucash_core_c.search_invoice_on_id(ID,book.instance) if tmp: invoice = gnucash.gnucash_business.Invoice(instance=tmp) Use the invoice object as in sample_scripts/simple_invoice_insert.py I support this patch, but I've made a few improvments of my own. I switched up the arguments in search_customer_on_id, search_invoice_on_id, search_bill_on_id to have Book first and ID second. The reason for this was to make these functions more consistent with the other functions where a search is done through a book on a particular attribute. Also added some specific python bindings support to allow this to be used as methods of Book: Book.CustomerLookupByID, Book.InvoiceLookupByID, Book.BillLoookupByID.
  • Bug #624721: Show backtrace for errors in eguile templates Patch by Matthijs Kooijman: The current eguile template implementation catches errors that occur while evaluating an eguile template. However, only the error is shown, not a backtrace (so no location of the error either). The attached patch modifies the error handling to also capture the stack backtrace, using a lazy exception handler (e.g., capture the stack before unwinding the stack to the real exception handler). To extract only the relevant part of the stack (e.g., the part inside the eguile template, not the tens of stack frames leading up to the report rendering), a stack dump is made just before evaluating the eguile template (so a sort of "diff" can be made). For more details, see the extensive comments in the patch itself.
  • Bug #616613: Automatically append the extension if user forgot append them. Patch by "Bob": The enclosed patch simply tests for a period in the file name, if one exists it leaves it alone, if not, it adds one plus a default extension.
  • Bug #626403: Fix inconsistent formatting between stylesheets (Webkit vs. gtkhtml) Patch by Alex Aycinena: The 'default' stylesheet formats the balance sheet, cash flow, income statement and transaction reports properly under webkit but not under gtkhtml. The 'easy', 'footer', and 'technicolor' stylesheets are the reverse; that is, they format the balance sheet, cash flow, income statement and transaction reports properly under gtkhtml but not under webkit, except that the 'footer' stylesheet also has some formatting problems with gtkhtml as well. The attached patch file corrects these problems. Specifically: - styles that are missing in the 'footer' stylesheet (compared to 'easy') are added - the function 'gnc-html-engine-supports-css' is used in the 'default', 'easy', 'footer' and 'technicolor' stylesheets to provide styles for either webkit or gtkhtml - the taxtxf.scm report file is simplified to take advantage of these changes
  • Bug #625697: Prior patch, Changeset 19376, broke reports for non-default stylesheets Patch by Frank Ellenberger
  • Bug 623801 - gnucash file is not saved
  • Bug 625845 - Exporting Accounts results in 0 byte file.
  • Bug 625977 - Python Bindings, enhanced examples showing the use of Transaction.BeginEdit(), patch by Mark Jenkins
  • Bug 625976 - Python Bindings Patch for Transaction.GetImbalance(), patch by Mark Jenkins
  • FIx bug 596124: don't crash if someone adds a split to a capital gains transaction created by the lot scrubber.
  • Double clicking on the balance column in a register doesn't resize the column because there is a zero width column to the right of it. This may fix all or part of bugs 563588, 345711, or 506261.
  • Bug 612337: Add file save to hierarchy druid when the new file druid completes. Patch by "Bob": I thought I would give this a try and come up with a patch to use the file save as function after the after pressing the apply button. Not sure if it is the best way but seems to work on my linux box and on windows without any errors. I have changed the text in the account.glade file to reflect the firing of the save as and also increased the size of the window to give more room for the 'Category Description' to stop scroll bars.
  • Bug #624623 - Patch: US Tax Report for webkit and gtkhtml
  • Bug #556713 - inconsistency in report options Use "Reset defaults" instead of "Use defaults, as suggested by Derek.
  • Bug #556713 - inconsistency in report options Final additions to this bug.
  • Bug #621016: Print multiple checks at the same time The print checks operation should be able to print more than one check with a single invocation of the "Print Check..." command. The attached patch does this. If the active register is an account register, then the selected transaction is printed (as before). If it is a search results register where all the splits are from the same account, then it prints a check for each of them. Anything else is an error. Patch by Mike Alexander.
  • Bug #118391: This patch add isocodes support for Windows build. It automatically download, build, install and packaging the isocodes. Currently, the patch will not make Windows build show the locale long currencies name. But it make the isocode available on Windows. Since the long currencies names are already shown on Linux, I think it should not far to make it happen on Windows too, especially the isocode will be available after this patch.
  • Bug #620763: Fix permuted "Retained Earnings/Losses" in balsheet-eg.eguile.scm
  • Bug #620763: remove trailing whitespace from balsheet-eg*
  • Bug #556713: Fix inconsistency in report options The attached patch should fix the remaining outstanding issues of this bug. Applying this patch now would break string freeze.
  • #616606 - Get default report font from top level widget Patch by Tao Wang
  • Bug #623844 - CRITICAL gnc.backend Error message in trace file.
  • Bug #623842 - Reseting of Color Tabs to default color wrong.
  • Bug #556713 - inconsistency in report options, partial fix This commit aligns all occurences of "Current/Previous Year Start/End" to "Start/End of this year"
  • Bug #556713 - inconsistency in report options, partial fix This commit aligns all occurences of "Report Accounts" and "Accounts to include" to "Accounts"
  • Bug #447339 - custom reports with similar names misbehaving
  • Bug #556713 - inconsistency in report options, partial fix This commit aligns all occurences of "Report Currency" and variants to "Report's currency"
  • Bug #556713 - inconsistency in report options, partial fix This commit replaces "From/To" with "Start Date/End Date" in all standard reports.
  • Bug #389841: Wrong translation of Tax Amount and update of Italian translation by Cristian Marchi
  • Bug #622953 - Enable comment for date format string again in gnucash.pot, patch by Frank H. Ellenberger.
  • Bug #622637 - The classical invoices should use the more specific strings from taxinvoice, part 2, by Frank H. Ellenberger
  • Bug #622637 - The classical invoices should use the more specific strings from taxinvoice, part 1: whitespace cleanups, patch by Frank H. Ellenberger.
  • Bug #617797 - Win32 need to downgrade to gtk-2.16 (Default theme not working under Windows), second patch adding custom themes, by Tao Wang
  • Bug #622523 - Python bindings are crash prone when linked to guile
  • Bug #622520 - gnucash business objects disapear on save, patch by Mark Jenkins
  • Bug #622271 - Category 'Gas' under 'Auto' should be translated to Petrol in en_GB and en_AU
  • Bug #617797 - Win32 need to downgrade to gtk-2.16 (Default theme not working under Windows), patch by Tao Wang
  • Bug #616606: Add gnc-get-default-report-font-family function callable from scm. Currently returns "Arial" but can be modified to get default GtkWindow font.
  • Bug #600574 - Would like to disable creation of log files and backup files entirely
  • Bug #621744 - Prompt for password is not hidden
  • Bug #619709 - Upgrade Inno Setup to 5.3.x to use utf-8 in .iss script, patch by Tao Wang
  • Bug #621602 - Upgrade svn on Windows building environment to 1.6.x, patch by Tao Wang.
  • Bug #378638 - log replay creates two transactions from a single logged transaction
  • Bug #615347 - Use enforced, consistent data file extension across supported platforms The choice has fallen on ".gnucash". This extension will be added to all filenames that don't have it already when a user chooses "Save As...". Obviously this is only done for files, not for database storage. The backup files will from now on also end in ".gnucash" instead of the previous ".xac". The code that removes old backup files scans for both extensions to ensure that backup files still available with the ".xac" extension are rotated as well.
  • Updated translations or translation-related changes:
  • Update po files with up-to-date pot template.
  • Remove unused file from both SVN and POTFILES.in.
  • de.po: correction of "Income Tax Identity" This term is used in the first dialog of "Ta_x Report Options".
  • Updated Italian translation by Cristian Marchi.
  • Updated Japanese translation by Yasuaki Taniguchi, copied from the Translation Project.
  • Updated Latvian translation by Valdis Vitolinš.
  • New Latvian translation of the business account chart, thanks to Valdis Vitolinš
  • Updated simplified Chinese translation by Tao Wang.
  • Updated Dutch translation by Mark Haanen, copied from the TP.
  • Updated German translation.
  • Add initial Bulgarian translation, by Rosi Dimova, by Bulgarian Gnome translation team.
  • Fix missing translation of buttons in invoice reminder dialog.
  • Updated Dutch translation, copied from the Translation Project
  • Update of Italian translation by Cristian Marchi
  • Merge most recent pot template into all language po files.
  • Update German translation.
  • Merge most recent translation template into de.po.
  • Update POTFILES.in after recent file move.
  • I18n improvements in invoice reports: Mark last untranslated strings for translation.
  • Update de.po after invoice review. There were some equivocalnesses between invoice and balance. After using the strings from tax-invoice in the other invoice forms, the de translations should switch back. Patch by Frank H. Ellenberger.
  • Improve i18n comments: Comment for gnucash.pot must appear immediately before the marked string.
  • Improve name consistency. Use "GnuCash" (or more precisely PACKAGE_NAME), wherever the name is visible to the user, and "gnucash" (or more precisely PACKAGE) everywhere else.
  • Add utf-8 prefix, so the Windows installer interprets the file properly
  • Fix Latvian language support for Windows installer (should have used lv instead of lv_LV)
  • Add Latvian translation for the Windows Installer, patch by Valdis Vitolinš
  • Fix encoding issues in Windows README file and translate last sentence.
  • Add Latvian readme file for Windows
  • Update Dutch translation from the TP
  • Update Chinese (simplified) translation, from the TP
  • Set user visible application name as part of the gui initialization. This defines which name is used in the about dialog and is used by gnome-keyring to determine where to store passwords.
  • Add simple checkbook account chart in Dutch, by Mark Haanen.
  • Move language dependent files lv_LV to lv
  • Move language dependent files lv_LV to lv, one more change
  • Move language dependent files lv_LV to lv
  • Updated Italian translation by Cristian Marchi.
  • Other user-visible changes:
  • Allow negative tax percentages. This allows to model some tax rules for trade between European countries.
  • Add error message if the unimplemented aqbanking setup button is pressed. Please see http://lists.gnucash.org/pipermail/gnucash-devel/2010-August/029188.html and http://lists.gnucash.org/pipermail/gnucash-devel/2010-August/029189.html
  • Bug 616612 - Remember last location of File Open/Save dialog, partial solution This commit remembers the last directory for * Open * Save * Export chart of accounts * Save Report This only stores file based paths, not db based paths.
  • Modify the osx_accel_map to reflect the different keybinding in Gtk+-2.20
  • Fix crash when run with the --add-price-quotes parameter.
  • Follow-up of r19358: Need to use AB_SetupDialog_new instead as replacement of the previous wizard.
  • Adapt to newest (unstable) aqbanking: No external application needed anymore for user setup.
  • Re-enable colored tabs on Windows. This works fine with gtk+2.16.
  • Add averaging option (but currently deactivated) for monthly or weekly average in account piechart. Will be activated once we're out of string freeze in order not to have untranslated strings show up for the user.
  • Explain proximo concept.
  • Other code/build changes:
  • Get library from correct directory - fixes "make check"
  • Dummy commit to test mailing list hooks.
  • Fix typo in comment.
  • Convert glade files to gtk+2.10, last batch.
  • Fix stupid compiler error. (Should compile first, then commit, not the other way round.)
  • Copy OpenOffice.org python macro for import of the gnucash file to here because its original download location is hard to reach.
  • Fix compiler warning
  • Fix compiler error reported by Herbert Thoma
  • Replace a gkt+2.18 function to be gtk+2.10 compatible
  • Fix gtk critical warning, patch by Bob.
  • Fix problem with "t" unbound in cond expression. Use "else" instead.
  • Add missing return value specification of lookup_by_code() in python bindings. Patch by Daniele Varrazzo.
  • Remove now empty business directories
  • Fix r19364: Remove last reference to removed business-backend-sql.
  • Merge the sql parsers of the business objects into the main sql module. Also, completely remove the business-core/sql module because it is no longer needed. The tests of this module have been moved into backend/dbi because they depend on sql+dbi, but not more than that.
  • Completely remove the business-core/xml module as it is no longer needed.
  • Remove the separate business xml backend from cutecash and python as well.
  • Merge the xml parsers of business objects into the main xml backend module.
  • Remove separate object initialization in engine/gncBusiness.c and move this into one common initialization function cashobjects_register in .
  • Convert glade files to Gtk+2.10: remaining business dialogs
  • Convert glade files to Gtk+2.10: business dialogs except customer/vendor/invoice
  • Convert glade files to Gtk+2.10, next batch: gnome-utils
  • Convert dialogs to Gtk+2.10 Removed one unused dialog as well, as it contained many deprecated widgets causing trouble.
  • Remove unused dialog
  • Fix GtkSpinButton with non-zero page_size warnings.
  • Move the business object implementations from separate module into the main gnucash engine.
  • Move initialization of business objects into gncBusiness.c so that this fits to the header where the function was declared.
  • Remove header gncBusinessP.h which is unused anyway.
  • Convert glade files to glade3/gtk+2.10, next batch.
  • Remove obsolete code.
  • Some changes to align the README files with the current state of gnucash.
  • Convert glade files to gtk+2.10, next batch.
  • Convert to glade-3 target gtk+2.10
  • Fix binary test.
  • More path fixes.
  • Fix paths. On Mandriva the original code resulted in two absolute path being appended, resulting in file not found errors.
  • Python bindings, gncnumeric and accounttype constants, patch by Mark Jenkins.
  • Nice example python scripts, patch by Mark Jenkins.
  • Future default file extension is .gnucash, so - rename example files to this extension - replace references to the old extension where appropriate
  • Fix erroneous quotation in scheme string of last commit
  • Improve the initial report loading code so that it loads only files ending with .scm. This should avoid accidentally loading .scm~ backup files etc. The code matches the filenames against the regexp "\.scm$", so the previous hand- written comparison against "." and ".." is no longer necessary as those don't match that regexp anyway.
  • Fix build failure introduced by r19285 on systems with guile 1.6.
  • Properly check for SWIG version 2.0.0 and later.
  • Revert part of R19263. DYLD_LIBRARY_PATH must be set on MacOSX (running under X11, not Quartz) in order for GnuCash to find its dynamic libraries.
  • Change gnucash-bin to gnucash on OS X (the other platforms had been changed already)
  • After learning the scheme case syntax, implement it correctly this time. Fixes r19281, r19280, r19253, r19252.
  • Add missing UTF-8 BOM
  • Some more disabling of the new deactivated option in the piechart. Forgotten in r19280, sorry for that.
  • Disable new option of piechart report even more.
  • Check properly for svn availability
  • Re-indentation of source code. This re-indentation was done using astyle-1.24 using the following options: astyle --indent=spaces=4 --brackets=break --pad-oper --pad-header --suffix=none
  • Document what to do if svn isn't found. This only applies to the scripts used to setup an automated build system
  • Cleanup use of constants
  • Finish direct binary execution on Windows and linux and cleanup bin Makefile/targets - Windows * binary name becomes GnuCash.exe * gnucash.cmd is renamed to gnucash-launcer.cmd (consistent with OS X). This file is only needed to run GnuCash straight from the source installation. It is not used (or distributed) with the Windows Installer version. * gnucash-valgrind, gnucash-gdb and the override extra's have been removed as they are meant for a UNIX like environment - Linux/others * binary name becomes gnucash * the gnucash launch script has been removed together with gnucash-gdb. They no longer add value on linux. * gnucash-valgrind has been retained because it contains useful presets - OS X (Quartz) * binary name remains gnucash-bin for now (requires synchronous changes in the externally hosted OS X build system) * gnucash launcher script has been renamed to gnucash-launcher. This file is only needed to run GnuCash straight from the source installation. It is not used (or distributed) in the OS X bundle version. * gnucash-gdb and gnucash-valgrind remain and can be used for debugging the source installation.
  • Undo debug modification introduced in r19100. It bypassed the Abort and was never intended to be committed.
  • Use enum value QOF_LOG_MESSAGE (newly defined in r19257) instead of the generic G_LOG_LEVEL_MESSAGE
  • Add missing enum value
  • Fix report error in piechart due to the temporary deactivation of the new option.
  • Make business sql backend initialization functions accessible when statically linking. Same change as what r18841 added in business-core/xml.
  • Delegate transaction log enabling/disabling to the backends. Let only the xml backend enable logging.
  • Add getter function for mapping a {year,month,day} symbol to the conversion function of a date to a fractional number.
  • Fix a comment to reflect the actual code.
  • Remove command line parameter that is ignored anyway.
  • Fix typo in commodity.glade which broke creating new commodities
  • Improve handling of unknown access methods (protocols). Avoid mangling of such urls, so that a clean error message can be displayed.
  • Disable enviroment_overide() when MAC_INTEGRATION is defined: It doesn't play well with App Bundles.
  • Don't look for dbi drivers if dbi_initialize failed.
  • Fix dbi drivers not found when --with-dbi-dbd-dir is set at configure time.
  • Default key accelerator map for OSX, using Command instead of Control

New in version 2.3.14 Unstable (September 21st, 2010)

  • Bugs fixed:
  • Bug #618954: Add a column "Due" to the invoice search results list. Patch by "scar".
  • Bug #618951: Add ability to search for invoices by due date Patch by "scar".
  • Bug #118391: Resize currency dropdown list Patch by Frank H. Ellenberger. Now in the tested (european) languages one can understand the meaning without horizontal scrolling - search for MXV or UYI to see long examples. I used glade 3, which created the file in a somewhat different way - let me know, if that is a problem.
  • Bug #619984: Remove "Gnumatic, Inc." from po/Makevars Gnumatic Inc. does since a few years no longer exist. So it makes no sense, to have it as copyright holder of new GnuCash translations. I got Linas OK for this change on IRC: http://lists.gnucash.org/logs/2010/05/2010-05-28.html#T13:37:53 - #T16:12:23
  • Bug #617797: Set eol-style to CRLF for win32 files.
  • Bug #618434 - Decimal separator is always '.' when using the keypad, patch by Yasuaki Taniguchi
  • Updated translations or translation-related changes:
  • fix Latvian account trees, patch by Bill Nottingham.
  • Update German translation Patch by Frank H. Ellenberger: update de.po 1. add missing translations 2. review fuzzy translations 3. correct liabilities: Passiva -> Fremdkapital/Verbindlichkeiten 4. correct discount: Skonto -> Skonto, Rabatt & Nachlass 5. typos
  • Updated Dutch translation by Mark Haanen, copied from the Translation Project.
  • Updated Japanese translation by Yasuaki Taniguchi, copied from the Translation Project.
  • Other user-visible changes
  • Fix r19227, r19228: Don't make the "Due Date" the primary search; fix erroneous parameters when inserting into list.
  • Other code/build changes:
  • File convert commodity.glade in glade3-3.6.7 to ensure our gtk-2.10 requirement is sufficient.
  • Set eol-style for win32-bin.txt to CRLF because this file should view correctly on win32 systems
  • Set all shell scripts to svn:eol-style LF because they should have the same line endings.
  • Fix script that builds the release tags. Awk works differently on windows than on linux apparently.

New in version 2.3.13 Unstable (September 21st, 2010)

  • Bugs fixed:
  • Change from ige-mac-menu to GtkOSXApplication for OSX integration. Fixes #600590.
  • Bug #618646 - Should be able to run gnucash-bin.exe directly, rather than gnucash.cmd Patch by Tao Wang.
  • Fix #616100 - Incorrect character set used in MySQL backend Use "SET NAMES 'utf8'" so that mysql uses utf8 for communication and all char sets.
  • Bug #618647 - Compile .ico as resource into gnucash-bin.exe, patch by Tao Wang
  • Bug #618505 - Separate shell functions files from variables and steps files, patch by Yasuaki Taniguchi
  • Bug #618341: Additional paths to reset.sh Patch by Yasuaki Taniguchi.
  • Bug #615168: Remove instances of (use-modules (ice-9 slib)) except report-system.scm There are no more instances of (require ...), so Guile's slib support is no longer needed. Patch by Andy Wingo, but except report-system.scm because saved reports still use the hash-for-each -- so we will need to continue to support the symbol.
  • Bug #615168: Remove spurious (require 'hash-table) instances except report-system.scm Patch by Andy Wingo, but except report-system.scm. There is nothing that the slib hash-table module provides that was used in any of these files; they all used Guile's stock hash tables.
  • Fix #616554 - New stylesheets based on Fancy template cause BIN to crash An interface issue between libjpeg and webkit (incorrect type used in libjpeg) causes the crash. This patch replaces the normal libjpeg with a patched one.
  • Bug #352058 - Invoice entries should default to opening date of invoice.
  • Bug #615510 - Gnucash crashes when creating new customer job
  • Bug #357696 - Billable items appear in more than one invoice
  • Bug #118391: Implement translation long currency names Adjust in iso-4217-currencies.scm fullnames to conform with iso-codes-3.3 Patch by Frank H. Ellenberger.
  • Bug #616524: Fix missing re-generating of gnucash_core.c code. The .c file gets outdated easily because the makefile doesn't contain enough of its dependencies. I would need to be regenerated each time any of the included files was changed, but currently it doesn't contain these dependencies in the makefile rules. Having it depending on config.h should at least trigger the generation at each version number change (so that the tarball contains an up-to-date version.)
  • Bug #612212: Provide a method to set the default budget Patch by Jeff Kletsky. (Cstim: Accepted even though string freeze is in effect because it was submitted before the freeze. Also, the string additions are very minor.) Summary of Changes: * Initial story related to providing default budget control * Add a "Budgeting" tab to the book-level preferences dialog * Add a "Default Budget" selector to the "Budgeting" tab * Modify gnc_budget_get_default() to * Respect the new KVP, if present * Fall back to 2.2.x behavior, if not present * Modify gnc:make-budget-option * Reformatted for readability with additional comments * Default is now "#f" so that selected value is always saved Otherwise, if selection happened to be the current default and the default was later changed, the report would change * getter, setter, and generate-restore-form all now consistent * setter now always takes a budget object * generate-restore-form does not rely on "hack" in setter that previously allowed either a budget object or a GUID string This is a different fix for 603215 -- see Known Issues * Provide translation support for "Trading Acccounts" (and "Budgeting") * Refactor #define names for consistency and extensibility * KVP_OPTION_PATH for consistency with Guile usage * OPTION_SECTION_blahblah * OPTION_NAME_blahblah * Modify qofbookslots.h to be "SWIG-aware" * Pick up qofbookslots.h in make-gnucash-potfiles.in and po/POTFILES.in Known Issues: * There is no selection (yet) for "Use default budget" so changing the default budget and reloading a report does not change the budget used * setter is no more robust to "bad" values than in previous code * Budget reports created with 2.3.x after r18528 (between 2.3.8 and 2.3.9) may not load or re-render as they relied on the setter taking either a budget object or a GUID as a string This should not impact any 2.2.x users as nothing was saved under 2.2.x related to the default budget. This can be resolved through removing the option restore code in ~/.gnucash/saved-reports-2.4 and, if affected reports were open, in ~/.gnucash/books/ * Budget reports prior to r18528 did not save budget selection (603215)
  • Bug #586805: Fix errorneous abs() in csv import Changes abs function to fabs in gnc-csv-model.c, to allow csv imports of values less than $1.00. Patch by James Raehl.
  • Bug #617660: Improving iso-4217-currencies Patch by Frank H. Ellenberger 1. improve the header of fieldnames with annotations 2. sort by ISO code, because a. easier for non english people b. most tables in the internet have this sort order. So maintainance becomes easier. 3. inserting a Column local_symbol, because some people like to use it, e.g. https://bugzilla.gnome.org/show_bug.cgi?id=492417#c3 But probably there is a better way to get this informations. 4. Review List: a. adding: CDF, GHS, ... b. outdated: AON->AOR->AOA, GWP->XOF, ... c. Typos like "fening". d. Alway use singular instead of a mixture. 5. add comments: a. outdated currencies prepared as in the header shown. b. for abbreviations. Background is the thread starting with https://lists.gnucash.org/pipermail/gnucash-devel/2009-October/026558.html
  • Bug #617435 - webkitgtk+ cross build script, created by Yasuaki Taniguchi
  • Bug #617558 - Header in register doesn't clear properly in double-line mode when switching from transaction to split, patch by Alex Aycinena
  • Bug #617072 - Update create_cross_mingw.sh, patch by Yasuaki Taniguchi
  • Bug #554936 - 'configure.in' files should be renamed 'configure.ac'
  • Bug #616696 - Development version warning string should not include hardcode version. Third revision. - Stable Version changed into Stable Series (easier to track automatically) - Modified motd code to deal with replacement strings - Changed DEVELOPMENT release tip to separate the Stable Series number from the translatable string.
  • Bug #615168: Don't define hash-fold for guile 2.x Patch by Andy Wingo. * src/scm/main.scm (hash-fold): Only do the conditional hash-fold dance if we don't have guile 2.0. (Definitions in expression context are actually invalid Scheme, but older Guiles are more permissive.)
  • Bug #615168: scm_c_string_length is the proper spelling now Patch by Andy Wingo. Fix up a couple uses of scm_i_string_length, and add a back-compat shim for earlier versions.
  • Bug #616696 - Development version warning string should not include hardcode version. * Improve on the previous fix: really display stable version in tooltip, not current version. * Also revert change of "What's new in GnuCash 2.0" because that's the title actually found in the help manual.
  • Bug #615317 - Windows installer requires Qt libraries
  • Bug #616696 - Development version warning string should not include hardcode version.
  • Fix #616606 - Add line indicating utf8 encoding so that non-latin chars show correctly.
  • Bug #615168: Make sure that printf is available whereever it is used So, the right thing is for each file to be in its own module. Barring that it's tough to see what the environment is in a given module. So to be safe, everywhere there's a printf, make sure the (gnucash printf) module is duly included. Patch by Andy Wingo. Conflicts: src/business/business-reports/easy-invoice.scm src/business/business-reports/fancy-invoice.scm src/business/business-reports/invoice.scm src/business/business-reports/job-report.scm src/report/standard-reports/budget-income-statement.scm src/report/standard-reports/income-statement.scm src/report/standard-reports/trial-balance.scm
  • Bug #615168: Fix a number of scheme syntax errors This kind of error is detected "eagerly" in Guile 2.0. Patch by Andy Wingo.
  • Bug #615168: Fix bogus gnc:safe-strcmp definition Patch by Andy Wingo.
  • Bug #615168: Fixup one last simple-format bit src/engine/iso-currencies-to-c did the same simple-format dance that is now unnecessary. Patch by Andy Wingo.
  • Bug #615168: Replace calls to simple-format with calls to format Guile 1.6 and up always provides simple-format, and defines it as a restricted subset of the full format, so there's no harm in using the construct's proper name. Patch by Andy Wingo.
  • Bug #615168: Pull in printf from slib, change all code to use it. There is a new module, (gnucash printf). Patch by Andy Wingo.
  • Bug #616093: Notes are not editable in scheduled transaction edit window Patch by James Raehl: The Notes field is not visible or editable. This appears to be a deliberate choice, as can be seen in line 1308 of gnome/dialog-sx-editor.c routine schedXact_editor_create_ledger. I disagree. Since Notes are not copied to the newly-created scheduled transaction, there is no way for the user to copy Notes to the model, nor to modify the Notes. This makes the partial fix in r16652 for bug 500427 kind of pointless. This patch reverses that decision.
  • Bug #615912: Update gnc_quote_source from FQ 1.11 to 1.17 and enhance user_name Patch by Frank H. Ellenberger. Because many sources were listet as unknown, I tried to sort them in. Because normal users don't know all englisch abbreviations of far continents, I tried to use better understandable descriptions and added country codes. Caveats: 1. The HU methods were not quite clear to me, so I added only one. 2. The Currencies methods seems to fetch lists of currencies, something what we don't need here; correct me, if I am wrong.
  • Bug #118391: Mark currency names for translation but using the "iso_4217" translation domain. This will make approx. 50% of the currency names show up in translated form. At least more than nothing. Eventually, we most probably must change our long name definitions to match those of iso_4217, and after this we will get 100% translations.
  • Revert r19051, "Bug #118391: Mark the currency names for translation." We better don't mark the currency names for translation inside gnucash.pot; instead, we should use the "iso_4217" translation domain.
  • Bug #616615 - Request for larger size icon (96x96, 128x128, 256x256): Properly include smaller icon sizes, remove duplicate size
  • Bug #616615 - Request for larger size icon (96x96, 128x128, 256x256)
  • Bug #118391: Mark the currency names for translation.
  • Updated translations or translation-related changes:
  • Update of Latvian translation by Valdis Vitolins
  • Additional fix for Simplified Chinese translation of windows installer
  • Add Latvian account templates by Valdis Vitolinš.
  • Reapply Simplified Chinese patches
  • Repatch Windows installer for Simplified Chinese
  • Update German translation.
  • I18n improvements: Remove colons from translatable strings. Use correct capitalization. In most cases, the changed strings already appear somewhere else in the program, so only very few are unfortunately now new strings even though we hoped we could stick to the string freeze.
  • zh_CN translation for Windows Installer, patch by Tao Wang.
  • Update zh_CN account charts, patch by Tao Wang.
  • Updated Dutch translation, copied from the Translation Project.
  • Update Chinese (simplified) Translation, copied from the Translation Project.
  • Fix help text, discovered by Nikos Charonitakis
  • Update of Brazilian Portuguese translation by Miguel A.Rozsas
  • Update of Greek translation by Nikos Charonitakis
  • Updated Danish translation by Joe Hansen, copied from the Translation Project.
  • Update zh_CN translation, patch by Tao Wang
  • Update of Italian translation by Cristian Marchi
  • zh_CN translation of gnucash glossary file, patch by Tao Wang
  • Updated zh_CN translation of accounts, patch by Tao Wang
  • I18n: Fix erroneous message. This (tooltip) string is blatantly wrong, so we need to fix it regardless of string freeze. Spotted by Mark Haanen.
  • I18n fix: Mark forgotten strings for translation. These are allowed regardless of string freeze because the strings are already in the program and are untranslated so far. So marking them for translation will only improve the situation but not introduce new strings into the program in general. Spotted by Mark Haanen.
  • Add src/gnome/gnucash.desktop.in.in to the translation input files.
  • I18n: Fix typo in user message. This breaks the string freeze, but 1. the typo really hurts one's eyes, and 2. the message is only secondarily important, so I would accept this single string freeze breakage.
  • Other user-visible changes:
  • Implement help for OSX
  • Set default webkit font from system font.
  • Merge CSS and plain stylesheets, leaving the plain and remove the CSS stylesheet. Plain now has font specifications.
  • Add font support to all stylesheets
  • Add "Pay invoice" toolbar button when invoice is open.
  • When posting an invoice, propose the invoice's opened date as post date.
  • A search with no search terms set by the user should still honor the original search constraints. For example: if a user does: - Find customer - Click on Customer's invoices - Then explicitly removes the empty search term - Click Find => the user should still see only the invoices for this customer. Previously this scenario would return all bills, invoices AND vouchers in the book. The cause was an attempt to merge two queries with AND while one query had no terms. The code already partially checked for this, but there was still an unhandled case.
  • Return only bills when searching for bills, return only invoices when searching for invoices and return only vouchers when searching for vouchers
  • Change default report stylesheet from "Default" to "Default CSS"
  • Other code/build changes:
  • Fix warning message of autogen.sh for python-binding. Patch by Tao Wang
  • Remove AC_PROG_OBJC from configure.ac
  • printf with %zd is not known in mingw gcc 4.4.0 and prevents gnucash from being built with that compiler. Since this is only a debug message, I chose to replace it with %d which should also do the right thing.
  • Properly check for the unavailability of windows webkit. The logic was accidentally inverted when #ifndef got replaced with if HAVE(). As a side effect, this fixes a mingw gcc-4.4 compiler warning.
  • Fix encoding issues introduced in r19204
  • Fix gnc-module test after patch from bug #618646.
  • Win32 - Fix installation location of some files, reported by Tao Wang.
  • Fix 64-bit compiler error introduced in r19206
  • Split "Arial" out from font names to make it easier to replace.
  • Update binreloc to use Cocoa-based GtkOSXApplication instead of ige-mac-bundle.
  • Fix gnc_dbd_dir foulup
  • Fix libdbi hardcoded driver directory usage Patch by Bill Nottingham, with modifications to only set GNC_DBD_DIR if --with-dbi-dbd-path is explicitly set.
  • Win32 use up-to-date configure parameters for aqbanking
  • Svn ignore built files
  • Make the keychain interface in MacOSX compile and work.
  • Fix windows build
  • Add rules to copy the necessary icons during build.
  • Fix windows tag build script, by Geert Janssens
  • Revert r19159, "Fix windows tag build script, by Geert Janssens" I thought I would get access to the build server immediately to perform the cleanup of the old tag file, but apparently the server is unreachable for me for now, so I cannot commit this change today. Maybe later.
  • Fix windows tag build script, by Geert Janssens
  • One more revert of r19148, "Bug #615168: Remove instances of (use-modules (ice-9 slib))..." Missed that one in r19154.
  • Revert r19147, "Bug #615168: Remove spurious (require 'hash-table) instances..." Apparently guile-1.6 still needs all of those.
  • Partly revert r19148, "Bug #615168: Remove instances of (use-modules (ice-9 slib))..." Apparently guile-1.6 needs this in more places than I thought at r19148.
  • Add support for upcoming libaqbanking-5 version.
  • Follow-up to r19099: Remove qof's backend loading because there is no backend anymore. Remove generated file qofla-dir.h. This is actually good progress because it gets rid of yet another compiled-in path, which are a nuisance and need to be replaced by runtime path lookup everywhere, if needed.
  • Remove qsf related code from windows installer script.
  • Rewrite assert_one_dir function to not crash on a native build machine
  • Improve the cross-compilation process. - improve create_cross_mingw.sh's integration in defaults.sh and install.sh - update README file
  • Remove some additional QSF references
  • Improve test_for_mingw - change test so that both tested programs must work, not only the exit code of the last one - make it cross-compile compatible
  • Improve assert_one_dir It now gives a different error message when no directory was found or when multiple directories were found
  • Remove QSF
  • Remove forgotten debug statement
  • Add ./ to sourced files, so that they are found when cross-compiling.
  • Add (optional) destination file name parameter to wget_unpacked and smart_wget functions. This parameter can be used to override the filename to be used for the downloaded package. If empty, the functions continue to work as before. This new option will be used for cross compilation.
  • Windows build script improvements - make sure pexports is available before guile is built - test for pexports availability when compiling libdbi (to fix crosscompilation)
  • Fix some typos
  • Add .log extension to qof_log filename while creating the temporary file. This will only be visible on Windows. On all other platforms the logfile is successfully renamed to the requested name.
  • Add missing libmysql.def to tarball
  • Enable environment file on Windows (only direct install, not via ISS installer)
  • Write makefile rule to create gnucash-icon.ico. This rule isn't called by default though. It uses image-magick to add several png images of different size and bitdepth together. Current ico has: 16x16,8-bit 22x22,8-bit 24x24,8-bit 32x32,32-bit 48x48,32-bit 64x64,32-bit 96x96,32-bit 128x128,32-bit 256x256,32-bit
  • Remove redundant test for ENOSYS The error code was checked twice against ENOSYS, once in all situations, and once if ENOSYS is defined. This makes no sense. Since we never had bug reports for compilation errors on ENOSYS undefined, we can assume ENOSYS is always defined.
  • Replace directory mv's with cp -r when the move potentially crosses filesystem borders. Apparently, Msys' mv command fails to move directories across filesystem borders (like from a directory on the c drive to a mounted samba share). I hit this issue because my tmp dir is on a different filesystem from my base dir.
  • Enable keychain functionality on OS X after fixing compiler bugs.
  • Make sure wget downloads are stored with filenames not containing any html garbage (& and = signs as a result of http_get parameters). * Have wget_unpacked return the actual path where the files were unpacked via the _EXTRACT_UDIR env variable. In most cases this is simply the path that was requested, but sometimes, a tarball or zip file adds its own relative path. The _EXTRACT_UDIR variable will take this into account by analysing the contents of the tarball/zip file. These changes will be used in the revived cross-compile script.
  • Makefile fixes for setup-gnucash-env on OS X

New in version 2.3.12 (April 22nd, 2010)

  • Bugs fixed
  • Fix #588816 - Heading Banner Image does not display or print on invoice reports Along with a new version of webkit which properly handles local image files, a change was needed so that instead of creating an html string and feeding it directly to webkit, it is exported to a temp file which is then loaded as a file:// URI. On Linux, if this is not done, any embedded images do not appear, and there is a console message that local resources can't be loaded. On Windows, the embedded images don't appear, possibly for the same reason, but I'm not sure where the console messages go.
  • Bug #525821 - new or edited account names should be checked for reserved chars like ":" Addendum: Fix compatibility with older Gtk versions.
  • Bug #525821 - new or edited account names should be checked for reserved chars like ":" This patch checks if the separator character is used in account names when loading a data file, or when changing the separator character in the preferences. If the separator character is incompatible with some account names, a warning dialog box is popped up explaining the situation. This dialog also lists the violating account names. Additionally, the preferences dialog will show a warning sign as long as the separator clashes with some account names. The tooltip for this sign will also display the violating account names.
  • Bug #613963 - GnuCash opens empty window when no state file is found
  • Bug #612566 - Build failure with glib 2.10 - undefined gdk_color_to_string - part 2 Create the necessary HAVE_GTK_2_12 check in configure.in
  • Bug #612566 - Build failure with glib 2.10 - undefined gdk_color_to_string From modified patch by Bob
  • Bug #605802 - Can't input Japanese characters at an account register window on windows with SCIM, IIIMF and XIM This patch by Yasuaki Taniguchi fixes the business register.
  • Bug #613655 - Cannot load MYsql data, fix invalid state file name
  • Fix #613574 - Cannot create/save new employees using MySQL backend Wrong gobject property name used when creating "username" property - sql backend couldn't read it.
  • Fix bug #613375 Odd that this affected only OSX, as the fix is clearly consistent with the GtkLabel "ellipsize" property documentation. (I.e., the packing "expand" property must be TRUE on notebook labels.)
  • Bug #610675: Re-apply r18918, and now with the account color.
  • Bug #610675: Re-apply r18918, but only the tooltip fixing.
  • Bug #610675: Re-apply r18918 but with the relevant event_box not visible on Windows. This patch contains only the changed widget order (no color yet).
  • Make sure we include glade headers (#613326)
  • Updated translations or translation-related changes
  • Update Japanese names of accounts. And remove empty ja_JP.EUC directory. Patch by Yasuaki Taniguchi.
  • Update of Brazilian Portuguese translation by Miguel Rozsas
  • Updated Dutch translation, copied from the Translation Project.
  • Update German translation.
  • Updated Danish translation, copied from the Translation Project.
  • Merge po templates with latest string changes (mostly the removal of taxtxf.scm from translation)
  • I18n: Remove strings of the US tax report from translation because this report makes sense only in English.
  • I18n: Mark forgotten string for translation. Pointed out by Yasuaki Taniguch.
  • Updated Japanese translation, copied from the Translation Project.
  • Other user-visible changes
  • Enable the use of gnome-keyring during loading and saving of data. - The database passwords will no longer be stored in history - During save as, the user-entered password will be stored in gnome-keyring - During open, the user-entered password will be stored in gnome-keyring - When a file is opened from history (no file specified at startup or user selects an entry in the File menu's history) the password is fetched from the gnome-keyring. This currently works on linux. On Mac OS X or Windows no passwords are stored and the user is asked for a password when a file is loaded from history. Adding keyring/keychain capability on these systems is tbd.
  • When printing WebKit based reports respect the Page Setup settings. If webkit_web_frame_print_full exists in the version of WebKit being used then use it with a GtkPrintOperation which has been initialized from the Page Setup data.
  • Make the calculations more nearly the same as the older balance sheet report Calculate retained earnings or loss from income and expense accounts and label the amount needed to balance the books as the imbalance amount instead of retained earnings or loss.
  • Update eguile based balance sheet report to work with current GnuCash.
  • Add the eguile based balance sheet report. This version is directly from the wiki at and won't work in the current version of GnuCash. It is included for reference purposes.
  • Can't add or update currencies in 2.3.11 Reported by Markus Scheffler on Apr 2 via gnucash-user ML
  • Open/Save As...: configure enter/double click to run the default action.
  • Other code/build changes
  • Add functions to compare 2 business objects for equality, and use them in 'make check' tests. Adds functions to compare 2 business objects for equality. The 'make check' tests can then use these functions to store and reload objects and compare them for equality. This allows the sql backend to be tested.
  • Check for webkit_web_view_load_uri() function, and if not available, fall back to webkit_web_view_load_html_string(). This change also changes the config #define name from HAVE_WEBKIT_PRINT_FULL to HAVE_WEBKIT_WEB_FRAME_PRINT_FULL to be a bit more descriptive.
  • Change default from --disable-dbi to --enable-dbi. This is needed so that 'make distcheck' will work with the business sql backend tests.
  • Disable transaction log in backend test so that there aren't log files left lying around to make 'distcheck' fail.
  • Add .h files to EXTRA_DIST to ensure they are put into tarball
  • Fix test dependencies
  • Ensure necessary .h files are included in EXTRA_DIST
  • Remove reference to GNC_TEST_SRFI_LOAD_CMD since we no longer support local srfi's.
  • Assume webkit functions exist on win32
  • Small corrections in the comments of gnc-commodity.h 1 typo 1 moved file 1 complement Patch by Frank H. Ellenberger
  • When updating book counters for business objects (in book slots), ensure they're saved.
  • Allow QTDIR to be defined either in pure windows format (c:\xyz\def) or unix format (/c/xyz/def) without ISS bailing out. Previously, only unix format worked.
  • pexports is only available if MSVC is installed. Encapsulate it in a conditional.
  • Move one more MSVC-only line inside the MSVC test
  • Fix gnucash-gdb.in to use gdb from the right place
  • Change the iso-4217 generator script to accept the srcdir as cmdline argument instead of an env variable.
  • Insert missing "format:" - otherwise it didn't build for me. Additional simplifying git expressions. Patch by Frank H. Ellenberger
  • Remove unneeded path conversion on Windows
  • Add note about required Qt for dist.sh + some typo fixes
  • Fix crash when trying to unset a parameter via the environment config file
  • Fix Windows build after introduction of the environment config file.
  • Revive gnucash-setup-env on OSX/Quartz. This fixes the OSX issues caused by the introduction of the environment config file.
  • Fix MacOSX keyring test in configure to work and make gnc-keyring.c compile if it does.
  • Initialize new_val in environment_override to avoid a compiler warning.
  • G_PATH_SEPARATOR is not used in the environment config file. Remove it from the make script.
  • Make sure only the quartz build uses environment-osx.in
  • Remove local srfi's and require guile 1.6.7 or better. All now supported versions of guile come bundled with these srfi's, so there's no need to keep our own copies.
  • Have the gnucash binary setup its required environment by itself - New "environment" config file that holds the environment modifications to make - Added a parser for this file that does the actual modification of the environment (in gnucash-bin.c) - Eliminate the old gnucash-setup-env script
  • Configure: fix password store test
  • Upgrade win32 version of webkit from 1.1.5 to 1.1.90. This version contains changes required to fix #588816 (Heading Banner Image does not display or print on invoice reports). Note that this bug won't be fixed until some gnucash changes are checked in as well.
  • Configure: group platform dependent tests
  • Fix missing printf format string
  • Fix indentation with astyle The indentation was mixed up due to the unusual IF_TYPE macro, now removed.
  • Replace IF_TYPE macro with a validation function The macro is quite ugly: it's not a complete if condition (missing closing bracket) which makes the code using it difficult to read and error-prone. Even astyle got confused by it. The replacement code is slightly longer (two lines per replaced IF_TYPE invocation) but clean and readable.
  • Remove redundant page tab setting code. The tab is set again some time later in the gnc_main_window_connect function.
  • Add svn:ignore properties
  • Code cleanup in binreloc: Remove unused init_lib function. Add possibility to set the looked-up exe path from somewhere else. Remove symbol mangling because r18940 already added the gnc_* prefix, hence the symbol names are unique to gnucash anyway.
  • Re-indentation of source code (sql parts). This also strips trailing whitespaces from lines where they existed. This re-indentation was done using astyle-1.24 using the following options: astyle --indent=spaces=4 --brackets=break --pad-oper --pad-header --suffix
  • Re-indentation of source code. This also strips trailing whitespaces from lines where they existed. This re-indentation was done using astyle-1.24 using the following options: astyle --indent=spaces=4 --brackets=break --pad-oper --pad-header --suffix=none
  • Rename the type GUID into GncGUID because on Windows, the system headers have a type GUID which clashes with ours. Note that only the type was renamed, but not any enums or function names. Hence, the scheme wrappers should be unchanged completely (hopefully). Discussed at http://lists.gnucash.org/pipermail/gnucash-devel/2010-March/027679.html
  • Add business backend sql test infrastructure. At this point, the test creates a customer, saves it to an sqlite3 db, loads it and compares the original and the loaded customer. Will be expanded to test other business objects.
  • Add deep comparison routines for test purposes 1) Add routine gncCustomerEqual() which will do a deep comparison between two customers 2) Add routine gncAddressEqual() which will do a deep comparison between two addresses 3) Add more GncAddress gobject parameters for the remaining data items
  • Changes in dbi test infrastructure 1) Now that the various objects .c files can compare objects in different books, remove the duplicate copies. 2) Create a .la so that the business sql test code can use some common test infrastructure.
  • Extend xaccXXXXXEqual() routines so that they can compare objects in different books to see if they have the same contents.
  • Set some more line-ending style properties.
  • Set the desired line-ending style to the correct value on the server side. Without the svn:eol-style property, SVN checkouts on windows tend to appear with varying line endings. The only possible way around this in svn is to set the expected line endings as svn properties.
  • Update dbi tests - more object types are now saved and loaded
  • Add new CPP macros which make it cleaner to have conditional compilation based on compiler/system and options selected during config Examples: #if COMPILER(MSVC) #if COMPILER(GCC) #if ENABLE(NLS) #if HAVE(PUTENV) This platform.h file includes config.h, so that doesn't need to be included any more. PLATFORM(X) is based on the definition of GNC_PLATFORM_X COMPILER(X) is based on the definition of GNC_COMPILER_X. At this point, only COMPILER(GCC), COMPILER(MSVC), COMPILER(MSVC7) and COMPILER(MINGW) are determined. HAVE(X) is based on HAVE_X from config.h ENABLE(X) is based on ENABLE_X from config.h USE(X) is based on GNC_USE_X from config.h Having these determinations at a central point makes it easier to add new platforms and easier to conditionally compile based on them.
  • Create splits->accounts sql index and tx->post_date index when creating new databases
  • Cleanup cruft and an error from r18945
  • Whitespace cleanup
  • Forgot to delete a diagnostic in 18941
  • Fixup binreloc, which wasn't working correctly on OSX Most changes are to rename the functions named gbr_* to gnc_gbr_*, so that our modified binreloc (to provide mac bundle support) doesn't collide with binreloc implementations in other libraries. (The instant case was in libenchant.) Also moved the IGE_MAC_CFLAGS and IGE_MAC_LIBS lines from engine/Makefile.am to core-utils/Makefile.am. This was missed when binreloc was moved. And last, there was a minor error in the original OSX binreloc patch: At line 68, #elif MAC_INTEGRATION should be (and now is) #elif defined MAC_INTEGRATION.
  • Add getter/setter for transaction posted-date as a GDate. In addition to the known timespec, the date is also stored as a kvp_value of TYPE_GDATE so that we know afterwards this date has really been set as a date.
  • Add a GDate kvp_value type including conversions from and to all sorts of thingys. Also, removed the default: switch clauses when handling a kvp_value so that the compiler will already complain about unhandled enum values.
  • Fix Windows installer doc to have perl >= 5.8 instead of 5.10
  • Cutecash Some of the GnuCash developers have decided to rewrite the UI for the cross-platform Qt toolkit from TrollTech. The goal is a simpler UI which is more powerful and easier to develop. This project has gotten the name "Cutecash". It uses the same back-ends and engine as gnucash. Only the UI is different. The source for the Cutecash UI is in the same tree (and therefore, the tarballs) as GnuCash, but at this point, no MAC or Win32 builds are being produced.
  • Cutecash: Add install and packaging rules. Running "make package" will produce a binary package. Running "make package_source" will produce a source package.
  • Win/MSVC compatibility: Replace g_* file operations by the direct calls into the MSVC runtime. This tries to avoid a collision between glib's C runtime vs. the one that is used by MSVC (and hence also Qt) by using file access only through MSVC's one.
  • Win32: Add mingw cutecash build to the install.sh script, enabled by WITH_CUTECASH=yes.
  • Cutecash: Slightly decrease debug output verbosity.
  • MSVC: Add creation of MSVC import library of libdbi.
  • Fix CMake for building the dbi backend.
  • Cutecash: Fix missing #ifdefs for dbi calls.
  • Cutecash: Compile & link SQL backend as well (but there is no GUI for this yet)
  • Cutecash: Fix memory leak of missing cleanup of RecentFileMenu object.
  • MSVC compatibility: MSVC must not use g_fopen because it uses a different C runtime than the rest of (MSVC) file-handling functions.
  • MSVC compatibility: Always initialize all members of the QofObject struct.
  • Cutecash: Add more event handler to the account windows so that they will be deleted upon book closing.
  • Cutecash: Code cleanup. Avoid crashes when undoing adding of new transactions by not deleting the tmp transaction object. Also, correctly set the document state to "clean" after saving.
  • Cutecash: Implement account selection in new transaction correctly.
  • Cutecash: Implement entering new transactions in the register. Only the account selection is still missing.
  • Cutecash: Add empty line for entering a new transaction in the register. Doesn't yet store data, though.
  • Cutecash: Introduce separate base class GncInstance for QofInstance methods. This is the base class for Account, Book, Commodity, Split, Transaction.
  • Cutecash: Add deletion of rows/transactions (through "Cut"). With Undo. Hee Hee.
  • Cutecash: Fix file loading, saving, and save-as. Works fine now. Also, use the new GDate setter/getter for the transaction time.
  • Cutecash: Add separate Cmd class for setting the amount/value. Setting the amount in the register now works.
  • Enable editing of the "other" account of a transaction. Register Account and our other types in the QMetaType system so that QVariant can hold it and pass it between the model, view, and delegate. Implement AccountSelectionDelegate that presents a QComboBox editor widget for account selection.

New in version 2.3.11 (April 22nd, 2010)

  • Bugs fixed
  • Partial fix for #611014 - CSV import crashes Bug #611014 mentions a problem where after setting the columns, clicking OK and selecting a target account, the Date column is lost. This is because of a difference in behaviour on windows and linux. The code attaches to the "edited" signal of the renderer. On linux, this signal is emitted when a new combo box item is selected. On windows, the combo box needs to be selected and focus lost before the signal is emitted. This is changed to the "changed" signal of the renderer which acts as expected on both platforms.
  • Bug #140400 - Crash when deleting an account that is still in use by the business features Add a dialog which contains a list of objects referring to the account and an explanation that these need to be deleted or have the account reference modified. Note: I'm no UI designer. This is functional, but if anybody wants to pretty it up, go ahead.
  • Bug #536108 - After cancelling "save as", user is not prompted 2nd time
  • Bug #507351 Terms not defined prior to use This commit changes the text in the accounts druid to explain what a placeholder account is, together with some additional improvements in the wording of that page. Since this increases the amount of text, the width of the label has been modified as well.
  • Fix Bug 590570 - When deleting more than one report in sequence the program crashes Delete the custom report backup file before renaming the current custom report file.
  • Fix Bug 611346 - Crash in Saved Reports dialog if you select Delete button with no report selected Test for no report selected before trying to use the selected report guid.
  • Bug #364358 - Import dialog unreadable with dark colored gtk theme (with solution)
  • Bug #525821 new or edited account names should be checked for reserved chars like ":"
  • Bug #610675 Register Tabs Do Not Display Since Nightly Build r18685 Apply Bob's patch after fixing the whitespace. This patch may cause issues on Windows (a previous version of the patch did). If the next Windows nightly build exhibits the missing register tab names again, it will have to be reverted again and improved upon.
  • Bug #611645 gnc-svnversion returns "too long" a string for git users, patch by Jeff Kletsky
  • Bug#325436 creating income account for invoice doesn't restrict account type
  • Fix Bug 611810 - GC crashes when I click on File -> Properties SCM files still refered to gnc-book-get-slots which had been removed. gnc-book-get-slots was replaced everywhere by qof-book-get-slots.
  • Fix bug 611885 - Crash when opening postgresql file Previous work setting Timespec values via gobject properties missed the case where the timespec loaded from the database was NULL.
  • Bug #611140: Fix crash on Open Subaccounts (hopefully).
  • Bug #610321 - Compile errors with gtk-2.10.4: GTK_BUTTONBOX_CENTER undeclared This commit applies a reworked version of the patch to remove the use of GHashTableIter by Cristian Klein. Cristian's patch didn't apply cleanly to the current trunk. I have made the necessary changes to make it apply (and hopefully do what Cristian intended).
  • Bug #611470 Add Japanese concepts guide into GnuCash installer, patch by Yasuaki Taniguchi
  • Bug 605802: Can't input Japanese characters at an account register window on windows with SCIM, IIIMF and XIM Latest patch by Yasuaki Taniguchi to fix two problems 1) Can't use account separator char when entering account name in a split, and 2) Can't use + and - to go forward/backward a week.
  • Fix bug 591177: Printer font is too small to read with webkit as html renderer. From comment 23: "The PDF in comment 2 is about 8 times smaller than it should be. One possible cause of this bug is if gtk_print_operation_set_unit (op, GTK_UNIT_POINTS) is not called. gtkprint defaults to GTK_UNIT_PIXEL - a useless unit to be using with printers. On Linux GTK_UNIT_PIXEL units are 1 unit = 1/72 inch (the same as GTK_UNIT_POINTS as well as PostScript and PDF units). On Windows GTK_UNIT_PIXEL units are the GDI device units which for printers is the dpi resolution. So for a 600dpi printer 1 unit is 1/600". If the application was developed on Linux and assumes the default gtkprint units are always 1/72" inch the output on Windows using a 600dpi printer will be 72/600 = 0.12 of the size (or approximately 1/8 of the size)." Solution was to use webkit_web_frame_print_full() which allows us to provide our own GtkPrintOperation object with units set to GTK_UNIT_POINTS. Tested on both Linux and Windows.
  • Bug #610675: Revert the gnc-main-window parts of r18637 because it makes the tab names disappear under Windows. This disables the enhancement of bug#608329 again, but the disappearing of the tab names is a rather major bug. Note that we either need to fix the enhancement again, or revert the rest of r18637 as well so that the account properties don't show the color chooser without any effects.
  • Bug #605802: Fix input of Japanese characters in register with SCIM, IIIMF and XIM Patch by Yasuaki Taniguchi. Revised and extended version of r18638. The main functions are as follows: (1) synchronization of preedit string between the register window and sheet->entry, (2) application to pango attributes to preedit string in the register window, (3) include scroll offset patch (id=153514), (4) include preedit string rollback patch (id=153518), (5) fix formula and account cells input problem which Christian pointed out, (6) surpress quick-fill when preedit string exists, (7) fix Windows IME problem. (8) Fix quick-fill problem.
  • Redo of the dot-gnucash fix (so that GNC_DOT_DIR actually works) fixing bug 610707, adding Doxygen comments for all functions in gnc-filepath-utils, and adding testing for xaccResolveURI and more tests for xaccResolveFilePath.
  • Revert r18713 (reopen 605802 "Input of Japanese characters". This commit had 2 problems: 1) when entering an account name, the account separator would no longer accept at the current level of the account tree and move to the next level 2) + and - in a date field would not change the field by 1 week.
  • Bug #610348: Add compiling our own binary of libbonoboui because the ftp.gnome.org binary still depends on the obsolete libxml2.dll. However, we still download the erroneous binary and unpack it into $GNOME_DIR because libgnomeui depends on libbonoboui which in turn depends on libgnome. Hence, libbonoboui cannot be compiled before libgnome-dev is unpacked, but libgnomeui won't report to be installed correctly before libbonoboui is available as well. Theoretically, we would have to split the inst_gnome step so that it first unpacks libgnome et al., then we run the inst_libbonoboui step, then we run the second part of inst_gnome which would be something like inst_gnomeui. I'm lazy, so I silently overwrite the libbonoboui DLL with our hand-compiled version and that's it.
  • Bug #608032 - MySQL timeout and no attempt reconnect, second version This version builds on Phil's implementation of the dbi error callback functions to test for a timeout and to do the reconnect. The same error handling is equally implemented for postgres and sqlite. Unlike MySQL these two database types don't actually generate timeouts, but the functionality can be used later on for other error types as well.
  • Bug #610051 - Crash when using GktHtml whenever a report is opened
  • Bug #610348 missing dependencies in windows build Update gnome-vfs to 2.24.1 Note that this means Windows 2000 is no longer supported.
  • Partial fix for bug #610321 Compile errors with gtk-2.10.4: GTK_BUTTONBOX_CENTER undeclared GTK_BUTTONBOX_CENTER is replaced with GTK_BUTTONBOX_START
  • Fix bug #564380 additionally for easy invoice and fancy invoice. Patch by Mike Evans.
  • Bug #610047 - Dutch accounts template doesn't work Add missing closing brackets
  • Bug #609044: Improve UI strings for tax report options Patch by Frank H. Ellenberger: As we currently have a nice US income and a partial german VAT tax report, I feel uncomfortable with the change of r18413, which renamed Edit->Tax options to Income Tax options. So here is another approach, to clarify the tax report and business tax menu points.
  • Bug #609043: Improve (mostly german) translation of txf Patch by Frank H. Ellenberger: This patch is a first extract of so an approach, which I have here, which will probably lead to a german income tax declaration ESt-A1. But this extract is more general and based on r18413 changes. Changes: 1. Header Comments: adding Contributors 2. Most strings in de_DE translated to german.
  • Bug #608032: Handle MySQL connection timeouts with reconnect Patch by Tom van Braeckel: For the full discussion, see the mailing list: https://lists.gnucash.org/pipermail/gnucash-devel/2010-February/027323.html Rationale: When we try to open a database transaction, and the database reports that the "server has gone away", we try to reconnect before failing hard.
  • Bug #609005: Add recipient name on invoices Patch by Mike E: Having set up a client/customer including the name of a recipient when I print an invoice the recipients name ("Account Dept" say) is not printed in the invoice. I think this is a bug rather than a feature. I have attached a patch to fix. It still prints the company name above the recipient name however. I could submit an additional patch to provide an invoice option to toggle printing of the company name if users/developers feel they want this option, as I do.
  • Bug #609603: Windows packing/win32/install.sh PATH fix Patch by Yasuaki Taniguchi: When I run /c/soft/gnucash/inst/bin/gnucash or gnucash.cmd after I finish building win32 binary, DLL missing dialog boxes pop up. Missing DLLs are - libgcrypto.dll, - libPQ.dll, - mysql.dll, and - ssleay32.dll. This patch add search path to them to fix this problem.
  • Bug #564380 Payment on bills doubles bill Patch by Mike Evans
  • Updated translations or translation-related changes
  • Updated Japanese translation, copied from the Translation Project.
  • Updated Persian (Farsi) translation by Mehdi Alidoost.
  • Add dutch translation to the Windows installer.
  • Updated Slovak translation, copied from the Translation Project.
  • Updated Dutch translation, copied from the Translation Project.
  • Update German translation.
  • Add implementation of Gregorian - Jalali converter code. Copied from http://www.farsiweb.ir/wiki/Iranian_calendar
  • Other user-visible changes
  • Change file loading message to "Loading user data..." Reading file is technically only correct for files not for databases.
  • Display the SX variables in the "Since Last Run..." dialog in ASCII order rather than ordering by hashvalue (i.e. no order at all) as was done previously. Patch by Jesse Weinstein.
  • Add bzr support to gnc-svnversion. Patch by Jesse Weinstein
  • Fix crash on opening the tax report, introduced by r18673. Patch by Alex Aycinena.
  • Revert r18881/18884/18885 (bug #610675 - Register Tabs Do Not Display Since Nightly Build r18685)
  • Fix missing color in qif-import account copy, patch by Tom Van Braeckel
  • Replace Income Tax Options with Tax Report Options. Patch by J. Alex Aycinena.
  • Patch my patch in r18884. Spotted by Herbert Thoma.
  • Regression fix: patch for colored tabs segfault in trunk, patch by Tom Van Braeckel
  • Other code/build changes
  • Remove test-load-module from tests
  • Fix Makefile.am handling of gncla-dir.h so that it will be removed so that 'make distcheck' will pass
  • Fix guint32 vs gint32 in gnc-uri-utils test.
  • Update POTFILES.in based on new source files
  • Complete unit tests for gnc-uri-utils api and fix bug found by running the tests.
  • More doxygen.log-prompted typo fixes, patch by Jesse Weinstein
  • Fix typo in previous commit
  • Add first test for the gnc-uri-utils api. This test verifies gnc_uri_get_components.
  • Implement the object reference infrastructure routines to allow a list of business objects referring to a specific other object (e.g. an account) to be determined. This will help fix bug 140400 because the account delete code can now determine a list of business (or other) objects which have references to that account, and prevent the account from being deleted while references still exist.
  • Add some new gobject-related infrastructure so that when deleting an object, it can be determined if there are other objects with references to that object (bug 140400). Some routines are normal routines, and some routines use the gobject structure to allow different implementations by different object types. Per-instance routine: gboolean qof_instance_refers_to_object(QofInstance* A, QofInstance* B) - returns TRUE/FALSE whether object A contains a reference to object B. Normal routine: GList* qof_instance_get_referring_object_list_from_collection(QofCollection* c, QofInstance* B) - Calls qof_instance_refers_to_object() for each object in the collection, and returns a list of the objects which contain a reference to B. Per-instance routine: GList* qof_instance_get_typed_referring_object_list(QofInstance* A, QofInstance* B) - returns a list of all objects of the same type as A which contain a reference to B. Being per-instance allows an object to use knowledge to avoid scanning cases where there are no references (e.g. billterms do not contain references to splits), or a scan is not needed (references from splits to an account can be determined using xaccAccountGetSplitList()). This routine can do a scan by calling qof_instnace_get_referring_object_list_from_collection(). Normal routine: qof_instance_get_referring_object_list(QofInstance* A) - For all collections in the book, gets an instance and calls its qof_instance_get_typed_referring_object_list() routine, concatenating all of the returned lists. This is the routine that external code can call to get a list of all objects with references to an object A. The list must be freed by the caller but the contents must not. Per-instance routine: gchar* qof_instance_get_display_name(QofInstance* A) - returns a string which can identify object A to the user. This could be used to display a list of the objects returned by qof_instance_get_referring_object_list() ("Invoice 0004 for customer C") so that the user can modify those objects to remove the references. Note that this is going to require internationalization, which has not been implemented yet. If not overridden by the object class, the default string is "Object " e.g. "Object gncCustomer 0x12345678".
  • Add event registration and handling from the qof_event_handlers. This way, the split view is updated correctly even on undo/redo.
  • Revert r18869, "Move gnc-ui-util.[hc] and gnc-euro.[hc] from app-utils to engine" Those files indeed belong better into app-utils; the app-utils defines several not-yet-GUI parts of gnucash, like many conversions from and to strings (more than those in these two files), so these files are well suited in here.
  • MSVC compatiblity: Fix include files in MSVC. Replace QSTRCMP by g_strcmp0 on MSVC.
  • Improve non-gnome UI compatiblity: app-utils can compile without gtk as well.
  • Add src/calculation and src/app-utils to cmake build system. app-utils is needed for the conversion from and to string for gnc_numeric, date, and other values.
  • Fix failing core-utils tests I simply removed the obsolete test cases. More work is still needed to add new valid tests.
  • Remove some unused variables.
  • Win32/MSVC compatiblity - Replace trunc() by floor() - Provide a round() workaround implementation for MSVC - Use g_strcasecmp instead of the libc one - Add include for libc replacements
  • Some more const-correctness in engine functions.
  • Update POTFILES.in for the moved dialog-userpass.c and the newely added gnc-jalali.c
  • Move gnc-ui-util.[hc] and gnc-euro.[hc] from app-utils to engine because they don't depend on gtk but are important additions for the engine types. In particular, the formatting of a gnc_numeric is defined there.
  • Fix circular dependency between gnome and gnome-utils introduced in r18842
  • MSVC compatiblity: snprintf is required to have a prefixing underscore. Also, more symbols of libguile/gc.h need explicit declspec on MSVC.
  • Add variant of gnc_engine_init which is suitable for statically the linked-in library.
  • Only use long long format specifiers if available - avoids error message when compiler thinks they're not available.
  • Fix parent/child relationships in billterms in case the parent hasn't been loaded yet. Remove child column from billterm table because it duplicates info in the parent column and just complicates loading objects.
  • Fix parent/child links for tax tables. If a tax table's parent table has not been loaded yet, remember the relationship, and after all tables have been loaded, fix up the rest of the parent/child links.
  • Handle NULL string pointer as a NULL guid
  • Add a mechanism so that the business sql backend module can provide the main sql backend with the order in which objects should be loaded. This will allow billterms and taxtables to be loaded before objects which contain references to those objects.
  • MSVC compatiblity: Replace QOF_BOOK_LOOKUP_ENTITY macro by a RETURN_ENTITY macro and add inline functions for lookup. MSVC doesn't accept the syntax with an inlined block, x = ({ foo; bar; value;}). Hence, this is being replaced by actual function definitions, and the body of those functions is defined by the new macro.
  • Delete unused variables.
  • Use a normalized uri format internally to refer to data stores. Data stores for GC can be a file (xml or sqlite3) or a database one some server (mysql or postgres). Wherever it makes sense internally, data stores will be referred to via a normalized uri: protocol://user:password@host:port/path Depending on the context and story type some of these parts are optional or unused. To achieve this, a new utility interface has been setup: gnc_uri__ that can be used to manipulate the uris or convert from non-normalized formats to normalized and back. For example, when the user selects a file in the Open or Save As dialog, gnc_uri_get_normalized_uri will convert the file into a normalized uri. Or when the actual filename is needed this can be extracted with gnc_uri_get_path. You can also test if a uri defines a file or something else with gnc_uri_is_file_uri. For the complete documentation, see src/core-utils/gnc-uri-uitls.h This commit installs gnc-uri-utils and modifies the source where it makes sense to use its convenience functions. This concerns all functions that had to deal with file access in some way or another, the history module and the functions that generate the history menu list and the window titles. Note that gnc-uri-utils replaces xaccResolveFilePath and xaccResolveUrl in all cases. xaccResolveUrl has been removed, because gnc-uri-utils fully replaces its functionality. xaccResolveFilePath is used internally in gnc-uri-utils to ensure an absolute path is always returned (in case of a file uri, not for db uris). But it has been renamed to gnc_resolve_file_path to be more consistent with the other functions. Lastly, this commit also adds a first implementation to work with a keyring to store and retrieve passwords, althoug
  • Make business backend initialization functions accessible when statically linking
  • MSVC compatibility: Disable "C99 designated initializers" by a compiler-dependent macro Same as r18755.
  • Make the backend initialization functions accessible when statically linking
  • Change the definition of QOF_STDOUT The old definition file: conflicts with normal uris that can start with file: as well. I have chosen > instead, which is never a valid filename and on unixlike systems associated with standard out operations.
  • Use proper qof CFLAGS/LDFLAGS since core-utils now uses qof
  • The webkit used on win32 has webkit_web_frame_print_full() defined in include files, so we don't need a potentially conflicting extern declaration.
  • If gmtime_r is defined as a macro, undef it
  • Add svn:ignore to src/core-utils/test
  • Remove invalid target (got copied from src/engine/test)
  • Build test-core before core-utils
  • Add the core-utils tests in the automake system
  • Move filepath related tests to core-utils/test
  • Undefine localtime_r as a macro (new mingw pthreads package defines it)
  • Add braces to make if-if-then-else structure clear and avoid GCC 4.4.0 error message
  • Remove gncmod-test from test-core It's not used and prevents test-core from being included in core-utils tests
  • Add missing NULL sentinel at end of g_strconcat() function call
  • Removed erroneously re-created src/engine/gnc-filepath-utils.c
  • Move binreloc library include
  • Note the moved files in POTFILES.in.
  • Remove C executable from cmake as it is no longer necessary.
  • Add missing link library after r18811.
  • Adapt cmake to the file move in r18811.
  • Add src/engine/test/test-resolve-url
  • Win32: Add download of cmake, disabled by default.
  • MSVC compatibility: strftime() doesn't know "%T" here. Also, g_fopen doesn't work, but fopen does.
  • Move gnc-filepath-utils and dependencies from engine to core-utils
  • Typo fixes, as found by doxygen.log, patch by Jesse Weinstein
  • Tweak to gnc-svnversion's bzr section, patch by Jesse Weinstein
  • Use "template-account" property to get/set template account.
  • Add "template-account" to schedxaction as a gobject property.
  • Simplify handling of sx template_acct column.
  • Rename GNCBook into QofBook everywhere and remove separate header gnc-book.h. The former was already #define'd on the latter, so its removal gets rid of one level of indirection which makes function lookup easier. Also, the macro (!) qof_book_get_slots was turned into a normal function again because that's what functions are for (and otherwise the additional declaration in engine.i would break).
  • Decrease compiler warnings by removing unused variables.
  • Reduce compiler warnings by replacing strerror() with g_strerror() and similar glib replacements.
  • Win32: Add more header includes where necessary to avoid using undeclared functions.
  • Comment out unimplemented function. Improve const-correctness.
  • Include gtk/gtk.h instead of gtk/gtkclist.h as recommended by Gtk
  • Fix make dist r18765 introduced test target test-resolve-url, but no source file test-resolve-url.c Removed the target.
  • Re-indentation of source code, next batch: src/gnome-utils/* This also strips trailing whitespaces from lines where they existed. This re-indentation was done using astyle-1.24 using the following options: astyle --indent=spaces=4 --brackets=break --pad-oper --pad-header --suffix=none
  • Re-indentation of source code, next batch: src/register/* This also strips trailing whitespaces from lines where they existed. This re-indentation was done using astyle-1.24 using the following options: astyle --indent=spaces=4 --brackets=break --pad-oper --pad-header --suffix=none
  • Re-indentation of source code, next batch: src/business/* This also strips trailing whitespaces from lines where they existed. This re-indentation was done using astyle-1.24 using the following options: astyle --indent=spaces=4 --brackets=break --pad-oper --pad-header --suffix=none
  • Re-indentation of source code, next batch: src/engine/* This also strips trailing whitespaces from lines where they existed. This re-indentation was done using astyle-1.24 using the following options: astyle --indent=spaces=4 --brackets=break --pad-oper --pad-header --suffix=none
  • Re-indentation of source code, next batch. This also strips trailing whitespaces from lines where they existed. This re-indentation was done using astyle-1.24 using the following options: astyle --indent=spaces=4 --brackets=break --pad-oper --pad-header --suffix=none
  • Replace and-let* in scheme script so that srfi-2 isn't needed.
  • Replace one more g_list_append by g_list_prepend.
  • MSVC compatibility: Somehow fdopen() doesn't work during the trace file initialization. Use fopen() instead.
  • Win32 build: libguile needs minor tweaking for MSVC compatibility.
  • MSVC compatibility: Fix r18748, r18761 by replacing strncasecmp() with strnicmp().
  • MSVC C++ compatibility: Rename the internal name of union _GUID because _GUID is a builtin keyword here. This does not concern the typedef name, only the internal union name, so it doesn't harm us.
  • C++ compatibility: namespace is a keyword, so don't use it as variable name.
  • C++ compatibility: export is a keyword, so don't use it as a member name.
  • Add support for passing a Timespec as a boxed GValue
  • Fix test makefiles. Many tests now need to include other libraries because files have changed directories.
  • Add more gobject property definitions to GNCPrice, Transaction, SchedXaction and Split.
  • Win32: Create the MSVC import library for libguile during install.sh.
  • Remove static current_session variable of libqof - we keep one in gnc-session.c already.
  • Doxygen improvements, patch by Jesse Weinstein
  • More changes where SQL backend uses gobject properties to load/save objects.
  • More conversion to read/write objects from sql backend using gobject parameters
  • Start to add properties to business objects. Currently only 1 property per object, but this infrastructure will allow more generic importing of objects.
  • Take advantage of the initial property definition for Transaction, Split, GNCPrice and SchedXaction by replacing custom access routines with gobject properties.
  • Add a few gobject properties to some engine object types. This adds more of the gobject infrastructure to Transaction, Split, SchedXaction and GNCPrice. Gobject properties provides a standardized interface to the engine objects which should allow standard and simplified read/write mechanisms. For the sql backend, for example, db columns can be mapped to properties. In a generalized csv importer, csv columns can be mapped to properties.
  • Partly revert r18748, "Win32 compatibility": lib/libc directory doesn't have glib available.
  • Add a "make indent" target, but watch out with using its result. The "astyle" indent tool unfortunately behaves significantly different in its different versions (1.22, 1.23, 1.24) even with identical options. That is, the basic indentation is the same, but in a large project such as ours, there are just too many special cases which astyle doesn't get identical due to its bugfixes and new features. Hence, please use the result of this target with great care, and if in doubt, just use it for your own amusement but don't commit the resulting changes. Thanks!
  • Fix up some doxygen comments
  • Don't include gnc-lot-p.h where not needed
  • Win32: Fix libbonoboui compiling.
  • MSVC compatibility: Microsoft doesn't have C99 "designated initializers". Those were introduced in r17724, bug#539957, but apparently this C99 is not supported by MSVC and won't be for some time to come. Hence, for MSVC we need the workaround to define a macro that will shadow the member names. However, the initialization itself works fine and non-MSVC code is unchanged, so I think we can live with that.
  • MSVC compatiblity: Struct initialization doesn't work as expected. Somehow, the struct initialization containing a gnc_numeric doesn't work. As an exception, we hand-initialize that member afterwards.
  • MSVC compatiblity: open() flags and S_ISDIR doesn't exist on MSVC.
  • MSVC compatiblity: Use a char* pointer for the memcpy() input argument. This is required by MSVC because we do some pointer arithmetic in the memcpy() argument, but in order to do this, MSVC wants to know the pointed-to type of the pointer because pointer arithmetic increases the pointer not by a number a bytes but a number of sizeof(type). MSVC thinks for void* it doesn't count bytes. We achieve the desired effect by using a char* pointer so that bytes are counted.
  • MSVC compatiblity: Add defines for functions/types which are available under different names in MSVC.
  • MSVC compatiblity: Array initialization in MSVC requires a constant, not a variable. That is, gcc accepts a constant variable in many cases now, but MSVC doesn't accept it. So it must be turned into an old preprocessor define.
  • MSVC compatibility: Remove forward declaration of static array by reordering the function that uses it.
  • Win32 compatibility: Use glib wrappers of non-usual POSIX functions.
  • More header include compatibility: Watch out for HAVE_UNISTD_H.
  • Re-indentation of source code, next batch. This also strips trailing whitespaces from lines where they existed. This re-indentation was done using astyle-1.24 using the following options: astyle --indent=spaces=4 --brackets=break --pad-oper --pad-header --suffix=none
  • Convert GNCLot to use more gobject features. Removes all direct access to lot object fields, which are now accessed through functions or property names (for backend sql load).
  • Modify POTFILES.in to handle source files moved to a new directory
  • Also build backend/xml in cmake.
  • Reverted 18699
  • Clarify required steps to setup windows build environment. The mingw website has changed quite a lot since the README was written and some of the url's used in it were confusing. I have changed the url's to point to the actual packages on sourceforge (current at the time of this writing) and added some extra details where I had trouble understanding the actions to perform.
  • Doxygen fixes - Have this file show up under module "Utility Functions" - Normalize the function descriptions (some were not in doxygen format) - Add a global file description - rename parameter 'file' to 'filename' for better consistency (note this required an internal parameter to be renamed from filename to new_filename)
  • More minor MSVC code fixes. However, this code doesn't compile with MSVC9.0 for a few reasons: 1. libguile.h comes with its own scmconfig.h which contains HAVE_STDINT_H whereas MSVC doesn't have that. This is stupid guile which doesn't accept the fact that the user uses a different compiler than how they compiled guile. 2. Some initializations are not supported: Account.c:3312 etc. 3. The C99 "designated initializers" of e.g. Account.c:4661 ff. (r17724, bug#539957) are not supported by MSVC9.0 - this is the hardest problem of these all.
  • Make CMake system more complete so that it builds on win32/mingw. Also, add a test executable to check that we got all the library dependencies.
  • More CMake work: Build swig wrappers correctly. Build gnc-module.
  • Cosmetic: Remove duplicate include of gnc-engine.h
  • Remove trailing whitespace
  • Minor doxygen change and lots or trailing whitespace removed
  • Remove GNOME_PRINT_{CFLAGS,LIBS} from the Makefile templates
  • Spelling errors and trailing whitespace removal
  • Remove reference to gnome print in the comments GnuCash no longer uses gnome print. It has been replaced with gtk print.
  • Remove two more popt references in support files.
  • Remove popt requirement from configure GnuCash doesn't use it. At the same time, I removed a check that has been commented out since the beginning of the revision history (somewhere in 2007). This check tested for the presence of popt.h to then run some libtool changes. As I said this whole block has been commented out since the beginning of time, so I considered it to be obsolete, more even so now that the popt requirement has been removed.
  • Remove popt references - popt has been replaced with the GOption infrastructure. So there's no need to include the popt.h file. - Also rewritten the comment that was elaborating on popt vs GOption - Finally removed the loglevel option (which was excluded from the compile anyway) that still referred to popt.
  • Fix minor spelling errors
  • When creating lists of database objects, use g_list_prepend() rather than g_list_append(). There may be cases where the list order is significant and thus needs to be reversed, but that is not true in these cases. This provides a large improvement in database loading performance. Analysis and basis patch supplied by Donald Allen.
  • Update documentation references to Active Perl (5.8->5.10)
  • Remove redundant entries in EXTRA_DIST
  • More experimental cmake building. Except for the scheme wrappers this seems to work until at least the engine module. However, I didn't tackle the issue with the generated headers which contain some installation paths - but those we should get rid of anyway.
  • Move two gtk-dependent files from src/core-utils to src/gnome-utils. core-utils depends on glib and additionally guile and gconf, but not (yet) gtk. Those two files which do are moved to the next module which already depends on gtk, which is gnome-utils.
  • Add some experimental CMakeLists.txt which can compile the libqof part, on Linux, Windows/mingw and (no joke) Windows/MSVC. I'm interested in some tests with the cmake build system, but if it doesn't prove useful I will remove it again within a few weeks.
  • Make libqof compatible for MSVC9.0 compiler (no joke). The main change is that the syntax for variadic macros is slightly different in MSVC compared to gcc. But they exist, so offering the log macros in the different syntax is sufficient.
  • Make more header inclusions conditional on whether they exist.
  • Update .gitignore, proposed by Jeff Kletsky
  • Make sure file urls actually contain path information or are NULL
  • Remove redundant GLIB check.
  • Bump minimum required versions of gtk+, goffice and gtkhtml gtk+: 2.10 goffice: 0.5.1 gtkhtml: 3.14
  • Add a starter script for gnucash under ddd (a gui frontend for gdb)
  • Build fixes for EL5 after glib 2.12 requirement
  • Ensure that GNC_DOT_PATH and other gnc_dotgnucash_dir() logic is used for all cases, remove hard-coded references to /usr/etc, /usr/share, /usr/local/etc, and /usr/local/share while providing for xaccResolveFilePath to actually search the data and sysconfdir directories used in the build. (gnc_build_data_path): New function, just a copy of gnc_build_book_path. Needed for rewrite of xaccResolveFilePath. (xaccResolveFilePath): Cleaned out the hard-coded paths and weird file path contruction functions and rewrote the function to use gnc_path_get_foo and gnc_build_data_path without all of the silly indirection. Removed superfluous URI checks (which are correctly perfomed by xaccResolveURL()). (MakeHomeDir, xaccPathGenerator, xaccDataPathGenerator) (xaccUserPathGenerator): Deleted; their functionality is replaced as noted above. (check_file_return_if_true): Renamed check_file_return_if_valid, a more descriptive name.
  • Bump glib2 minimum requirement to 2.12. At the same time, remove all the conditional code and workarounds that were in the code to cater for glib < 2.12. Note: this commit will require a rerun of autogen.sh and configure.
  • README referred to a non-existent file So per a suggestion on IRC, I took the reference out. Patch by Jesse Weinstein.
  • Win32: Update libxslt version, but it needs its own copy of libxml2.dll. Apparently the gnome-provided libxml2 has the DLL filename libxml2-2.dll, but the binary from xmlsoft.org still has the filename libxml2.dll.
  • Win32: And one more dependency upgrade (causes missing libxml2.dll complaints otherwise)
  • More win32 dependency version updates.
  • Update libpng package dependency for win32 to 1.4.0
  • Small spelling fixes in the comments
  • Re-indentation of source code, next batch. This also strips trailing whitespaces from lines where they existed. This re-indentation was done using astyle-1.24 using the following options: astyle --indent=spaces=4 --brackets=break --pad-oper --pad-header Discussed at http://lists.gnucash.org/pipermail/gnucash-devel/2009-August/026121.html
  • Update gnome package versions.
  • GDate values weren't being properly fetched from objects to be saved in a database column if they were fetched as a gobject property.
  • Clean up account column in the lot table to specify that the guid is an account reference. Simplifies the code a bit, and makes future use of foreign keys easier.
  • If building for WIN32, use webkit_web_frame_print_full() so that a GtkPrintOperation object with the correct units can be used to prevent font size problems (see bug 591177). On other platforms, use webkit_web_frame_print() because some distros seem not to have webkit_web_frame_print_full() (and also don't have the font size problem so on those distros, we don't need to create our own GtkPrintOperation object).
  • Cutecash Some of the GnuCash developers have decided to rewrite the UI for the cross-platform Qt toolkit from TrollTech. The goal is a simpler UI which is more powerful and easier to develop. This project has gotten the name "Cutecash". It uses the same back-ends and engine as gnucash. Only the UI is different. The source for the Cutecash UI is in the same tree (and therefore, the tarballs) as GnuCash, but at this point, no MAC or Win32 builds are being produced.
  • Cutecash: Add Commodity wrapper. Use gnc-exp-parser for numbers. - Allow amounts to be edited. - Let the date column be handled by the QDate delegate with a QDateEdit widget
  • Cutecash: Enable entering of more cells in register. Some code cleanup. Add class documentation.
  • Enable editing of the "Description" column in the split list view - WITH UNDO! The Qt Undo framework is almost like magic. We just have to create a command object instead of directly manipulating the value, and suddenly the undo/redo just works. This is fun!
  • Cutecash: Add QUndoStack to implement all editing through the Command pattern and make it undoable.
  • Cutecash: Enable closing and re-opening the different tab views. Also, change many main window slots to make use of the auto-connection feature because it makes the slot intention much easier to read. Also, note how we store the Tab position, title, isEnabled state in dynamically allocated properties in the Tab widget itself - this is a rather cool feature of QObject here (see reallyRemoveTab() and viewOrHideTab()).
  • Cutecash: Add Recent-File menu.
  • Cutecash: Enable tab moving and other UI features of Qt.
  • Cutecash: Add Timespec conversion to QDateTime. Add display of transaction date in register tabs.
  • Cutecash: Display account balance in tree and split amount in account register.
  • Cutecash: Add gnc::Numeric wrapper for gnc_numeric.
  • Implement a table widget with the list of the splits of one account, and open this if an account in the tree is double-clicked. Date and values/amounts can follow next, once those types are suitably wrapped into C++ as well.
  • Cutecash: Add progress bar during loading the file.
  • Implement the account list data model as a specialization of the account tree model. This is helpful in order to understand Qt's Model/View structure, so both (list and tree) are still available.
  • Cutecash: Fix guile version number query. Patch by Herbert Thoma.
  • Cutecash: Add a tree view of the accounts.
  • Cutecash: Fix CMakeLists for change in guile lookup, r18846
  • Cutecash: Remove QSharedPointer because manual delete is sufficient. Also, the QSharedPointer cannot be used for bookkeeping of a C pointer to any gnucash object because it refuses to work if it doesn't know the actual struct definition, which in gnucash is always private. The boost::shared_ptr would work without (by the custom deleter argument in the constructor), but QSharedPointer doesn't (the custom deleter is accepted only in addition to the known storage size, not alternatively), so it is pointless here.
  • Cutecash: Add version check for guile and define HAVE_GUILE18 if appropriate.
  • Adapt cutecash to r18842.
  • Cutecash: Fix extern "C" usage: Must not enclose system includes, supposedly.
  • Cutecash: Allow older glib versions as well.
  • Cutecash: Add business-core including business-core/xml into the executable.
  • Add copyright notices in cutecash source code files.
  • Cutecash: Copy some more icons into the program. Add a clickable hyperlink.
  • More C++/Qt4 frontend work.
  • Add example main window in C++ and Qt that links against gnucash-engine. The example was based on Qt4's "application" example, but the main window layout is done through the .ui file already.
  • Finish cmake build system for the C++ experiment. To build this: mkdir build-cpp cd build-cpp cmake .. make ./src/gnc/cutecash
  • C++ experiment: Extend the AccountModel into a table with name and description. Use QString everywhere as well.
  • C++ experiment: Add first simple model/view widget for the loaded account list.
  • Some more C++ work. Opening an existing file works, even though nothing is visible so far. The implementation of a scoped_ptr wrapper around a C object uses the boost library, though, because writing our own implementation of a scoped_ptr with custom deletion function is too non-trivial and I rather re-use the boost::shared_ptr here instead of making our own mistakes.

New in version 2.3.10 (April 22nd, 2010)

  • Revert r18654. Current GtkHtml implementation crashes the windows build whenever a report is opened.
  • Better fix for segfault at startup caused by bug 608329's patch and a renamed Accounts tab. Patch by Tom Van Braeckel
  • Fix crash at startup on renamed Accounts tab, bug#608329. Patch by Tom Van Braeckel.

New in version 2.3.9 (April 22nd, 2010)

  • Bugs fixed
  • Bug #608436: Add auto-clear feature Patch by Cristian KLEIN: = Usage scenario = John keeps his personal accounting in GnuCash and writes all credit card expenses therein. On weekends, we checks his Internet Banking and sees that some transactions have been recorded. He would like to clear those transactions in GnuCash, but it is tiresome to go through each Internet Banking transaction and do manual comparison with GnuCash records, especially since Internet Banking transactions might be in a different order than in GnuCash. John would prefer having an "auto-clear" feature. Given the "current amount" from the Internet Banking, he would like GnuCash to clear the transactions for him, if and only if, there is a unique combination of transactions that could achieve this. If there is no solution, or if the solution is not unique, GnuCash should warn him and John must manually clear the transactions.
  • Bug #590332: New eguile-based Tax Invoice report Patch by Chris Dennis.
  • Bug #606053: Add stylesheet with footer Patch by edodd@billiau.net and Frank H. Ellenberger.
  • Bug 586122 - The AqBanking Wizard can't be loaded: plugins\20 folder to be renamed into plugins\16 The patch evaluates and configures the proper paths at build time, retrieving the required info directly from the aqbanking source
  • Bug #608329: Add Color to Account tabs Patch by "Bob": I wanted a way to select an account easily when I have several accounts open in the main window. I decided to add a color option to the account so that the tab can be set to a specific color and so easily identifiable. This could also be used to link like minded accounts together. This patch also fixes the account tooltip not being updated when the name changes.
  • Bug #534210: Add individual check item types. Patch by Thomas Troesch: The proposed patch does: 1. Changes the chk file key to Blocking_Chars as described in 607522 ( this had been dropped by mistake ). 2. Add several fields to the Custom tab in the print check dialog. Locations for: a. split memos fields. b. split accounts ( e.g. Expenses:Auto ) c. split amounts ( e.g. GBP 21.40 ) The splits do not include the last split in the transaction. The keys in the chk format file are: SPLITS_AMOUNT SPLITS_MEMO SPLITS_ACCOUNTS 3. Memo was added to the custom tab. This is the memo from the split that matches the account from the register.
  • Bug #608306: check amount_word should print the fraction correctly. Patch by Thomas Troesch: Checks printed the wrong string for the amount_words. The utility number_to_words had produced e.g. from 100.04 -> One Hundred and 4/100. The word string should be One Hundred and 04/100.
  • Bug #608874: Spelling fix for Emoluments Patch by Adrian Bridgett.
  • Bug #589320 Price Editor - Currency Namespace does not show up This bug was introduced by r18062 (applying a patch from bug #580281 Entering multiple pices with price editor is tedious) For some unknown reason, r18062 assumed exchange rates are not supposed to be edited via the Price Editor dialog.
  • Bug #105669: Improve error handling in gz_thread_func. Honor errors when reading/writing from/to a compressed file or the pipe to the main thread.
  • Bug #606728: Catch errors when opening saved-reports-2.4 for write.
  • Bug #105669: Add checks to detect errors on write, especially if there no space left on the disk. Check the return value of fprintf and use ferror where libraries as libxml do the write. The change may not be perfect yet and a review would be nice. Still, it detects quite a few errors that, without it, slip through and may destroy valuable data.
  • Bug #607522: Add ADDRESS to check printing Patch by Thomas Troesch: The patch does three things: 1. Adds the ability to print an address on checks. The Print Check dialog is changed to have 5 address lines. The first field is filled in with the same data as the PAYEE check item. The other lines are blank. The check format keys have a new check-item type 'ADDRESS'. It behaves like other text check-item types. The address fields on the dialog are set 'not-sensitive' if the current format does not have an ADDRESS check item defined. The Custom Field tab has a new line for the address location. 2. Added new check format key - Blocking_Chars. This is to put the blocking character feature into the check format file. It is currently only in the preferences dialog in the printing tab, and therefore currently applies (or not) to all text fields in th_e check format. By adding the key Blocking_Chars_n to the check format, the blocking characters can be applied to text type check-items individually. Its really useful when printing stubs and so on. (NOTE: blocking characters are printed around a field to protect against alteration e.g. ***$100.00*** vs $100.00) 3. Included a Voucher check template. This is a full page check with the check on top and which has two stubs below. There are other voucher formats ( middle and bottom ) , but the check printing functionality would require separate templates for the different formats. Also changed the Quicken/Quickbooks US-Letter check format to include the ADDRESS check item and blocking around the AMOUNT_NUMBER field. I made a change to the Quicken-wallet check to add blocking characters around the AMOUNT_NUMBER field, and I added a clipping rectangle definition to the NOTES and PAYEE fields the were placed in the check stub area ( if the fields were too long, they would print into the check area ).
  • Bug #607517: Migrate print.glade from glade-2 to glade-3 format. Patch by Thomas Troesch.
  • Bug #607246: In qof_string_number_compare_func, use base 10 and do not allow octals to sneak in. Otherwise, transaction number 0108 (octal 010=8) will sort before 0107 (octal 0107=71).
  • Bug #607255: Repair Hungarian report main menu, by Attila Nagy.
  • Bug #607185: Add f-q workaround for missing date. Patch by "meo": If for whatever reason finance-quote is unable to get a date for a quote or to convert it to the standardized form, gnucash is unable to use the otherwise correct quote. With web pages being updated definitively more frequently than finance-quote, this is quite a nuisance. Up to now, gnc-fq-helper emits an error message + the quote, a combination gnucash is unable to process. This patch presents a workaround. I would prefer using the current date + 12 hours rather than current date + time, but this is open for discussion.
  • Bug #606077: Fix uncommon configure option --program-suffix. Patch by Peter Selinger: OK, the attached patch fixes part of this problem. Specifically, it applies the specified transform (from ./configure option --program-suffix, --program-prefix, or --program-transform-name) to the files src/bin/gnucash-valgrind src/bin/gnucash-gdb src/bin/gnucash This is done in the Makefile at compile time. In the end, I am not sure why the GnuCash configure.in provides the --program-suffix mechanism at all, since apparently it hasn't been used in 10 years. According to info autoconf, these are supposed to be enabled by the macro AC_ARG_PROGRAM, but I don't see this in configure.in. So perhaps it has been enabled by accident and shouldn't really be there.
  • Bug #511606: Fix ipmt() and ppmt() functions in scheduled transactions. Patch by Jean-Baptiste: " The instance counter is now incremented into increment_sx_state function."
  • Bug #538902: Moves the "New Accounts Page" menu option to the "View" menu Patch by Steven N. Severinghaus.
  • Bug #348701 Wrong currency symbol when currency is set to DKK This fix reverts changeset r7200, which caused some currency symbols to be replaced with the EURO sign. This replacement was a workaround for gtkhtml1 and no longer needed.
  • Bug #606626: Change wording from Druid to Assistant
  • Bug #589032: Replace some strcmp() by safe_strcmp() to fix crashes on NULL strings.
  • Bug #602051: Replace the word "string" in GUI messages by non-developer wordings. Same for dialog -> window.
  • Bug #602091: Fix broken Due Bill Reminder in all non-C locales The Due Bill Reminder used the translated form of "Invoice" as query string predicate, which can't work because the untranslated string must be searched for.
  • Bug #582325: Refactor some deprecated guile functions: SCM_BOOLP -> scm_is_bool SCM_NULLP -> scm_is_null SCM_FALSEP -> scm_is_false SCM_NFALSEP -> scm_is_true SCM_VECTORP -> scm_is_vector SCM_NUMBERP -> scm_is_number SCM_CONSP -> scm_is_pair SCM_STRING_CHARS -> scm_to_locale_string Specifically the replacement of SCM_STRING_CHARS with scm_to_locale_string fixes Bug #582325 Additionally, I have renamed these internal functions for global consistency: SCM_PROCEDUREP -> scm_is_procedure SCM_LISTP -> scm_is_list SCM_EXACTP -> scm_is_exact SCM_EQUALP -> scm_is_equal
  • Bug #605414: Clarify Quick-fill tip of the day Patch by James Raehl: Patch adds Tab key step to the Quick Fill tip. New users do not know about this step.
  • Bug #605415: Relax limit on scheduled days in the future Patch by James Raehl: Expand scheduled transaction date limit by 366 days Usually, scheduled transactions are limited to 365 days in the future. This patch doubles that limit plus adds a day for leap years. The patch supports a method for separating transactions that are not yet posted at the bank, by assigning an initial date one year in the future. Under this method, scheduled transactions and their reminders are one year in the future, since they have not happened yet.
  • Fix bug #603215 - Custom report from Budget Report does not save selected Budget Problem was how budget option tried to create the lambda function to restore the value.
  • Bug #479581 gnucash --nofile hasn't application name in window title When no file is selected, the title now becomes "Unsaved Book - GnuCash". The first part is following Gnome HIG guidelines, the latter part is a preference of several GnuCash developers. Furthermore, the "- GnuCash" suffix will always be appended, not only when no file is open.
  • Fix #586122 (follow-up to r18488) by using aqbanking/version.h from its installation path. Also look up the gwenhywfar so-name accordingly.
  • Bug #609402 Add Japanese resource to Windows (inno) setup
  • Updated translations or translation-related changes
  • Updated Dutch translation, by Mark Haanen and Jos, copied from the Translation Project.
  • Updated Japanese translation, by Yasuaki Taniguchi, copied from the Translation Project.
  • I18n fix of concatenated expression. We must not concatenate a word expression from different strings. Instead, we must translate each expression separately. Pointed out by Mark Haanen.
  • I18n improvement: Translate plural-dependent string correctly by ngettext().
  • Minor updates to British English translation by Mike Evans. Copied from bug#602051.
  • Fix translation issues caused by r18474.
  • Update Chinese (simplified) translation, copied from the Translation Project.
  • Update British English translation by Mike E.
  • Remove de_CH translation because it ceased to be maintained. The normal German translation will appear for de_CH locales, just as in 2.2.x.
  • Fix typo: accouting -> accounting
  • Update German translation
  • Add initial Persian translation (Farsi) by Mehdi Alidoost.
  • Fix translation error in r18550, bug#602051.
  • Update Japanese translation, copied from the Translation Project.
  • Fix missing header information about Farsi plural forms in fa.po, according to what has been explained to me.
  • Add disambiguation prefix to the word Split where it is the action of a Stock Split.
  • Add new source files to POTFILES.in
  • Updated Dutch translation, copied from the Translation Project.
  • Update German translation.
  • Update the translations with the latest string template.
  • I18n improvement: The account name of the other account in multi-split transaction is extended to conform to the name in the register. Otherwise, the string Split from here has the ambiguity with the button labeles Split, which is the verb, whereas here we need the noun.
  • I18n improvement: Add disambiguation prefix to the account code of the other account in a multi-split txn. Without the disambiguation, the string here is identical to the button labeled Split, but that one is for sure something different from here, namely the old verb vs. noun issue.
  • Other user-visible changes
  • Small UI string corrections related to the recent tax enhancements. Patch by J. Alex Aycinena.
  • Payment dialog layout improvements - Rearrange the frames so that the Transfer Account frame gets more space - Add tooltips to (owner), (invoice) and amount related widgets. - Properly align the invoice_label widget
  • Watch out for a missing pricing transaction when looking for price data.
  • Add a comment about GNC_COMMODITY_NS_ISO and GNC_COMMODITY_NS_CURRENCY.
  • Add new columns for the name of the lot each split is part of and for the value of the split. Both are optional and default to off.
  • Call gnc_{suspend|resume}_gui_refresh while closing accounts and scrubbing lots to make them go much faster and avoid flicker.
  • Watch out for a null account in render-corresponding-account-subheading, it happened to me once.
  • Pass the correct report name to income-statement-renderer-internal when rendering a profit and loss report.
  • Don't leak a file port when saving reports.
  • Reset found_trans_split when the transaction being considered in gnc_split_register_find_split turns out to be the wrong one.
  • Fix an off by one error in gnc_ui_sx_loan_druid_create.
  • Increase the size of the Guile stack to avoid stack overflow errors.
  • Some usability improvements to the Save As.../Open dialog (part 2) Forgot to add the changes in c code...
  • Some usability improvements to the Save As.../Open dialog * The dialog gets a proper title * Only show the File frame or the Database frame, as relevant to the chosen data format * Set a minimum width. Without it the dialog comes up too narrow. * Some minor layout changes (spacing, justification,...) to harmonize with other GnuCash dialogs.
  • Don't show hidden accounts in the transfer dialog. This should be connected to the UI, but my ubuntu has glade 3 which mucks up the .glade files.
  • Add a Select Children button to the widget used for account selection in report options dialogs.
  • Load gnc-build-url from the correct file so the accounts list option works again.
  • Speed up the balance sheet report by a factor of 5 or so by using C functions instead of Scheme functions to get account commodity balances. This idea is borrowed from the EGuile version of the balance sheet report.
  • Avoid a bunch of assertion failures when the general ledger is open. The general ledger has no account so attempts to get the balance of the register's account pass a null account pointer to functions that won't accept that. Also stop leaking a GList in the functions that get account balances.
  • Remove the "Compute unrealized gains and losses" option from the balance sheet report. Instead compute unrealized gains and losses only if the current book does not use trading accounts.
  • Change 'Int' to 'Interest' and 'Div' to 'Dividend' in action strings
  • Use string saved-reports-2.4 in the description of the save report action.
  • Use gtkhtml as html render in the Windows build
  • [Patch] Corrections to taxtxf.scm Patch by J. Alex Aycinena: I attach a patchfile that corrects two problems with taxtxf.scm: the report would not gracefully handle the cases where, 1, a datafile from an earlier version of gnucash might have tax codes assigned to accounts and no tax-entity-type code assigned to the file, and, 2, some cases where accounts had no tax code assigned and the tax-related flag not set.
  • Have the Post date widget grab the focus by default when opening the post invoice dialog.
  • Updated txf.scm for 2009 US tax form changes by J. Alex Aycinena.
  • Fix crash when copying a currently edited transaction in the register.
  • Other code/build changes
  • Remove gnucash.lsm from EXTRA_DIST
  • Fix doxygen markup
  • Small documentation improvements for better doxygen docs
  • Move splint-defs.h to src/debug. It's only used for debugging. Note that the current splint-defs.h causes compilation errors due to redefinition of function declarations. These should be fixed when splint is to be run again.
  • Win32: Fix building of libgoffice. Required libgsf to not remove the build directory, hence part of r18559 need to be reverted.
  • Fix null-pointer dereference from r18612
  • Remove Linux Software Map description. It's unmaintained for years now.
  • Move count.* to util Also I made a first attempt at improving the line count. The old script missed a number of files in the directories it counted. The script is still not in line with the current code base though. A number of directories are still not counted (like gnome, engine, ledger, ...)
  • Moved svnlog2ul from contrib to util It makes more sense in util as it is by and for the devs, not contributed by an external user for external use.
  • Add svnlog2ul.sh, and accompanying xslt sheets. svnlog2ul.sh is a script to extract the commit messages from svn between two releases and converts them into a simple html unordered list. This is a useful aid to create the news pages on the website.
  • Move valgrind suppression rules to debug subdirectory This will require a new run of configure as some makefiles have changed
  • Set svn:ignore on pl accounts like the other account directories (Meaning: ignore Makefile and Makefile.in)
  • Remove the old, obsolete postgres backend and its tools I also changed some of the documentation that referred to it, but there are still some references left in the (unmaintained ?) design documents.
  • Win32: Hopefully fix goffice installation.
  • Free sort_keys as allocated by g_utf8_collate_key in ExtensionInfos.
  • Fix script to check for > 2.8 entries to remove The minimal Gtk+ requirement has been set to 2.8 recently. This script still removed glade parameters that are valid in 2.8. This patch fixes that.
  • Corrections to r18610 to permit compiling against older versions of glib
  • Remove more executable bits from data files
  • Remove executable flag from data files
  • Fix URL of ActivePerl.
  • Minor changes to global project files 1. Fix spelling errors in HACKING - appearenet -> apparent (patch by Tom Van Braeckel) - supressions -> suppressions 2. Keep the contributer list sorted alphabetically in AUTHORS
  • Fix "make distcheck". Patch by Jan Arne Petersen
  • Reverse r18597
  • Create routines qof_book_get_string_option() and qof_book_set_string_option() to get/set a kvp string, respectively. qof_book_set_string_option() also handles saving the book so that the kvp is updated in the db. In the future, qof_book_set__option() and qof_book_get__option() should be created, where type is boolean, int, double, ... In addition, other places which handle options in the book should use these routines.
  • Create qof_book_begin_edit()/qof_book_commit_edit() routines. These need to be added around lines which set kvp values for the book, and the dirty flag does *not* need to be set.
  • Revert 18490/18491/18527 - I'm not sure it's actually deleting the objects without affecting the database.
  • Add ChangeLog.2009 for the last year.
  • Use correct routine to add a newly loaded entry to the correct bill. r18302 fixed the entry loading problem for invoices, this extends it to bills.
  • Remove build directories of dependencies after their successful installation.
  • Remove a couple of unused local variables left over from a previous iteration of the trading account changes.
  • Fix guile-1.6 compatibility of r18541 (bug#582325). We still suppport guile-1.6, hence we can use the functions introduced in guile-1.8 only by providing our own backward compatibility macro definitions in guile-mappings.h.
  • Update gwenhywfar/aqbanking version numbers for win32 build.
  • Fix gwenhywfar version lookup by tightening the RE used
  • Need to export the variables for glib to see them
  • temporarily disable the gwenhywfar version lookup - there are multiple lines matching GWENHYWFAR_SO_EFFECTIVE
  • Really fix r18495 (#586122) to look up the so-name of gwenhywfar correctly.
  • Require gtk+ >= 2.8
  • Remove unneeded information lines about "qof" - we're using our internal code always anyway.
  • Re-indentation of source code, next batch. This also strips trailing whitespaces from lines where they existed. This re-indentation was done using astyle-1.23 using the following options: astyle --indent=spaces=4 --brackets=break --pad-oper Discussed at http://lists.gnucash.org/pipermail/gnucash-devel/2009-August/026121.html
  • Allow digits in Gtk action names created in gnc_create_extension_info. This should fix bug 447339 as long as all report names are unique considering only alphanumeric characters.
  • Free accounts/lots/splits/transactions when closing a book
  • Fix a couple of echo commands and set warnings=no-portability when running automake.
  • Make xaccSplitDump and xaccTransDump work for debugging.
  • Teach xaccSplitConvertAmount that 0*x = 0. Avoids looking up non-existant exchange rate.
  • Add some missing Leave() calls.
  • Symlink the reports to the build directory to make it easier to use them when running in place after a build without installing GnuCash.
  • Use resolve-interface instead of resolve-module when loading reports fo only the exported interface gets imported instead of everything defined in the file.
  • Make the dbi backend tests work correctly if dbd is installed in a nonstandard location. Supply a GNC_DBD_DIR environment variable to the tests so it knows where to find the database modules. This is needed if libdbi is installed via MacPorts on OS X.
  • Add flags to help with valgrind on glib
  • Free prices so that they can be deleted when the book is closed
  • Free budgets when closing a book
  • When closing the book, destroy all lots (found by valgrind)
  • Free memory leaks
  • Add qof_backend_module_finalize() routine to call dbi_shutdown() to free allocated resources.
  • Add qof_finalize_backend_libraries() which is called during shutdown. This routine checks each backend library for an exported qof_backend_module_finalize() routine, and if it exists, calls it so that the backend can free any resources which have been allocated.
  • Fix some memory leaks found by valgrinding tests
  • Remove erroneous use lib from gnc-fq-*, along with PERLINC setup in configure.in
  • Decrease verbosity during win32 packaging: Inno, gconftool-2, htmlhelp compiler (hhc) with less output.
  • Fix some incorrect ENTER() and LEAVE() calls.
  • Fix up some gnc:debug calls (and one comment).
  • Fix a couple of initialized variable warnings.
  • Add missing PORTFOLIO_LEDGER register type to switch statement in gnc_split_register_get_debcred_entry.

New in version 2.3.8 (December 23rd, 2009)

  • Disable it_IT help in the win32 binary
  • Recreate index after updating table
  • Temporarily disable currency trading accounts so that 'make check' will pass
  • Fix test-resolve-file-path - results have changed
  • Fix compilation problem in test
  • Add src/gnome-utils/gnc-tree-model-account-drag.c to po/POTFILES.in
  • Set debug level for gnc.backend.dbi automatically to DEBUG.
  • Fix memory leak: Let the pixbuf renderer for goffice plots be unreferenced
  • Add libguile CFLAGS and LIBADD to libqof build
  • Fix too-new gtk_dialog_get_content_area function of r18413: Patch by J. …
  • Transaction post date also needs to allow NULL values.
  • Temporary workaround for crash at startup after r18429.
  • Decrease verbosity of aqbanking plugin: Debug output only if preference …
  • In the "Save As" dialog, set XML as default, not sqlite3.
  • Fix compile error on current ubuntu by clashing symbol declarations in …
  • When creating an account selector and a commodity list if provider, just …
  • Remove forgotten printf in r18402 which shouldn't have been committed to …
  • Fix amount sign of imported bank transfers (e.g. from DTAUS …
  • Fix GCC pointer strictness compiler errors/warnings and remove duplicate …
  • Fix compile error related to uninitialized value. Patch by Matt Lavin …
  • Introduce disambiguation prefix for "Deposit" action to distinguish it …
  • Make one register function more const correct to avoid compiler warnings …
  • Fix typo: scm_catch_body_t -> scm_t_catch_body
  • gnc-module doesn't need to compile/link with guile
  • Add new option in register "Tab order includes Transfer field". Patch by Colin Law
  • Partly fix broken data file backward compatibility with SX recurrence
  • Win32: Allow m4 1.4.11 and 1.4.13 as well as 1.4.7.
  • Win32: Assert there is only one aqbanking plugin directory
  • Win32: Minor version update of aqbanking.
  • Bug #603186: Fix crash with txf.scm on win32 Patch by J. Alex …
  • Bug #537476: Fix currency trading account preference lookup Patch by Mike …
  • Fix the bug described in comment 19 of bug 537476, balance sheet wrong …
  • Bug #310567: Disable newly introduced "shift txn forward" feature again …
  • Fix bug 600486 - Unable to open sqllite file on Win7 64 bit Unposted …
  • Fix Bug 591573 - "File|Save As" with xml option and no file name …
  • Fix bug 602603 - State file cannot be saved with MySQL because of colon …
  • Bug #570895: Allow reporting for single budget periods in budget income …
  • Bug #602744: Fix broken tip_of_the_day list creation. Patch in r18417 …
  • Fix bug 591098 - when starting Gnucash, "Present" and all other collumns …
  • Bug #537476: Implement currency trading accounts optionally, to be enabled …
  • Bug #554394: Income Tax Enhancements Patch by J. Alex Aycinena. Patch …
  • Bug #600374: Add editable transaction field in the register for bank …
  • Bug #310567: Add menu item to shift transaction forward in sorting …
  • Bug #121695: Support account reparenting through drag and drop in the …
  • Fix bug 492865 - Add Last Reconcile Date as an Option in the Chart of …
  • Fix bug 593581 - 2.3.5: Save to MySQL still fails with date error After …
  • Bug #601861: Fix mis-captioning in button labels The keyboard shortcut …
  • Bug #602070: Fix return value in void function Patch by Halton Huo.
  • Bug #602062: Fix hard-coded gcc program name Patch by Halton Huo.
  • Bug #540452: Remove inline from function declaration/definition because it …
  • Bug #602069: Fix build on Solaris for different gmp header …
  • Revert r18396, "Bug #593906: Fix crash at account report" This change …
  • Fix bug 598213 - Selecting "Account Report" causes gnucash to …
  • Bug 600947 - Gnucash-2.3.7 crashes when doing reports with …
  • Bug 599324 - Patch: Add double click behaviour to account list in payment …
  • Bug 599322 - Patch: Minor gui tweak for invoice window Fix widget …
  • Bug #599953: Let gnc:make-[complex|simple]-boolean-option store its value …
  • Bug #593906: Fix crash at account report Patch by Mike Alexander. This …
  • Bug #582985, #585022: Add missing currencies Armenian Dram (AMD) and …
  • Bug #593070: Budget Report: Omit accounts with no budget and zero …
  • Fix 598491: Remove use of guile's deprecated GH interface
  • Bug #567090: Fix erroneous password length comparison.
  • Updated Dutch translation by Mark Haanen, copied from Translation Project.
  • Add Latvian translation by Valdis Vitolins
  • Update of Japanese translation by KUSANO Takayuki
  • Add polish account templates, contributed by Jacek Baszkiewicz …
  • Update German translation.

New in version 2.3.7 (October 7th, 2009)

  • Revert changes which caused gnucash to crash on startup on windows
  • More recent version of gmp on win32
  • Postgresql binary package on win32 now includes msvcr71.dll
  • Fix compiler warnings. Patch by Colin Law
  • Fix for balance column displayed in template register
  • Update of Polish translation by Jacek Baszkiewicz

New in version 2.3.6 (September 30th, 2009)

  • Fix #107929: Improved running balance implementation. Patch by Tim M
  • Fix #593906: Fix crash at creating account report Patch by Mike Alexander
  • When configuring to build, if webkit chosen as html engine, don't bother looking for gtkhtml.
  • Fix enhancement bug 101456 - 'Find' dialog cumbersome for Business functions. Patch by Geert Janssens
  • Fix enhancement bug 589787 - Multi-line up/down scroll for register transaction Notes field text. Patch by James Raehl
  • Win32 build: Add forgotten dist_ktoblzcheck step to dist creation.
  • Use GtkFunction instead of obsolete GtkDestroyNotify for argument type
  • Win32: Newer Aqbanking version
  • Win32 build: Remove gwenhywfar configure option which has been removed before gwenhywfar-3.8.2.
  • I18n fix: Markup preference tab name "Online Banking" for translation.
  • Win32 installer: Really fix path of qt3-wizard.exe.
  • Fix bug #595920: Fix missing ca-bundle.crt in windows installer.
  • Add "file://" URL type to images in invoices.
  • Latest pot template merged into all .po translation files
  • Bug #589804: Additions to register transactions Action pulldown list. Patch by James Raehl.
  • Bug #572938: Fix OFX Mutual fund buys that are imported as sells. Patch by Matt Lavin, signed-off by Benoit Grégoire.
  • Bug #585784: Fix wrong fractional precision in stock/mutual fund registers. Patch by Daniel Harding.
  • Source of src/libqof/qof run through astyle to be re-indented
  • Add GNC_DBD_DIR definition for libdbi on mac
  • Fix bug 590386 - Add option to always use today for reconciliation statement date Patch by Simon Arlott
  • Fix bug 591117 - Cash Flow Report's "Depth: All" Option is Broken. Patch by David Eisner
  • Fix bug 595014 - MacOSX 10.6 (Snow Leopard) fails configure.in check. Patch by David Reiser
  • Fix bug 595015 - compiler warnings for missing printf format specs, gcc 4.2.1. Patch by David Reiser
  • Fix bug 595017 - compiler complaints about incompatible pointer types in gnc-gwen-gui.c. Patch by David Reiser
  • Fix bug 589673 - need to patch libdbi source for win32 problem.
  • Fix bug 594048 - gnucash will not compile with most recent goffice versions. Patch by Jean Brefort
  • Remove trailing whitespace from lines. Patch by Geert Janssens.
  • Move gnc_account_get_full_name() from app-utils to engine and remove xaccAccountGetFullName in engine.
  • If an object is loaded with a reference to an invoice, order, tax table or bill term which has not been loaded yet, print a warning message into the trace file.
  • If an object is being loaded that has a reference to a transaction, and the transaction hasn't been loaded yet, load it. If an object has a reference to an account, commodity, budget or lot that hasn't been loaded yet, print a warning message in the trace file. The difference in handling is that these object types are always loaded at init time, whereas transactions are not.
  • Replace some calls to (deprecated) xaccAccountGetGUID() with calls to qof_entity_get_guid()
  • Fix svn:ignore property to ignore Makefile/Makefile.in in accounts/ko
  • Minor updates to HACKING, by Geert Janssens.
  • Use SWIG properly to wrap functions to free strings which need to be freed by the caller.
  • Fix Bug 590458 - Invoices are incomplete or miss specifications Replace call to gncEntrySetInvoice() with gncInvoiceAddEntry() which is the real function.
  • Fix Bug 590900 - "Unable to save to DB" dialog from Business -> Customer -> New Job Allow owner id to be NULL
  • Fix bug 593865 - Unable to save to database error when scheduling transactions Allow scheduled transaction to have NULL start date. Will require db to be deleted and recreated.
  • Fix index-out-of-range compilation error
  • Fix typo in message as pointed out by Joe Dalton.
  • Fix some memory leaks
  • Add some dbi backend tests to test db save/load. In order to test the mysql backend, the --with-test-mysql-url=URL option must be supplied to configure where URL is the full url (mysql://host[:port]:db:user:password) to access a mysql db. The same is true for postgres, with the --with-test-pgsql-url=URL option.
  • Python bindings patches by Mark Jenkins. python_GetNthChild_remove.patch remove the redundant GetNthChild code, gnc_account_nth_child supported python_more_GUID.patch Improve support for GUID python_better_commodity.patch * Removed custom __init__ from GncCommodity, not only is it wrong but the one from GnuCashCoreClass is just fine. * Supported the get_table method For Book * Removed support for direct instantiation of GncCommodityTable. (via gnc_commodity_table_new() ). Only methods and not the constructor function are added to the class now. Python binding users can access a GncCommodityTable instance via Book.get_table() and have no need to use gnc_commodity_table_new(), which the apis advise is for internal use only. python_GncLot.patch * included gnc-lot.h in gnucash_core.i again * Made GncLot class use superclass __init__, it doesn't need its own. python_more_documentation.patch Documentation strings for many classes, which can be viewed in source and with python's help() mechanism. python_business_module_load.patch load the business module, not the business module specific backend python_example_scripts.py example scripts improved, new one added. This new script originally came from this post: http://lists.gnucash.org/pipermail/gnucash-devel/2008-July/023618.html python_authors_update.patch added Legal Aid Manitoba to credit line for Mark Jenkins
  • Use "float8" instead of "real" for double field in slots table so that we get an 8 byte float rather than only 4 byte.
  • Doubles weren't being loaded properly from sqlite3. Fix that problem by examine more closely the type information returned by libdbi.
  • Fix bug where NULL dates on sqlite cause sigsegv
  • Updated Slovak translation, copied from the Translation Project.
  • Updated Danish translation by Joe Hansen, copied from the Translation Project.
  • Updated German translation, inspired by Raffael Luthiger's contribution on 2008-12-31.
  • Update of Polish translation by Jacek Baszkiewicz
  • Update of Lithuanian translation by Tadas Masiulionis
  • Updated Danish glossary by Joe Hansen.
  • Updated Danish translation by Joe Hansen, copied from the TP.
  • Updated Dutch translation by Erwin Poeze, copied from the Translation Project.

New in version 2.3.5 (August 31st, 2009)

  • Partly revert r18246: disable writing of "hidden" and "placeholder" so that XML files written by 2.3.5 can be read by 2.2.9
  • Avoid CRIT messages when loading root account which has NULL commodity
  • Fix compilation problem - add GPOINTER_TO_UINT() cast
  • Fix bug 592357: Cannot specify port for database connection. You can now add a port number using ":" (e.g. ":100") to the end of the host specification in the Open and Save As dialog for databases.
  • Fix bug 592021: Budget Report: Options to show actual, budgeted and diff don't work
  • Fix minor i18n issues.
  • Don't translate gtk stock button labels.
  • Don't split sentences when translating.
  • Exclude formatting from translatable messages when possible
  • Updated German translation
  • Fix bug 592719 - postgres backend aborts with date problems
  • Merge latest pot tempate into all .po translation files
  • Add win32 version of gmtime_r
  • Fix bug 575778: QIF import: fix crash when a security list omits the "T" (type) line

New in version 2.3.4 (August 25th, 2009)

  • Changes in database schema. The "helper" tables (slots, recurrences, taxtable_entries) which can have multiple entries per object now have a unique, auto-increment integer primary key. Dates and date/times stored in the database are now stored in DATE and TIMESTAMP columns (mysql and pgsql). The "hidden" and "placeholder" account flags are now stored in individual fields in the accounts table. A new budget_amounts table contains 1 record per budget per account per period and contains the budget amount for that account/period. The scheduled transaction end date is now being stored. The versions table now has the table name as the primary key, and NULL values are disallowed for all fields.
  • Because of these changes, you will need to delete and recreate your database. If you want to save your data, save it to XML before upgrading to 2.3.4, upgrade, then load the XML file and save to a new database or over your existing database.
  • The standard report .scm files are now in / share / gnucash / guile-modules / gnucash / report / standard-reports. When gnucash is started, it will scan this directory and load each .scm file into the report menu system. This means that if you want to add a new report to gnucash, you only need to copy it into this directory.
  • Updated Japanese translation
  • Updated Dutch translation
  • Updated Danish translation
  • Fixed bug 591614: Saving to postgresql causes zombie scheduled transactions.
  • Ensure template root account (used for scheduled transactions) is stored even if there are no scheduled transactions
  • Accounts can be stored even if commodity=NULL
  • Fix bug 589418: commodities were not being stored properly. This should solve the problem of the disappearing commodities.
  • Improvements in the budget report:
  • For income accounts, the sign of the "difference" column is reversed so that positive values are good (more than budget).
  • Fix wrapping problems in budget cells (account labels, negative values, values in certain currencies)
  • Budget report can now display negative values in red. This requires use of the Default-CSS stylesheet
  • Period dates are now centered properly over the columns for that period
  • Add an option to the budget report. If enabled, and an account does not have a budget value for the period, the budget values for all child accounts are added. If the chart of accounts is set up so that only leaf accounts have transactions, this allows budget values to be assigned either to all children and not the parent (they will be summed) or the parent.
  • Changed --enable-webkit configure option to --with-html-engine=XXX where XXX is "gtkhtml" (default) or "webkit".
  • Merged latest pot template into all .po translation files.
  • Fixed signed vs unsigned char pointer type conflicts.

New in version 2.3.3 (July 24th, 2009)

  • Fix crash for "save as" if sqlite3 backend not available.
  • Updated Korean translation by yongdoria.
  • If a report defines style-text, that text will be added to the report header
  • Add new stylesheet to provide css information. Allows users to specify report fonts
  • Update CSS style sheet to use font buttons rather than strings.
  • Patch by Jim Raehl Fix bug 587853/585939. When parsing file: or xml: handle file: or file://, xml: or xml://
  • Patch by John Ralls. Adjust configure.in for Mac compilation with Quartz.
  • Patch by John Ralls. Provides (and installs when appropriate) a special gnucash-setup-env for OSX.
  • Patch by John Ralls. Permits binreloc to work from inside a MacOSX application bundle
  • Patch by John Ralls. Integrates the gnucash menus into the MacOSX menubar.
  • Fix bug 588212 – PgSql: Pop-up dialog for overwriting db contents even for new database
  • Fix bug 587436 – Make Bayesian Matching ON by default
  • Fix bug 363339 – Exclude hidden accounts from reports. New check box added
  • Fix up some more reports to use cell tags which allow CSS style font usage
  • Add Korean translation of account charts by Jin-Hwan Jeong.
  • Fix bug 585899 - environment variable GNC_DEFAULT_DATABASE can be used to set the default database name in the Save As dialog

New in version 2.3.2 (July 10th, 2009)

  • Major changes in the 2.3.x release include;
  • In addition to the XML backend, Gnucash can now use a SQLite3, MySQL or PostgreSQL database to store the data. This is a new implementation using libdbi. It supports all features including the business features. In order to build with this, add --enable-dbi to the configure command. In addition to the libdbi-dev package for your distribution, you will also need the appropriate DBD (libdbi driver) package for sqlite3, mysql or postgresql.
  • In addition to the current GtkHTML HTML engine used to display reports and graphs, Gnucash can use WebKit. WebKit is the engine used by Google Chrome on Windows and Safari on Apple. In order to build with this, add --enable-webkit to the configure command. You will need an appropriate webkit-dev package. On win32, you will need to download the webkit-1.1.5-win32.zip file from the source repository and put it into the downloads directory of your gnucash build area.
  • Updated to AqBanking 3 on Win32.
  • Changes between 2.3.1 and 2.3.2 include:
  • Daily win32 builds can be found in http://code.gnucash.org/builds/win32/trunk
  • Win32 builds now include mysql and postgresql client libraries and libdbi drivers
  • Bug #567709: Register: Don't assume that cells outside the cursor are valid
  • Bug 563598: QSF XML Export: Remove the tooltip from the GtkCalendar?.
  • Fix bug 586558 – When a scheduled transaction is deleted, the objects aren't cleaned up properly
  • Fix bug 586901: Price editor creates price before all information is available
  • Bug #582048: Fix missing GUI callbacks for online transfer.
  • Bug #580968: Register: Keep track of the account when an exchange rate is set
  • Fix bug 339726 – Cannot set fractional discount rates in Billing Terms
  • Fix bug 586296/586419/585785 – Fix win32 install script problems
  • Fix bug 586425 - update version of gnutls for win32
  • Fix bug #586295 - when building win32 version, use those versions of executables, not installed ones
  • Fix bug #415127 - updating address doesn't mark object as dirty
  • Fix bug 585789/586121: Files not opened correctly
  • Bug 587913 – "Edit exchange rate" marks account cell as changed
  • Add initial support for eguile template-based reports
  • Rework split queries to improve performance
  • When opening a file, "sqlite3" and "xml" dropdown list items are replaced by "file"
  • Add Korean translation by Jin-Hwan Jeong.
  • Updated Korean translation by yongdoria
  • Mark transaction dirty when setting enter-date
  • Decrease verbosity of libgwenhywfar debugging output.
  • Some memory leaks fixed
  • Add AqB 3.8.3 patch for Win32
  • Handle BUILD_FROM_TARBALL special for tag builds.
  • Separate environment variable setup into common file
  • Use pwd instead of assuming $0 is a full path. Set URL in a variable
  • QIF Import: Documentation .txt file patch by Daniel Convissor.

New in version 2.3.1 (June 11th, 2009)

  • Bug #582976 - install.sh - webkit-1.1.5-win32.zip is not available
  • Bug #583535 - Problem with mysql database
  • Bug #583883 - Customer report produces error
  • Bug #584564: Patch by Chris Dennis to allow a report to be either a string or html-doc
  • Fix all business exports to force file type QSF
  • Fix SQL statement which calculates account balances
  • Fix port number, especially for postgresql
  • Clean up include files and code related to goffice.
  • Add qsf:// as a valid URI type
  • Fix handling of GObjects when deleting a report
  • Update aqbanking version to 3.8.3, which means one patch isn't needed
  • Fix WEBKIT path so that correct DLLs will be copied to output directory
  • Register: Add some header comments for a confusing function.
  • Create and upload the WIN32 daily builds
  • If postgres database does not exist, create it.
  • Update German translation.
  • Minor i18n string improvements
  • Remove obsolete glade file.
  • Modify packing on URI type combo box to fix its size
  • Patch by Mike Alexander to speed up price db loading in sql backend.
  • Add Lithuanian translation

New in version 2.3.0 (June 11th, 2009)

  • In addition to the XML backend, Gnucash can now use a SQLite3, MySQL or PostgreSQL database to store the data. This is a new implementation using libdbi. It supports all features including the business features. In order to build with this, add --enable-dbi to the configure command. In addition to the libdbi-dev package for your distribution, you will also need the appropriate DBD (libdbi driver) package for sqlite3, mysql or postgresql.
  • In addition to the current GtkHTML HTML engine used to display reports and graphs, Gnucash can use WebKit. WebKit is the engine used by Google Chrome on Windows and Safari on Apple. In order to build with this, add --enable-webkit to the configure command. You will need an appropriate webkit-dev package. On win32, you will need to download the webkit-1.1.5-win32.zip file from the source repository and put it into the downloads directory of your gnucash build area.
  • Updated to AqBanking 3 on Win32.

New in version 2.2.9 (February 24th, 2009)

  • Fixed Bugs:
  • #339027: Reconcile window should display the date
  • #435642: Crash editing results of a find
  • #438132: Warning about commodity being NULL for root account on save
  • #462148: Report output is vertically inverted and bottom up printed (mirror, reverse, &c.)
  • #514455: Dutch (Netherlands) translation of account templates
  • #526775: Win32: Crashes when importing brokerage account data
  • #542382: Assign GnuCash to file name extension .gnucash
  • #564209: Improved debuggability for module loading
  • #564450: HUF currency handling incorrect as 1HUF divided into 100FILLERs
  • #564928: Segfault when closing a invoice tab
  • #565421: gnc-date-edit.c did not compile with Gtk < 2.10
  • #565721: Multicolumn report options: Report names are not translated
  • #566198: Slovakia joined the Euro
  • #566352: Crash during OFX import under Win 2000 / SP4
  • #566567: Scheme modifications are not built on windows
  • #567174: Files with NIS stocks fail to open
  • #568327: Using most "budget" reports, without a budget defined crashes gnucash
  • #568653: Add SKR49 template
  • #568945: The gnc_pricedb_convert_balance_... methods should look for the reciprocal of the exchange rate
  • #569734: Give the template root account a name
  • #570166: Weird text entry box when typing on Account Tree page
  • #570894: Use of symbol t, which is not defined in all guile versions
  • #571220: Program won't start if SCHEME_LIBRARY_PATH is set
  • Other Changes:
  • Added German account template for a Wohnungswirtschaft business
  • Fixed french business account templates
  • Updated translations: Catalan, Chinese, German, Italian

New in version 2.2.8 (December 20th, 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