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
140
0
Share
Symfony 4.2 updated
Tim Jabs
January 24, 2019
More Decks by Tim Jabs
See All by Tim Jabs
Symfony 4.2
rubinum
0
620
Symfony 4.1 What's New?
rubinum
4
1.1k
Other Decks in Technology
See All in Technology
2026年度新卒技術研修 サイバーエージェントのデータベース 活用事例とパフォーマンス調査入門
cyberagentdevelopers
PRO
6
6.9k
🀄️ on swiftc
giginet
PRO
0
270
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.3k
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
4
14k
ASTのGitHub CopilotとCopilot CLIの現在地をお話しします/How AST Operates GitHub Copilot and Copilot CLI
aeonpeople
1
210
CC Workflow Studio
seiyakobayashi
0
200
TanStack Start エコシステムの現在地 / TanStack Start Ecosystem 2026
iktakahiro
1
360
「決め方」の渡し方 / How to hand over the "decision-making process"
pauli
8
1.3k
今年60歳のおっさんCBになる
kentapapa
1
350
本番環境でPHPコードに触れずに「使われていないコード」を調べるにはどうしたらよいか?
egmc
1
260
機能・非機能の学びを一つに!Agent Skillsで月間レポート作成始めてみた / Unifying Bug & Infra Insights — Building Monthly Quality Reports with Agent Skills
bun913
5
3.9k
Hello UUID
mimifuwacc
0
130
Featured
See All Featured
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
250
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
710
Code Review Best Practice
trishagee
74
20k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
10k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
210
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
How to build a perfect <img>
jonoalderson
1
5.4k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
250
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
310
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
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