Today is the day a great portion of the community has been waiting for, even without knowing that it will be today. As our early Christmas present, we finalized the 1.2 release of symfony after some weeks of hard work. We will be revealing more presents soon, stay tuned :-)
symfony 1.2 Features
Let's have a look at what was planned for this release and what is in this package today.
We kept track of all the the new features in our What's new in symfony 1.2? tutorial. Here the main highlights at a glance:
ORM and Admin Generator
One can argue if it is the Admin Generator or the sfDoctrinePlugin that was anticipated most, but both were at the top of our wish list. Because Propel 1.2 was getting old, we upgraded sfPropelPlugin to use version 1.3 of Propel which uses PDO. The Doctrine version included is 1.0.
And for both, we have now a great redesigned admin generator, which was developed with many ideas and requirements from the community, as well as designed to fix plenty of shortcomings of the 1.0 admin generator.
Subframeworks
The main byproducts of the admin generator development work also standalone. There is now the great new Routing Framework, which allows RESTful urls which can even directly work on propel objects. Filters can be automatically generated to query for objects, using the new Filter Framework. Oh and well, the Form Framework was also improved, and should ease some of the trouble people had with the 1.1 forms, like automatic nested form saving for related Propel objects.
Testing
symfony 1.2 sports more and better testing facilities. Now you can use readymade or custom testers, which allow grouping of testing functionality and reducing the lines of code required to write tests.
Tasks
The task system was improved as well, allowing to integrate better with plugins, and allowing to leave the application argument out. Tasks now can also ask()
or askConfirmation()
allowing to write smart, interactive tasks.
Decoupling
Because we wanted you not to be bound anymore to Prototype and Scriptaculous, we moved it a tad farther away from the framework by making a core plug-in out of it. And we published the sfFormsExtraPlugin which will host the various rich components. sfTaskExtraPlugin was created by the core team to ease development of tasks. This allows you even more to use the plugins you want, the frameworks you want, or just the parts of symfony you want for a project.
Documentation
We continued our pursuit of good documentation by updating the symfony book with details on Doctrine and Propel 1.3. And we will continue to update it. Also more Cookbook Tutorials have been created and translated by the community. They cover advanced and new features not covered in the book.
If you want to translate or write a cookbook, feel free to do so and send it to the core team or the documentation mailing list for review and inclusion. There are also a few languages spoken in the world that are not part of the 29 admin generator translations yet; but we are confident, that you can fix it :-)
How to install and upgrade
As usual the installation and upgrade instructions can be found here, and we want to emphasize that also people upgrading from 1.2 beta or release candidate versions should re-run these instructions.
If you are using symfony via svn you might encounter a problem with respect to the plugins
folder, which just recently included the doctrine and propel plug-in directly, no longer via an external. Certain svn clients have a problem updating this change and you might need to delete those plugins manually before running svn up
.
symfony 1.2 requires PHP 5.2. It works best with PHP 5.2.4 or above. You might need to upgrade your PHP installation to take full advantage of all features and benefit from better performance.
Upgrading from 1.0
In case you want to run your 1.0 project now with symfony 1.2, you need to upgrade it first to 1.1, using the 1.1 upgrade instructions. I encourage you to try it again even when you tried it before and had some problems with 1.1, because after running the upgrade to 1.2 most of those issues have been resolved, making it a bit easier for upgraders.
Upgrading from 1.1
Upgrading from 1.1 to 1.2 is very easy. From the feedback we received, no 1.1 feature did make any troubles, the issues were mostly either with doctrine, propel or the new admin generator. So this means that there should be almost no work required for a 1.1 to 1.2 upgrade, but you will enjoy refactoring afterwards, because you can remove portions of your code and just use new symfony functionality.
Upgrading from 1.2 svn, beta or rc
Please check the Upgrading from 1.1 to 1.2 instructions, because there have been made some changes that need to be taken care of, especially a security related change in the generation of templates.
Facts and Figures
Do you like fancy figures? Here we go:
- Symfony 1.2 development has resolved 216 tickets targeted for 1.2.
- Test Coverage has increased from 73% coverage in 8500 tests to 75% in close to 9000 tests
- 591 Changesets have been applied to symfony 1.2 core classes
- 95 Plugins declare themselves being compatible with symfony 1.2 already now
Thanks to everybody who has contributed to this release by creating tickets and patches, translating or writing documentation or helping with finding nasty bugs.
Congratulations. Great to see Doctrine finally in the core of symfony...
Great Great news. Congratulation all :).
Could the "installation" page be updated ? Just in order to know the policy concerning the support period.
Thanks a lot.
Congratulations from Italy
Congrats from Peru, great work!
Great work, I've been waiting for so long....Thanks to all the Symfony team.
Congratulations from Colombia
Congratulations from morocco :)
Thanks to the symfony team for such an excellent framework and for making it even better with this new version!
seams php has got its django :)
Congratz from Japan, too!!
I for one welcome our new Symfony overlords.
Congratulation from Indonesia! Definitively the best news ever!
very nice! i'll definitely look into migrating up to this ASAP, i'm really looking forward to the routing improvements and how they'll help our REST api.
Really nice, thanks :)
Excellent news! Can't wait for start my first 1.2 project! ;)
wow!!! just wanted to build a new proj!!
Thanks, Thanks, Thanks.
I have been developing with symfony for some time, every crazy feature I may need symfony has it.
Developing with symfony is a real pleasure. I can not stop myself from reading the code.
Thanks!
OMG, I did not think It will be out that soon. This is awesome, I am now able to upgrade from my RC version. Keep up the good work.
Congrats from Venezuela. We really needed 1.2! Kudos to all who contributed. The new form engine is amazing (especially the automatic handling of embedded forms). Now there will be more time to improve the documentation for 1.2.
However, it is still not clear to me if the 1.2 Admin Generator support sorting columns by custom fields. Can anybody clarify that for me? It is an issue that can help me decide to upgrade or not.
Saludos
Great job!!
Congratulations!
u guys should leave it 4 xmas =) but im happy, thx for great work
Big thanks from the UK!
Looking forward to getting stuck in.
Today is my birthday and this is one of the coolest presents I have received. Thank you very much from Spain!!
As always my two cents: can someone update the installation page? ;-)
Anyways, great news!! Thanks to everyone!
Congratulations and many thanks fro the Netherlands!
@all the installation page and some more default settings will be updatd during the day.
Congratulations to all involved, it's great to see this go from strength to strength. I shall start analysing how we might convert some of our 1.0 systems into 1.2 systems :o)
You guys working damn hard! 2 betas, 2 RC, and stable version per month, not bad! :)
Congrats from Brazil!
Very good! thanks!
Thanks, guys! This is the best news I heard today.
Really great work from the core team and the community!! Congratulations from Argentina
Nice release and very easy upgrade path from 1.1 (only took me some minutes). I'm looking forward the new admin generator but the current documentation seems less complete (for instance, how to hide the filter div ? How to specify a field's size without css ?). Could you please update the cheat sheet for 1.2 ? That would be a good start.
Congratulations from Mexico.
It's great that you are also releasing the compation tutorial Jobeet!
@xvello: The book chapter about the admin generator has been updated for the new admin generator.
congratulations!
Congrats from France xD
Great job !
Everyone should use Symfony ;)
I just started to build a new project !
Great! I knew you could do it! Gongrats from Norway :)
felicidades desde chile =)