CakePHP Development Process

Here we attempt to explain the process we use when developing theCakePHP framework. We rely heavily on community interaction throughtickets and IRC chat. IRC is the best place to find members of thedevelopment team and discussideas, the latest code, and make general comments. If something moreformal needs to be proposed or there is a problem with a release, theticket system is the best place to share your thoughts.

We currently maintain 4 versions of CakePHP.

  • tagged release : Tagged releases intended for production where stabilityis more important than features. Issues filed against these releaseswill be fixed in the related branch, and be part of the next release.
  • mainline branch : These branches are where all bugfixes are merged into.Stable releases are tagged from these branches. master is the mainlinebranch for the current release series. 2.x is the maintenance branch forthe 2.x release series. If you are using a stable release and need fixes thathaven’t made their way into a tagged release check here.
  • development branches : Development branches contain leading edge fixes andfeatures. They are named after the major version they are for. E.g 3.next.Once development branches have reached a stable release point they are mergedinto the mainline branch.
  • feature branches : Feature branches contain unfinished or possiblyunstable features and are recommended only for power users interested in themost advanced feature set and willing to contribute back to the community.Feature branches are named with the following convention version-feature. Anexample would be 3.3-router Which would contain new features for the Routerfor 3.3.
    Hopefully this will help you understand what version is right for you.Once you pick your version you may feel compelled to contribute a bug report ormake general comments on the code.

  • If you are using a stable version or maintenance branch, please submit ticketsor discuss with us on IRC.

  • If you are using the development branch or feature branch, the first place togo is IRC. If you have a comment and cannot reach us in IRC after a day ortwo, please submit a ticket.
    If you find an issue, the best answer is to write a test. The best advice we canoffer in writing tests is to look at the ones included in the core.

As always, if you have any questions or comments, visit us at #cakephp onirc.freenode.net.