Contributing

Ideas to contribute

Pidgin is a huge project with a ton of things to be done, even if you’re not a coder. Below is a short list of things you can do to help get involved!!

  • Triage the issue tracker.
    • Try to reproduce described bugs. If you can find an easy way to reproduce, leave a comment explaining how to do it.
    • Find/mark/close duplicates. Seriously, even just one or two duplicates found and properly marked is a huge help to our backlog!
    • Suggest patches be turned into pull requests, or bring patches to the attention of the core dev team.
  • Help users and participate in the community chatrooms.
  • Proofread the documentation–this is a really, really easy way to start!
  • Help facilitate translators and translations
  • Convert legacy wiki pages to markdown for inclusion in this repo.
  • Walk the links on ThirdPartyPlugins and mark broken ones as such. This is another really easy way to start!
  • Participate in discussion on IRC, XMPP, and/or the Mailing Lists.

For the coders out there:

  • Find/fix build warnings.
  • Find/fix bugs on your own or via the issue tracker.
  • Participate in design discussions.
  • Add cool features!
  • Look over the outstanding review requests on our Review Board instance. You don’t have to actually review code (but if you can provide helpful feedback we will appreciate it!), but looking through the open review requests can help you find your way into our codebase and style.

How to submit a bug report

Submitting good bug reports is very important.

Before you submit any bug report

Remember that we don’t support third-party plugins like the ones we showcase in the plugins section of this site. We didn’t develop those plugins and can’t help you with those issues. Keep in mind that a sizable majority of crashes are caused by misbehaving plugins so the first thing to check when an issue appears is whether the issue is caused by a plugin or not.

  1. Make sure your plugins are in the most current version available.

  2. Disable plugins you have loaded (one by one) until you eliminate the source of the crash.

    If your crash happens on startup of the application, you can try renaming the prefs.xml file in the .purple directory to something such as prefs.xml.old to force a startup without plugins. Note that this means that you will lose all settings stored there.

  3. By now you should know whether the crash is caused by a plugin (ie only happens when a specific plugin is enabled) or if it’s an issue in Pidgin itself.

    1. If the issue is caused by a third party plugin, report the issue to the authors of the plugin. Usually the authors specify how to submit issues in the repository where the code of the plugin is hosted.
    2. If the issue is caused by a plugin that comes built in to Pidgin or happens with all plugins disabled then follow the instructions below to submit a bug report to the Pidgin project.

Steps for bug report submission

  1. Ensure that you have read the Before you submit any bug report section. This will save you and the Pidgin developers time.

  2. Search our issue tracking platform for existing bug reports that match the issue you have encountered. This is to ensure that we are not submitting a duplicate issue.

  3. If the bug you are reporting is a previously unknown security vulnerability, please read our Security page for details on how to submit a security vulnerability report. It’s of utmost importance that security issues are not made public until we have the chance to fix them, otherwise our users will be vulnerable until we are able to fix the issue and release a new version of Pidgin.

  4. If you checked all the steps we mentioned before, then go ahead and create the issue in our issue tracking platform.

    1. You need to be logged in to our issue tracker in order to submit issues.

      If you don’t already have an account, click on the Login button and from there you’ll have the option to either use use one of the social logins available or create a new account directly in our Jetbrains Hub instance, which is the platform we use to handle authentication.

    2. Ensure you are logged in with your account in our issue tracking platform.

    3. Submit the bug report, take your time to describe the issue with as much depth as possible and if you can it would also be important to provide the steps needed to reproduce the issue. Another useful section that you may want to checkout, particularly if the issue is about a crash in the application itself, is the Debugging Pidgin one since over there it’s explained how to obtain a debug log or a crash dump which will help Pidgin developers a lot when looking at how to fix an issue.

How to contribute code

We acknowledge that Pidgin leverages tools that a lot of developers may not be familiar with so we created documentation that helps you getting started and at the same time explains how our contribution process works.

Instant Messaging Freedom Contributors Guide

If you have any questions about this process, remember that you have a variety of methods to reach out to us.

Looking to reach us via XMPP? Check out the new PidginChat service!