Phalcon is an open source project and relies heavily on volunteer efforts and contributions. We welcome contributions from everyone!
Please take a few moments to review this document to understand the contribution process and make it as efficient as possible for all. By following these guidelines, we can have faster resolution of issues, better communication and we can all move the project forward!
The Phalcon source code (along with documentation, websites etc.) is stored in GitHub. You can browse our repositories in our organization page.
If you wish to contribute to Phalcon, you can do so by issuing a GitHub pull request.
When you create a pull request, we have a handy template to help you describe what is the scope of the pull request. It is very important and helpful to the community that you add tests to your pull request. Each pull request will be reviewed by a core contributor (someone with permissions to merge pull requests). Based on the type and content of the pull request, it could be:
NOTE: Please make sure that the target branch that you send your pull request is correct and that you have already rebased your code. Pull requests to the master branch are not allowed
If programming in Zephir seems daunting, there are plenty of areas that you can contribute. You can always check the documentation for any typographic or context errors. You could also enhance the documentation with more examples in the respective pages.
All you have to do is go to our docs repository, fork it, make the changes and send us a pull request.
NOTE: Note that changes to the
docs
repository are allowed only to the English documents (en
folder).
If you wish to contribute to Phalcon by translating our documents in your native tongue, you can utilize the excellent service of our friends at Crowdin. Our project is located here. If your language is not listed, please send us a message so that we can add it.
NOTE: We only accept bug reports, new feature requests and pull requests in GitHub. For questions regarding the usage of the framework or support requests please visit the official forum or our Discord server.
Sometimes due to Segmentation Fault error, Phalcon could crash some of your web server processes. In order to help us find the cause of this segmentation fault, we will need the crash backtrace.
Please check the following links for instructions on how to generate the backtrace:
master
branch are not accepted. Please fork the repository and create your branch from the necessary “source” branch, for instance 4.0.x
and if need be rebase your branch before submitting your pull request. If there are collisions, we will ask you to rebase your branch again.editorconfig
plugin in your favorite IDE to take advantage of the supplied .editorconfig
file that comes with this repository and not to have to worry about coding standards. All tests (PHP code), follow the PSR-2 standardext/kernel
, *.zep.c
and *.zep.h
files before submitting the pull requestBefore submitting new functionality, please open a NFR as a new issue on GitHub to discuss the impact of including the functionality or changes in the core extension. Once the functionality is approved, make sure your PR contains the following:
CHANGELOG.md
If you have any questions about how to use Phalcon, please see the support page.
If you have any changes or new features in mind, please fill an NFR.
Thanks!
<3 Phalcon Team