Change log for apport package in Ubuntu
526 → 550 of 925 results | First • Previous • Next • Last |
apport (0.25) edgy; urgency=low * Drop apport-gtk's update-notifier dependency to a Recommends:. * apport_utils.py, report_add_gdb_info(): Add register dump and disassembly of the last 32 bytes, they might be useful to see what's going on sometimes. Thanks to Kees Cook for the idea and the patch. * test-apport, check_crash(): Verify that a crash does not leave a core file behind. (Test for LP#62972) * preloadlib/libapport.c: Do not unlink the core file after calling apport, but set REMOVE_CORE=1 environment instead. This matches the current kernel behaviour. * apport: Register an atexit handler as early as possible for unlinking the core dump if REMOVE_CORE environment is set. Closes: LP#62972 * apport: Set nice level 10 instead of 5. Closes: LP#63099 -- Martin Pitt <email address hidden> Mon, 2 Oct 2006 14:21:53 +0200
apport (0.24) edgy; urgency=low The "Need for speed" release -- rrrroarrr! * apport: Remove _copy_shrink_corefile(): While this has an enormous impact on the size of an uncompressed core dump, it only causes a negligible size reduction of the bzip2'ed core, but it needs a lot of I/O resources for large core dumps. * problem_report.py: - Use zlib instead of bzip2 for compressing the binary data (in particular, core dumps). This results in slightly bigger files, but speeds up compression a lot (30 seconds vs. ~2:45 minutes for a Firefox core dump on my slow iBook). Closes: LP#61538 - ProblemReport.read(): Support both bzip2 and zlib compression to be able to read existing reports, too. - Add/Adapt test cases. * Move InformationCollector._get_gdb() from apport to apport_utils.py report_add_gdb_info(), and add a test case for it. * apport_utils.py, report_add_package_info(): Support calling without a package name, then it will be figured out from ExecutableName. Extend test case accordingly. * test-apport: Do not require apport reports to contain gdb, packaging, and OS information, since we are going to move them out of apport. * apport: Do not collect static information. It requires a lot of CPU and I/O resources and slows down the machine a lot, and it can be added to the report later in the frontend. This also gets rid of the entire InformationCollector class, since everything has been moved to apport_utils.py now. Closes: LP#62542 * apport: Do not intercept KeyboardInterrupt as unhandled exception (only useful for command line debugging, though). * problem_report.py: Add test case for appending new data to an existing report, fix write() function to not rely on an existing ProblemType key. * problem_report.py: Add new method ProblemReport.add_to_existing() to update an already existing problem report with new data. Add test case. * apport_utils.py, mark_report_seen(): Use os.utime() instead of open()/read() and a timeout for simpler and faster operation. * gtk/apport-gtk: - Collect gdb/packaging/operating system information when the user chooses to file a bug and update the apport report. - Change the 'Downloading bug patterns...' progress dialog to 'Collecting information about the crash...'. * debian/control: Bumped library dependencies of apport-gtk, added update-notifer dependency. -- Martin Pitt <email address hidden> Fri, 29 Sep 2006 15:47:56 +0200
apport (0.23) edgy; urgency=low * apport: Reset signal handler to SIG_IGN in the crash signal handler, to avoid an endless crash/handler loop (noticed during debugging LP#61708). * debian/apport.init: Do not let the script run with set -e, so that do_{start,stop} can deliver their return codes for proper evaluation, instead of immediately existing. Closes: LP#61796 * test-apport: Check that SIGQUIT does not generate a report. (Check for bug #62511). * apport: Ignore SIGQUIT. Closes: LP#62511 -- Martin Pitt <email address hidden> Thu, 28 Sep 2006 20:57:38 +0200
apport (0.22) edgy; urgency=low * apport_utils.py, report_add_proc_info(): Make 'interpreted script' detection more general to also work for mono programs. * test-apport: Check that non-packaged scripts do not generate a report. * apport: Call ic.collect_runtime_information() earlier and drop the local /proc/pid/exe examination, so that we get proper script detection. This avoids getting crash reports for non-packaged scripts (see test case change from above). * apport: Do not try to chmod the report file if we could not create it and output to stderr instead (this mainly affects local testing only). * apport_utils.py, find_file_package(): First grep the package lists whose names are a substring of the crashed binary name (or vice versa), to immensely speed up the package name determination in many cases. * apport: Drop the maximum number of consecutive crashes per executable from 5 to 2. 5 creates a too bad user experience and creates the impression that it will never stop. Closes: LP#61078 -- Martin Pitt <email address hidden> Tue, 19 Sep 2006 16:16:46 +0200
apport (0.21) edgy; urgency=low * apport: Keep a partially written report with '000' permissions, and only chmod it to 0600 when it is fully written. This stops update-notifier from picking up half-written reports and get activated several times. Closes: LP#59988 * apport: Add the executable path to the first line of logging. * apport: Run the complete code under control of the general exception fallback handler. * debian/apport.default: Increase maximum core size to 200 MB, to also catch Firefox and Evolution core dumps. * apport_utils.py, find_file_package(): Before searching the dpkg database (which is expensive), check if the executable path matches a whitelist of path prefixes. This replaces the weaker blacklist (/tmp and /home) in apport itself. * gtk/apport-gtk: Show a progress dialog while checking for bug patterns and execute report_search_bug_patterns() in a separate thread, so that the UI is not potentially blocked for a long time. * apport: Gracefully abort if we cannot readlink /proc/pid/exe, instead of falling over with an exception. Closes: LP#59993 * debian/rules: Use 'multiuser' instead of 'defaults' for dh_installinit. Clean up the unnecessary rc symlinks in postinst and add appropriate sysv-rc dependency. -- Martin Pitt <email address hidden> Thu, 14 Sep 2006 23:16:26 +0200
apport (0.20) edgy; urgency=low * apport: Renice ourself to priority 5 to not slow down the user's processes so heavily. * Add manpages for apport-retrace(1) and apport-unpack(1) and install them into apport. Closes: LP#58463 * problem_report.py: Test attaching two files instead of one in the test_write_file() regression check to assert correct key sorting. * problem_report.py: Alter write() method to sort binary data to the end of the report. This makes reports easier to read, and also shows relevant information more quickly when progressively loading them in a web browser. Adapt regression tests accordingly. * Move setting of ExecutablePath from apport's InformationCollector ctor to apport_utils' report_add_proc_info(), where it belongs to. Check ExecutablePath in apport_utils' regression tests. * apport-unpack: Support '-' as report argument to read from stdin. * apport_utils.py, report_add_proc_info(): - Apply some heuristics to determine whether the crashed process is an interpreted script (check if the Name in /proc/pid/status matches the second /proc/pid/cmdline part, and if that command line argument is an existing executable file). In the case of an interpreted script, set ExecutablePath to the script and InterpreterPath to the actually crashed ELF binary. - Test this with a shell (/bin/zgrep) and a Python (./apport-unpack) script in the test suite. - Closes: LP#58859 * Add debian/apport.logrotate to add a daily 7-step /var/log/apport log rotation. * test-apport: Fix WCOREDUMP() and pidof checks in check_crash(). * apport: Install a signal handler for all 'crashy' signals, which just logs the signal and stack info and exits. This should avoid a crashing apport examining itself, possibly in an endless loop. Closes: LP#58873 -- Martin Pitt <email address hidden> Mon, 11 Sep 2006 09:20:18 +0200
apport (0.19) edgy; urgency=low * apport_utils.py: Add function report_search_bug_patterns(): Try to download a package specific bug pattern XML file from a given URL base directory and return the bug URL in case of a match. Also add extensive test suite check. * test-apport: Fix help message. * apport-gtk: Make use of the new report_search_bug_patterns() function and display appropriate instructions on match. Bump python-apport-utils dependency. -- Martin Pitt <email address hidden> Tue, 5 Sep 2006 11:31:17 +0200
apport (0.18) edgy; urgency=low The "mating dance for ubiquity" release. * apport-gtk: - Use pidof's -x option in the detection whether the program is already running to correctly handle scripts. - Do not assume the presence of the ExecutablePath key in reports, but gracefully fall back to Package. - If the report specifies an explicit DesktopFile, use that instead of trying to figure it out. - Only created reduced report and show the radio buttons if there are actually removed fields. - Change tooltip of 'reduced report' radio button to be more generic (do not refer to the memory dump, but to 'large items', since this is what apport-gtk currently does). - Support new field 'BugDisplayMode: file | list (default)'. In 'file' mode, display the /+filebug page instead of /+bugs and change instructions accordingly. - Use the ProcCmdline attibute to restart an application; correctly parsing of all the desktop file is just not possible at this point. - Support new field 'RespawnCommand' to use custom respawning command. * problem_report.py: Add method has_removed_fields() to check whether load() skipped any fields due to binary=False. Add test suite check. * apport_utils.py: Fix the quoting in ProcCmdline so that it is fully shell compatible. * run-tests: Check if kernel crash dump helper is active, and if so, run test-apport in kernel mode. * problem_report.py: Support an optional second argument of file references which controls whether or not the file contents will be compressed/encoded (defaults to True for backwards compatibility). Add test suite checks. -- Martin Pitt <email address hidden> Fri, 25 Aug 2006 14:01:47 +0200
apport (0.17) edgy; urgency=low * Move packaging information collection from apport to new function report_add_package_info() in apport_utils.py, add test suite check. * Move operating system information collection from apport to new function report_add_os_info() in apport_utils.py, add test suite check. * Move /proc information collection from apport to new function report_add_proc_info() in apport_utils.py, add test suite check, and fix handling of failed /proc/$$/environ reading. * preloadlib/libapport.c: Route gcore's stderr to /dev/null to suppress error messages during the test suite and to become more compatible to the kernel behaviour. * Change apport_utils.py to be a public module and ship it in the new python-apport-utils package, so that other applications like ubiquity can use it easily. * po/de.po: Add new translations to make this complete again. * problem_report.py, apport_utils.py: Prepend UnitTest classes with '_' so that they do not appear in the help() output. * apport_utils.py: Add make_report_path(), which constructs the canonical crash report pathname for a given report. * Add debian/apport.postinst: Remove /usr/share/apport/apport_utils.pyc when upgrading from an earlier version, so that the programs in /usr/share/apport actually use the version from p-apport-utils. -- Martin Pitt <email address hidden> Tue, 22 Aug 2006 18:14:00 +0200
apport (0.16) edgy; urgency=low * test-apport: Check that non-packaged binaries do not generate a report. * apport_utils.py: Add find_file_package() to find the package a file belongs to. This uses fgrep /var/lib/dpkg/info/*.list which is much faster than dpkg -S. Also add test suite check. * apport: Use find_file_package() instead of direct dpkg -S call and pass the result to the InformationCollector ctor to avoid grepping the dpkg lists twice. * apport: Immediately exit if the executable name starts with /home or /tmp, to avoid grepping the dpkg database in the common developer case. * apport: Replace 0-bytes in ProcCmdline with spaces to keep them readable. * apport-gtk: Offer an alternative small report (without the core dump) for users with slow internet connection. -- Martin Pitt <email address hidden> Mon, 21 Aug 2006 19:34:47 +0200
apport (0.15) edgy; urgency=low * Add apport-unpack: Script to extract the fields of a problem report into separate files into a new or empty directory. Mainly useful for extracting compressed binary data like the core dump. * test-apport: Check that dumped environment only contains security insensitive variables. * apport: Filter out all environment variables but $SHELL, $PATH, and locale/language related ones. Closes: LP#56846 * test-apport: Delete test report in the cleanup handler so that the kernel-mode test can be run multiple times without manual cleanup. * test-apport: Check for running apport and test executable processes in check_crash(). * preloadlib/libapport.c: Improve error checking, some robustification. * test-apport: If using the preload library, wait a second between the test process invocations in the flooding test to mitigate a strange race condition that sometimes causes the signal handler not to be executed. -- Martin Pitt <email address hidden> Sun, 20 Aug 2006 16:28:43 +0200
apport (0.14) edgy; urgency=low * preloadlib/libapport.c: Write core dump into cwd instead of /tmp to act like the current kernel. * apport_utils.py: Check APPORT_REPORT_DIR environment variable for an alternate crash report directory. This is mainly useful for a local test suite. * apport: Quiesce the apt module's FutureWarning. * preloadlib/libapport.c: Re-raise the signal instead of doing exit() so that the process exits with the same code as it would do without the library. * preloadlib/libapport.c: Close stdout for gcore process. * Add test-apport: Use preloadlib/ and APPORT_REPORT_DIR to create a sandboxed environment and run various apport functionality tests. Also add this script to run-tests. * apport_utils.py, delete_report(): Actually try to unlink the report before falling back to truncating it to zero bytes. * preloadlib/libapport.c: Close stderr for apport process. -- Martin Pitt <email address hidden> Fri, 18 Aug 2006 15:46:37 +0200
apport (0.13) edgy; urgency=low * Do not run the test suite on build since on the buildds modifying file atimes does not work. -- Martin Pitt <email address hidden> Fri, 18 Aug 2006 00:59:26 +0200
apport (0.12) edgy; urgency=low * apport-gtk: Make bug report window resizable when the details are expanded. Closes: LP#56672 * apport_utils.py: Add get_recent_crashes() and a test suite check for it. * apport: If the same binary produced more than 5 crashes in the last 24 hours, ignore the crash. This is a hideous and pretty ad-hoc band-aid to avoid flooding users with reports for continuously crashing respawning processes. Closes: LP#56362 * apport: Clean up exit codes to only exit with 0 if report was created, and with 1 otherwise (to become more compatible to proposed future kernel behaviour, where core dumps are only generated on demand). * Add run-tests script which calls all available selftests. * debian/rules: Run run-tests during build to have the package FTBFS on regressions. Add python build dependency for this (it is already there implicitly anyway). -- Martin Pitt <email address hidden> Thu, 17 Aug 2006 16:06:41 +0200
apport (0.11) edgy; urgency=low * gtk/apport-gtk.glade: Remove separators from dialogs. Closes: LP#56326 * apport: - Move information collection from ctor to two new separate functions collect_runtime_information() (fast, privileged, crashed process must exist) and collect_static_information() (slow, unprivileged, crashed process does not need to exist). This allows a cleaner design. - Add missing close() call in init_error_log(). - Do not catch SystemExit in the final catch-all-and-log clause (will become important once we switch to master/slave processes). - Clean up handling of temporary files. - Log successful report creation with file and package name, to ease debugging. - transitive_dependencies(): Do not break on pure virtual dependencies (like perl-api-XXX). * Add debian/apport.default: Default file to disable apport entirely and to change the maximum size of kernel created core dumps. * debian/apport.init: Evaluate new default file. -- Martin Pitt <email address hidden> Wed, 16 Aug 2006 17:05:19 +0200
apport (0.10) edgy; urgency=low * apport-gtk: Show report file size in bug report window. * apport: Correctly handle relative paths to core dumps (use crashed process' cwd). * Fix the GPL URLs in source file's copyright comments. * debian/apport.cron.daily: Add -mindepth 1 to find commands to avoid attempting to remove the /var/crash/ directory. Closes: LP#55107 * problem_report.py: - Fix precise whitespace handling in continuation lines, add selftest. - Add selftest for reading a report, modifying fields, and writing it back. - Fix writing back binary data, adapt test suite to check it. - Fixed ProblemReport.load() to clean up old data, added selftest. - Restructure class to inherit from IterableUserDict and throw away all the now obsolete dictionary wrapper methods. * debian/apport.init: Add colon to description to make output less confusing. * Add apport-retrace and install it into apport: This tool takes a crash report and refreshes the stack traces in it. This is particularly useful if debug symbols are installed now, but haven't been at the time the crash occured. -- Martin Pitt <email address hidden> Fri, 11 Aug 2006 15:40:05 +0200
apport (0.9) edgy; urgency=low * apport: Call objcopy to throw out READONLY/CODE sections from the core dump, which drastically reduces its (uncompressed) size (factor 2 to 10). This has little effect on the bzip2'ed core dump, though. * apport: - Support an optional third command line argument which specifies the location of a core dump. - If a core dump is given, call gdb on the core dump instead of the crashed process. We cannot attach to the latter if we are called by the kernel (since the crashed process is in uninterruptible kernel sleep). - If no core dump is given, do not attempt to do anything gdb related. - This matches the future behaviour of the kernel crash dump helper while remaining compatible to the previous call semantics. * Add preloadlib/{Makefile,libapport.c}: LD_PRELOADable library which emulates the future kernel behaviour. This is ONLY for testing and development purposes. It uses unsafe temporary file handling and thus must not be used on production boxes! * Ship preloadlib/* as examples in package 'apport' for people who want to play with it until the new kernel arrives. * Add preloadlib/README: Explain how to use the preload library. -- Martin Pitt <email address hidden> Wed, 9 Aug 2006 12:12:20 +0200
apport (0.8) edgy; urgency=low * apport_utils.py: - Add two new functions seen_report() and mark_report_seen(). - get_new_reports(): Only return unseen reports, add function get_all_reports() for the old behaviour. * gtk/apport-gtk.py: Do not delete reports after notifying about them. This way, we do not need to add another button to save the report (which is considered evil UI-wise), but still retain the report for filing and examining later. * Replace all usages of '/var/crash' to a new global variable in apport_utils; this is particularly useful for test suites. * apport.py: Overwrite old reports if they are seen. * apport_utils.py: Add a test suite for all exported functions. -- Martin Pitt <email address hidden> Tue, 8 Aug 2006 19:29:23 +0200
apport (0.7) edgy; urgency=low * Add apport-utils.py: Factorize out some common code of apport-gtk, possible future frontends, and some backend tools. * Add apport-checkreports: Test if there are new crash reports for the invoking user. This factorizes out the tests we currently do in update-notifier and makes them easier to change and keep in sync with apport itself. Ship the script in the apport package. -- Martin Pitt <email address hidden> Tue, 8 Aug 2006 17:24:46 +0200
apport (0.6) edgy; urgency=low * Add missing intltool build dependency to fix FTBFS. -- Martin Pitt <email address hidden> Thu, 3 Aug 2006 09:15:42 +0200
apport (0.5) edgy; urgency=low * apport-gtk: Remove the crash report after it got displayed. * apport-gtk: Fix exception on startup if no readable crash reports exist. -- Martin Pitt <email address hidden> Wed, 2 Aug 2006 23:42:34 +0200
apport (0.4) edgy; urgency=low * Implement completely new UI according to the design described at https://wiki.ubuntu.com/CrashReporting. Many thanks to Matthew Paul Thomas! * po/Makefile: Fix default target to not just break. Now it builds the .pot file. * debian/rules: Build .pot file on package build for automatic Rosetta import. * Bring German translations up to date. * po/Makefile: Supply '--language=python' to intltool-update to properly extract strings from apport-gtk. -- Martin Pitt <email address hidden> Wed, 2 Aug 2006 23:14:58 +0200
apport (0.3) edgy; urgency=low * debian/rules clean: Also clean po/. * debian/apport.cron.daily: Clean away empty files everytime. * apport: Only consider a report as already present if it has a non-zero size. * apport: Set proper group for report files instead of 'root'. * apport-gtk: Ignore 0-sized reports. * apport-gtk: Add button to remove the current report (by truncating the file to zero bytes; a user cannot unlink files in /var/crash). * apport-gtk: Only display reports that the user can actually read. * problem_report.py: Add 'binary' option to ProblemReport.load() to optionally skip binary data. * debian/rules: Clean stale *.pyc files. * python-gtk: Do not load binary data (core dumps, etc.) to greatly speed up the GUI. They are just gibberish anyway. * apport: Switch from apt_pkg to apt, add SourcePackage: to reports. * apport-gtk: Use source package name for the Malone URL. * debian/rules: Call setup.py install with --no-compile to not ship *.pyc in debs. -- Martin Pitt <email address hidden> Mon, 31 Jul 2006 13:11:52 +0200
apport (0.2) edgy; urgency=low * debian/apport.cron.daily: Do not produce error messages if 'find' does not find any crash reports. * problem_report.py: Support iterators, add test case. * apport: Filter out trailing 0-byte from ProcCmdline. * Add a simple GTK frontend, ship it in new package apport-gtk. -- Martin Pitt <email address hidden> Thu, 27 Jul 2006 23:52:33 +0200
apport (0.1) edgy; urgency=low * Initial release. This package implements the client backend part of https://wiki.ubuntu.com/AutomatedProblemReports. -- Martin Pitt <email address hidden> Mon, 24 Jul 2006 14:21:10 +0200
526 → 550 of 925 results | First • Previous • Next • Last |