Skip to content

3.0.0

Compare
Choose a tag to compare
@xabbuh xabbuh released this 03 Jun 18:41
3.0.0

Features

  • added support for Symfony 5 compatibility

BC Breaks

  • the route generation feature was removed, setting it to another value than false leads to an
    exception

  • support for serializing exceptions was removed, setting the fos_rest.exception.serialize_exceptions
    option to anything else than false leads to an exception

  • support for returning anything other than string or null from resolve() when implementing
    the VersionResolverInterface was removed

  • removed support for passing version numbers as integers to Context::setVersion()

  • removed the isFormatTemplating(), renderTemplate(), and prepareTemplateParameters() methods
    from the ViewHandler class and the ViewHandlerInterface

  • the constructor of the ViewHandler class is private now, use the static create() factory
    method instead

  • removed the setTemplateVar(), setPopulateDefaultVars(), getTemplateVar(), and
    isPopulateDefaultVars() methods from the Controller\Annotations\View class

  • removed the setEngine(), setTemplate(), setTemplateData(), setTemplateVar(), getEngine(),
    getTemplate(), getTemplateData(), and getTemplateVar() methods from the View\View class

  • changed the default value of the fos_rest.body_listener option to false

  • removed the setMaxDepth()/getMaxDepth() methods from the Context class, use
    enableMaxDepth()/disableMaxDepth() instead

  • dropped support for Symfony components < 4.4

  • removed the following options:

    • fos_rest.access_denied_listener
    • fos_rest.exception.exception_controller
    • fos_rest.exception.exception_listener
    • fos_rest.exception.service
    • fos_rest.service.inflector
    • fos_rest.service.router
    • fos_rest.service.templating
    • fos_rest.view.default_engine
    • fos_rest.view.force_redirects
    • fos_rest.view.templating_formats
  • removed the following classes and interfaces:

    • FOS\RestBundle\Controller\Annotations\NamePrefix
    • FOS\RestBundle\Controller\Annotations\NoRoute
    • FOS\RestBundle\Controller\Annotations\Prefix
    • FOS\RestBundle\Controller\Annotations\RouteResource
    • FOS\RestBundle\Controller\Annotations\Version
    • FOS\RestBundle\Controller\ExceptionController
    • FOS\RestBundle\Controller\TemplatingExceptionController
    • FOS\RestBundle\Controller\TwigExceptionController
    • FOS\RestBundle\EventListener\AccessDeniedListener
    • FOS\RestBundle\EventListener\ExceptionListener
    • FOS\RestBundle\Inflector\DoctrineInflector
    • FOS\RestBundle\Inflector\InflectorInterface
    • FOS\RestBundle\Routing\Loader\DirectoryRouteLoader
    • FOS\RestBundle\Routing\Loader\Reader\RestActionReader
    • FOS\RestBundle\Routing\Loader\Reader\RestControllerReader
    • FOS\RestBundle\Routing\Loader\RestRouteLoader
    • FOS\RestBundle\Routing\Loader\RestRouteProcessor
    • FOS\RestBundle\Routing\Loader\RestXmlCollectionLoader
    • FOS\RestBundle\Routing\Loader\RestYamlCollectionLoader
    • FOS\RestBundle\Routing\ClassResourceInterface
    • FOS\RestBundle\Routing\RestRouteCollection
    • FOS\RestBundle\Serializer\Normalizer\ExceptionHandler
    • FOS\RestBundle\Serializer\Normalizer\ExceptionNormalizer
  • removed the following services and aliases:

    • fos_rest.access_denied_listener
    • fos_rest.exception_listener
    • fos_rest.exception.controller
    • fos_rest.exception.twig_controller
    • fos_rest.inflector
    • fos_rest.router
    • fos_rest.routing.loader.controller
    • fos_rest.routing.loader.directory
    • fos_rest.routing.loader.processor
    • fos_rest.routing.loader.reader.controller
    • fos_rest.routing.loader.reader.action
    • fos_rest.routing.loader.xml_collection
    • fos_rest.routing.loader.yaml_collection
    • fos_rest.serializer.exception_normalizer.jms
    • fos_rest.serializer.exception_normalizer.symfony
    • fos_rest.templating
  • the following classes are marked as internal (backwards compatibility will no longer be guaranteed):

    • FOS\RestBundle\DependencyInjection\Compiler\HandlerRegistryDecorationPass
    • FOS\RestBundle\DependencyInjection\FOSRestExtension
    • FOS\RestBundle\Form\Extension\DisableCSRFExtension
    • FOS\RestBundle\Form\Transformer\EntityToIdObjectTransformer
    • FOS\RestBundle\Normalizer\CamelKeysNormalizer
    • FOS\RestBundle\Normalizer\CamelKeysNormalizerWithLeadingUnderscore
    • FOS\RestBundle\Serializer\Normalizer\FormErrorHandler
    • FOS\RestBundle\Serializer\Normalizer\FormErrorNormalizer
    • FOS\RestBundle\Util\ExceptionValueMap
  • the following classes are now final:

    • FOS\RestBundle\Decoder\ContainerDecoderProvider
    • FOS\RestBundle\Decoder\JsonDecoder
    • FOS\RestBundle\Decoder\JsonToFormDecoder
    • FOS\RestBundle\Decoder\XmlDecoder
    • FOS\RestBundle\Form\Transformer\EntityToIdObjectTransformer
    • FOS\RestBundle\Negotiation\FormatNegotiator
    • FOS\RestBundle\Request\ParamFetcher
    • FOS\RestBundle\Request\ParamReader
    • FOS\RestBundle\Request\RequestBodyParamConverter
    • FOS\RestBundle\Response\AllowMethodsLoader\AllowedMethodsRouterLoader
    • FOS\RestBundle\Serializer\JMSSerializerAdapter
    • FOS\RestBundle\Serializer\SymfonySerializerAdapter
    • FOS\RestBundle\Version\ChainVersionResolver
    • FOS\RestBundle\Version\Resolver\HeaderVersionResolver
    • FOS\RestBundle\Version\Resolver\MediaTypeVersionResolver
    • FOS\RestBundle\Version\Resolver\QueryParameterVersionResolver
    • FOS\RestBundle\View\JsonpHandler
    • FOS\RestBundle\View\View
    • FOS\RestBundle\View\ViewHandler