Some information to help you starting with SàT development can be found here: SàT_développement_(technical_HOWTOs)/en.
Thanks to read the following points if you plan to submit a contribution.
It can be found here: Coding_style/en
Comment your commit
Please comment your commit using the following rule:
- always use spaces and no tabs, as in Python source code
- enumerations must use dashes (-) and be aligned with the first space following the :
- commits are preceded by a keyword, which correspond to the main part modified. Some examples:
- plugin XEP-0XXX: bla bla
- plugins XEP-0XXX, XEP-0YYY: bla bla
- core (memory): bla bla
- core (XMLUI): bla bla
- misc (README): bla bla
- server: bla bla
- browser: bla bla
- browser, server: bla bla
Use 'misc' for the parts that don't fit any category. You can sometimes avoid the subargument for core, but most of time it's needed
- give a short description in the first line. If you have several changes to comment, please separate them with a "+" on the first line, but try not to mix several modifications within the same changeset, it would make it harder to keep track of the changes.
- if you need to detail your changeset (more than one line), the first line must finish with a :. That's because some tools only display the first line and you want to let the others know that some more lines are following.
- if you fix a bug/change request or just want to reference it, please insert "fix bug XX" in your message, with XX standing for the bug number. A bot is checking the commit messages and when it matches the pattern "fix bug [0..9]+", the message will be automatically appended to the related bug discussion on http://bugs.goffi.org.
Here are examples commit messages:
wix: fixed application quitting (fix bug 25)
plugin XEP-0277: RuntimeError is now catched during link parsing (can happen if no service jid is found)
primitivus: fixed urwid issues with recent urwid versions: - detail 1 - detail 2 fix bug 18
core (XMPP): sendMessage refactoring: - sendMessage now use JID instead of unicode, bridge method using unicode is now _sendMessage - added no_trigger argument, so it's now possible to forbid trigger execution (to avoid any plugin when we send a message)
browser: dialogs take **kwargs arguments + unibox helper method: - add the **kwargs arguments to the dialog classes, especially to pass the Width='xxx' setting - add a method getTargetAndData to UniBox, for external use and to get the message recipient and body without dealing with the target hooks, selected panels...
Please export your Mercurial commit to a patch using the "git" format, and set your name and email to the username parameter. Your setting file ~/.hgrc should look like that:
[diff] git = True [...] [ui] username = YOUR_NAME <YOUR_EMAIL>
Instead of setting the git option in this file, you can also specify the paramater "--git" on the command line.
You can check Mercurial documentation for more details.
Publish a merge request
Once you are happy with your modification, you can commit it (either directly, or using mq) with the following command:
hg commit -e
Then enter the message.
Then to publish a merge-request, you just have to go into the repository, and enter the following command:
jp merge-request set
This will automatically create a Merge-Request, you can then see it on https://bugs.goffi.org/mr .
Thank you for contributing!