Project

General

Profile

unexist.dev

subtle

Assorted tidbits and projects

Bugs » History » Version 2

Anonymous, 01/30/2011 10:09 PM

1 2
h1. Reporting a bug\015\012\015\012{{>toc}}\015\012\015\012Writing a _good_ bugreport is easy, requires only a few steps and makes it easier to understand the actual problem. Before you consider to write a bug report, please make sure you are using the *latest* version of [[subtle]] and check, if there is already a similar ticket in the "bugtracker":http://subforge.org/projects/subtle/issues. If there is such a ticket, it's always good to attach your problem description to the ticket as well. This will automatically add you to the watchers list and you are informed on changes.\015\012\015\012Following information should be in a a _good_ bugreport:\015\012\015\012# Version of [[subtle]]\015\012# Version of "Ruby":http://ruby-lang.org\015\012# Distribution and version\015\012# Description of the problem\015\012# Error messages, a backtrace or a screenshot dependent on the problem\015\012\015\012When you include error messages or backtraces, make sure to use the +exact+, +verbatim+ messages.\015\012\015\012h2. Enable logging\015\012\015\012[[subtle]] writes warnings and errors to "stdout":http://en.wikipedia.org/wiki/Stdout#Standard_output_.28stdout.29 and there is no own facility to write log files. This can be troublesome whenever a login manager is involved or other programs post messages there too. The easiest way to create a real logfile is to redirect the output to a file from your @~/.xinitrc@:\015\012\015\012<pre><code class="bash">exec subtle &> $HOME/subtle-$(date +"%F-%k-%M").log</code></pre>\015\012\015\012h2. Debugging messages and levels\015\012\015\012Per default, [[subtle]] will be compiled without debugging symbols and messages and needs to be recompiled in order to enable this. Please refer to the [[install]] docs how to compile [[subtle]] manually with debugging support.\015\012\015\012The debugging output is grouped into several levels and the amount of output varies. When no level is used, every debugging message will be visible. The various levels with a description can be found [[Hacking#Loglevel|here]].\015\012\015\012h2. Create a backtrace\015\012\015\012When @execinfo.h@ is present on your system, [[subtle]] will print the last 10 stack frames. This information is barely useful without debugging support but still better than no output. Please make sure to include it in your bugreport as well.\015\012\015\012In case you want to provide a more thorough backtrace and don't shy away from a bit extra work:\015\012\015\012The kernel can be advised to create a core file ("core dump":http://en.wikipedia.org/wiki/Core_dump) on a crash, if the line with the _segmentation fault_ contains '(cored dumped)' your system is already set up. Otherwise you need to set the limits for this:\015\012\015\012<pre><code class="bash">ulimit -c unlimited</code></pre>\015\012\015\012Once you get a core file you need to open it with "gdb":http://www.gnu.org/software/gdb/ like this:\015\012\015\012<pre><code class="bash">gdb subtle core\015\012set logging file backtrace.log\015\012set logging on\015\012bt\015\012set logging off\015\012quit</code></pre>\015\012\015\012This will create a file @backtrace.log@, please make sure to attach it to the ticket.\015\012\015\012h2. File a ticket\015\012\015\012Once you gathered the required informations you are ready to create the ticket "here":http://subforge.org/projects/subtle/issues/new.\015\012\015\012Whenever the status of the ticket changes you will get a mail, the usual changes are confirmed (when the problem is known or reproducible), fixed or rejected.\015\012\015\012h2. Otherwise..\015\012\015\012If you have problems with the whole process, please ask either in *#subtle* on *irc.freenode.org* (IRC) or use the "forum":http://subforge.org/projects/subtle/boards.\015\012\015\012