Slide 1

Slide 1 text

Denis Brumann
 @dbrumann
 [email protected] Migrating to Symfony 4 1 from Symfony 2 & 3

Slide 2

Slide 2 text

Denis Brumann
 @dbrumann
 [email protected] 2

Slide 3

Slide 3 text

Denis Brumann
 @dbrumann
 [email protected] 3

Slide 4

Slide 4 text

Denis Brumann
 @dbrumann
 [email protected] 4 Denis Brumann Software Developer Berlin, Germany

Slide 5

Slide 5 text

Denis Brumann
 @dbrumann
 [email protected] 5 https://symfony.com/doc/current/contributing/community/releases.html

Slide 6

Slide 6 text

Denis Brumann
 @dbrumann
 [email protected] 6 https://symfony.com/roadmap Symfony Version End of Support End Of Security Fixes 2.8 (LTS) November 2018 November 2019 3.4 (LTS) November 2020 November 2021 4.0 July 2018 January 2019

Slide 7

Slide 7 text

Denis Brumann
 @dbrumann
 [email protected] 7 Flex is not your only option

Slide 8

Slide 8 text

Denis Brumann
 @dbrumann
 [email protected] 8 composer update symfony/symfony

Slide 9

Slide 9 text

Denis Brumann
 @dbrumann
 [email protected] 9

Slide 10

Slide 10 text

Denis Brumann
 @dbrumann
 [email protected] 10 https://symfony.com/blog/new-in-symfony-3-3-persisted-deprecation-logs

Slide 11

Slide 11 text

Denis Brumann
 @dbrumann
 [email protected] 11 Step 1: Add symfony/flex as a dependency from Symfony 3.4

Slide 12

Slide 12 text

Denis Brumann
 @dbrumann
 [email protected] 12 Step 2: Remove the symfony/symfony package

Slide 13

Slide 13 text

Denis Brumann
 @dbrumann
 [email protected] 13 Step 3: Make sure symfony/symfony is not kept

Slide 14

Slide 14 text

Denis Brumann
 @dbrumann
 [email protected] 14 optionally: stay with Symfony 3.4 first

Slide 15

Slide 15 text

Denis Brumann
 @dbrumann
 [email protected] 15 Step 4: Manually require your Symfony dependencies

Slide 16

Slide 16 text

Denis Brumann
 @dbrumann
 [email protected] 16 Step 5: Copy & adjust your configuration

Slide 17

Slide 17 text

Denis Brumann
 @dbrumann
 [email protected] 17 Symfony 3 Symfony 4

Slide 18

Slide 18 text

Denis Brumann
 @dbrumann
 [email protected] 17 Symfony 3 Symfony 4

Slide 19

Slide 19 text

Denis Brumann
 @dbrumann
 [email protected] 19

Slide 20

Slide 20 text

Denis Brumann
 @dbrumann
 [email protected] 19

Slide 21

Slide 21 text

Denis Brumann
 @dbrumann
 [email protected] 19

Slide 22

Slide 22 text

Denis Brumann
 @dbrumann
 [email protected] 19

Slide 23

Slide 23 text

Denis Brumann
 @dbrumann
 [email protected] 19

Slide 24

Slide 24 text

Denis Brumann
 @dbrumann
 [email protected] 20 Step 6a: Move src/AppBundle/* to src/* Step 6b: Move namespace AppBundle\ to App\ Step 6c: Update autoload-section in composer.json

Slide 25

Slide 25 text

Denis Brumann
 @dbrumann
 [email protected] 21

Slide 26

Slide 26 text

Denis Brumann
 @dbrumann
 [email protected] 22 composer require acme/my-bundle

Slide 27

Slide 27 text

Denis Brumann
 @dbrumann
 [email protected] 23 { "require": { "acme/my-bundle": "dev-master" }, "repositories": [ { "type": "vcs", "url": "[email protected]:acme/my-bundle.git" } ] }

Slide 28

Slide 28 text

Denis Brumann
 @dbrumann
 [email protected] 24 Step 7: Move templates, translations & assets

Slide 29

Slide 29 text

Denis Brumann
 @dbrumann
 [email protected] 25 Step 8: Create public/index.php

Slide 30

Slide 30 text

Denis Brumann
 @dbrumann
 [email protected] 26 Step 9: Create bin/console

Slide 31

Slide 31 text

Denis Brumann
 @dbrumann
 [email protected] 27 https://symfony.com/doc/current/setup/flex.html#upgrade-to-flex https://symfony.com/doc/current/setup/upgrade_major.html