The following provides an overview of how a patch or new feature is created, tested and reviewed and then committed to the Asterisk project.
Getting the source
SVN repository
Asterisk and Asterisk-related projects are maintained through Subversion. Therefore, if you are interested in developing for the Asterisk project, you will need to use SVN to get the most up-to-date source code.
Getting the source does NOT require commit access to the SVN server. Anyone can check out the code on the SVN server, which is checked out from the /trunk. Future sub-releases of a major release version are found in /branches. Release snapshots can be checked out from the /tags directory.
Read about how the source code is organized prior to getting started, and the policies for committers or just get the source if you already understand everything.
Creating patches & features
Issue Tracker
Bug patches are created and submitted to the issue tracker only after the latest code has been checked out from SVN verified by the user that the problem hasn't already been fixed. When a patch is ready to be submitted, open an issue in the bug tracker.
New features are second in priority to bug patches and require thoughtful consideration to their usefulness. New features are discussed heavily by the community on the #asterisk and #asterisk-dev IRC channel (port 6667 on irc.freenode.net) prior to submission. After the feature is submitted to the issue tracker, they are generally kept open one week for discussion, then closed and archived.
Read how to create a new patch and the Bug Guidelines for detailed information on submitting a patch or new feature.
Testing a patch or new feature
Asterisk users
Exhaustive testing is required before a new feature or bug patch is committed to the SVN repository. However, SVN maintainers and Bug Marshals do not have the time to test every patch or new feature. Working relationships are developed among Asterisk users on the #asterisk-dev and #asterisk-bugs IRC channels and mailing lists so that patches can be tested thoroughly.
Read the Bug Guidelines for detailed information on testing.
Committing code to the project
Bug marshals
Only after exhaustive testing and with Bug Marshal approval, patches and new features are committed to the SVN repository to the Asterisk project, which can be monitored by reading commit mailing lists.
Read the Bug Guidelines for detailed information on submitting code to the Asterisk project.
