The 27th of January is kind of an important date in mankind history. Of course, everybody know it is the birthday of Wolfgang Amadeus Mozart and the date of the invention of the light-bulb by Thomas Edison. To this list, the core team is proud to add the last release of the symfony 1.0 branch: symfony 1.0.22.
Who remembers this blog post, it was 3 years ago in February 2007:
« Symfony is more mature than ever, faster than ever, and more configurable and extendable than ever. A lot of websites officially declare using symfony, and we know of dozens of other applications, either Intranet or Internet, running symfony without any problem. The symfony framework is definitely ready to power complex web 2.0 applications with a lot of users. »
The job has been successfully done for 3 long years:
- 163,889 lines of PHP compatible from PHP 5.0
- 22 stable releases
- more than 200 bugs fixed
- more than 300 compatible plugins
- hundred and hundred sites still using askeet code ;)
What about now? Well, of course for all of us who have coded with sf 1.4 it would be a pain to deal with sf1.0 forms and validation, Propel 1.2, old command line, old routing format, old old old... but it's because we have been using sf1.0 a lot that we could spot possible enhancements and make sf1.x a successful story. It is now time for symfony 1.0 to retire and let sf1.4 be the new LTS release.
The core team would like to thank all of you using symfony, all of those who did participate to this tremendous adventure... there is more to come!
Changelog: This is the last bug fix release.
- r26992: replaced prototype 1.5.0 with 1.5.1.2 (security fix)
- r24622: allowed I18N functions with __toString methods
- r24619: fixed incorrect array access of lastModified header
- r23984: not setting status header for servers in cgi-sapi
- r23886: fixed notice on undefined uri in sfCacheFilter (fixes #6514)
- r23725: stimulating autoloading in sfFunctionCache
- r23543: fixed deprecated use of split for PHP 5.3 (closes #7509)
- r22498: removed different formatting for currency symbol
Actually, if this realease is 1.0.22, there have been 23 stable releases (1 main + 22 with bugfixes) :)
The prototype change 1.5.0 -> 1.5.1.2 is a bad one cause it breaks scriptaculous effects. ttp://www.prototypejs.org/2007/3/9/prototype-1-5-1-rc1#comment-14760
good bye sf1.0
@davide that's true :)
It would wonderful if Symfony crew publishes an article about how to refactoring 1.0 projects to 1.4. Or at least what is new in this latest LTS version comparing to the previous (1.0). Because a lot of people only use LTS versions.
I think symfony 1.0 is a very good software and we have build a very large intranet platform with it. That´s ok so far. BUT: Now we should say goodbye to 1.0 and step forward to 1.4? How shall we upgrade the whole application with dozens of modules, libs and so on. I really like to upgrade, but I dont know how. I don´t find any upgrade process from 1.0 to 1.4. What shall we do? Rewrite all the code we have coded?
Maik
Sorry for the OT, but remember also this: http://en.wikipedia.org/wiki/International_Holocaust_Remembrance_Day
Don't worry 1.0 I'll stick with you, well until RHEL decide to support a newer version of php than 5.1.6!
RIP sf 1.0 !
Good night, sweet prince!
Nice to see this release ...
I agree with Alexis-b and MaikL. There are still a lot of (large) symfony 1.0 projects. Migrating these projects to 1.4 will be cost- and time-intensive.
Imho its a must to have a "migration plan" (documentation) from 1.0.x to 1.4 because a lot of people skipped the 1.1 and 1.2 releases.
I think that without some migration info, 1.0 life is still long...
Excelent version, good bye sf 1.0! You did a great job!!
It is a pity, that none of the symfony authors (sensio) say anything to my comment. I hoped, that there would be any chance to get tips for the upgrade. (except: "rewrite the whole thing") because the application will live long and I´d like to use all the cool new sf 1.4 stuff.
i am not a sensio employee, but I wonder why you are asking. End of official support doesn't mean that you can no longer use the code. If you would have cared about the end of support day, you would have been able to discover upgrade options over the last years.
symfony is upgradeable! there is no need to rewrite much. Especially if you have good code. But there might be cases where an upgrade is painful. Perhaps the most important part is the propel upgrade from 1.2 to 1.3. Form validation is the other big one.
Going from 1.0 to 1.3 should be easy (1.4 is another story). Check how you would upgrade to 1.1, 1.2 and 1.3 one by one.
I have to echo Fabian's comment that upgrading symfony1.0 to the 1.3+ range is actually a pretty smooth process, thanks to the 1.0 compatibility plugin you can leave forms untouched until you decide to replace them. The only snag I hit was direct use of the flash variable in templates ($sf_flash), but that's just a global search / replace away. Really, try upgrading and you'll see you can strip tons of code (I've stripped up to 30% of old code altogether) thanks to the new routing and request format handling.
So, no worries, and good luck. Daniel
@All: The end of life of the 1.0 branch is not a new thing. It has been announced a long time ago; well, 3 years ago to be precise. And since then, we have always provided a migration path to ease upgrading your applications from the previous version to the next one. In fact, you are quite lucky to do this now as many other people have already migrated their applications. So, many people will be able to help you in your job on the forum and the mailing-list.
Anyway, to upgrade from 1.0 to 1.3, first upgrade to 1.1 (http://www.symfony-project.org/installation/1_1/upgrade), then upgrade to 1.2 (http://www.symfony-project.org/installation/1_2/upgrade), and finally, upgrade to 1.3 (http://www.symfony-project.org/tutorial/1_4/en/upgrade - docs for 1.3 and 1.4 are the same). Eventually, you will be able to move to 1.4 by removing your usage of deprecated features (but as Fabian said before, this is probably the hardest thing).
If you also want to read about the new features (http://www.symfony-project.org/blog/2008/06/30/the-wait-is-over-symfony-1-1-released, http://www.symfony-project.org/tutorial/1_2/en/whats-new, http://www.symfony-project.org/tutorial/1_4/en/whats-new), the deprecated ones (http://www.symfony-project.org/tutorial/1_4/en/deprecated) and more (http://www.symfony-project.org/doc/1_4/), we also have written documentation about that.
The code for symfony 1.1, 1.2, 1.3, and 1.4 is available in the Subversion repository, as archives, or as PEAR packages (http://www.symfony-project.org/installation). That's plenty of options to choose from.
Good luck!
Thanks a lot to the Symfony Team and contributors for having made this rocking framework, the missing part for a long time in PHP history. I am a serious fan of 1.0 branch in which I have spent so many nights tweaking the admin generator classes for instance that I did not have time anymore to follow every new coming version. Now I will go on 1.4, refactoring all my stuff, trying to release some strong plugins as many others. That said, it is funny to see the race competition and the fear of some programmers not being up to date with the last sf release. In my opinion, it's no problem using 1.0 in many cases and still for some days... After all, this is the more stable release of all 1.x releases, don't you think ? And for "big" projects that are evolving, sure you cannot go from a 1.0 propel project to a 1.4 doctrine one (for instance) just clicking the "upgrade" button. A lot of work is to be done, but it's so good having a lively tool such as Symfony to do the job. So, for every LTS, hip hip hip ! houra ! And congratulations to the contributors Loïc
Thank you Fabien for your answer.
But I'm sure that it will be a great help for many SF users if you merge these N documents into one, explaining what is different between these 2 major releases.