.. _how-to-contribute: ===================== How To Contribute ===================== **You are very welcome to contribute!** PyInstaller is a maintained by a group of volunteers. All contributions, like community support, bug reports, bug fixes, documentation improvements, enhancements and ideas are welcome. PyInstaller is an free software project that is created and maintained by volunteers. It lives-and-dies based on the support it receives from others, and the fact that you're even considering contributing to PyInstaller is very generous of you. Since as of now all core-developers are working on PyInstaller in their spare-time, you can help us (and the project) most if you are following some simple guidelines. The higher the quality of your contribution, the less work we have incorporating them and the earlier we will be able to incorporate them :-) If you get stuck at any point you can `create a ticket on GitHub `_. For more about our development process and methods, see the :ref:`development guide`. Some ideas how you can help ============================== Some ideas how you can help: * **Answer** |support tickets:|_ Often the user just needs to be pointed to the fitting section in the manual. .. |support tickets:| replace:: **support tickets:** .. _`support tickets:`: https://github.com/pyinstaller/pyinstaller/issues?q=is%3Aopen+is%3Aissue+label%3Akind%3Asupport * **Triage** |open issues,|_ which means: read the report; ask the issue requester to provide missing information and to try with the latest development version; ensure there is a *minimal* example; ensure the issue-reporter followed all steps in :ref:`When things go wrong`. If you are able reproduce the problem and track down the bug, this would be a *great* help for the core developers. .. |open issues,| replace:: **open issues,** .. _`open issues,`: https://github.com/pyinstaller/pyinstaller/issues?q=is%3Aopen * **Help improving the documentation:** There is a list of `documentation issues`__ you can pick one from. Please provide a pull-request for your changes. :ref:`Read more »» ` __ https://github.com/pyinstaller/pyinstaller/issues?q=is%3Aopen+is%3Aissue+label%3Aarea%3Adocumentation * **Pick an** |pull-request-issue|_ and provide one. .. |pull-request-issue| replace:: **issue requesting a pull-request** .. _`pull-request-issue`: https://github.com/pyinstaller/pyinstaller/issues?q=is%3Aopen+is%3Aissue+label%3A%22pull-request+wanted%22 * **Review** |pull requests:|_ Are the commit messages following the guideline :ref:`Commit Messages`; do all new files have a copyright-header (esp. for hooks this is often missing); is the code okay; etc. .. |pull requests:| replace:: **pull requests:** .. _`pull requests:`: https://github.com/pyinstaller/pyinstaller/pulls * Scan the `list of open issues`__ and pick some task :-) __ https://github.com/pyinstaller/pyinstaller/issues Thank you very much! If you plan to contribute frequently, just ask for write access to the main git repository. We would be glad to welcome you in the team! .. include:: _common_definitions.txt .. Emacs config: Local Variables: mode: rst ispell-local-dictionary: "american" End: