Gnucash 2.4.0 released

Stephen J. Gowdy gowdy at cern.ch
Wed Dec 22 12:43:42 EST 2010


Seconded!

On Wed, 22 Dec 2010, Donald Allen wrote:

> Congratulations to all of you who have worked so hard on this release.
>
> /Don
>
> On Wed, Dec 22, 2010 at 12:05 PM, Phil Longstaff <plongstaff at rogers.com>wrote:
>
>> Announcement: GnuCash 2.4.0 Release 2010-12-21
>> GnuCash 2.4.0 released
>> The GnuCash development team proudly announces GnuCash 2.4.0, the latest
>> stable release of the GnuCash Free Accounting Software. With this new
>> release series, GnuCash can use an SQL database using SQLite3, MySQL or
>> PostgreSQL. It runs on GNU/Linux, *BSD, Solaris, Microsoft Windows and
>> Mac OSX.
>>
>> WARNING: You should uninstall any earlier GnuCash version from your
>> system prior to installing 2.4.0.
>>
>> Failing to do so may result in startup errors. In particular on Windows
>> this may cause "Parse error: entry point not found" errors.
>>
>>
>> Major changes in the 2.4.0 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.
>>      * As a replacement for 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 --with-html-engine=webkit to
>>        the configure command. You will need an appropriate webkit-dev
>>        package. On win32, you will need to download the
>>        webkit-1.1.90-win32.zip file from the source repository and put
>>        it into the downloads directory of your gnucash build area.
>>      * Updated AqBanking on Win32.
>> Getting GnuCash
>> Source code for GnuCash 2.4.0 can be downloaded from:
>>
>>      * Sourceforge: bzip2, gzip, all files.
>>      * You can also checkout the sources directly from the subversion
>>        repository with this command:
>>
>>        svn co http://svn.gnucash.org/repo/gnucash/tags/2.4.0 gnucash
>>
>> To install GnuCash, you will need Gnome 2, guile, slib. In addition you
>> will need swig if compiling from subversion.
>>
>>
>> Win32 binary
>> The Gnucash 2.4.0 Win32 setup executable can be downloaded from
>> Sourceforge as well.
>>
>>
>> Mac OSX binary
>> The Gnucash 2.4.0 MacOSX package can be downloaded from Sourceforge as
>> well.
>>
>> Changes between 2.3.17 and 2.4.0 include:
>>
>>      * 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
>>                <matthijs at stdin.nl>: 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
>>                <matthijs at stdin.nl>: 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 <matthijs at stdin.nl>
>>              * 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 <matthijs at stdin.nl>:
>>                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 <matthijs at stdin.nl>:
>>                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 <QueryNew.h> #defines by the current
>>                <qof.h> 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 %feature("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 %
>>                feature("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
>> How can you help?
>> Translating: The new release comes with some new translation strings. If
>> you consider contributing a translation, we invite you to test this
>> release already.
>>
>> About the Program
>> GnuCash is a free, open source accounting program released under the GNU
>> General Public License (GPL) and available for GNU/Linux, *BSD, Solaris,
>> Mac OSX and Microsoft Windows. Programming on GnuCash began in 1997, and
>> its first stable release was in 1998.
>>
>>
>> _______________________________________________
>> gnucash-devel mailing list
>> gnucash-devel at gnucash.org
>> https://lists.gnucash.org/mailman/listinfo/gnucash-devel
>>
> _______________________________________________
> gnucash-user mailing list
> gnucash-user at gnucash.org
> https://lists.gnucash.org/mailman/listinfo/gnucash-user
> -----
> Please remember to CC this list on all your replies.
> You can do this by using Reply-To-List or Reply-All.
>

-- 
  /------------------------------------+-------------------------\
|Stephen J. Gowdy                     | CERN       Office: 8-1-11|
|http://cern.ch/gowdy/                | CH-1211 Geneva 23        |
|                                     | Switzerland              |
|EMail: gowdy at cern.ch                 | Tel: +41 76 487 2215     |
  \------------------------------------+-------------------------/


More information about the gnucash-devel mailing list