gdebi-gtk crashed with ValueError in update_interface(): could not convert string to float: '0,0000'

Bug #1592817 reported by Jimmy Frydkær Dürr on 2016-06-15
234
This bug affects 56 people
Affects Status Importance Assigned to Milestone
apt (Ubuntu)
High
Unassigned
Xenial
Undecided
Unassigned

Bug Description

Errors Bucket
-------------
https://errors.ubuntu.com/problem/31a80b4c477107c659b93a4277ed46c14a3c8c53
and
https://errors.ubuntu.com/problem/c349b36522b1d43e2604357f75f0215fdafe1c7a

[Impact]
Crashes of gdebi (and possibly other tools) in non-English locales which use 1,0 or similar instead of 1.0

[Test case]
Install a deb package with gdebi, like Google Chrome, in such a locale.

Original: Gdebi crashed while installing Google Chrome .deb-fil bur the error didn't appear until I logged out and back in again

[Regression potential]
Same as bug 1611010 - very low.

ProblemType: CrashDistroRelease: Ubuntu 16.10
Package: gdebi 0.9.5.7ubuntu1
ProcVersionSignature: Ubuntu 4.4.0-25.44-generic 4.4.13
Uname: Linux 4.4.0-25-generic x86_64
NonfreeKernelModules: nvidia_uvm nvidia_modeset nvidia
ApportVersion: 2.20.1-0ubuntu4
Architecture: amd64
Date: Wed Jun 15 15:01:11 2016
ExecutablePath: /usr/share/gdebi/gdebi-gtk
InstallationDate: Installed on 2016-06-15 (0 days ago)
InstallationMedia: Ubuntu 16.10 "Yakkety Yak" - Alpha amd64 (20160511)
InterpreterPath: /usr/bin/python3.5
PackageArchitecture: all
ProcCmdline: /usr/bin/python3 /usr/bin/gdebi-gtk --non-interactive /media/jimmy/Seagate\ Backup\ Plus\ Drive/Browser/google-chrome-stable_51.0.2704.79-1_amd64.deb
ProcEnviron:
 PATH=(custom, no user)
 LANG=da_DK.UTF-8
 LANGUAGE=da
 SHELL=/bin/bash
 TERM=unknown
PythonArgs: ['/usr/bin/gdebi-gtk', '--non-interactive', '/media/jimmy/Seagate Backup Plus Drive/Browser/google-chrome-stable_51.0.2704.79-1_amd64.deb']SourcePackage: gdebi
Title: gdebi-gtk crashed with ValueError in update_interface(): could not convert string to float: '0,0000'
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups:

tags: removed: need-duplicate-check
Changed in gdebi (Ubuntu):
importance: Undecided → Medium
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in gdebi (Ubuntu):
status: New → Confirmed
Brian Murray (brian-murray) wrote :

The traceback actually seems to be in python-apt.

  File "/usr/lib/python3/dist-packages/apt/progress/base.py", line 255, in update_interface
    if float(percent) != self.percent or status_str != self.status:
ValueError: could not convert string to float: '0,0000'

information type: Private → Public
Changed in python-apt (Ubuntu):
importance: Undecided → High
status: New → Triaged
tags: added: rls-y-incoming
description: updated
description: updated
Brian Murray (brian-murray) wrote :

Julian K indicated that the fix for 1611010 might end up fixing this and that he'd look at cherry-picking into into Ubuntu 16.04.

Julian Andres Klode (juliank) wrote :

Let's clean this up.

affects: python-apt (Ubuntu) → apt (Ubuntu)
Changed in apt (Ubuntu):
status: Triaged → Fix Released
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in apt (Ubuntu Xenial):
status: New → Confirmed
Changed in gdebi (Ubuntu Xenial):
status: New → Confirmed
Julian Andres Klode (juliank) wrote :

apt 1.2.16~rc1 just hit the PPA (might take some time for processing, though):

  https://launchpad.net/~deity/+archive/ubuntu/apt-1.2

and should fix this bug. It would be great to have some confirmation of that before uploading that, otherwise I'll go ahead with an SRU tomorrow probably if I don't notice any regression on my system.

Julian Andres Klode (juliank) wrote :

1.2.16 uploaded.

Changed in apt (Ubuntu Xenial):
status: Confirmed → In Progress
description: updated

Hello Jimmy, or anyone else affected,

Accepted apt into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/apt/1.2.18 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in apt (Ubuntu Xenial):
status: In Progress → Fix Committed
tags: added: verification-needed
Brian Murray (brian-murray) wrote :

There are a couple of instances of this occurring with 1.2.18, but I think that is just noise as apport doesn't add package version information until the data collection is done which can be a bit after the crash.

 $ tools/pycassa-db-query.py '/usr/share/gdebi/gdebi-gtk%3AValueError%3A/usr/bin/gdebi-gtk%40100%3Aon_button_install_clicked%3Adpkg_action%3Acommit%3Ainstall_archives%3Arun%3Await_child%3Aupdate_interface%3Aupdate_interface'
5888 examined.
{u'1.2.18': 2, u'1.2.15ubuntu0.2': 859, u'1.3.1': 0, u'1.2.14': 2, u'1.2.15': 5005}

Brian Murray (brian-murray) wrote :

Querying the other bucket:

$ tools/pycassa-db-query.py '/usr/share/gdebi/gdebi-gtk%3AValueError%3Aon_button_install_clicked%3Adpkg_action%3Acommit%3Ainstall_archives%3Arun%3Await_child%3Aupdate_interface%3Aupdate_interface'
270 examined.
{u'1.2.15ubuntu0.2': 80, u'1.2.15': 188}

no longer affects: gdebi (Ubuntu)
no longer affects: gdebi (Ubuntu Xenial)
Ville Ranki (ville-ranki) wrote :

This bug is triggered when upgrading up to date xenial to yakkety, so should be showstopper priority.
do-release-upgrade fails and cannot continue, potentially leaving system in unbootable state.

Brian Murray (brian-murray) wrote :

Bucket 2:

 $ tools/pycassa-db-query.py '/usr/share/gdebi/gdebi-gtk%3AValueError%3Aon_button_install_clicked%3Adpkg_action%3Acommit%3Ainstall_archives%3Arun%3Await_child%3Aupdate_interface%3Aupdate_interface'
441 examined.
{u'1.2.15ubuntu0.2': 244, u'1.2.15': 194}

Bucket 1:

 $ tools/pycassa-db-query.py '/usr/share/gdebi/gdebi-gtk%3AValueError%3A/usr/bin/gdebi-gtk%40100%3Aon_button_install_clicked%3Adpkg_action%3Acommit%3Ainstall_archives%3Arun%3Await_child%3Aupdate_interface%3Aupdate_interface'
11537 examined.
{u'1.2.14': 5, u'1.2.15': 5231, u'1.2.18': 6, u'1.2.15ubuntu0.2': 6264, u'1.3.1': 0, u'1.3~rc2ubuntu2': 0}

tags: added: verification-done
removed: verification-needed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package apt - 1.2.18

---------------
apt (1.2.18) xenial; urgency=high

  * SECURITY UPDATE: gpgv: Check for errors when splitting files (CVE-2016-1252)
    Thanks to Jann Horn, Google Project Zero for reporting the issue
    (LP: #1647467)
  * gpgv: Flush the files before checking for errors

apt (1.2.17) xenial; urgency=medium

  [ David Kalnischkies ]
  * apt-key: warn instead of fail on unreadable keyrings (LP: #1642386)
  * show apt-key warnings in apt update (Closes: 834973)

  [ Julian Andres Klode ]
  * test-releasefile-verification: installaptold: Clean up before run

apt (1.2.16) xenial; urgency=medium

  [ David Kalnischkies ]
  * avoid changing the global LC_TIME for Release writing
  * use de-localed std::put_time instead rolling our own
  * accept only the expected UTC timezones in date parsing (Closes: 819697)
  * avoid std::get_time usage to sidestep libstdc++6 bug (LP: #1593583)
  * imbue datetime parsing with C.UTF-8 locale (Closes: 828011)
  * prevent C++ locale number formatting in text APIs (try 2) (Closes: 832044)
  * prevent C++ locale number formatting in text APIs (try 3) (LP: #1611010)
    (LP: #1592817)
  * imbue .diff/Index parsing with C.UTF-8 as well

  [ Julian Andres Klode ]
  * Use C locale instead of C.UTF-8 for protocol strings
  * Add shippable.yml for CI on Shippable
  * Revert "if the FileFd failed already following calls should fail, too"
    (LP: #1641905)

 -- Julian Andres Klode <email address hidden> Thu, 08 Dec 2016 15:28:08 +0100

Changed in apt (Ubuntu Xenial):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for apt has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers