 Every time there is a new Drupal release I try to present what's new Unfortunately, this was a hard one because there's barely anything new visually in Drupal 9 I'll try to make it as compact as possible But also there is actually a lot of things under the hood. So I'll also try to Talk about what's there so about me. I'm Vladimir based in Brisbane. I'm software consultant and I Talk a lot about those four things which is GitLab, Drupal Bootstrap and Docker So today we're gonna talk about what is Drupal 9? Why do we need it? Do we need it at all? Maybe we should stick all to Drupal 8. We'll talk about core modules if there are any updates there Some theme API updates, dependencies and a bit of translations So Drupal 7 Was supported by a community the support was announced originally until the quarter 4 2021 There was a big I guess decision on the behalf of the contributors to actually extend it to quarter 4 2022 There is a bit of a discussion online. I'm not gonna go into there for this particular presentation But it's I guess good and bad I mean apart from core we have contributed modules and bunch of other stuff But anyway, it's a good news for people using Drupal that we actually have official support until December 2022 So and if you look the COVID landscape kind of changed the Where all the CMS was sitting we really had thrown top three sitting there for a number of years so WordPress, Joomla and Drupal and As you can see and if you've been following this is a stats from What CMS website Drupal actually this year gave away two spots Living getting Shopify and Wixin proprietary Preparatory cloud-based CMSs, which is quite interesting and you can see the Shopify nearly hit Joomla And we're about to knock it from number two so obviously a lot of commerce websites went online starts selling stuff in and I was talking about Wix as well. Why would people choose Wix over some other? CMSs so you can find this presentation, but you can see the landscape is changing So and but also it's a good news for Drupal because we can actually see the adoption Rate and I've been clicking every week for the last four weeks the adoption of Drupal 9 is quite Significant we are in what fifth week of release of Drupal 9 will already have 0.015 percent of websites and moving to Drupal 9 and this is just talking from the perspective of the brand new Software just being released So why do we need Drupal 9? At all we could have a lot of people saying we should have stick with Drupal 8 maybe and keep going like that So Drupal now relies on symphony framework PHP framework a lot and the symphony 3 and of life is quarter for 2020 So it was decided to release First a long-term support Drupal 8.9 release and support it until First quarter of 2021 and Drupal 8 easy you understand relies on symphony 3 So and then do the same with Drupal 9 so release the the Drupal 9.0 was released Last month and then do it every six months. So and actually sync so Drupal 9.0 was moved a bit to just sync it with a symphony releases So we can actually get up to date symphony releases inside Drupal core so obviously We can predict the symphony for and of life Would hit about quarter 2022. I don't think it was still announced But we can predict so we can do the same thing and can support the security updates and bug fixes for Drupal 9 Until quarter for 2023 and keep going like that with the ongoing releases. So this is the idea behind Drupal Release numbers, so we're not sitting on the same number but it also kind of syncing with the software we dependent on like symphony and As far as releases go you can see Drupal 8.8.8 was released on 18th of June was security update But 8.8.7 was released on 4th of June same day as 8.9 and 9.0 So there is six months Left where Drupal 8.8 going to be supported So Drupal 8.9 again was released on the 4th of June at the same date, but they were already a couple of releases There and Drupal 9 again was released on the 4th of June But one security update and one bug fix update was a bit as you can see the software moves quite quickly and There's a bunch of updates there So that's all About deprecation process So for example in Drupal 8.7, right We would have a new feature and then there was some API that would be deprecated because it's no longer suits What it was put there for And we keep releasing Drupal So we would release 8.8 and then 8.9 with a bit more new features a bit more deprecated features But it still again depends on symphony 3 So what Drupal 9 is is actually updated dependency on a bottom Keeping all the features with that will put in 8.7 and 8.8 Basically in all the version a minus deprecated code. So theoretically 8.9 and 9.0 They're the same Apart from the dependencies and a deprecated code and it's not just symphony dependencies It's all other defenses we're gonna talk about in just a second And again Drupal 8.0 code that is not using deprecated API will continue to work on Drupal 9. That's the idea So if you have a module, it's quite easy to update There is a talk by Gaber and he gives it pretty much in every conference the state of Drupal 9 I'll put a link in there, but please check it out He'll talk more about in-depth how to make sure your code from Drupal 8.0 would Stay relevant and work on Drupal 9 So now Just go a bit in-depth what actually change usually I Stop presentation here and do a demo I can't do it now because there's literally like two changes I found visually that I can show so and I'll just do the screenshots So the first one is if you quickly cannot point it out here. What's different? It's actually all about removal this time again because we remove a lot of stuff So the first thing is a testing module is gone So the reason is gone. It's not gone. It's actually was moved to contrib module and it's all because Drupal 9 no longer use simple test So Core no longer runs any simple test code and test now should be written using PHP unit Another thing that is gone is migrate multilingual Now actually became stable. That was the hardest migration module to move Again, it took pretty much the whole Drupal 8 release to move it to stable version but now disappeared from experimental modules and Yep, so you can see it on the left. That's Drupal 8.8 on the right is Drupal 9 and it's no longer there Okay, and Oh Sorry wrong way Okay, so yeah, so this one was removed and again you won't see it in Drupal 9 and the last thing that was removed Is a place block mod modules and you couldn't actually see it because it was already hidden since Drupal 8.6 I was deprecated in 8.8 and and Removed in 9. I haven't used this module before so I have no idea what it does Yeah, so logically it would place blocks, but how it would be different from custom blocks and blocks UI That's a good question. If anyone can answer it in the end, that would be appreciate Okay, so updates to the themes again from now on a lot of updates are pretty much kind of developers Updates for developers. So there's a lot of Under the hood changes. So the first thing is a stable 9 base theme. So there's a new base theme called stable 9 There was a stable in Drupal 8 and again, you couldn't see it You cannot just go and enable it. It was more like a placeholder interface for a lot of other themes like Bartik or 7 to use it so it kind of enable a lot of Templates and CSS provided specifically as a baseline so stable 9 kind of Improves on stable It has backwards compatible markup and assets Updated templates and CSS is included there Drupal Stable is still shipped with Drupal 9 But will be deprecated. It's not deprecated yet. It will be deprecated and removed in Drupal 10 That's the plan So now when you go and enable something like Clara, which is an admin theme You can see on the left again Drupal 8.8. It would say you must enable class is stable to install Clara There is no such message in Drupal 9, which is on the right-hand side so just say Clara is still experimental and Yep, are you happy to use experimental theme? Another big update for theming API is that all the themes that I included in Drupal core like Bartik Clara 7 and you mommy are no longer dependable on classy or stable So now they have in their code they have set base theme false So the idea is to either override templates or inherit templates directly from the core But in a release note still extending classy or stable 9 Template theme is still recommended for your custom thing. So if I run booster for theme, I was extending classy I would still be doing that Another visual second visual thing I found is on the left-hand side You can see there was a block with a title home on you mommy theme, which is Example Drupal usage ship which shipped with Drupal and it's a recipe magazine So there was like a mini bug which they displayed the block theme called home. That was that was Removed well, at least I found some visual changes and I can show you a beautiful cake and Ronis Okay, so let's talk about dependencies again Drupal 8 was big on bring a lot of dependency in Symphony tweak jQuery jQuery UI and CK editor So what's happening with them in Drupal 9? So first one the baseline for symphony is updated from 3.4 to 4.4 That's a big step. I think current latest versions 5.2 from symphony, but yeah, so Drupal 9 will be using 4.4. So getting closer to the latest symphony release and again tweak There was optional tweak update to 2.0 tweak is a template engine we use now in Drupal So now it would be actually updated fully to 2.12 Getting again one of the closer to the latest versions of tweak Also 2.0 something Thank you so composer I'm not sure if a lot of people know Composer is actually shipped with Drupal as well So it actually download as a dependency now updated with Drupal 9 from 1.10 to 1.10.5 There is Composer 2 is not too far away. Composer is dependency manager So downloaded all the symphony dependencies and other we were talking about that's what we're using composer for but if you download in Drupal from Drupal.org the composer Dependency will be still included so you can use it even if you if you want to use Composer to download Drupal Okay jQuery jQuery was updated from 3.4 to 3.5 One of them was actually a security release for all versions of Drupal including seven GQuery is a framework JavaScript framework for a front-end One of the most popular ones so jQuery UI. That's an interesting one So most of the jQuery UI components were deprecated in Drupal 8.8 and were removed in Drupal 9.0 so but there is a lot of Contrib modules especially big modules like web form and so the web for modules that do rely on jQuery UI so if you install Drupal 9 and update That form to version 6 you'll see it will download 3 or 4 jQuery UI modules So a lot of those components will actually move to the module So if you worry about it, if you're really really dependent on jQuery UI component They're still available as modules It just decision was made that I think jQuery UI was deprecated or most of the components were deprecated So decision was made to deprecate it as well and try to rely on other JavaScript libraries CK editor Again the decision was made not to move with Drupal 9 to CK editor 5 There are issues at the moment to actually update to CK editor 5 But if you didn't follow CK editor, CK editor 5 is major release It basically completes rewrite of the editor and how it works So at this case, I think there was a agreement with the actual CK editor team to keep the security fixes for CK editor 4 going until the end of 2023 To keep again Drupal secure from the frontend perspective as well couple more updates JQuery cookie library placed with JS cookie Normalized CSS updated from version 3 to version 8 and proper JS library updated to version 2 so again if you haven't used those libraries, you probably shouldn't care about them, but if you Using them somewhere in your custom modules, especially to know That these updates actually would for if you update to Drupal 9 It would force you to update the version of those libraries So Node.js Node.js is the Development dependency again to round drew you don't need it to run Drupal But if you're developing for Drupal development for Drupal core Stuff like post CSS there now the minimal version was updated from version 8 pro 11 to version 12 Which is good current version is version number 13. I think 40 30 and I think it's still so every even version is a LTS long-term support version. So Drupal move to the latest LTS of Node.js and Last bit about the updates is a translation. So Gabor tweeted about a month ago. So the German and Ukrainian team Translation team actually made it to a hundred percent But there is about other six teams. So Norwegian, Dutch, French, Hungarian, Russian and Spanish are Above 90. So it's good to see such an adoption for a multi-lingual Transl for translation so and if you speak any other language I would recommend you to go to localize the Drupal.org and try to update a couple of Even couple of lines would do the trick. So, yeah So in summary Reset at the last keynote he did for Drupal con that the big deal is about Drupal 9 is the Should not be a big deal about Drupal 9 theoretically. It just an update and That's the best thing about Drupal. So from now on It's just gonna be a an update. So unless you're using something that relies on deprecated code You should be able to just upgrade to Drupal 9 and go Upgraded Tomato Elephant Studio and Drupal came by and by websites last week Literally under under two hours I just The most of the time I spent is removing modules that are installed As an experiment and didn't need them really. So I removed about six modules They weren't enabled. So that was easy. I just needed to find them and then that was it So the update was very very easy And the first release with the new features Would be Drupal 9.1 and it's scheduled the moment for second of december 2020 and this is going to be a feature pack release we expect Clara as a admin theme go stable and we expect aloe vera To go into the core as a main front-end theme replacing the bar tick And there's going to be a lot of other stuff as well. So that's quite exciting And I really want to thank jess who is doing pretty much all the releases And all the release notes for Drupal. So I used a lot of her notes for this presentation and gaber Who is also a release manager for Drupal core? And he slides he opensource. He slides state of Drupal 9 He will be presenting them at Drupal con global But you can find the recorded presentation from previous conferences as well. So I used a lot of his stuff to talk about How we're releasing Drupal and how it works So the links are there for you I'll post them online and are there any questions So the you mentioned that the classy theme is going to be deprecated Is that going to be replaced by Drupal core or is the idea that that moves into Contrib themes instead? Yeah, I don't think classy is deprecated. It is still as I mentioned before it's still they still Recommend you to inherit if you use in theme. So Classy and stable 9 are still there. It's just that the core themes are no longer Inherit them. So bar tick umami 7 and clara Not inheriting from classy as such, but classy is still there and it's not deprecated Okay, it will be stable will be deprecated and 9 and removed, but there is stable 9 Perfect. Thanks Hey, Vova Hi, rookie. Yeah, I have a question for you um Yeah, I heard uh, the javascript is going to be rewritten in ea 6 in group of nine Do you know anything about it? Is it already converted or So the question is uh, yeah, is the javascript going to ea 6? Yes, it is. So the core Uh, the core moved completely to ea 6. So every javascript file has a ea 6 alternative That's why there is a node js dependency and I think all All CSS move to post CSS. Yeah, all CSS move to post CSS As well. So that's that's um, that's already there Oh, nice. Thank you. Yeah, I'm I was stuck in Drupal 7 world for years and uh, just trying to catch up with Drupal 8 And I have a Drupal 7 Drupal commerce website and I want to upgrade to Drupal 8 Should I even uh, consider Drupal 9 or which which version would you recommend? Start with Yeah, my question would always my answer would always be Drupal 9 I know the guys there was two contributed weekends and the second on the second one, uh, the guys from centaura, which is x Uh, Drupal commerce or commerce guys They were porting most of the modules to Drupal 9 Uh, even if you start with Drupal 9, there would be some Something outdated. You can always help to update it and uh, yeah But I think the majority of Drupal commerce is already on Drupal 9 should be Drupal 9 compatible There's a good stats about the Uh, how many modules were migrated and this is an unprecedented for Drupal because we are again one month five weeks into release and I think Like 90 percent of top 300 modules were already updated to Drupal 9 So definitely Drupal 9 again the idea of this presentation is to show there's not much difference apart from deprecation stuff So in a lot of cases, it's going to be custom code that actually is an issue or the module that was um, Someone drop support for the module for some reason, you know time Or something else No longer interested in development. I personally reach out to quite a few contributors And help them to release Drupal 9 modules Again, it's not an official It's not an official kind of goal to move to push people to do that But you can always reach out and say hey, do you need the help with that? Uh, but again a lot of modules are already there Including web forums, which is in alpha version, but yeah, it's already usable on Drupal 9 So if you start a new project right now, I don't think you should be even considering Drupal 8 because Yeah, we're on LTS really so basically all the new features would go into Drupal 9 I just a note on that one I'm building a Drupal commerce website at the moment and I'm sure that Drupal commerce itself is It says 9 ready on it. I'm using 8.9 But definitely like most of the modules for Drupal commerce say that they're they're ready for 9 already Yeah, they had the they had the list somewhere if you if you I think it was Dave Klamman From the top of my head. Uh, he has he had the list Spreadsheet of all modules for Drupal commerce that they were trying that they were looking after and trying to update the Drupal 9 That was more than a month ago. So you should be able to find it and yeah