This PR was merged into the 3.2-dev branch.
Discussion
----------
[FrameworkBundle] removed the Templating component dependency on FrameworkBundle
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | yes
| BC breaks? | no (except for people using FrameworkBundle without requiring symfony/symfony which should be pretty rare; and fixing this is easy by adding symfony/templating explicitly)
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #15748 partially
| License | MIT
| Doc PR | n/a
Another PR to reduce the number of required dependencies on FrameworkBundle. This PR removes the Templating component from the list.
I made most of the work in previous version, so this change is really just about adding a good error message when templating is not enabled. For the record, this is also in the path of making possible to use Symfony with Twig without using the Templating component indirection (I think that this is in fact the last step).
Commits
-------
b3de62f
[FrameworkBundle] removed the Templating component dependency on FrameworkBundle
3.8 KiB
UPGRADE FROM 3.1 to 3.2
FrameworkBundle
- The
symfony/templating
dependency has been removed; require it viacomposer require symfony/templating
if you depend on it and don't already depend onsymfony/symfony
- The
symfony/translation
dependency has been removed; require it viacomposer require symfony/translation
if you depend on it and don't already depend onsymfony/symfony
- The
symfony/asset
dependency has been removed; require it viacomposer require symfony/asset
if you depend on it and don't already depend onsymfony/symfony
- The
Resources/public/images/*
files have been removed. - The
Resources/public/css/*.css
files have been removed (they are now inlined in TwigBundle). - The
Controller::getUser()
method has been deprecated and will be removed in Symfony 4.0; typehint the security user object in the action instead.
Console
- Setting unknown style options is deprecated and will throw an exception in Symfony 4.0.
DependencyInjection
- Calling
get()
on aContainerBuilder
instance before compiling the container is deprecated and will throw an exception in Symfony 4.0.
Form
-
Calling
isValid()
on aForm
instance before submitting it is deprecated and will throw an exception in Symfony 4.0.Before:
if ($form->isValid()) { // ... }
After:
if ($form->isSubmitted() && $form->isValid()) { // ... }
FrameworkBundle
- The service
serializer.mapping.cache.doctrine.apc
is deprecated. APCu should now be automatically used when available.
HttpKernel
DataCollector::varToString()
is deprecated and will be removed in Symfony 4.0. Use thecloneVar()
method instead.
HttpFoundation
-
Extending the following methods of
Response
is deprecated (these methods will befinal
in 4.0):setDate
/getDate
setExpires
/getExpires
setLastModified
/getLastModified
setProtocolVersion
/getProtocolVersion
setStatusCode
/getStatusCode
setCharset
/getCharset
setPrivate
/setPublic
getAge
getMaxAge
/setMaxAge
setSharedMaxAge
getTtl
/setTtl
setClientTtl
getEtag
/setEtag
hasVary
/getVary
/setVary
isInvalid
/isSuccessful
/isRedirection
/isClientError
/isServerError
isOk
/isForbidden
/isNotFound
/isRedirect
/isEmpty
Validator
-
Tests\Constraints\AbstractConstraintValidatorTest
has been deprecated in favor ofTest\ConstraintValidatorTestCase
.Before:
// ... use Symfony\Component\Validator\Tests\Constraints\AbstractConstraintValidatorTest; class MyCustomValidatorTest extends AbstractConstraintValidatorTest { // ... }
After:
// ... use Symfony\Component\Validator\Test\ConstraintValidatorTestCase; class MyCustomValidatorTest extends ConstraintValidatorTestCase { // ... }
-
Setting the strict option of the
Choice
Constraint tofalse
has been deprecated and the option will be changed totrue
as of 4.0.// ... use Symfony\Component\Validator\Constraints as Assert; class MyEntity { /** * @Assert\Choice(choices={"MR", "MRS"}, strict=true) */ private $salutation; }
Yaml
-
Support for silently ignoring duplicate mapping keys in YAML has been deprecated and will lead to a
ParseException
in Symfony 4.0. -
Mappings with a colon (
:
) that is not followed by a whitespace are deprecated and will lead to aParseException
in Symfony 4.0 (e.g.foo:bar
must befoo: bar
).