apport-hackers team mailing list archive
-
apport-hackers team
-
Mailing list archive
-
Message #00113
[Merge] lp:~shnatsel/apport/dont-break-report-if-dbgsym-is-outdated into lp:apport
Sergey "Shnatsel" Davidoff has proposed merging lp:~shnatsel/apport/dont-break-report-if-dbgsym-is-outdated into lp:apport.
Requested reviews:
Apport upstream developers (apport-hackers)
Related bugs:
Bug #1069401 in Apport: "If dbgsym packages are outdated, tells the user they have outdated packages and borks the report"
https://bugs.launchpad.net/apport/+bug/1069401
For more details, see:
https://code.launchpad.net/~shnatsel/apport/dont-break-report-if-dbgsym-is-outdated/+merge/132761
It seems that ddebs.ubuntu.com packages for Precise are outdated as of late. Apport doesn't handle such cases well; on encountering an outdated dbgsym package crash-digger blames the reporter and removes the core dump from the report, thus making the report unretraceable (bug 1069401).
This branch fixes this; instead of breaking the report it makes apport-retrace exit with a transient error code.
As opposed to the current version, this one does not list all the outdated dbgsym packages; instead it prints only the first version mismatch, adds "and possibly others" and exits with a transient error. Perhaps this can be improved later. The change involved a string change but I didn't update the .pot file because I don't know how to regenerate it.
--
https://code.launchpad.net/~shnatsel/apport/dont-break-report-if-dbgsym-is-outdated/+merge/132761
Your team Apport upstream developers is requested to review the proposed merge of lp:~shnatsel/apport/dont-break-report-if-dbgsym-is-outdated into lp:apport.
=== modified file 'backends/packaging-apt-dpkg.py'
--- backends/packaging-apt-dpkg.py 2012-10-05 13:53:05 +0000
+++ backends/packaging-apt-dpkg.py 2012-11-02 23:55:24 +0000
@@ -645,8 +645,9 @@
elif pkg + '-dbgsym' in c:
real_pkgs.add(pkg + '-dbgsym')
if c[pkg + '-dbgsym'].candidate.version != candidate.version:
- obsolete += 'outdated debug symbol package for %s: package version %s dbgsym version %s\n' % (
- pkg, candidate.version, c[pkg + '-dbgsym'].candidate.version)
+ apport.error('outdated debug symbol package for %s and possibly others:\n package version %s, dbgsym version %s\nThe dbgsym archive is probably behind the times.' % (
+ pkg, candidate.version, c[pkg + '-dbgsym'].candidate.version))
+ sys.exit(99) # transient error
for p in real_pkgs:
c[p].mark_install(False, False)
=== modified file 'po/apport.pot'
--- po/apport.pot 2012-10-01 09:58:58 +0000
+++ po/apport.pot 2012-11-02 23:55:24 +0000
@@ -8,7 +8,7 @@
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-10-01 11:58+0200\n"
+"POT-Creation-Date: 2012-11-03 03:12+0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@xxxxxx>\n"