symfony, Propel, and Doctrine
As a lot of people ask me the same question over and over again, so here is some information about the state of the integration of ORM tools in symfony.
Even if symfony can use any ORM tool, or none at all, two libraries are tightly integrated with the symfony core: Propel and Doctrine.
Propel has been bundled with symfony since the first release two years ago.
Doctrine is a younger but a very promising ORM and has been available as a plugin since last year.
As I don't want to support two different ORM tools in the symfony core, one of them will always be the default and the one bundled with symfony.
symfony 1.0 and 1.1 both include Propel. The big difference between the two is quite significant. In symfony 1.1, Propel is bundled as a core plugin named sfPropelPlugin. This means that everything related to Propel is bundled in one plugin and Propel and Doctrine can have the same level of support.
So, the big differences is the default plugin bundled with the core and the fact that the bundled ORM is maintained, updated, and documented by the core team.
So, what is the version of Propel included with symfony 1.1? Why Doctrine is not bundled with symfony 1.1? Why symfony 1.1 still uses Propel 1.2?
Here are the answers in the list below:
- symfony 1.0:
- required PHP >= 5.0.4
- Propel 1.2 included
- Doctrine as a plugin
- symfony 1.1:
- requires PHP >= 5.1.4
- Propel 1.2 included as a plugin
- Doctrine as a plugin
- symfony 1.2:
- requires PHP >= 5.2.X?
- Propel 1.3 included as a plugin
- Doctrine as a plugin
- symfony 2.0:
- requries PHP >= 5.3.X?
- Doctrine 1.0? included as a plugin
- Propel 2.0? as a plugin
symfony 1.0 and 1.1 dependencies are definitive.
For symfony 1.2 and 2.0, this is what I expect, but it will depend on the availability of stable versions of Propel and Doctrine and their dependencies, so it is subject to change.
Doctrine was scheduled to be included in symfony 1.1 but it won't because it's not yet stable yet and requires PHP 5.2.
Help the Symfony project!
As with any Open-Source project, contributing code or documentation is the most common way to help, but we also have a wide range of sponsoring opportunities.
Comments
Comments are closed.
To ensure that comments stay relevant, they are closed for old posts.
Even if that might cause irritation in the developer community, the bussines folks, which we all agree should be a focus group for the next time, will appreciate it.
.: Fabian
Any thoughts from the business people? ;-)
A cli command needed PHP > 5.0...
So I jumped to PHP 5.2 and go back to work.
Sorry, dont remember the command...but I'm quite sure that symfony 1.0 needs more than PHP 5.0.4 !
Anyway, Propel behaviors are great, I hope they will survive in the new Propel Plugin...
The Propel developers can't understand why either.