Tue Aug 20 16:34:36 2013

Asterisk developer's documentation


releases.h

Go to the documentation of this file.
00001 /*
00002  * Asterisk -- An open source telephony toolkit.
00003  *
00004  * Copyright (C) 1999 - 2009, Digium, Inc.
00005  *
00006  * See http://www.asterisk.org for more information about
00007  * the Asterisk project. Please do not directly contact
00008  * any of the maintainers of this project for assistance;
00009  * the project provides a web site, mailing lists and IRC
00010  * channels for your use.
00011  *
00012  * This program is free software, distributed under the terms of
00013  * the GNU General Public License Version 2. See the LICENSE file
00014  * at the top of the source tree.
00015  */
00016 
00017 /*!
00018  * \file
00019  */
00020 
00021 /*!
00022  * \page ReleaseStatus Asterisk Release Status
00023  *
00024  * @AsteriskTrunkWarning
00025  *
00026  * \section warranty Warranty
00027  * The following warranty applies to all open source releases of Asterisk:
00028  *
00029  * NO WARRANTY
00030  *
00031  * BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
00032  * FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
00033  * OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
00034  * PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
00035  * OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
00036  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
00037  * TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
00038  * PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
00039  * REPAIR OR CORRECTION.
00040 
00041  * IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
00042  * WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
00043  * REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
00044  * INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
00045  * OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
00046  * TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
00047  * YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
00048  * PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
00049  * POSSIBILITY OF SUCH DAMAGES.
00050  *
00051  * \section releasestatustypes Release Status Types
00052  *
00053  * Release management is a essentially an agreement between the development
00054  * community and the %user community on what kind of updates can be expected
00055  * for Asterisk releases, and what types of changes these updates will contain.
00056  * Once these policies are established, the development community works very
00057  * hard to adhere to them.  However, the development community does reserve
00058  * the right to make exceptions to these rules for special cases as the need
00059  * arises.
00060  *
00061  * Asterisk releases are in various states of maintenance.  The states are
00062  * defined here:
00063  *
00064  * \arg <b>None</b> - This release series is receiving no updates whatsoever.
00065  * \arg <b>Security-Only</b> - This release series is receiving updates, but
00066  *      only to address security issues.  Security issues found and fixed in
00067  *      this release series will be accompanied by a published security advisory
00068  *      from the Asterisk project.
00069  * \arg <b>Full-Support</b> - This release series is receiving updates for all
00070  *      types of bugs.
00071  * \arg <b>Full-Development</b> - Changes in this part of Asterisk include bug
00072  *      fixes, as well as new %features and architectural improvements.
00073  *
00074  * \section AsteriskReleases Asterisk Maintenance Levels
00075  *
00076  * \htmlonly
00077  * <table border="1">
00078  *  <tr>
00079  *   <td><b>Name</b></td>
00080  *   <td><b>SVN Branch</b></td>
00081  *   <td><b>Status</b></td>
00082  *   <td><b>Notes</b></td>
00083  *  </tr>
00084  *  <tr>
00085  *   <td>Asterisk 1.0</td>
00086  *   <td>/branches/1.0</td>
00087  *   <td>None</td>
00088  *  </tr>
00089  *  <tr>
00090  *   <td>Asterisk 1.2</td>
00091  *   <td>/branches/1.2</td>
00092  *   <td>Security-Only</td>
00093  *  </tr>
00094  *  <tr>
00095  *   <td>Asterisk 1.4</td>
00096  *   <td>/branches/1.4</td>
00097  *   <td>Full-Support</td>
00098  *  </tr>
00099  *  <tr>
00100  *   <td>Asterisk 1.6.0</td>
00101  *   <td>/branches/1.6.0</td>
00102  *   <td>Full-Support</td>
00103  *  </tr>
00104  *  <tr>
00105  *   <td>Asterisk 1.6.1</td>
00106  *   <td>/branches/1.6.1</td>
00107  *   <td>Full-Support</td>
00108  *   <td>Still in beta</td>
00109  *  </tr>
00110  *  <tr>
00111  *   <td>Asterisk trunk</td>
00112  *   <td>/trunk</td>
00113  *   <td>Full-Development</td>
00114  *   <td>No releases are made directly from trunk.</td>
00115  *  </tr>
00116  * </table>
00117  * \endhtmlonly
00118  *
00119  * For more information on how and when Asterisk releases are made, see the
00120  * release policies page:
00121  * \arg \ref ReleasePolicies
00122  */
00123 
00124 /*!
00125  * \page ReleasePolicies Asterisk Release and Commit Policies
00126  *
00127  * \AsteriskTrunkWarning
00128  *
00129  * \section releasestatus Asterisk Release Status
00130  *
00131  * For more information on the current status of each Asterisk release series,
00132  * please see the Asterisk Release Status page:
00133  *
00134  * \arg \ref ReleaseStatus
00135  *
00136  * <hr/>
00137  *
00138  * \section commitmonitoring Commit Monitoring
00139  *
00140  * To monitor commits to Asterisk and related projects, visit 
00141  * <a href="http://lists.digium.com/">http://lists.digium.com</a>.  The Digium
00142  * mailing list server hosts a %number of mailing lists for commits.
00143  *
00144  * <hr/>
00145  *
00146  * \section ast10policy Asterisk 1.0
00147  *
00148  * \subsection svnbranch SVN Branch
00149  *
00150  * \arg /branches/1.0
00151  *
00152  * \subsection ast10releases Release and Commit Policy
00153  * No more releases of Asterisk 1.0 will be made for any reason.
00154  *
00155  * No commits should be made to the Asterisk 1.0 branch.
00156  * 
00157  * <hr/>
00158  *
00159  * \section ast12policy Asterisk 1.2
00160  *
00161  * \subsection svnbranch SVN Branch
00162  *
00163  * \arg /branches/1.2
00164  *
00165  * \subsection ast12releases Release and Commit Policy
00166  *
00167  * There will be no more scheduled releases of Asterisk 1.2.
00168  * 
00169  * Commits to the Asterisk 1.2 branch should only address security issues or
00170  * regressions introduced by previous security fixes.  For a security issue, the
00171  * commit should be accompanied by an 
00172  * <a href="http://downloads.asterisk.org/pub/security/">Asterisk Security Advisory</a>
00173  * and an immediate release.  When a commit goes in to fix a regression, the previous
00174  * security advisory that is related to the change that introduced the bug should get
00175  * updated to indicate that there is an updated version of the fix.  A release should
00176  * be made immediately for these regression fixes, as well.
00177  *
00178  * \subsection ast12releasenumbers Release Numbering
00179  *
00180  *  - 1.2.X - a release that contains new security fixes
00181  *  - 1.2.X.Y - a release that contains fixes to the security patches released in
00182  *    version 1.2.X
00183  *
00184  * <hr/>
00185  *
00186  * \section ast14policy Asterisk 1.4
00187  *
00188  * \subsection svnbranch SVN Branch
00189  *
00190  * \arg /branches/1.4
00191  *
00192  * \subsection ast14releases Release and Commit Policy
00193  *
00194  * Asterisk 1.4 is receiving regular bug fix release updates.  An attempt is made to
00195  * make releases of every four to six weeks.  Since this release series is receiving
00196  * changes for all types of bugs, the number of changes in a single release can be
00197  * significant.  1.4.X releases go through a release candidate testing cycle to help
00198  * catch any regressions that may have been introduced.
00199  *
00200  * Commits to Asterisk 1.4 must be to address bugs only.  No new %features should be
00201  * introduced into Asterisk 1.4 to reduce the %number of changes to this established
00202  * release series.  The only exceptions to this %rule are for cases where something
00203  * that may be considered a feature is needed to address a bug or security issue.
00204  *
00205  * \subsection ast14releasenumbers Release Numbering
00206  *
00207  *  - 1.4.X - a release that contains new bug fixes to the 1.4 release series
00208  *  - 1.4.X.Y - a release that contains very few changes on top of 1.4.X.  This
00209  *    may be for a security patch, or for a regression introduced in 1.4.X.
00210  *
00211  * <hr/>
00212  *
00213  * \section ast16policy Asterisk 1.6
00214  *
00215  * \subsection svnbranch SVN Branch
00216  *
00217  * \arg /branches/1.6.*
00218  *
00219  * \subsection ast16releases Release and Commit Policy
00220  *
00221  * Asterisk 1.6 is managed in a different way than previous Asterisk release series.
00222  * From a high level, it was inspired by the release model used for Linux 2.6.
00223  * The intended time frame for 1.6.X releases is every 2 or 3 months.  Each 1.6.X
00224  * release gets its own branch.  The 1.6.X branches are branches off of trunk.
00225  * Once the branch is created, it only receives bug fixes.  Each 1.6.X release goes
00226  * through a beta and release candidate testing cycle.
00227  *
00228  * After a 1.6.X release is published, it will be maintained until 1.6.[X + 3] is
00229  * released.  While a 1.6.X release branch is still maintained, it will receive only
00230  * bug fixes.  Periodic maintenance releases will be made and labeled as 1.6.X.Y.
00231  * 1.6.X.Y releases should go through a release candidate test cycle before being
00232  * published.
00233  *
00234  * For now, all previous 1.6 release will be maintained for security issues.  Once
00235  * we have more 1.6 releases to deal with, this part of the policy will likely change.
00236  * 
00237  * For some history on the motivations for Asterisk 1.6 release management, see the
00238  * first two sections of this
00239  * <a href="http://lists.digium.com/pipermail/asterisk-dev/2007-October/030083.html">mailing list post</a>.
00240  *
00241  * \subsection ast16releasenumbers Release Numbering
00242  *
00243  *  - 1.6.X - a release that includes new functionality
00244  *  - 1.6.X.Y - a release that contains fixes for bugs or security issues identified
00245  *    in the 1.6.X release series.
00246  *
00247  * <hr/>
00248  *
00249  * \section asttrunk Asterisk Trunk
00250  *
00251  * \subsection svnbranch SVN Branch
00252  *
00253  * \arg /trunk
00254  *
00255  * \subsection asttrunkpolicy Release and Commit Policy
00256  *
00257  * No releases are ever made directly from Asterisk trunk.
00258  *
00259  * Asterisk trunk is used as the main development area for upcoming Asterisk 1.6 
00260  * releases.  Commits to Asterisk trunk are not limited.  They can be bug fixes,
00261  * new %features, and architectural improvements.  However, for larger sets
00262  * of changes, developers should work with the Asterisk project leaders to
00263  * schedule them for inclusion.  Care is taken not to include too many invasive
00264  * sets of changes for each new Asterisk 1.6 release.
00265  *
00266  * No changes should go into Asterisk trunk that are not ready to go into a
00267  * release.  While the upcoming release will go through a beta and release
00268  * candidate test cycle, code should not be in trunk until the code has been
00269  * tested and reviewed such that there is reasonable belief that the code
00270  * is ready to go.
00271  *
00272  * <hr/>
00273  *
00274  * \section astteam Asterisk Team Branches
00275  *
00276  * \subsection svnbranch SVN Branch
00277  *
00278  * \arg /team/&lt;developername&gt;
00279  *
00280  * \subsection astteampolicy Release and Commit Policy
00281  *
00282  * The Asterisk subversion repository has a special directory called "team"
00283  * where developers can make their own personal development branches.  This is
00284  * where new %features, bug fixes, and architectural improvements are developed
00285  * while they are in %progress.
00286  *
00287  * Just about anything goes as far as commits to this area goes.  However,
00288  * developers should keep in mind that anything committed here, as well as
00289  * anywhere else on Digium's SVN server, falls under the contributor license
00290  * agreement.
00291  *
00292  * In addition to each developer having their own space for working on projects,
00293  * there is also a team/group folder where %group development efforts take place.
00294  *
00295  * Finally, in each developer folder, there is a folder called "private".  This
00296  * is where developers can create branches for working on things that they are
00297  * not ready for the whole world to see.
00298  */

Generated on 20 Aug 2013 for Asterisk - The Open Source Telephony Project by  doxygen 1.6.1