Comment 2 for bug 94732

Revision history for this message
Martin Pitt (pitti) wrote :

 apport (0.70) feisty; urgency=low
 .
   [ Martin Pitt ]
   * bin/apport-retrace: Add option --remove-tag to remove a Launchpad bug
     tag. This is intended for an automatic Malone crash retracing system.
   * debian/control: Bump python-launchpad-bugs dependency to ensure that we
     have Bug.[gs]et_metadata().
   * man/apport-retrace.1: Add documentation for --confirm and --remove-tag.
   * bin/apport-chroot: Add option --remove-tag and pass it to apport-retrace.
   * apport/chroot.py, fix_symlinks(): Convert chroot path prefixed absolute
     symlinks to relative symlinks to avoid fakechroot's weird handling of
     absolute symlinks.
   * Add bin/launchpad-crash-digger: Daemon for watching out for
     need-$ARCH-retrace tagged Ubuntu bugs in Launchpad and calling
     apport-retrace on them.
   * bin/apport-retrace: Mangle bug comment with StacktraceTop to not contain
     invalid UTF-8, to avoid getting Internal Server Errors from LP.
   * debian/local/setup-apport-retracer: Install libc6-i686{,-dbgsym} into an
     x86 chroot, to get sane x86 backtraces for crashes in libc.
   * debian/local/setup-apport-retracer:
     - Unpack and install python-launchpad-bugs locally if the package is not
       installed.
     - Link launchpad-crash-digger into the retracer's bin/ dir.
   * run-tests: Run tests with python's -tt flag to catch whitespace errors.
   * Replace tabs with spaces in all Python files. (LP: #93561)
   * Remove trailing white space in all Python files.
   * apport/report.py, add_proc_info(): Do not regard symlinks to executables
     as interpreted scripts any more (such as Debian alternatives). Add test
     case. (LP: #94732)
   * problem_report.py: Add new method get_new() which returns a set of all
     keys which have been added since load() or construction. Add test cases.
   * problem_report.py: Add optional parameter only_new to write(), which
     writes only the get_new() keys. Add test case.
   * apport/ui.py: Remember currently processed report file and update it with
     the added information, so that it becomes useful for local evaluation,
     too. Bump python-problem-report dependency to ensure write()'s only_new
     availability. (LP: #94678)
   * apport-chroot: Add forgotten sys.exit(1) after printing the error message
     about an invalid chroot specification.
   * apport/ui.py, run_crash(): Check for a field "UnsupportableReason: <text>"
     and display an information box that the current configuration cannot be
     supported because of <text>, instead of processing and reporting the
     crash. Add test case for this workflow. With special regards to our
     Firefox crash triagers who want to get rid of the hundreds of
     flash-related crashes. :)
   * apport/report.py, add_hooks_info(): Use execfile() instead of
     __import__(), since package names might conflict with module names already
     imported into apport's namespace. Also search for hook named after the
     source package name (prefixed with 'source_'). Add test cases.
   * bin/apport-chroot: When specifying --save for login, only save the tarball
     if the exit status is 0.
   * bin/apport-chroot, create: Install /usr/sbin/policy-rc.d to disable init
     scripts.
   * bin/apport-chroot: Fixed command function selection to not abort with
     'unknown command' if the DistroRelease: was unknown.
   * bin/apport-retrace: Replace --no-purge with --no-dpkg. With this option,
     do not call dpkg --unpack any more, but dpkg -x, to avoid any fchmod() and
     other calls which cause problems in fakechroots.
   * bin/apport-retrace: Fix ordering of version numbers in warning message.
   * doc/package-hooks.txt: Add some examples, document source package hook.
 .
   [ Kees Cook ]
   * apport/report.py, add_proc_info(): If reading /proc/pid/maps fails,
     ptrace() the target process to make it readable (proposed security
     improvement in future kernels).
   * bin/apport-retrace: Fix crash for packages unknown to the apt cache.
   * apport/report.py, add_gdb_info(): Limit maximum backtrace depth to 2000 to
     avoid infinitely looped stacks and gdb crashes. (LP: #94455)
     This also caps the maximum size of information that we add to reports.
     (LP: #92653)
   * bin/apport-retrace: Add option -R/--rebuild-package-info, so that
     apport-retrace works on unprocessed crash dumps in /var/crash.
   * Some grammar corrections.
   * Add package-hooks/source_apport.py: Package hook for apport itself.
     Include /var/log/apport.log and the status of files in /var/crash.
 .
   [ Michael Hofmann ]
   * Add cli/apport-cli, setup.py, debian/apport-cli.install, debian/control:
     Add command line user interface.
   * apport/ui.py, format_filesize(): Use MiB and GiB instead of MB and GB;
     these are the official units. Adapt test cases.
   * apport/ui.py, collect_info()/file_report(): Do not raise an exception on
     KeyboardInterrupt in the subthreads.
   * apport/ui.py, open_url(): Do not use gtk.MessageDialog(), but
     ui_error_message(), and fix error passing so that the message is
     displayed in the parent thread.
   * apport/ui.py, open_url(): Check that $DISPLAY is set before considering
     the KDE/Gnome web browsers.