Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Symfony 4.2 updated
Search
Tim Jabs
January 24, 2019
Technology
0
120
Symfony 4.2 updated
Tim Jabs
January 24, 2019
Tweet
Share
More Decks by Tim Jabs
See All by Tim Jabs
Symfony 4.2
rubinum
0
600
Symfony 4.1 What's New?
rubinum
4
1.1k
Other Decks in Technology
See All in Technology
allow_retry と Arel.sql / allow_retry and Arel.sql
euglena1215
1
160
カミナシ社の『ID管理基盤』製品内製 - その意思決定背景と2年間の進化 #AWSUnicornDay / Kaminashi ID - The Big Whys
kaminashi
3
810
今!ソフトウェアエンジニアがハードウェアに手を出すには
mackee
9
4.3k
「魔法少女まどか☆マギカ Magia Exedra」での負荷試験の実践と学び
gree_tech
PRO
0
600
自作JSエンジンに推しプロポーザルを実装したい!
sajikix
1
150
Language Update: Java
skrb
2
280
実運用で考える PGO
kworkdev
PRO
0
150
DDD集約とサービスコンテキスト境界との関係性
pandayumi
2
260
AI エージェントとはそもそも何か? - 技術背景から Amazon Bedrock AgentCore での実装まで- / AI Agent Unicorn Day 2025
hariby
4
1.2k
Agile PBL at New Grads Trainings
kawaguti
PRO
1
310
Grafana MCPサーバーによるAIエージェント経由でのGrafanaダッシュボード動的生成
hamadakoji
1
1.4k
Codeful Serverless / 一人運用でもやり抜く力
_kensh
4
250
Featured
See All Featured
Gamification - CAS2011
davidbonilla
81
5.4k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
187
54k
A designer walks into a library…
pauljervisheath
207
24k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
A Modern Web Designer's Workflow
chriscoyier
696
190k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Embracing the Ebb and Flow
colly
87
4.8k
How GitHub (no longer) Works
holman
315
140k
Designing for Performance
lara
610
69k
Transcript
SYMFONY 4.2 WHAT'S NEW? 1
Who am I? Tim Jabs Software Developer @Sensiolabs Deutschland
Twitter: @_Rubinum_ 2
3
4 Symfony 4.2
DEPRECATIONS !5
DEPRECATIONS !6
DEPRECATIONS !7 Deprecated template directory: old default: src/Resources/views/ new default:
templates/ How can I change this? config/packages/twig.yaml twig.default_path
DEPRECATIONS !8 Deprecated the Kernel name and root dir: No
more: KernelInterface::getName()/ getRootDir() => getProjectDir() If you need a distinctive ID for the kernel: KernelInterface::getContainerClass()
DEPRECATIONS !9 Deprecated ContainerAwareCommand class: No more: ContainerAwareCommand Use: Command
+ dependency injection
DEPRECATIONS !10 Deprecated Controller Class: No more: Controller $this->get(FooClass::class) Use:
AbstractController + dependency injection
DEPRECATIONS !11
DEPRECATIONS !12
DEPRECATIONS !13 Deprecated process input as string:
SIDE NOTE !14 before: after:
DEPRECATIONS !15 Deprecated tree builders without root nodes:
DEPRECATIONS !16 Take care! There are even more deprecations take
this https://github.com/symfony/symfony/blob/4.2/ UPGRADE-4.2.md
NEW COMPONENT !17
NEW COMPONENT !18 VAREXPORTER
NEW COMPONENT !19 Example: export($data)
NEW COMPONENT !20
ENV FILE PER ENVIRONMENT !21
ENV FILE PER ENVIRONMENT !22 No More: .env.dist But: .env
is part of of the repository now
ENV FILE PER ENVIRONMENT !23 before: .env after: .env .env.test
.env.dev .env.dev.local
ENV FILE PER ENVIRONMENT !24 //.env DATABASE_URL: … DATABASE_URL_TEST: …
DATABASE_URL_TEST_LOCAL: …
TRANSLATION RELATED IMPROVEMENTS !25
TRANSLATION RELATED IMPROVEMENTS !26 before:
TRANSLATION RELATED IMPROVEMENTS !27 after:
TRANSLATION RELATED IMPROVEMENTS !28 ICU parent locales as fallback: Example:
before: es_AR => es after: es_AR => es_419 => es
TRANSLATION RELATED IMPROVEMENTS !29 Update XLF translations by default: before:
bin/console translation:update // output default JSON after: bin/console translation:update // output default XLF
TRANSLATION RELATED IMPROVEMENTS !30 Lint multiple XLIFF dirs or files:
bin/console lint:xliff supports multiple directories now
AUTOWIRING BY TYPE AND NAME !31
AUTOWIRING BY TYPE AND NAME !32
AUTOWIRING BY TYPE AND NAME !33
CACHE STAMPEDE !34
CACHE STAMPEDE !35
CACHE STAMPEDE !36
CACHE STAMPEDE !37
SECURITY !38
SECURITY !39 Detailed security voters decisions
SECURITY !40 before:
SECURITY !41 after:
FORMS !42
FORMS !43 Clear form errors:
FORMS !44 Improved form type extension
FORMS !45 before: Improved form type extension
FORMS !46 before: Improved form type extension
FORMS !47 after: Improved form type extension
FORMS !48 Improved form type extension
DIVISIBLE CONSTRAINT !49
PDO-BASED LOCK !50
PDO-BASED LOCK !51
PDO-BASED LOCK !52
PDO-BASED LOCK !53
THANK YOU 54
BONUS 4.3 PREVIEW !55
CONSOLE HYPERLINKS !56
TWIG DEPRECATED TAG !57
CONTRIBUTE? 58 You want to be part of Symfony? Take
a look: https://symfony.com/doc/current/contributing/ index.html
REFERENCES !59 Overview: https://symfony.com/blog/symfony-4-2-curated-new-features Changelog: https://symfony.com/blog/symfony-4-2-0-beta1-released https://symfony.com/blog/symfony-4-2-0-beta2-released Translations: https://symfony.com/blog/new-in-symfony-4-2-translation-related-improvements
https://symfony.com/blog/new-in-symfony-4-2-intlmessageformatter Deprecations: https://symfony.com/blog/new-in-symfony-4-2-important-deprecations Security: https://symfony.com/blog/new-in-symfony-4-2-samesite-cookie-configuration https://symfony.com/blog/new-in-symfony-4-2-auto-secure-cookies https://symfony.com/blog/new-in-symfony-4-2-detailed-security-voters-decisions
REFERENCES !60 Forms: https://symfony.com/blog/new-in-symfony-4-2-clear-form-errors https://symfony.com/blog/new-in-symfony-4-2-improved-form-type-extensions Misc: https://symfony.com/blog/new-in-symfony-4-2-cache-stampede-protection https://symfony.com/blog/new-in-symfony-4-2-divisibleby-constraint https://symfony.com/blog/new-in-symfony-4-2-addlink-shortcut https://symfony.com/blog/new-in-symfony-4-2-define-env-vars-per-environment
https://symfony.com/blog/new-in-symfony-4-2-acceptable-request-formats https://symfony.com/blog/new-in-symfony-4-2-simpler-custom-serialized-names https://symfony.com/blog/new-in-symfony-4-2-wait-until-processes-are-ready https://symfony.com/blog/new-in-symfony-4-2-varexporter-component https://symfony.com/blog/new-in-symfony-4-2-console-tables-improvements https://symfony.com/blog/new-in-symfony-4-2-pdo-based-lock-storage https://symfony.com/blog/new-in-symfony-4-2-autowiring-by-type-and-name https://symfony.com/blog/new-in-symfony-4-2-simpler-functional-tests https://symfony.com/doc/current/configuration/dot-env-changes.html