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
Cloud WANの基礎から応用~少しだけDeep Dive~
masakiokuda
3
110
AIと描く、未来のBacklog 〜プロジェクト管理の次の10年を想像し、創造するセッション〜
hrm_o25
0
110
AI関数が早くなったので試してみよう
kumakura
0
320
GISエンジニアよ 現場に行け!
sudataka
1
130
大規模イベントに向けた ABEMA アーキテクチャの遍歴 ~ Platform Strategy 詳細解説 ~
nagapad
0
240
Jamf Connect ZTNAとMDMで実現! 金融ベンチャーにおける「デバイストラスト」実例と軌跡 / Kyash Device Trust
rela1470
1
200
ZOZOTOWNの大規模マーケティングメール配信を支えるアーキテクチャ
zozotech
PRO
0
500
LLM 機能を支える Langfuse / ClickHouse のサーバレス化
yuu26
9
2.5k
Google Agentspaceを実際に導入した効果と今後の展望
mixi_engineers
PRO
3
750
「AIと一緒にやる」が当たり前になるまでの奮闘記
kakehashi
PRO
3
160
データモデリング通り #2オンライン勉強会 ~方法論の話をしよう~
datayokocho
0
180
React Server ComponentsでAPI不要の開発体験
polidog
PRO
0
330
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
880
Typedesign – Prime Four
hannesfritz
42
2.8k
How GitHub (no longer) Works
holman
314
140k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Become a Pro
speakerdeck
PRO
29
5.5k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
1k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
Speed Design
sergeychernyshev
32
1.1k
Into the Great Unknown - MozCon
thekraken
40
2k
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