Contributing To Twisted ####################### .. contents:: There are many ways individuals and organizations can make contributions to Twisted. Many open source projects are perpetually crunched for volunteer labor. Twisted is no different in this respect — we could always use more help from the community. However, we are lucky to have something that most projects don't: the ability to convert dollars directly into maintenance that benefits the project. When you contribute money to the Twisted project, you are directly contributing to get bugs fixed, features implemented, and tickets reviewed. Donations are `tax-deductible `_ and can be made via `Google Checkout or Paypal `_ or directly to the `Twisted Software Foundation `_. Code Contributions ================== Overview -------- * `Submitting a Patch `_, a simplified overview * `Detailed Contribution Requirements `_, with that and more * `Review Process `_, how contributed code is quality checked and reviewed * `Checklist for Twisted committers `_, things that developers with commit access should know Prepare ------- * Get a GitHub account and then come back and `Login using GitHub `_ on this site * Intimately familiarize yourself with `The Ultimate Quality Development System `_ * Understand the `Developer docs `_ (how-tos, core docs, examples, API reference) * Twisted has a rigorous policy standards for code, documentation, and testing: * `Coding standard `_ * `Writing Style guide `_ * `Testing standard `_ * `Git Access `_ * Understand the `Review Process `_ code review process * Multiple CI services are used to automate the build process across platforms and test for breakage. Watch their feedback on each pull request page. Explore and Contribute ---------------------- * Examine some of the `sources `_ * Take a look at the `open tickets `_ open tickets * Learn the `bug keywords `_ * `'Easy' keyword tickets `_ are low-hanging fruit and good to get your feet wet * `Submit a Patch `_ * Learn how to apply for commit privileges with the `Contributor Advancement Path `_ Other Ways to Contribute ======================== * `Review and add documentation `_ * `Code Reviews `_ * Submit bug reports (you must first be `registered `_) * Provide technical support (answer questions on `IRC and the mail lists `_) * Sign up for a `project job `_. Help us maintain our build CI, speed center, Trac instance, and more. Wiki Portals ============ * `Infrastructure `_ * `ContinuousIntegration `_ * `users `_ * `DocumentationAnalysis `_