From 215550e7bb7f37f2043ec0ff4f01752a2df9f5f9 Mon Sep 17 00:00:00 2001 From: Oliver Davies Date: Fri, 16 Feb 2024 00:04:00 +0000 Subject: [PATCH] Add daily email for 2024-02-14 Major version updates are just removing deprecated code --- source/_daily_emails/2024-02-14.md | 43 ++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 source/_daily_emails/2024-02-14.md diff --git a/source/_daily_emails/2024-02-14.md b/source/_daily_emails/2024-02-14.md new file mode 100644 index 00000000..41087869 --- /dev/null +++ b/source/_daily_emails/2024-02-14.md @@ -0,0 +1,43 @@ +--- +title: Major version updates are just removing deprecated code +date: 2024-02-14 +permalink: archive/2024/02/14/major-version-updates-are-just-removing-deprecated-code +snippet: | + Because of their release cycles, Drupal and Symfony version updates can be as simple as just removing deprecated code... +tags: + - software-development + - php + - drupal + - symfony +--- + +Today, I've been watching the new [Upgrading & What's in Symfony 7][video] video course on SymfonyCasts. + +The first video - [recent podcast guest Ryan Weaver][podcast] - explains how Symfony's release cycle works. + +New feature releases that contain new features are every six months. + +Along with the x.4 release - such as Symfony 6,4 - there is also a new major release - in this case, Symfony 7. + +They are essentially identical, except for code that was deprecated in Symfony 6, which has been removed. + +So, updating from Symfony 6.4 to 7 means you just need to remove any deprecated code from your application and make it work in the Symfony 7 way. + +This is also how Drupal releases new versions, too. + +New releases, like Layout Builder, are added in minor versions like 8.1, and Drupal 9 is Drupal 8 without its deprecated code. + +Because the code in major versions is so similar, **contributed modules and themes can support multiple major versions at the same time**. + +## Here's the thing + +When upgrading projects from Drupal 8 to 9 and 9 to 10, the majority of the work can be done beforehand by keeping up to date with module releases and updating custom code to remove any deprecations. + +This means the upgrade can be split over several weeks or months to reduce the risk. + +Then, finally, you *just* update to the next major version. + +All the hard work has already been done. + +[podcast]: {{site.url}}/podcast/10-ryan-weaver-symfonycasts +[video]: https://symfonycasts.com/screencast/symfony7-upgrade