Software:Symfony

From HandWiki
Short description: PHP web application framework for MVC applications
Symfony
Symfony2.svg
Symfony Welcome Page
Symfony Welcome Page
Original author(s)Fabien Potencier
Developer(s)Symfony community
Initial release22 October 2005; 18 years ago (2005-10-22)
Stable release
RepositorySymfony Repository
Written inid=Q1322933

| operating system = Cross-platform | platform = | language = | genre = Web application framework | website = symfony.com }}

Symfony is a free and open-source PHP web application framework and a set of reusable PHP component libraries. It was published as free software on October 18, 2005, and released under the MIT License.

Goal

Symfony aims to speed up the creation and maintenance of web applications and to replace repetitive coding tasks. It's also aimed at building robust applications in an enterprise context, and aims to give developers full control over the configuration: from the directory structure to the foreign libraries, almost everything can be customized.[1] To match enterprise development guidelines, Symfony is bundled with additional tools to help developers test, debug and document projects.[2]

Symfony has a low performance overhead used with a bytecode cache.

Technical

Symfony was heavily inspired by the Spring Framework.[3][4]

It makes heavy use of existing PHP open-source projects as part of the framework, including:

Symfony also makes use of its own components, which are freely available on the Symfony Components site for various other projects:

  • Symfony YAML, a YAML parser based upon Spyc
  • Symfony Event Dispatcher
  • Symfony Dependency Injector, a dependency injector
  • Symfony Templating, a templating engine

Sponsors

Symfony is sponsored by SensioLabs, a France software developer and professional services provider.[6] The first name was Sensio Framework,[7] and all classes were therefore prefixed with sf. Later on when it was decided to launch it as open-source framework, the brainstorming resulted in the name symfony (being renamed to Symfony from version 2 and on), which matches the existing theme and class name prefixes.[8]

Real-world usage

  • Symfony is used by the open-source Q&A service Askeet and many more applications, including Delicious website.[9]
  • At one time it was used for 20 million users of Yahoo! Bookmarks.[10]
  • As of February 2009, Dailymotion.com has ported part of its code to use Symfony, and is continuing the transition.[11]
  • Symfony is used by OpenSky, a social shopping platform, and the Symfony framework is also used by the massively multiplayer online browser game eRepublik, and by the content management framework eZ Publish in version 5.[12]
  • Drupal 8, phpBB and a number of other large applications have incorporated components of Symfony.[13][14]
  • Symfony is also used by Meetic, one of the largest online dating platforms in the world, on most of its websites for implementing its business logic in the backend.[15]
  • Symfony components are also used in other web application frameworks including Laravel, which is another full-stack framework, and Silex, which is a microframework.[16]
  • Vogue Paris's website is also built on the Symfony framework[17]

Symfony's own website has a comprehensive list of projects using Symfony and a showcase of websites built with Symfony.[18]

Releases

Symfony manages its releases through a time-based model; a new Symfony release comes out every six months: one in May and one in November. This release process has been adopted as of Symfony 2.2, and all the "rules" explained in this document must be strictly followed as of Symfony 2.4.

The standard version of Symfony is maintained for eight months, whereas long-term support (LTS) versions are supported for three years. A new LTS release is published biennially.[19]

The current LTS release is version 6.4 as per https://symfony.com/releases/6.4.

Color Meaning
Red Release no longer supported
Amber security fixes only
Green Release still supported
Blue Future release
Version Release date Support PHP version End of maintenance Notes
1.0 January 2007 Three years ≥ 5.0 January 2010
1.1 June 2008 One year ≥ 5.1 June 2009 Security-related patches were applied until June 2010
1.2 December 2008 One year ≥ 5.2 November 2009
1.3 November 2009 One year ≥ 5.2.4 November 2010
1.4 November 2009 Three years ≥ 5.2.4 November 2012 LTS version. 1.4 is identical to 1.3, but it does not support the 1.3 deprecated features.[20]
2.0[21] July 2011[22] ≥ 5.3.2 March 2013 Last 2.0.x release was Symfony 2.0.25[23]
2.1[24] September 2012 Eight months ≥ 5.3.3 June 2013 More components are part of the stable API.
2.2 March 2013 Eight months ≥ 5.3.3 November 2013 Various new features.[25]
2.3 June 2013 Three years ≥ 5.3.3 May 2016 The first LTS release, only three months development, normally six months.[26]
2.4 November 2013 Eight months ≥ 5.3.3 July 2014 The first 2.x branch release with complete backwards compatibility.[27]
2.5 May 2014 Eight months ≥ 5.3.3 January 2015
2.6 November 2014 Eight months ≥ 5.3.3 July 2015
2.7 May 2015 Three years ≥ 5.3.9 May 2018 LTS release.
2.8 November 2015 Three years ≥ 5.3.9 November 2018 LTS release.
3.0 November 2015 Eight months ≥ 5.5.9 July 2016
3.1 May 2016 Eight months ≥ 5.5.9 January 2017
3.2 November 2016 Eight months ≥ 5.5.9 July 2017
3.3 June 2017 Eight months ≥ 5.5.9 January 2018
3.4 November 2017 Three years ≥ 5.5.9 November 2020 LTS release.
4.0 November 2017 Eight months ≥ 7.1.3[28] July 2018 Dropping support for HHVM[29]
4.1 May 2018 Eight months ≥ 7.1.3 January 2019
4.2 November 2018 Eight months ≥ 7.1.3 July 2019
4.3 May 2019 Eight months ≥ 7.1.3 January 2020
4.4 November 2019 Three years ≥ 7.1.3 November 2022 LTS release.[30]
5.0 November 2019 Eight months ≥ 7.2.5 July 2020 Live released by Fabien Potencier during his Keynote at SymfonyCon Amsterdam (11/21/19).[31]
5.1 May 2020 Eight months ≥ 7.2.5 January 2021
5.2 November 2020 Eight months ≥ 7.2.5 July 2021 [32]
5.3 May 2021 Eight months ≥ 7.2.5 January 2022 Stable release.[33]
5.4 November 2021 Three years ≥ 7.2.5 November 2024 LTS release.[34]
6.0 November 2021 Eight months ≥ 8.0.2 January 2023 [35] Maintenance period extended by six months.[36]
6.1 May 2022 Eight months ≥ 8.1 January 2023 [37]
6.2 November 2022 Eight months ≥ 8.1 July 2023 [38]
6.3 May 2023 Eight months ≥ 8.1 January 2024 [39]
6.4 November 2023 Three years ≥ 8.1 November 2027 LTS release.[40]
7.0 November 2023 Eight months ≥ 8.2 July 2024 [41]
7.1 May 2024 Eight months ≥ 8.2 January 2025 [42]


See also

References

  1. "Symfony explained to a developer". https://symfony.com/explained-to-a-developer. 
  2. "Profiler - Symfony". https://symfony.com/doc/current/profiler.html. 
  3. High Performance PHP Framework for Web Development - Symfony. Symfony-reloaded.org. Retrieved on 2014-05-30.
  4. "Open-Source cross-pollination (Symfony Blog)" (in en). https://symfony.com/blog/open-source-cross-pollination. 
  5. The symfony and Doctrine book
  6. Learn symfony: A Beginner's Tutorial
  7. Symfony framework forum: General discussion => New symfony tagline brainstorming
  8. Comments by Sensio Owner
  9. Symfony Blog - Delicious Preview built with symfony
  10. Symfony Blog - Yahoo! Bookmarks uses symfony
  11. Symfony Blog - Dailymotion, powered by symfony
  12. Symfony2 meets eZ Publish 5. Symfony (2012-07-02). Retrieved on 2014-05-30.
  13. Drupal (Projects using Symfony). Retrieved on 2015-12-01.
  14. "Projects using Symfony Components". http://symfony.com/projects. 
  15. "Meetic Backend Mutation With Symfony". http://www.slideshare.net/meeticTech/meetic-backend-mutation-with-symfony. 
  16. Projects using Symfony
  17. "Symfony Showcase: Vogue France". http://symfony.com/showcase/67. 
  18. "E-commerce projects using Symfony". https://symfony.com/projects/category/e-commerce. 
  19. symfony-docs/contributing/community/releases.rst at 4cd6dc2825924c9569621bf749f168a7ba2a235d · symfony/symfony-docs · GitHub. Github.com. Retrieved on 2016-03-16.
  20. Symfony Blog - About symfony 1.3 and 1.4
  21. Symfony blog - Why will Symfony 2.0 finally use PHP 5.3?
  22. Symfony blog - Symfony2 release
  23. 2.0.23 released. Symfony (2013-03-20). Retrieved on 2014-05-30.
  24. Symfony 2.1.0 released
  25. 2.2.0. Symfony (2013-03-01). Retrieved on 2014-05-30.
  26. 2.3.0, the first LTS, is now available. Symfony (2013-06-03). Retrieved on 2014-05-30.
  27. 2.4.0 released. Symfony (2013-12-03). Retrieved on 2014-05-30.
  28. Bump minimum version to PHP 7.1 for Symfony 4
  29. Symfony 4: End of HHVM support
  30. "Symfony 4.4 release" (in en). https://symfony.com/releases/4.4. 
  31. "Schedule | SymfonyCon Amsterdam 2019". https://amsterdam2019.symfony.com/speakers#session-2983. 
  32. "Symfony 5.2 release" (in en). https://symfony.com/releases/5.2. 
  33. "Symfony 5.3 release" (in en). https://symfony.com/releases/5.3. 
  34. "Symfony 5.4 release" (in en). https://symfony.com/releases/5.4. 
  35. "Symfony 6.0 release" (in en). https://symfony.com/releases/6.0. 
  36. "Symfony 6.1 will require PHP 8.1 (Symfony Blog)" (in en). https://symfony.com/blog/symfony-6-1-will-require-php-8-1. 
  37. "Symfony 6.1 release" (in en). https://symfony.com/releases/6.1. 
  38. "Symfony 6.2 release" (in en). https://symfony.com/releases/6.2. 
  39. "Symfony 6.3 release" (in en). https://symfony.com/releases/6.3. 
  40. "Symfony 6.4 release" (in en). https://symfony.com/releases/6.4. 
  41. "Symfony 7.0 release" (in en). https://symfony.com/releases/7.0. 
  42. "Symfony 7.1 release" (in en). https://symfony.com/releases/7.1. 

Further reading

  • Potencier, Fabien. (2022). Symfony 6: The Fast Track. Leanpub.
  • Potencier, Fabien and Zaninotto, François. (2007). The Definitive Guide to symfony. Apress. ISBN:1-59059-786-9.
  • Potencier, Fabien. (2009). Practical symfony (2009). Sensio Labs Books. Doctrine edition, ISBN:978-2-918390-06-0, Propel edition, 978-2918390077, and Spanish edition available on lulu.com.
  • Fabien Potencier, Hugo Hamon: Symfony, Mieux développer en PHP avec symfony 1.2 et Doctrine, Eyrolles 2009, ISBN:978-2-212-12494-1, French
  • Tim Bowler, Wojciech Bancer (2009). Symfony 1.3 Web Application Development, Packt. ISBN:978-1-84719-456-5.

External links