CAKEPHP
より安全で便便利利な
SAFER, MORE HELPFUL
ありがとうございました
4.0.0
COMING SOON
RELEASE TIMELINES
2.X
2.X
▸ Bug fixes for 12 months after the release of 4.0.0.
▸ Security fixes for 18 months after the release of 4.0.0.
3.X
3.X
▸ Will continue to do forwards compatible feature releases
with community support.
▸ Unlikely that cake-core team will invest time in shipping
new features to 3.x in the future.
▸ Security fixes for 36 months after 4.0.0 is released.
4.0.0
& SAFETY
EARLY FEEDBACK
CAKEPHP 4 SAFER?
WHAT MAKES
STRICTER
<?php
declare(strict_types=1);
BETTER TYPES
PHP7.2 &
SAFER METHODS
MAKING
MAKING
SAFER METHODS
$viewBuilder
!->template($template)
!->layout($layout)
!->helpers([‘Html’, ‘Form’]);
🧨🧨
MAKING
SAFER METHODS
$viewBuilder
!->setTemplate($template)
!->setLayout($layout)
!->setHelpers([‘Html’, ‘Form’]);
😍
STATIC ANALYSIS
LEVERAGE
TEXT
STATIC ANALYSIS
ERROR: MoreSpecificReturnType - src/Console/
CommandFactory.php:30:21 - The declared return
type 'CakeConsoleShell|CakeConsoleCommand'
for CakeConsoleCommandFactory!::create is
more specific than the inferred return type
‘CakeConsoleShell|
CakeConsoleCommandInterface’
public function create(string $className)
CONSISTENT
!// These all return `null` now.
Type!::get(‘boolean’)!->marshal(‘nope’);
Type!::get(‘boolean’)!->marshal(‘’);
Type!::get(‘string’)!->marshal([‘one’]);
!// No more lost nulls
Type!::get(‘json’)!->toDatabase(null);
TEXT
CONSISTENT
!// Use null to indicate no value.
Cache!::read(‘key’);
$viewBuilder!->getPlugin();
Log!::engine(‘system’);
IMPROVED FEEDBACK
TEXT
CLEARER ERROR MESSAGES
Controller actions can only return ResponseInterface
instance or null. Got boolean instead.
Loggers must implement CakeLogLoggerInterface. Found
`Closure` instance instead.
File must be a filepath or UploadedFileInterface instance.
Found `integer` instead.
TEXT
IMPROVED ERROR PAGE
UPGRADE
HOW TO
UPGRADE TO 3.8
& PHP7.2
DEPRECATIONS
DEPRECATIONS
DEPRECATIONS
UPGRADE TOOL
UPGRADE TOOL
New CLI tool to help with upgrade.
# Update an application or plugin
bin/cake upgrade <path/to/app>
# Update locales & templates
bin/cake upgrade file_rename locales <path>
bin/cake upgrade file_rename templates <path>
# Apply rector refactoring
bin/cake upgrade rector <path>
WHAT’S NEXT?
TEXT
WHAT’S NEXT? - CAKEPHP 4.1
▸ PSR-11 Container support
▸ Continued focus on error messages & Developer
Experience.
▸ We need your ideas and help!
ありがとうございました

More Related Content

PDF
Automated Server Administration for DevSecOps
PDF
Test
PPTX
Wp security presentation
PDF
Windows Server vNext- virtualisation et stockage
PDF
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
PDF
High Stakes Continuous Delivery in the Real World #OpenWest
PPTX
JOIN 2022: Patching 3rd party software Like a boss
PDF
Csi dev ops_2017ht66098_assignment
Automated Server Administration for DevSecOps
Test
Wp security presentation
Windows Server vNext- virtualisation et stockage
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
High Stakes Continuous Delivery in the Real World #OpenWest
JOIN 2022: Patching 3rd party software Like a boss
Csi dev ops_2017ht66098_assignment

Similar to Safer, More Helpful CakePHP (20)

PPTX
Azure DevOps Extensions
PPTX
Neos CMS & SEO - The Next Level - NeosCon Dresden 2019
PDF
Getting started-with-oracle-so a-10
PDF
AzureDevOps_ProjectManagement_Patrick.pdf
PDF
AzureDevOps_Developer.pdf
PPTX
DevOps y Continuos Delivery con Visual Studio Team Services y Azure Container...
PDF
Build an Infra Product with AWS Fargate
PDF
Modern Security Operations aka Secure DevOps @ All Day DevOps 2017
PDF
Bringing JAMStack to the Enterprise
PPTX
[Devopsdays2021] Roll Your Product with Kaizen Culture
PPTX
Are We Really Being Agile? (w/ Portuguese)
PPTX
Secure and Convenient Workflows: Integrating HashiCorp Vault with Pivotal Clo...
PPTX
Walk through an enterprise Linux migration
PDF
Bpc 10.0 NW Mass User Management tool
PDF
Salesforce cicd integration a quick guide
PDF
Why Developers Dig DevOps
PPTX
Devops Engineer E-Degree In Just 3 Months
PPTX
Introduction to DevOps with Azure DevOps Pipelines.pptx
PPT
Cake Php Consultant
PDF
OpenCms Days 2012 - How to manage an OpenCms project using Agile and continuo...
Azure DevOps Extensions
Neos CMS & SEO - The Next Level - NeosCon Dresden 2019
Getting started-with-oracle-so a-10
AzureDevOps_ProjectManagement_Patrick.pdf
AzureDevOps_Developer.pdf
DevOps y Continuos Delivery con Visual Studio Team Services y Azure Container...
Build an Infra Product with AWS Fargate
Modern Security Operations aka Secure DevOps @ All Day DevOps 2017
Bringing JAMStack to the Enterprise
[Devopsdays2021] Roll Your Product with Kaizen Culture
Are We Really Being Agile? (w/ Portuguese)
Secure and Convenient Workflows: Integrating HashiCorp Vault with Pivotal Clo...
Walk through an enterprise Linux migration
Bpc 10.0 NW Mass User Management tool
Salesforce cicd integration a quick guide
Why Developers Dig DevOps
Devops Engineer E-Degree In Just 3 Months
Introduction to DevOps with Azure DevOps Pipelines.pptx
Cake Php Consultant
OpenCms Days 2012 - How to manage an OpenCms project using Agile and continuo...
Ad

More from markstory (20)

PDF
Dependency injection in CakePHP
PDF
CakePHP - The Road Ahead
PDF
Future of HTTP in CakePHP
PDF
CakePHP mistakes made 2015
PDF
New in cakephp3
PDF
PHP WTF
PDF
CakePHP 3.0 and beyond
PDF
CakePHP mistakes made confoo 2015
PDF
CakePHP mistakes made
PDF
Performance and optimization CakeFest 2014
PDF
Road to CakePHP 3.0
PDF
Performance and optimization
PDF
OWASP Top 10 2013
PDF
CakePHP the yum & yuck
PDF
Introduction to Twig
PDF
Owasp top 10
PDF
Simple search with elastic search
PDF
Making the most of 2.2
PDF
Intro to continuous integration
PDF
Evented applications with RabbitMQ and CakePHP
Dependency injection in CakePHP
CakePHP - The Road Ahead
Future of HTTP in CakePHP
CakePHP mistakes made 2015
New in cakephp3
PHP WTF
CakePHP 3.0 and beyond
CakePHP mistakes made confoo 2015
CakePHP mistakes made
Performance and optimization CakeFest 2014
Road to CakePHP 3.0
Performance and optimization
OWASP Top 10 2013
CakePHP the yum & yuck
Introduction to Twig
Owasp top 10
Simple search with elastic search
Making the most of 2.2
Intro to continuous integration
Evented applications with RabbitMQ and CakePHP
Ad

Recently uploaded (20)

PDF
Application of smart robotics in the supply chain
PPTX
sub station Simple Design of Substation PPT.pptx
PDF
THE PEDAGOGICAL NEXUS IN TEACHING ELECTRICITY CONCEPTS IN THE GRADE 9 NATURAL...
PPT
UNIT-I Machine Learning Essentials for 2nd years
PDF
LS-6-Digital-Literacy (1) K12 CURRICULUM .pdf
PPTX
22ME926Introduction to Business Intelligence and Analytics, Advanced Integrat...
PDF
IAE-V2500 Engine Airbus Family A319/320
PPT
Basics Of Pump types, Details, and working principles.
PPTX
highway-150803160405-lva1-app6891 (1).pptx
PPTX
Unit I - Mechatronics.pptx presentation
PPTX
Hardware, SLAM tracking,Privacy and AR Cloud Data.
PPTX
DATA STRCUTURE LABORATORY -BCSL305(PRG1)
PPTX
Research Writing, Mechanical Engineering
PPTX
MODULE 3 SUSTAINABLE DEVELOPMENT GOALSPPT.pptx
PPTX
IOP Unit 1.pptx for btech 1st year students
PDF
V2500 Owner and Operatore Guide for Airbus
PDF
BTCVPE506F_Module 1 History & Theories of Town Planning.pdf
PPTX
ARCHITECTURE AND PROGRAMMING OF EMBEDDED SYSTEMS
PPTX
Software-Development-Life-Cycle-SDLC.pptx
PPTX
MODULE 02 - CLOUD COMPUTING-Virtual Machines and Virtualization of Clusters a...
Application of smart robotics in the supply chain
sub station Simple Design of Substation PPT.pptx
THE PEDAGOGICAL NEXUS IN TEACHING ELECTRICITY CONCEPTS IN THE GRADE 9 NATURAL...
UNIT-I Machine Learning Essentials for 2nd years
LS-6-Digital-Literacy (1) K12 CURRICULUM .pdf
22ME926Introduction to Business Intelligence and Analytics, Advanced Integrat...
IAE-V2500 Engine Airbus Family A319/320
Basics Of Pump types, Details, and working principles.
highway-150803160405-lva1-app6891 (1).pptx
Unit I - Mechatronics.pptx presentation
Hardware, SLAM tracking,Privacy and AR Cloud Data.
DATA STRCUTURE LABORATORY -BCSL305(PRG1)
Research Writing, Mechanical Engineering
MODULE 3 SUSTAINABLE DEVELOPMENT GOALSPPT.pptx
IOP Unit 1.pptx for btech 1st year students
V2500 Owner and Operatore Guide for Airbus
BTCVPE506F_Module 1 History & Theories of Town Planning.pdf
ARCHITECTURE AND PROGRAMMING OF EMBEDDED SYSTEMS
Software-Development-Life-Cycle-SDLC.pptx
MODULE 02 - CLOUD COMPUTING-Virtual Machines and Virtualization of Clusters a...

Safer, More Helpful CakePHP