Documentation for developers

Contributing

Send us patches to our mailing list at http://lists.fedorahosted.org/mailman/listinfo/crash-catcher

or create a pull request for the corresponding repository in the abrt GitHub organization.

Where appropriate, your submission should come with a test — either unit test or as a part of our integration test suite. See Writing new integration test for more details.

Nightly builds

Nightly builds and repositories for Fedora and RHEL are avaialable at https://copr.fedorainfracloud.org/groups/g/abrt/coprs/

Ignoring common functions on the stack

To improve clustering of similar crashes done by ABRT Analytics, backtraces are first normalized to skip common functions like _start from glibc or __kernel_vsyscall from Linux kernel.

Such functions are listed in satyr/lib/normalize.c.

Writing man pages

Abrt man pages are written in AsciiDoc, a minimal text markup language. The asciidoctor tool generates the formatted manpage files. Man pages in AsciiDoc format are stored in each project’s doc/ directory. For example, man pages for libreport are placed in libreport/doc/.

See the Asciidoctor documentation for more information on writing man pages in AsciiDoc. The AsciiDoc Writer’s Guide is a good resource for learning AsciiDoc syntax, although not all features are supported by the man page generator.

The existing files in abrt/doc/ can be used as templates for creating new man pages.