FFe: Sync gnucash 1:3.0-1 (universe) from Debian experimental (main)

Bug #1758740 reported by Jeremy Bícha
28
This bug affects 4 people
Affects Status Importance Assigned to Milestone
gnucash (Debian)
Fix Released
Unknown
gnucash (Ubuntu)
Fix Released
Wishlist
Unassigned

Bug Description

Please sync gnucash 1:3.0-1 (universe) from Debian experimental (main)

Explanation of FeatureFreeze exception
--------------------------------------
Gnucash 3.0 was released April 1.

This release is important because it will allow us to drop the old webkitgtk (LP: #1710318) and goffice-0.8 from Ubuntu 18.04 LTS.

gnucash 3.0 switches to gtk3.

Release Notes
-------------
http://gnucash.org/news.phtml
https://github.com/Gnucash/gnucash/releases

Changelog entries since current bionic version 1:2.6.18-1
---------------------------------------------------------
gnucash (1:3.0-1) experimental; urgency=medium

  * New upstream release [April 2018]. (Closes: #892177).
  * control: removed dbus recommends, as advised by Laurent Bigonville
    (Closes: #815005).
  * Recommends: python-gnucash --> python3-gnucash.
    Thanks, Laurent Bigonville.
  * Install python examples.
    Thanks, Laurent Bigonville.
  * watch: minor pattern correction/update.
  * Build with guile-2.2-dev (Closes: #885204);
    Pass "-X.go" to dh_strip which is "Unable to recognise the format of
    the input file" of *.go files...

 -- Dmitry Smirnov <email address hidden> Sun, 08 Apr 2018 18:14:53 +1000

gnucash (1:2.7.8-1) experimental; urgency=medium

  * New upstream release [March 2018].

 -- Dmitry Smirnov <email address hidden> Tue, 27 Mar 2018 23:34:54 +1100

gnucash (1:2.7.7-1) experimental; urgency=medium

  * New upstream release [March 2018].

  [ Julian Wollrath <email address hidden> ]
  * Switch to Python3 (Closes: #884343).

 -- Dmitry Smirnov <email address hidden> Mon, 26 Mar 2018 01:18:37 +1100

gnucash (1:2.7.6-1) experimental; urgency=medium

  * New upstream release [March 2018].
    + fixed FTBFS on 32-bit architectures (Closes: #890317)
    Thanks, John Ralls.
  * Build-Depends:
    + libgwengui-gtk2-dev --> libgwengui-gtk3-dev (Closes: #886587)
    - libgoffice-0.10-dev
    - intltool
  * Standards-Version: 4.1.3
  * debhelper & compat to version 11.
  * watch: check GitHub for releases as well.
  * rules: override_dh_auto_test to honour "nocheck" in DEB_BUILD_OPTIONS.

 -- Dmitry Smirnov <email address hidden> Wed, 14 Mar 2018 15:39:13 +1100

gnucash (1:2.7.3-1) experimental; urgency=medium

  * New upstream release [December 2017].
    * No longer depends on libwebkitgtk-1.0 (Closes: #790204)
      Thanks to John Ralls,
                Jeremy Bicha,
                Adrian Bunk,
                Micha Lenk,
                Steve Langasek,
                Laurent Bigonville.
  * Build-Depends:
    + cmake
    + googletest
    - libgoffice-0.8-dev
    + libgoffice-0.10-dev
    + libboost-dev
    + libboost-date-time-dev
    + libboost-filesystem-dev
    + libboost-locale-dev
    + libboost-regex-dev
    - libwebkitgtk-dev
    + libwebkit2gtk-4.0-dev
    - libgtk2.0-dev (>= 2.24)
    + libgtk-3-dev
    - libgnomecanvas2-dev
    + texinfo

 -- Dmitry Smirnov <email address hidden> Sun, 07 Jan 2018 22:28:21 +1100

Jeremy Bícha (jbicha)
Changed in gnucash (Ubuntu):
importance: Undecided → Wishlist
description: updated
description: updated
Jeremy Bícha (jbicha)
description: updated
Revision history for this message
Steve Langasek (vorlon) wrote :

In my attempt to do a pre-approval test, I found that the package fails to build in bionic.

[...]
23/108 Testing: test-backend-dbi
23/108 Test: test-backend-dbi
Command: "/tmp/gnucash-2.7.6/.build/bin/test-backend-dbi"
Directory: /tmp/gnucash-2.7.6/.build/libgnucash/backend/dbi/test
"test-backend-dbi" start time: Mar 26 07:00 UTC
Output:
----------------------------------------------------------
/backend/dbi/adjust sql options string localtime: OK
/backend/dbi/sqlite3/store_and_reload: ** (/tmp/gnucash-2.7.6/.build/bin/test-backend-dbi:16803): CRITICAL **: 07:00:13.573: [GncDbiBackend<Type>::conn_setup()] Attempt to connect with an uninitialized dbi_instance

** (/tmp/gnucash-2.7.6/.build/bin/test-backend-dbi:16803): CRITICAL **: 07:00:13.574: [GncDbiBackend<Type>::conn_setup()] unable to create sqlite3 dbi connection
**
ERROR:/tmp/gnucash-2.7.6/libgnucash/backend/dbi/test/test-backend-dbi-basic.cpp:397:void test_dbi_store_and_reload(Fixture*, gconstpointer): assertion failed (qof_session_get_error (session_2) == ERR_BACKEND_NO_ERR): (3 == 0)
<end of output>
Test time = 0.19 sec
----------------------------------------------------------
Test Failed.
"test-backend-dbi" end time: Mar 26 07:00 UTC
"test-backend-dbi" time elapsed: 00:00:00
----------------------------------------------------------
[...]
99% tests passed, 1 tests failed out of 108

Total Test time (real) = 53.03 sec

The following tests FAILED:
         23 - test-backend-dbi (Child aborted)
Errors while running CTest
[...]

Not really much point in an FFe to sync a package that doesn't build.

Changed in gnucash (Ubuntu):
status: New → Incomplete
summary: - FFe: Sync gnucash 1:2.7.6-1 (universe) from Debian experimental (main)
+ FFe: Sync gnucash 1:2.7.8-1 (universe) from Debian experimental (main)
description: updated
Changed in gnucash (Debian):
status: Unknown → New
Revision history for this message
Steve Langasek (vorlon) wrote : Re: FFe: Sync gnucash 1:2.7.8-1 (universe) from Debian experimental (main)

gnucash 1:2.7.8-1 also still fails to build for me in bionic.

Revision history for this message
Mantas Kriaučiūnas (mantas) wrote :

Maybe we should inform Debian Gnucash maintainer about 2.7.8 build problems in Ubuntu by adding comment at https://bugs.debian.org/892177 ?

Changed in gnucash (Debian):
status: New → Fix Released
Jeremy Bícha (jbicha)
summary: - FFe: Sync gnucash 1:2.7.8-1 (universe) from Debian experimental (main)
+ FFe: Sync gnucash 1:3.0-1 (universe) from Debian experimental (main)
description: updated
Revision history for this message
Steve Langasek (vorlon) wrote :

3.0-1 also still FTBFS for me locally.

Command: "/tmp/gnucash-3.0/.build/bin/test-backend-dbi"
Directory: /tmp/gnucash-3.0/.build/libgnucash/backend/dbi/test
"test-backend-dbi" start time: Apr 25 02:01 UTC
Output:
----------------------------------------------------------
/backend/dbi/adjust sql options string localtime: OK
/backend/dbi/sqlite3/store_and_reload:
** (/tmp/gnucash-3.0/.build/bin/test-backend-dbi:24632): CRITICAL **: 02:01:52.4
76: [GncDbiBackend<Type>::conn_setup()] Attempt to connect with an uninitialized
 dbi_instance

** (/tmp/gnucash-3.0/.build/bin/test-backend-dbi:24632): CRITICAL **: 02:01:52.4
76: [GncDbiBackend<Type>::conn_setup()] Unable to create sqlite3 dbi connection
**
ERROR:/tmp/gnucash-3.0/libgnucash/backend/dbi/test/test-backend-dbi-basic.cpp:39
7:void test_dbi_store_and_reload(Fixture*, gconstpointer): assertion failed (qof
_session_get_error (session_2) == ERR_BACKEND_NO_ERR): (3 == 0)
<end of output>
Test time = 0.46 sec
----------------------------------------------------------
Test Failed.

Perhaps that is more tractable than the previous failures.

Revision history for this message
Steve Langasek (vorlon) wrote : Re: [Bug 1758740] Re: FFe: Sync gnucash 1:3.0-1 (universe) from Debian experimental (main)

On Wed, Apr 25, 2018 at 02:15:46AM -0000, Steve Langasek wrote:
> Perhaps that is more tractable than the previous failures.

(gdb) break GncDbiBackend<(DbType)0>::conn_setup(std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >&, UriStrings&)
Breakpoint 1 at 0x55555557f980: GncDbiBackend<(DbType)0>::conn_setup(std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >&, UriStrings&). (2 locations)
[...]
(gdb) break gnc_module_init_backend_dbi()
Breakpoint 4 at 0x55555557a680: gnc_module_init_backend_dbi(). (2 locations)
(gdb) break gnc_module_finalize_backend_dbi()
Breakpoint 5 at 0x55555557aa20: gnc_module_finalize_backend_dbi(). (2 locations)
(gdb) run
Starting program: /tmp/gnucash-3.0/.build/bin/test-backend-dbi
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

Breakpoint 4, gnc_module_init_backend_dbi ()
    at ./libgnucash/backend/dbi/gnc-backend-dbi.cpp:1009
1009 ./libgnucash/backend/dbi/gnc-backend-dbi.cpp: No such file or directory.
(gdb) print dbi_instance
$1 = (dbi_inst) 0x0
(gdb) watch dbi_instance
Hardware watchpoint 6: dbi_instance
(gdb) cont
Continuing.

Hardware watchpoint 6: dbi_instance

Old value = (dbi_inst) 0x0
New value = (dbi_inst) 0x5555557e3460
0x00007ffff7639d70 in dbi_initialize_r ()
   from /usr/lib/x86_64-linux-gnu/libdbi.so.1
(gdb) fin
Run till exit from #0 0x00007ffff7639d70 in dbi_initialize_r ()
   from /usr/lib/x86_64-linux-gnu/libdbi.so.1
gnc_module_init_backend_dbi ()
    at ./libgnucash/backend/dbi/gnc-backend-dbi.cpp:1032
1032 in ./libgnucash/backend/dbi/gnc-backend-dbi.cpp
(gdb) print dbi_instance
$5 = (dbi_inst) 0x5555557e3460
(gdb) print &dbi_instance
$6 = (dbi_inst *) 0x7ffff11d6428 <dbi_instance>
(gdb) cont
Continuing.
/backend/dbi/adjust sql options string localtime: OK
/backend/dbi/sqlite3/store_and_reload:
Breakpoint 1, GncDbiBackend<(DbType)0>::conn_setup (this=this@entry=
    0x555555850000, options=std::vector of length 3, capacity 4 = {...},
    uri=...) at ./libgnucash/backend/dbi/gnc-backend-dbi.cpp:260
260 ./libgnucash/backend/dbi/gnc-backend-dbi.cpp: No such file or directory.
(gdb) print &dbi_instance
$7 = (dbi_inst *) 0x5555557b2440 <dbi_instance>
(gdb)

... yep. A static global variable whose address changes between functions,
that makes perfect sense.

Revision history for this message
Jeremy Bícha (jbicha) wrote :

Steve, since we're at the last moment, would it be acceptable to go ahead and sync gnucash 3.0 from Debian now but ignore build test failures?

That would allow us to remove the old webkitgtk and we can do an SRU if needed for gnucash later.

Revision history for this message
Steve Langasek (vorlon) wrote :

- disabling an upstream test without time to analyze what the impact of that is
- completely new upstream branch with no time to test before release
- is not the last reverse-dependency of webkitgtk in the archive for bionic

-1 for an FFe.

Revision history for this message
Jeremy Bícha (jbicha) wrote :

gnucash 3.3 will be available in Ubuntu 18.10.

Changed in gnucash (Ubuntu):
status: Incomplete → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.