Silverstripe CMS 4.9.0 release and beyound

Technical Product Demo.
September 2021.
Silverstripe world domination - progress update
Step 1 Step 2 Step 3
Release Silverstripe CMS 4.9.0 Accessib ility is pr ioritised thr ou
ghout ou r design proc ess. We
create i n clusive we bsites for a ll
users.
Sam Minnée appointed Emperor of
Earth!
👑
Everything is proceeded as we have foreseen.
01
CMS Squad
What to expect with the CMS 4.9 release
02
CMS Squad
‘A brave post-CWP world’
03
A & D team
Retrospective on Gatsby
04
A & D team
Progressing NextJS research & development
Agenda
The CMS Squad
The CMS Squad
● Silverstripe CMS 4.9.0
● Brave post-CWP world
● Looking ahead
The CMS Squad
Silverstripe CMS 4.9.0
Image lazy loading by default
● Partnership with
● Images default to lazy loading
● Benefits
● Reduce time to render
● Reduce bandwidth
● Improve SEO
<img
src="logo.jpg"
width="300"
height="200"
loading="lazy"
alt="ACME inc"
/>
Image eager loading
● Safe to lazy load all images
● … as long as all images have dimensions
● When should images be eager loaded?
● If you expect them to be “above the fold”
● How to eager load specific images?
● $Logo.LazyLoad(false)
● <img src="logo.jpg" loading="lazy" alt="ACME inc" />
● What if we don’t want it all?
SilverStripeAssetsImage:
lazy_loading_enabled: false
Experience
Improved engagement
● Search rankings
● Improved bounce rates
● Mobile users, reduce data consumption/cost
● Cool experiences like infinite scroll
UI considerations
● Who has control (dev vs admin)
● Language used
● Placement of feature in UI
● Enough context (new component)
Gotcha’s
● Layout shifts, shouldn’t be an issue in CMS
● Printing pages, current bug in chrome
Core web vitals
● Work sponsored by the
Google Core Web vital
team
Swiftmailer v6 upgrade
● Framework 4.9.0 uses swiftmailer v6
● Swift_MailTransport deprecated
● Existing project will default to it
● New project will default to
Swift_SendmailTransport
● Opens up new opportunities
● S/MIME support (kudos to Frank and
Danaë)
---
Name: project-emailconfig
After:
- '#emailconfig'
---
SilverStripeCoreInjectorInjector:
Swift_Transport:
class: Swift_SendmailTransport
Other changes
● Session manager now stable
and part of recipe-cms
● About new 360 commits in total
The CMS Squad
Brave post-CWP world
Every new beginning
comes from some other
beginning's end.
FREEDOM!!!!
● Simpler release process
● Recipes now more flexible
● Transitioning off CWP CMS recipes
Simpler release process
Before
● One core release
● One CWP release
● Two sets of procedures
● Two set of comms
● Two changelogs
After
● One unified release
● One process
● One changelog
● Recipes will now use ~ constraints
● Update to patch releases without any composer hackery
● Recipes will still be audited
● We’ll publish the exact tags that got audited
Recipes now more flexible
● Do all those recipes make sense?
● How can we better support recipes
as a concept?
Recipes now more flexible
● silverstripe/recipe-cms
● silverstripe/recipe-core
● silverstripe/recipe-reporting-tools
● silverstripe/recipe-content-blocks
● silverstripe/recipe-collaboration
● silverstripe/recipe-services
● silverstripe/recipe-form-building
● silverstripe/recipe-blog
● silverstripe/recipe-authoring-tools
● Still working this out
● Will probably involved inlining recipes
● Silverstripe CMS 4.9.0 until this is figured out
Transitioning off CWP CMS Recipes
The CMS Squad
Looking ahead
● Silverstripe CMS 4.9.0 last release to support Internet Explorer
● Silverstripe CMS 4.10 will not be tested against IE11
● Only CMS is affected … can still output IE11 compatible site
● Account managers should be having conversation with affected customers
Internet Explorer support
● Most module work with PHP8
● … but not unit test because of PHPUnit 5.7
● Working on upgrading to PHPUnit 9
● Should ship before the end of the year
PHP 8 support in CMS 4
Questions?
CMS Squad
1 of 23

Recommended

Serverless by
ServerlessServerless
ServerlessVishwas N
87 views30 slides
Get acquainted with the new ASP.Net 5 by
Get acquainted with the new ASP.Net 5Get acquainted with the new ASP.Net 5
Get acquainted with the new ASP.Net 5Suyati Technologies
1.1K views25 slides
Serverless by
ServerlessServerless
ServerlessMaciej Dziergwa
52 views51 slides
Super tools to boost productivity in React dev env! by
Super tools to boost productivity in React dev env!Super tools to boost productivity in React dev env!
Super tools to boost productivity in React dev env!Souvik Basu
296 views38 slides
Building Resilient Cloud Native Apps in GKE by
Building Resilient Cloud Native Apps in GKEBuilding Resilient Cloud Native Apps in GKE
Building Resilient Cloud Native Apps in GKEJerry Jalava
517 views43 slides
Dockerizing react app by
Dockerizing react appDockerizing react app
Dockerizing react appMalang QA Community
185 views28 slides

More Related Content

What's hot

KUBEBOOT - SPRING BOOT DEPLOYMENT ON KUBERNETES by
KUBEBOOT - SPRING BOOT DEPLOYMENT ON KUBERNETESKUBEBOOT - SPRING BOOT DEPLOYMENT ON KUBERNETES
KUBEBOOT - SPRING BOOT DEPLOYMENT ON KUBERNETESAlex Soto
2.1K views48 slides
Who needs containers in a serverless world by
Who needs containers in a serverless worldWho needs containers in a serverless world
Who needs containers in a serverless worldMatthias Luebken
263 views36 slides
Vincit Teatime 2015.2 - Niko Kurtti: SaaSiin pa(i)nostusta by
Vincit Teatime 2015.2 - Niko Kurtti: SaaSiin pa(i)nostustaVincit Teatime 2015.2 - Niko Kurtti: SaaSiin pa(i)nostusta
Vincit Teatime 2015.2 - Niko Kurtti: SaaSiin pa(i)nostustaVincitOy
562 views24 slides
Build testable react app by
Build testable react appBuild testable react app
Build testable react appMalang QA Community
101 views29 slides
[D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift by
[D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift[D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift
[D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshiftNAVER D2
3.9K views20 slides
Andrea Di Persio by
Andrea Di PersioAndrea Di Persio
Andrea Di PersioCodeFest
262 views71 slides

What's hot(20)

KUBEBOOT - SPRING BOOT DEPLOYMENT ON KUBERNETES by Alex Soto
KUBEBOOT - SPRING BOOT DEPLOYMENT ON KUBERNETESKUBEBOOT - SPRING BOOT DEPLOYMENT ON KUBERNETES
KUBEBOOT - SPRING BOOT DEPLOYMENT ON KUBERNETES
Alex Soto2.1K views
Who needs containers in a serverless world by Matthias Luebken
Who needs containers in a serverless worldWho needs containers in a serverless world
Who needs containers in a serverless world
Matthias Luebken263 views
Vincit Teatime 2015.2 - Niko Kurtti: SaaSiin pa(i)nostusta by VincitOy
Vincit Teatime 2015.2 - Niko Kurtti: SaaSiin pa(i)nostustaVincit Teatime 2015.2 - Niko Kurtti: SaaSiin pa(i)nostusta
Vincit Teatime 2015.2 - Niko Kurtti: SaaSiin pa(i)nostusta
VincitOy562 views
[D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift by NAVER D2
[D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift[D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift
[D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift
NAVER D23.9K views
Andrea Di Persio by CodeFest
Andrea Di PersioAndrea Di Persio
Andrea Di Persio
CodeFest262 views
From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX Apps by Bruno Borges
From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX AppsFrom GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX Apps
From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX Apps
Bruno Borges524 views
.Net platform .Net core fundamentals by Hosein Mansouri
.Net platform .Net core  fundamentals.Net platform .Net core  fundamentals
.Net platform .Net core fundamentals
Hosein Mansouri566 views
CI and CD with Visual Studio Team Services and Azure by Lennart Passig
CI and CD with Visual Studio Team Services and AzureCI and CD with Visual Studio Team Services and Azure
CI and CD with Visual Studio Team Services and Azure
Lennart Passig293 views
Building CI/CD Pipelines with Jenkins and Kubernetes by Janakiram MSV
Building CI/CD Pipelines with Jenkins and KubernetesBuilding CI/CD Pipelines with Jenkins and Kubernetes
Building CI/CD Pipelines with Jenkins and Kubernetes
Janakiram MSV2.9K views
TechTalk Webinar Series - Getting Started with Apache OpenWhisk by Janakiram MSV
TechTalk Webinar Series - Getting Started with Apache OpenWhiskTechTalk Webinar Series - Getting Started with Apache OpenWhisk
TechTalk Webinar Series - Getting Started with Apache OpenWhisk
Janakiram MSV638 views
Instant developer onboarding with self contained repositories by Yshay Yaacobi
Instant developer onboarding with self contained repositoriesInstant developer onboarding with self contained repositories
Instant developer onboarding with self contained repositories
Yshay Yaacobi158 views
Server Side React for WordPress by Muhammad Muhsin @ The JavaScript for WordP... by rtCamp
Server Side React for WordPress by Muhammad Muhsin @ The JavaScript for WordP...Server Side React for WordPress by Muhammad Muhsin @ The JavaScript for WordP...
Server Side React for WordPress by Muhammad Muhsin @ The JavaScript for WordP...
rtCamp 3.2K views
Visual Studio Code for Java and Spring Developers by Bruno Borges
Visual Studio Code for Java and Spring DevelopersVisual Studio Code for Java and Spring Developers
Visual Studio Code for Java and Spring Developers
Bruno Borges1.1K views
TechTalk - Building Serverless Applications with IBM Bluemix by Janakiram MSV
TechTalk - Building Serverless Applications with IBM BluemixTechTalk - Building Serverless Applications with IBM Bluemix
TechTalk - Building Serverless Applications with IBM Bluemix
Janakiram MSV509 views
WinOps Conf 2015 - Microsoft Azure & Open Source by WinOps Conf
WinOps Conf 2015 - Microsoft Azure & Open SourceWinOps Conf 2015 - Microsoft Azure & Open Source
WinOps Conf 2015 - Microsoft Azure & Open Source
WinOps Conf728 views
Microservices without servers by 99X Technology
Microservices without serversMicroservices without servers
Microservices without servers
99X Technology387 views

Similar to Silverstripe CMS 4.9.0 release and beyound

JS digest. November 2017 by
JS digest. November 2017JS digest. November 2017
JS digest. November 2017ElifTech
469 views22 slides
Саша Белецкий "Continuous Delivery в продуктовой разработке" by
Саша Белецкий "Continuous Delivery в продуктовой разработке"Саша Белецкий "Continuous Delivery в продуктовой разработке"
Саша Белецкий "Continuous Delivery в продуктовой разработке"Agile Base Camp
743 views40 slides
PAC 2019 virtual Mark Tomlinson by
PAC 2019 virtual Mark TomlinsonPAC 2019 virtual Mark Tomlinson
PAC 2019 virtual Mark TomlinsonNeotys
188 views18 slides
DevOps demystified by
DevOps demystifiedDevOps demystified
DevOps demystifiedXebia IT Architects
1.9K views37 slides
More Dev. Less Drama.pdf by
More Dev. Less Drama.pdfMore Dev. Less Drama.pdf
More Dev. Less Drama.pdfWP Engine
373 views58 slides
Titanium Conf Baltimore Keynote 2013 by
Titanium Conf Baltimore Keynote 2013Titanium Conf Baltimore Keynote 2013
Titanium Conf Baltimore Keynote 2013Jeff Haynie
11.9K views44 slides

Similar to Silverstripe CMS 4.9.0 release and beyound(20)

JS digest. November 2017 by ElifTech
JS digest. November 2017JS digest. November 2017
JS digest. November 2017
ElifTech469 views
Саша Белецкий "Continuous Delivery в продуктовой разработке" by Agile Base Camp
Саша Белецкий "Continuous Delivery в продуктовой разработке"Саша Белецкий "Continuous Delivery в продуктовой разработке"
Саша Белецкий "Continuous Delivery в продуктовой разработке"
Agile Base Camp743 views
PAC 2019 virtual Mark Tomlinson by Neotys
PAC 2019 virtual Mark TomlinsonPAC 2019 virtual Mark Tomlinson
PAC 2019 virtual Mark Tomlinson
Neotys188 views
More Dev. Less Drama.pdf by WP Engine
More Dev. Less Drama.pdfMore Dev. Less Drama.pdf
More Dev. Less Drama.pdf
WP Engine373 views
Titanium Conf Baltimore Keynote 2013 by Jeff Haynie
Titanium Conf Baltimore Keynote 2013Titanium Conf Baltimore Keynote 2013
Titanium Conf Baltimore Keynote 2013
Jeff Haynie11.9K views
Creating a continuous delivery pipeline with docker by containershipio
Creating a continuous delivery pipeline with dockerCreating a continuous delivery pipeline with docker
Creating a continuous delivery pipeline with docker
containershipio302 views
Idi2018 - Serverless does not mean Opsless by Linuxaria.com
Idi2018 - Serverless does not mean OpslessIdi2018 - Serverless does not mean Opsless
Idi2018 - Serverless does not mean Opsless
Linuxaria.com1.7K views
Migrating deployment processes and Continuous Integration at SAP SE by B1 Systems GmbH
Migrating deployment processes and Continuous Integration at SAP SEMigrating deployment processes and Continuous Integration at SAP SE
Migrating deployment processes and Continuous Integration at SAP SE
B1 Systems GmbH812 views
Evolving Infrastructure by louisadunne
Evolving InfrastructureEvolving Infrastructure
Evolving Infrastructure
louisadunne543 views
Reactive Amsterdam - Maxim Burgerhout - Quarkus Intro by Fabio Tiriticco
Reactive Amsterdam - Maxim Burgerhout - Quarkus IntroReactive Amsterdam - Maxim Burgerhout - Quarkus Intro
Reactive Amsterdam - Maxim Burgerhout - Quarkus Intro
Fabio Tiriticco955 views
Kubeadm Deep Dive (Kubecon Seattle 2018) by Liz Frost
Kubeadm Deep Dive (Kubecon Seattle 2018)Kubeadm Deep Dive (Kubecon Seattle 2018)
Kubeadm Deep Dive (Kubecon Seattle 2018)
Liz Frost817 views
Free Mongo on OpenShift by Steven Pousty
Free Mongo on OpenShiftFree Mongo on OpenShift
Free Mongo on OpenShift
Steven Pousty1.5K views
SenchaCon 2016: Develop, Test & Deploy with Docker - Jonas Schwabe by Sencha
SenchaCon 2016: Develop, Test & Deploy with Docker - Jonas Schwabe SenchaCon 2016: Develop, Test & Deploy with Docker - Jonas Schwabe
SenchaCon 2016: Develop, Test & Deploy with Docker - Jonas Schwabe
Sencha1.3K views
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production by devopsdaysaustin
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
devopsdaysaustin365 views
DevOps: Automate all the things by Mat Mannion
DevOps: Automate all the thingsDevOps: Automate all the things
DevOps: Automate all the things
Mat Mannion227 views
Continuous Deployment of your Application - SpringOne Tour Dallas by VMware Tanzu
Continuous Deployment of your Application - SpringOne Tour DallasContinuous Deployment of your Application - SpringOne Tour Dallas
Continuous Deployment of your Application - SpringOne Tour Dallas
VMware Tanzu145 views
Go Pro, Inc. Case Study: Dive into the details of our node.js applications by Andrew Maxwell
Go Pro, Inc. Case Study: Dive into the details of our node.js applicationsGo Pro, Inc. Case Study: Dive into the details of our node.js applications
Go Pro, Inc. Case Study: Dive into the details of our node.js applications
Andrew Maxwell490 views
OpenNebulaConf2018 - OpenNebula in a Continuous Integration Environment - Geo... by OpenNebula Project
OpenNebulaConf2018 - OpenNebula in a Continuous Integration Environment - Geo...OpenNebulaConf2018 - OpenNebula in a Continuous Integration Environment - Geo...
OpenNebulaConf2018 - OpenNebula in a Continuous Integration Environment - Geo...
OpenNebula Project231 views

Recently uploaded

Innovation & Entrepreneurship strategies in Dairy Industry by
Innovation & Entrepreneurship strategies in Dairy IndustryInnovation & Entrepreneurship strategies in Dairy Industry
Innovation & Entrepreneurship strategies in Dairy IndustryPervaizDar1
39 views26 slides
The Coming AI Tsunami.pptx by
The Coming AI Tsunami.pptxThe Coming AI Tsunami.pptx
The Coming AI Tsunami.pptxjohnhandby
14 views12 slides
LLMs in Production: Tooling, Process, and Team Structure by
LLMs in Production: Tooling, Process, and Team StructureLLMs in Production: Tooling, Process, and Team Structure
LLMs in Production: Tooling, Process, and Team StructureAggregage
65 views77 slides
The Power of Heat Decarbonisation Plans in the Built Environment by
The Power of Heat Decarbonisation Plans in the Built EnvironmentThe Power of Heat Decarbonisation Plans in the Built Environment
The Power of Heat Decarbonisation Plans in the Built EnvironmentIES VE
85 views20 slides
Deep Tech and the Amplified Organisation: Core Concepts by
Deep Tech and the Amplified Organisation: Core ConceptsDeep Tech and the Amplified Organisation: Core Concepts
Deep Tech and the Amplified Organisation: Core ConceptsHolonomics
17 views21 slides
GDSC GLAU Info Session.pptx by
GDSC GLAU Info Session.pptxGDSC GLAU Info Session.pptx
GDSC GLAU Info Session.pptxgauriverrma4
15 views28 slides

Recently uploaded(20)

Innovation & Entrepreneurship strategies in Dairy Industry by PervaizDar1
Innovation & Entrepreneurship strategies in Dairy IndustryInnovation & Entrepreneurship strategies in Dairy Industry
Innovation & Entrepreneurship strategies in Dairy Industry
PervaizDar139 views
The Coming AI Tsunami.pptx by johnhandby
The Coming AI Tsunami.pptxThe Coming AI Tsunami.pptx
The Coming AI Tsunami.pptx
johnhandby14 views
LLMs in Production: Tooling, Process, and Team Structure by Aggregage
LLMs in Production: Tooling, Process, and Team StructureLLMs in Production: Tooling, Process, and Team Structure
LLMs in Production: Tooling, Process, and Team Structure
Aggregage65 views
The Power of Heat Decarbonisation Plans in the Built Environment by IES VE
The Power of Heat Decarbonisation Plans in the Built EnvironmentThe Power of Heat Decarbonisation Plans in the Built Environment
The Power of Heat Decarbonisation Plans in the Built Environment
IES VE85 views
Deep Tech and the Amplified Organisation: Core Concepts by Holonomics
Deep Tech and the Amplified Organisation: Core ConceptsDeep Tech and the Amplified Organisation: Core Concepts
Deep Tech and the Amplified Organisation: Core Concepts
Holonomics17 views
GDSC GLAU Info Session.pptx by gauriverrma4
GDSC GLAU Info Session.pptxGDSC GLAU Info Session.pptx
GDSC GLAU Info Session.pptx
gauriverrma415 views
PCCC23:日本AMD株式会社 テーマ2「AMD EPYC™ プロセッサーを用いたAIソリューション」 by PC Cluster Consortium
PCCC23:日本AMD株式会社 テーマ2「AMD EPYC™ プロセッサーを用いたAIソリューション」PCCC23:日本AMD株式会社 テーマ2「AMD EPYC™ プロセッサーを用いたAIソリューション」
PCCC23:日本AMD株式会社 テーマ2「AMD EPYC™ プロセッサーを用いたAIソリューション」
"Node.js vs workers — A comparison of two JavaScript runtimes", James M Snell by Fwdays
"Node.js vs workers — A comparison of two JavaScript runtimes", James M Snell"Node.js vs workers — A comparison of two JavaScript runtimes", James M Snell
"Node.js vs workers — A comparison of two JavaScript runtimes", James M Snell
Fwdays14 views
Adopting Karpenter for Cost and Simplicity at Grafana Labs.pdf by MichaelOLeary82
Adopting Karpenter for Cost and Simplicity at Grafana Labs.pdfAdopting Karpenter for Cost and Simplicity at Grafana Labs.pdf
Adopting Karpenter for Cost and Simplicity at Grafana Labs.pdf
MichaelOLeary8213 views
Optimizing Communication to Optimize Human Behavior - LCBM by Yaman Kumar
Optimizing Communication to Optimize Human Behavior - LCBMOptimizing Communication to Optimize Human Behavior - LCBM
Optimizing Communication to Optimize Human Behavior - LCBM
Yaman Kumar39 views
PCCC23:日本AMD株式会社 テーマ1「AMD Instinct™ アクセラレーターの概要」 by PC Cluster Consortium
PCCC23:日本AMD株式会社 テーマ1「AMD Instinct™ アクセラレーターの概要」PCCC23:日本AMD株式会社 テーマ1「AMD Instinct™ アクセラレーターの概要」
PCCC23:日本AMD株式会社 テーマ1「AMD Instinct™ アクセラレーターの概要」
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De... by Moses Kemibaro
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...
Moses Kemibaro38 views
Digital Personal Data Protection (DPDP) Practical Approach For CISOs by Priyanka Aash
Digital Personal Data Protection (DPDP) Practical Approach For CISOsDigital Personal Data Protection (DPDP) Practical Approach For CISOs
Digital Personal Data Protection (DPDP) Practical Approach For CISOs
Priyanka Aash171 views
"Package management in monorepos", Zoltan Kochan by Fwdays
"Package management in monorepos", Zoltan Kochan"Package management in monorepos", Zoltan Kochan
"Package management in monorepos", Zoltan Kochan
Fwdays37 views
Transcript: Redefining the book supply chain: A glimpse into the future - Tec... by BookNet Canada
Transcript: Redefining the book supply chain: A glimpse into the future - Tec...Transcript: Redefining the book supply chain: A glimpse into the future - Tec...
Transcript: Redefining the book supply chain: A glimpse into the future - Tec...
BookNet Canada43 views
"Running students' code in isolation. The hard way", Yurii Holiuk by Fwdays
"Running students' code in isolation. The hard way", Yurii Holiuk "Running students' code in isolation. The hard way", Yurii Holiuk
"Running students' code in isolation. The hard way", Yurii Holiuk
Fwdays38 views
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading... by The Digital Insurer
Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading...

Silverstripe CMS 4.9.0 release and beyound

  • 2. Silverstripe world domination - progress update Step 1 Step 2 Step 3 Release Silverstripe CMS 4.9.0 Accessib ility is pr ioritised thr ou ghout ou r design proc ess. We create i n clusive we bsites for a ll users. Sam Minnée appointed Emperor of Earth! 👑 Everything is proceeded as we have foreseen.
  • 3. 01 CMS Squad What to expect with the CMS 4.9 release 02 CMS Squad ‘A brave post-CWP world’ 03 A & D team Retrospective on Gatsby 04 A & D team Progressing NextJS research & development Agenda
  • 5. The CMS Squad ● Silverstripe CMS 4.9.0 ● Brave post-CWP world ● Looking ahead
  • 7. Image lazy loading by default ● Partnership with ● Images default to lazy loading ● Benefits ● Reduce time to render ● Reduce bandwidth ● Improve SEO <img src="logo.jpg" width="300" height="200" loading="lazy" alt="ACME inc" />
  • 8. Image eager loading ● Safe to lazy load all images ● … as long as all images have dimensions ● When should images be eager loaded? ● If you expect them to be “above the fold” ● How to eager load specific images? ● $Logo.LazyLoad(false) ● <img src="logo.jpg" loading="lazy" alt="ACME inc" /> ● What if we don’t want it all? SilverStripeAssetsImage: lazy_loading_enabled: false
  • 9. Experience Improved engagement ● Search rankings ● Improved bounce rates ● Mobile users, reduce data consumption/cost ● Cool experiences like infinite scroll UI considerations ● Who has control (dev vs admin) ● Language used ● Placement of feature in UI ● Enough context (new component) Gotcha’s ● Layout shifts, shouldn’t be an issue in CMS ● Printing pages, current bug in chrome
  • 10. Core web vitals ● Work sponsored by the Google Core Web vital team
  • 11. Swiftmailer v6 upgrade ● Framework 4.9.0 uses swiftmailer v6 ● Swift_MailTransport deprecated ● Existing project will default to it ● New project will default to Swift_SendmailTransport ● Opens up new opportunities ● S/MIME support (kudos to Frank and Danaë) --- Name: project-emailconfig After: - '#emailconfig' --- SilverStripeCoreInjectorInjector: Swift_Transport: class: Swift_SendmailTransport
  • 12. Other changes ● Session manager now stable and part of recipe-cms ● About new 360 commits in total
  • 13. The CMS Squad Brave post-CWP world
  • 14. Every new beginning comes from some other beginning's end.
  • 15. FREEDOM!!!! ● Simpler release process ● Recipes now more flexible ● Transitioning off CWP CMS recipes
  • 16. Simpler release process Before ● One core release ● One CWP release ● Two sets of procedures ● Two set of comms ● Two changelogs After ● One unified release ● One process ● One changelog
  • 17. ● Recipes will now use ~ constraints ● Update to patch releases without any composer hackery ● Recipes will still be audited ● We’ll publish the exact tags that got audited Recipes now more flexible
  • 18. ● Do all those recipes make sense? ● How can we better support recipes as a concept? Recipes now more flexible ● silverstripe/recipe-cms ● silverstripe/recipe-core ● silverstripe/recipe-reporting-tools ● silverstripe/recipe-content-blocks ● silverstripe/recipe-collaboration ● silverstripe/recipe-services ● silverstripe/recipe-form-building ● silverstripe/recipe-blog ● silverstripe/recipe-authoring-tools
  • 19. ● Still working this out ● Will probably involved inlining recipes ● Silverstripe CMS 4.9.0 until this is figured out Transitioning off CWP CMS Recipes
  • 21. ● Silverstripe CMS 4.9.0 last release to support Internet Explorer ● Silverstripe CMS 4.10 will not be tested against IE11 ● Only CMS is affected … can still output IE11 compatible site ● Account managers should be having conversation with affected customers Internet Explorer support
  • 22. ● Most module work with PHP8 ● … but not unit test because of PHPUnit 5.7 ● Working on upgrading to PHPUnit 9 ● Should ship before the end of the year PHP 8 support in CMS 4