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
Search
Tim Jabs
November 28, 2018
Education
0
600
Symfony 4.2
A talk about symfony 4.2.
Tim Jabs
November 28, 2018
Tweet
Share
More Decks by Tim Jabs
See All by Tim Jabs
Symfony 4.2 updated
rubinum
0
120
Symfony 4.1 What's New?
rubinum
4
1.1k
Other Decks in Education
See All in Education
理想の英語力に一直線!最高効率な英語学習のすゝめ
logica0419
6
380
探査機自作ゼミ2025スライド
sksat
3
760
2025年度春学期 統計学 第13回 不確かな測定の不確かさを測る ー 不偏分散とt分布 (2025. 7. 3)
akiraasano
PRO
0
120
プレゼンテーション実践
takenawa
0
16k
実務プログラム
takenawa
0
16k
Transición del Management al Neuromanagement
jvpcubias
0
190
万博マニアックマップを支えるオープンデータとその裏側
barsaka2
0
800
2025年度春学期 統計学 第9回 確からしさを記述する ー 確率 (2025. 6. 5)
akiraasano
PRO
0
150
情報科学類で学べる専門科目38選
momeemt
0
580
GitHubとAzureを使って開発者になろう
ymd65536
1
160
ROSConJP 2025 発表スライド
f0reacharr
0
170
2025年度春学期 統計学 第8回 演習(1) 問題に対する答案の書き方(講義前配付用) (2025. 5. 29)
akiraasano
PRO
0
140
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
13k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
Scaling GitHub
holman
463
140k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
The Invisible Side of Design
smashingmag
301
51k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Transcript
SYMFONY 4.2 WHAT'S NEW? 1
Who am I? Tim Jabs Software Developer @Sensiolabs Deutschland
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
+ proper dependency injection
DEPRECATIONS !10 Deprecated Controller Class: No more: Controller $this->get(FooClass::class) Use:
AbstractController + proper dependency injection
DEPRECATIONS !11
DEPRECATIONS !12
DEPRECATIONS !13 Deprecated process commands 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 VarExporter Example: export($data)
ENV FILE PER ENVIRONMENT !18
ENV FILE PER ENVIRONMENT !19 No More: .env.dist But: .env
is part of of the repository now
ENV FILE PER ENVIRONMENT !20 before: .env after: .env .env.test
.env.dev .env.dev.local
ENV FILE PER ENVIRONMENT !21 //.env DATABASE_URL: … DATABASE_URL_TEST: …
DATABASE_URL_TEST_LOCAL: …
TRANSLATION RELATED IMPROVEMENTS !22
TRANSLATION RELATED IMPROVEMENTS !23 before:
TRANSLATION RELATED IMPROVEMENTS !24 after:
TRANSLATION RELATED IMPROVEMENTS !25 ICU parent locales as fallback: Example:
before: es_AR => es after: es_AR => es_419 => es
TRANSLATION RELATED IMPROVEMENTS !26 Update XLF translations by default: before:
bin/console translation:update // output default JSON after: bin/console translation:update // output default XLF
TRANSLATION RELATED IMPROVEMENTS !27 Lint multiple XLIFF dirs or files:
bin/console lint:xliff supports multiple directories now
AUTOWIRING BY TYPE AND NAME !28
AUTOWIRING BY TYPE AND NAME !29
AUTOWIRING BY TYPE AND NAME !30
CACHE STAMPEDE !31
CACHE STAMPEDE !32
CACHE STAMPEDE !33
SECURITY !34
SECURITY !35 Detailed security voters decisions
SECURITY !36 before:
SECURITY !37 after:
FORMS !38
FORMS !39 Clear form errors:
FORMS !40 Improved form type extension
FORMS !41 before: Improved form type extension
FORMS !42 before: Improved form type extension
FORMS !43 after: Improved form type extension
FORMS !44 Improved form type extension
DIVISIBLE CONSTRAINT !45
THANK YOU 46
REFERENCES !47 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 !48 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