Permalink
Cannot retrieve contributors at this time
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
thunar/HACKING
Go to fileThis commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
66 lines (51 sloc)
2.58 KB
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Bug tracking system | |
=================== | |
Thunar uses the Xfce bug tracking system at http://bugzilla.xfce.org/, | |
hosted and maintained by the Xfce project. | |
Patches | |
======= | |
Please submit patches to the Xfce bug tracking system or to the thunar-dev | |
mailinglist. Your patch should be in unified diff format (the -u option | |
to GNU diff) and it must comply with the coding style described below. | |
Please send a patch against a recent version of this package. Patches | |
against the Git master branch are most preferable. You can always | |
clone the Thunar repository from | |
http://git.xfce.org/git/xfce/thunar | |
Feature requests | |
================ | |
Please file feature requests to the Xfce bug tracking system | |
(http://buzilla.xfce.org, product Thunar) with a Severity of | |
enhancement. Make sure that your feature request wasn't reported | |
already before; requesting a feature several times won't increase | |
the changed that it gets added! | |
Coding Style | |
============ | |
- GNU coding conventions, with GLib-like extensions, mostly the same | |
as GTK+. | |
- Always expand tabs. This differs from the GNU suggestion, but it is | |
necessary to be independent from a given tab setting. | |
- Do NOT ever misuse debugging macros like g_return_val_if_fail() or | |
g_return_if_fail() to control program flow. They are solely useful | |
to discover bugs, the final binary won't include code for these | |
statements, and so any use of these macros to control program | |
flow presents a bug! | |
- Do NOT follow the philosophy "If it works, it's right" that most | |
other open source projects follow, instead Thunar's philosophy is | |
"It doesn't work unless it's right". Think carefully of what you want | |
to do, don't just fire up your favourite editor and start hacking | |
in the hope that it will evolve into something useful one day. | |
- Maintainability goes over performance. If you have to choose between | |
a maintainable and a fast solution, always prefer the former, as it's | |
quite easy to optimize well-designed modules, but very hard and costly | |
to make spaghetti-code readable. | |
- Write ChangeLog entries. Whenever you commit a change or send a patch, | |
write a good entry per change to the ChangeLog file, see the libexo | |
ChangeLog for the exact format; it's very important to be descriptive | |
and correct here, else you'll loose your commit bits or your patches | |
won't be considered for inclusion. | |
- Use GObject whenever possible. Object-oriented design and programming | |
makes it easier to separate functionality and also aids in verification | |
and testing, and GObject provides a very solid base. | |
Release process | |
=============== | |
Yet to be defined! |