Archives


Master Symfony2 fundamentals

Be trained by SensioLabs experts (2 to 6 day sessions -- French or English).
trainings.sensiolabs.com

Discover the SensioLabs Support

Access to the SensioLabs Competency Center for an exclusive and tailor-made support on Symfony
sensiolabs.com

Fabien Potencier
Towards Symfony 2.1
by Fabien Potencier – May 29, 2012 – 16 comments

People are getting nervous about the release of Symfony 2.1, and this post tries to give all the information I have at my disposal as of today.

First, I want to apologize for the lack of communication during the last few weeks, but I wanted to have a solid plan before taking any decision and before announcing anything official on this blog.

The discussion about the 2.1 release schedule started some time ago when I asked the community about the best plan for Symfony 2.1 on the developers mailing-list. I suggested two possible options back then:

  • Wait for the form component to stabilize before releasing Symfony 2.1;

  • Release 2.1 as soon as possible (by reverting some changes made on the form component -- and reintroduce them after the release).

The form component being one of the most used Symfony features and one that is not declared as stable yet, its state is very important to take into account before each release of the framework.

The plan I'm describing in this post has been taken thanks to the numerous comments (almost 80 as of now) on the mailing-list thread I've mentioned above. Thanks to all developers who contributed to the discussion.

So, based on the feedback from the community (the vast majority wanted to wait instead of releasing earlier), and after many discussions on the state of the form component with Bernhard and Victor, we chose recently that the only viable option was to wait for the form to stabilize for the following reasons:

  • The work needed to stabilize the form component is almost finished (all major backward compatibility breaks should be finished before Symfony Live in Paris);

  • Many bundles have adjusted to the form changes already, so reverting would have been a nightmare for these bundles;

  • Having less releases with backward compatibility breaks is better for the community (we have tried hard to keep BC whenever possible and to pack all major BC breaks for the form component in 2.1);

  • Documentation update would also have been more challenging as we would have to revert some doc changes as well if we had reverted some form changes;

  • Many blogs have already talked about the changes that occurred in forms for 2.1, so that would be confusing as well if we had reverted some of them.

  • Reverting all form changes to avoid some of the above issues was not even an option as some BC breaks were done to fix major bugs in the form component;

  • Composer is used everywhere in Symfony 2.1 and even if it has been much more stable for the last couple of weeks, waiting a bit more will help the transition a lot.

So, the release schedule for Symfony 2.1 reads as follows:

  • First 2.1 beta release after the hacking day at Symfony Live Paris (we will try to work hard during the hacking day to stabilize things and see how we can make the update easier -- if you have some big apps, please come and try to upgrade them with the help of Bernhard and other core team members, that will help us a lot);

  • First release candidate mid-July;

  • Final release at the end of August (releasing at the end of August means that Symfony 2.1 will be out just a year after Symfony 2.0).

What's next? After the Symfony 2.1 release, we would like to release more often. Having shorter release cycle means that we need less BC breaks. And as all the major BC breaks for the form components will have been made in 2.1, it will be much more easier to upgrade. So, expect a Symfony 2.2 release before the end of 2012.

Releasing new versions is great, but having a long term support release is even better. For Symfony 2.1, we have marked some features as deprecated because they have been replaced with something better. That makes Symfony 2.1 more compatible with applications developed for Symfony 2.0 (less hard BC breaks) and at the same time, it gives developers plenty of time to upgrade. As deprecated features will be removed in Symfony 2.3, the 2.3 version will be the first LTS release for Symfony2.

Last, but not the least, I want to talk a bit about how the Symfony community works. Like any other Open-Source project, Symfony is made by passionate developers and volunteers all around the world (more than 460 at the time of writing) and sometimes, some of the major contributors cannot dedicate as much time to the project as they would want. This has impacts on our the release cycle.

Of course, getting paid to contribute to an Open-Source project is probably the best way to ensure the best involvement on the long run, but that's pretty rare... I'm one of the few lucky ones to have this great status!

Today, I'm really happy to announce that SensioLabs has decided to give more free time to Victor Berchet so that he can dedicate more time to his work on the Symfony core; and SensioLabs has been sponsoring Bernhard Schussek's work on the form and validator components for the last couple of months and it will continue to do so for the foreseeable future.

Comments RSS

  • Marcus Stöhr
    #1 Marcus Stöhr said on the 2012/05/29 at 21:28
    Great to see a clear direction. Waiting for the form component to be stabilized is the best option IMHO.

    And it is also great to see you give Victor and Bernhard the support for spending more time on the framework. Thanks both for their hard work.
  • Bernhard Schussek
    #2 Bernhard Schussek said on the 2012/05/29 at 21:30
    Thanks to SensioLabs!
  • Mark Badolato
    #3 Mark Badolato said on the 2012/05/29 at 21:32
    Sounds like a good plan. I was all for the waiting until the form component stabilized. Thanks to everyone for their hard work!
  • Jérémie Augustin
    #4 Jérémie Augustin said on the 2012/05/29 at 21:50
    Plan for short release cycle seems déjà vu ;)

    thanks for the hard work.
  • Mario A. Alvarez Garcia
    #5 Mario A. Alvarez Garcia said on the 2012/05/29 at 21:55
    It's great to have Victor with more free time to work on the core.
  • Luis Cordova
    #6 Luis Cordova said on the 2012/05/29 at 22:05
    you guys just rock, we should do more hacking days
  • Damien Alexandre
    #7 Damien Alexandre said on the 2012/05/29 at 22:46
    Great news - hope the Form Component will be ready soon as SF2.1 bring a lot of wanted features (monolog channel handlers, composer, parameters.yml...).

    And big up to Sensio for investing money and time to make the framework better.
  • Lukas Kahwe Smith
    #8 Lukas Kahwe Smith said on the 2012/05/29 at 23:14
    BTW in case there are more companies looking to sponsor work on Symfony2 .. I am sure if you post about this you can find developers interested. There are both students and freelancers among the top contributors. The benefit of such sponsoring is that you can affect their priorities to ensure that your concrete business needs are addressed.
  • Darren Black
    #9 Darren Black said on the 2012/05/30 at 02:04
    I'm pretty new to learning Symfony, using 2.0. Just wondering where I can find out what changes/improvements are in store for version 2.1?
  • Muhammadali Shaduli
    #10 Muhammadali Shaduli said on the 2012/05/30 at 06:18
    It will be great to know the latest features and changes in symfony 2.1...Where I can get those information
  • Muhammadali Shaduli
    #11 Muhammadali Shaduli said on the 2012/05/30 at 06:19
    Great!!! SensioLabs rocks a lot
  • Dominik Zogg
    #12 Dominik Zogg said on the 2012/05/30 at 08:27
    Thanks to all who are working on symfony2 and the components of it, i think its a wise choice to wait with the release until the form component get stable.
  • Bernhard Schussek
    #13 Bernhard Schussek said on the 2012/05/30 at 09:01
    @Darren: You can look at the CHANGELOGs of the individual components and bundles and at the UPGRADE file.

    https://github.com/symfony/symfony/blob/master/src/Symfony/Bundle/FrameworkBundle/CHANGELOG.md
    https://github.com/symfony/symfony/blob/master/UPGRADE-2.1.md
  • Andreas Kleemann
    #14 Andreas Kleemann said on the 2012/05/30 at 10:06
    Wow, sponsoring OS developers is extreeemley awesome! Thanks, SensioLabs!
  • Alexander Trauzzi
    #15 Alexander Trauzzi said on the 2012/05/30 at 21:41
    A big thanks to you, Fabien and Sensio for your generosity and efforts!
  • Darren Black
    #16 Darren Black said on the 2012/05/31 at 00:34
    @Bernhard - thanks, good info.