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
日本の教育の未来 を考える テクノロジーは教育をどのように変えるのか
kzkmaeda
1
190
技術文章を書くための執筆技術と実践法(パラグラフライティング)
hisashiishihara
18
6.3k
Interaction - Lecture 10 - Information Visualisation (4019538FNR)
signer
PRO
0
2k
より良い学振申請書(DC)を作ろう 2025
luiyoshida
1
3.1k
Human-AI Interaction - Lecture 11 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
430
Sponsor the Conference | VizChitra 2025
vizchitra
0
320
ANS-C01_2回不合格から合格までの道程
amarelo_n24
1
210
Constructing a Custom TeX Ecosystem for Educational Institutions—Beyond Academic Typesetting
doratex
1
5.4k
新卒交流ワークショップ
pokotyamu
0
290
生成AI時代教育とICT支援員への期待
o_ob
0
280
Education-JAWS #3 ~教育現場に、AWSのチカラを~
masakiokuda
0
150
zupanijska natjecanja
petarradanovic2
0
420
Featured
See All Featured
Become a Pro
speakerdeck
PRO
28
5.4k
Six Lessons from altMBA
skipperchong
28
3.8k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
KATA
mclloyd
29
14k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
25
2.8k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Making the Leap to Tech Lead
cromwellryan
134
9.3k
Building Adaptive Systems
keathley
41
2.6k
Practical Orchestrator
shlominoach
188
11k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
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