October 19, 2017 Fabien Potencier

Symfony 4.0.0-BETA1 has just been released. Here is a list of the most important changes:

feature #24583 Adding a new debug:autowiring command (@weaverryan)

feature #24523 [HttpFoundation] Make sessions secure and lazy (@nicolas-grekas)

feature #22610 [Form] [TwigBridge] Added option to disable usage of default themes when rendering a form (@emodric)

feature #23112 [OptionsResolver] Support array of types in allowed type (@pierredup)

feature #24321 added ability to handle parent classes for PropertyNormalizer (@ivoba)

feature #24505 [HttpKernel] implement reset() in DumpDataCollector (@xabbuh)

feature #24425 [Console][HttpKernel] Handle new SHELL_VERBOSITY env var, also configures the default logger (@nicolas-grekas)

feature #24503 [MonologBridge][EventDispatcher][HttpKernel] remove deprecated features (@xabbuh)

feature #24387 [FORM] Prevent forms from extending itself as a parent (@pierredup)

feature #24484 [DI] Throw accurate failures when accessing removed services (@nicolas-grekas)

feature #24208 [Form] Display option definition from a given form type (@yceruto, @ogizanagi)

feature #22228 [HttpKernel] minor: add ability to construct with headers on http exceptions (@gsdevme)

feature #24467 [Process] drop non-existent working directory support (@xabbuh)

feature #23499 [Workflow] add guard is_valid() method support (@alain-flaus, @lyrixx)

feature #24364 [DependencyInjection][Filesystem][Security][SecurityBundle] remove deprecated features (@xabbuh)

feature #24441 [BridgeDoctrine][FrameworkBundle] Remove legacy uses of ContainerAwareInterface (@nicolas-grekas)

feature #24388 [Security] Look at headers for switch_user username (@chalasr)

feature #24447 [Session] remove deprecated session handlers (@Tobion)

feature #24446 [Security] Remove GuardAuthenticatorInterface (@chalasr)

feature #23708 Added deprecation to cwd not existing Fixes #18249 (@alexbowers)

feature #24443 [Session] deprecate MemcacheSessionHandler (@Tobion)

feature #24409 [BridgeDoctrine][FrameworkBundle] Deprecate some remaining uses of ContainerAwareTrait (@nicolas-grekas)

feature #24438 [Session][VarDumper] Deprecate accepting legacy mongo extension (@Tobion)

feature #24389 [DoctrineBridge] Deprecate dbal session handler (@Tobion)

feature #16835 [Security] Add Guard authenticator <supports> method (@Amo, @chalasr)

feature #24289 [FrameworkBundle][HttpKernel] Reset profiler (@derrabus)

feature #24144 [FrameworkBundle] Expose dotenv in bin/console about (@ro0NL)

feature #24403 [FrameworkBundle][Routing] Show welcome message if no routes are configured (@yceruto)

feature #24398 [DI] Remove AutowireExceptionPass (@ogizanagi)

feature #22679 [Form] Add tel and color types (@apetitpa)

feature #23845 [Validator] Add unique entity violation cause (@Ilya Vertakov)

feature #22132 [Lock] Automaticaly release lock when user forget it (@jderusse)

feature #21751 Bootstrap4 support for Twig form theme (@hiddewie, @javiereguiluz)

feature #24383 [FrameworkBundle] Don't clear app pools on cache:clear (@nicolas-grekas)

feature #24148 [Form] Hide label button when its setted to false (@TeLiXj)

feature #24380 [SecurityBundle] Remove auto picking the first provider (@ogizanagi)

feature #24378 [SecurityBundle] Deprecate auto picking the first provider (@ogizanagi)

feature #24260 [Security] Add impersonation support for stateless authentication (@chalasr)

feature #24300 [HttpKernel][FrameworkBundle] Add a minimalist default PSR-3 logger (@dunglas)

feature #21604 [Security] Argon2i Password Encoder (@zanbaldwin)

feature #24372 [DowCrawler] Default to UTF-8 when possible (@nicolas-grekas)

feature #24264 [TwigBundle] Improve the overriding of bundle templates (@yceruto)

feature #24197 [Translation] Moved PhpExtractor and PhpStringTokenParser to Translation component (@Nyholm)

feature #24362 [HttpKernel] Deprecate some compiler passes in favor of tagged iterator args (@nicolas-grekas)

feature #21027 [Asset] Provide default context (@ro0NL)

feature #22200 [DI] Reference tagged services in config (@ro0NL)

feature #24337 Adding a shortcuts for the main security functionality (@weaverryan, @javiereguiluz)

feature #24358 [TwigBundle] register an identity translator as fallback (@xabbuh)

feature #24357 [Yaml] include file and line no in deprecation message (@xabbuh)

feature #24330 [FrameworkBundle] register class metadata factory alias (@xabbuh)

feature #24348 [SecurityBundle] Remove remaining ACL stuff from SecurityBundle (@ogizanagi)

feature #24349 [SecurityBundle] Add missing AclSchemaListener deprecation (@ogizanagi)

feature #24202 [Filesystem] deprecate relative paths in makePathRelative() (@xabbuh)

feature #21716 [Serializer] Add Support for object_to_populate in CustomNormalizer (@chrisguitarguy)

feature #21960 Remove ValidatorTypeTestCase and add validator logic to base TypeTestCase (@pierredup)

feature #24338 [HttpFoundation] Removed compatibility layer for PHP <5.4 sessions (@afurculita)

feature #22113 [Lock] Include lock component in framework bundle (@jderusse)

feature #24236 [WebProfilerBundle] Render file links for twig templates (@ro0NL)

feature #21239 [Serializer] throw more specific exceptions (@xabbuh)

feature #24341 [SecurityBundle] Remove ACL related code (@chalasr)

feature #24256 CsvEncoder handling variable structures and custom header order (@Oliver Hoff)

feature #23471 [Finder] Add a method to check if any results were found (@duncan3dc)

feature #23149 [PhpUnitBridge] Added a CoverageListener to enhance the code coverage report (@lyrixx)

feature #24161 [HttpKernel] Remove bundle inheritance (@fabpot)

feature #24318 [SecurityBundle] Deprecate ACL related code (@chalasr)

feature #24335 [Security][SecurityBundle] Deprecate the HTTP digest auth (@ogizanagi)

feature #21951 [Security][Firewall] Passing the newly generated security token to the event during user switching (@klandaika)

feature #23485 [Config] extracted the xml parsing from XmlUtils::loadFile into XmlUtils::parse (@Basster)

feature #22890 [HttpKernel] Add ability to configure catching exceptions for Client (@kbond)

feature #24239 [HttpFoundation] Deprecate compatibility with PHP <5.4 sessions (@afurculita)

feature #23882 [Security] Deprecated not being logged out after user change (@iltar)

feature #24200 Added an alias for FlashBagInterface in config (@tifabien)

feature #24295 [DI][DX] Throw exception on some ContainerBuilder methods used from extensions (@ogizanagi)

feature #24253 [Yaml] support parsing files (@xabbuh)

feature #24290 Adding Definition::addError() and a compiler pass to throw errors as exceptions (@weaverryan)

feature #24301 [DI] Add AutowireRequiredMethodsPass to fix bindings for @required methods (@nicolas-grekas)

feature #24226 [Cache] Add ResettableInterface to allow resetting any pool's local state (@nicolas-grekas)

feature #24303 [FrameworkBundle] allow forms without translations and validator (@xabbuh)

feature #24291 [SecurityBundle] Reset the authentication token between requests (@derrabus)

feature #24280 [VarDumper] Make dump() a little bit more easier to use (@freekmurze)

feature #24277 [Serializer] Getter for extra attributes in ExtraAttributesException (@mdeboer)

feature #24257 [HttpKernel][DI] Enable Kernel to implement CompilerPassInterface (@nicolas-grekas)

feature #23834 [DI] Add "PHP fluent format" for configuring the container (@nicolas-grekas)

feature #24180 [Routing] Add PHP fluent DSL for configuring routes (@nicolas-grekas)

feature #24232 [BridgeDoctrine] Add "DoctrineType::reset()" method (@nicolas-grekas)

feature #24238 [DI] Turn services and aliases private by default, with BC layer (@nicolas-grekas)

feature #24242 [Form] Remove deprecated ChoiceLoaderInterface implementation in TimezoneType (@ogizanagi)

feature #23648 [Form] Add input + regions options to TimezoneType (@ro0NL)

feature #24185 [Form] Display general forms information on debug:form (@yceruto)

feature #23747 [Serializer][FrameworkBundle] Add a DateInterval normalizer (@Lctrs)

feature #24193 [FrameworkBundle] Reset stopwatch between requests (@derrabus)

feature #24160 [HttpKernel] Deprecate bundle inheritance (@fabpot)

feature #24159 Remove the profiler.matcher configuration (@fabpot)

feature #24155 [FrameworkBundle][HttpKernel] Add DI tag for resettable services (@derrabus)

feature #23625 Feature #23583 Add current and fallback locales in WDT / Profiler (@nemoneph)

feature #24179 [TwigBundle] Add default templates directory and option to configure it (@yceruto)

feature #24176 [Translation] drop MessageSelector support in the Translator (@xabbuh)

feature #24104 Make as many services private as possible (@nicolas-grekas)

feature #18314 [Translation] added support for adding custom message formatter (@aitboudad)

feature #24158 deprecated profiler.matcher configuration (@fabpot)

feature #23728 [WebProfilerBundle] Removed the deprecated web_profiler.position option (@javiereguiluz)

feature #24131 [Console] Do not display short exception trace for common console exceptions (@yceruto)

feature #24080 Deprecated the web_profiler.position option (@javiereguiluz)

feature #24114 [SecurityBundle] Throw a meaningful exception when an undefined user provider is used inside a firewall (@chalasr)

feature #24122 [DI] rename ResolveDefinitionTemplatesPass to ResolveChildDefinitionsPass (@nicolas-grekas)

feature #23901 [DI] Allow processing env vars (@nicolas-grekas)

feature #24093 [FrameworkBundle] be able to enable workflow support explicitly (@xabbuh)

feature #24064 [TwigBridge] Show Twig's loader paths on debug:twig command (@yceruto)

feature #23978 [Cache] Use options from Memcached DSN (@Bukashk0zzz)

feature #24067 [HttpKernel] Dont register env parameter resource (@ro0NL)

feature #24075 Implemented PruneableInterface on TagAwareAdapter (@Toflar)

feature #23262 Add scalar typehints/return types (@chalasr, @xabbuh)

feature #21414 [Console] Display file and line on Exception (@arno14)

feature #24068 [HttpKernel] Deprecate EnvParametersResource (@ro0NL)

feature #22542 [Lock] Check TTL expiration in lock acquisition (@jderusse)

feature #24031 [Routing] Add the possibility to define a prefix for all routes of a controller (@fabpot)

feature #24052 [DI] Remove case insensitive parameter names (@ro0NL)

feature #23967 [VarDumper] add force-collapse/expand + use it for traces (@nicolas-grekas)

feature #24033 [DI] Add ContainerInterface::IGNORE_ON_UNINITIALIZED_REFERENCE (@nicolas-grekas)

feature #24026 [Security] add impersonator_user to "User was reloaded" log message (@gharlan)

feature #24014 [Translator] Remove deprecated feature (@maidmaid)

feature #23603 [Cache] Add (pdo|chain) cache (adapter|simple) prune method (@robfrawley)

feature #23694 [Form] Add debug:form command (@yceruto)

feature #24028 [Yaml] mark some classes as final (@xabbuh)

feature #22543 [Lock] Expose an expiringDate and isExpired method in Lock (@jderusse)

feature #23667 [Translation] Create an TranslationReaderInterface and move TranslationLoader to TranslationComponent (@Nyholm)

feature #24024 [config] Add ability to deprecate a node (@sanpii)

feature #23668 [VarDumper] Add period caster (@maidmaid)

feature #23991 [DI] Improve psr4-based service discovery (alternative implementation) (@kbond)

feature #22382 [config] Add abbitily to deprecate a node (@Nyholm, @fabpot, @sanpii)

feature #23947 [Translation] Adding the ability do load <notes> in xliff2.0 (@Nyholm)

feature #23887 [Console] Allow commands to provide a default name for compile time registration (@chalasr, @nicolas-grekas)

feature #23874 [DI] Case sensitive parameter names (@ro0NL)

feature #23936 Remove some sf2 references (@fabpot)

feature #23680 [Webprofiler] Added blocks that allows extension of the profiler page. (@Nyholm)

feature #23665 Create an interface for TranslationWriter (@Nyholm)

feature #23890 [Translation] Adding the ability do dump <notes> in xliff2.0 (@Nyholm)

feature #23862 [SecurityBundle] resolve class name parameter inside AddSecurityVotersPass (@pjarmalavicius)

feature #23915 [DI] Allow get available services from service locator (@Koc)

feature #23792 [HttpKernel][FrameworkBundle] Add RebootableInterface, fix and un-deprecate cache:clear with warmup (@nicolas-grekas)

feature #23227 Add support for "controller" keyword for configuring routes controllers (@voronkovich)

feature #23815 [FrameworkBundle][SecurityBundle][TwigBundle][Yaml] remove deprecated code (@xabbuh)

feature #23857 [HttpKernel] Remove convention based commands registration (@chalasr)

feature #23869 [Console] Made console command shortcuts case insensitive (@thanosp)

feature #23855 [DI] Allow dumping inline services in Yaml (@nicolas-grekas)

feature #23836 [FrameworkBundle] Catch Fatal errors in commands registration (@chalasr)

feature #23805 [HttpKernel] Deprecated commands auto-registration (@GuilhemN)

feature #23816 [Debug] Detect internal and deprecated methods (@GuilhemN)

feature #23812 [FrameworkBundle] Allow micro kernel to subscribe events easily (@ogizanagi)

feature #22187 [DependencyInjection] Support local binding (@GuilhemN)

feature #23741 [DI] Generate one file per service factory (@nicolas-grekas)

feature #23807 [Debug] Trigger a deprecation when using an internal class/trait/interface (@GuilhemN)

feature #22587 [Workflow] Add transition completed event (@izzyp)

feature #23624 [FrameworkBundle] Commands as a service (@ro0NL)

feature #21111 [Validator] add groups support to the Valid constraint (@xabbuh)

feature #20361 [Config] Enable cannotBeEmpty along with requiresAtLeastOneElement (@ro0NL)

feature #23790 [Yaml] remove legacy php/const and php/object tag support (@xabbuh)

feature #23754 [Lock] Remove FilesystemLockHandler (@jderusse)

feature #23712 [DependencyInjection] Deprecate autowiring service auto-registration (@GuilhemN)

feature #23719 Autoconfigure instances of ArgumentValueResolverInterface (@BPScott)

feature #23706 [Webprofiler] Improve sql explain table display (@mimol91)

feature #23709 [VarDumper] Make dump() variadic (@chalasr)

feature #23724 [Lock] Deprecate Filesystem/LockHandler (@jderusse)

feature #23593 [Workflow] Adding workflow name to the announce event (@Nyholm)

feature #20496 [Form] Allow pass filter callback to delete_empty option. (@Koc)

feature #23451 [Cache] Add (filesystem|phpfiles) cache (adapter|simple) prune method and prune command (@robfrawley)

feature #23519 [TwigBundle] Commands as a service (@ro0NL)

feature #23591 [VarDumper] Add time zone caster (@maidmaid)

feature #23614 [VarDumper] Remove low PHP version and hhvm compat in interval caster (@maidmaid)

feature #22317 [Console] Make SymfonyQuestionHelper::ask optional by default (@ro0NL)

feature #23510 [Console] Add a factory command loader for standalone application with lazy-loading needs (@ogizanagi)

feature #23357 [VarDumper] Add interval caster (@maidmaid)

feature #23550 [DebugBundle] Added min_depth to Configuration (@james-johnston-thumbtack)

feature #23561 [DI] Optimize use of private and pre-defined services (@nicolas-grekas)

feature #23569 Remove last legacy codes (@nicolas-grekas)

feature #23570 [FrameworkBundle] Make RouterCacheWarmer implement ServiceSubscriberInterface (@nicolas-grekas)

feature #22783 [TwigBridge] remove deprecated features (@xabbuh)

feature #23437 [TwigBridge] deprecate TwigRenderer (@Tobion)

feature #22801 [DI] Removed deprecated setting private/pre-defined services (@ro0NL)

feature #23515 [VarDumper] Added setMinDepth to VarCloner (@james-johnston-thumbtack)

feature #23484 [DI] Remove remaining deprecated features (@nicolas-grekas)

feature #23404 [Serializer] AbstractObjectNormalizer: Allow to disable type enforcement (@ogizanagi)

feature #23380 [Process] Remove enhanced sigchild compatibility (@maidmaid)

feature #21086 [MonologBridge] Add TokenProcessor (@maidmaid)

feature #22576 [Validator] Allow to use a property path to get value to compare in comparison constraints (@ogizanagi)

feature #22689 [DoctrineBridge] Add support for doctrin/dbal v2.6 types (@jvasseur)

feature #22734 [Console] Add support for command lazy-loading (@chalasr)

feature #19034 [Security] make it possible to configure a custom access decision manager service (@xabbuh)

feature #23037 [TwigBundle] Added a RuntimeExtensionInterface to take advantage of autoconfigure (@lyrixx)

feature #22811 [DI] Remove deprecated case insensitive service ids (@ro0NL)

feature #22176 [DI] Allow imports in string format for YAML (@ro0NL)

feature #23295 [Security] Lazy load user providers (@chalasr)

feature #23440 [Routing] Add matched and default parameters to redirect responses (@artursvonda, @Tobion)

feature #22804 [Debug] Removed ContextErrorException (@mbabker)

feature #22762 [Yaml] Support tagged scalars (@GuilhemN)

feature #22832 [Debug] Deprecate support for stacked errors (@mbabker)

feature #21469 [HttpFoundation] Find the original request protocol version (@thewilkybarkid)

feature #23431 [Validator] Add min/max amount of pixels to Image constraint (@akeeman)

feature #23223 Add support for microseconds in Stopwatch (@javiereguiluz)

feature #22341 [BrowserKit] Emulate back/forward browser navigation (@e-moe)

feature #22619 [FrameworkBundle][Translation] Move translation compiler pass (@lepiaf)

feature #22620 [FrameworkBundle][HttpKernel] Move httpkernel pass (@lepiaf)

feature #23402 [Ldap] Remove the RenameEntryInterface interface (@maidmaid)

feature #23337 [Component][Serializer][Normalizer] : Deal it with Has Method for the Normalizer/Denormalizer (@jordscream)

feature #23391 [Validator] Remove support of boolean value for the checkDNS option (@maidmaid)

feature #23376 [Process] Remove enhanced Windows compatibility (@maidmaid)

feature #22588 [VarDumper] Add filter in VarDumperTestTrait (@maidmaid)

feature #23288 [Yaml] deprecate the !str tag (@xabbuh)

feature #23039 [Validator] Support for parsing PHP constants in yaml loader (@mimol91)

feature #22431 [VarDumper] Add date caster (@maidmaid)

feature #23285 [Stopwatch] Add a reset method (@jmgq)

feature #23320 [WebServer] Allow to bind all interfaces (as INADDR_ANY) (@jpauli, @fabpot)

feature #23272 [FrameworkBundle] disable unusable fragment renderers (@xabbuh)

feature #23332 [Yaml] fix the displayed line number (@fabpot, @xabbuh)

feature #23324 [Security] remove support for defining voters that don't implement VoterInterface. (@hhamon)

feature #23294 [Yaml][Lint] Add line numbers to JSON output. (@WybrenKoelmans)

feature #22836 [Process] remove deprecated features (@xabbuh)

feature #23286 [Yaml] remove deprecated unspecific tag behavior (@xabbuh)

feature #23026 [SecurityBundle] Add user impersonation info and exit action to the profiler (@yceruto)

feature #22863 [HttpFoundation] remove deprecated features (@xabbuh)

feature #22932 [HttpFoundation] Adds support for the immutable directive in the cache-control header (@twoleds)

feature #22554 [Profiler][Validator] Add a validator panel in profiler (@ogizanagi)

feature #22124 Shift responsibility for keeping Date header to ResponseHeaderBag (@mpdude)

feature #23122 Xml encoder optional type cast (@ragboyjr)

feature #23207 [FrameworkBundle] Allow .yaml file extension everywhere (@ogizanagi)

feature #23076 [Validator] Adds support to check specific DNS record type for URL (@iisisrael)

feature #22629 [Security] Trigger a deprecation when a voter is missing the VoterInterface (@iltar)

feature #22636 [Routing] Expose request in route conditions, if needed and possible (@ro0NL)

feature #22909 [Yaml] Deprecate using the non-specific tag (@GuilhemN)

feature #23184 [HttpFoundation] Remove obsolete ini settings for sessions (@fabpot)

feature #23042 Consistent error handling in remember me services (@lstrojny)

feature #22444 [Serializer] DateTimeNormalizer: allow to provide timezone (@ogizanagi)

feature #23143 [DI] Reference instead of inline for array-params (@nicolas-grekas)

feature #23154 [WebProfilerBundle] Sticky ajax window (@ro0NL)

feature #23161 [FrameworkBundle] Deprecate useless --no-prefix option (@chalasr)

feature #23169 [FrameworkBundle] Remove KernelTestCase deprecated code (@ogizanagi)

feature #23105 [SecurityBundle][Profiler] Give info about called security listeners in profiler (@chalasr)

feature #23148 [FrameworkBundle] drop hard dependency on the Stopwatch component (@xabbuh)

feature #23131 [FrameworkBundle] Remove dependency on Doctrine cache (@fabpot)

feature #23114 [SecurityBundle] Lazy load security listeners (@chalasr)

feature #23111 [Process] Deprecate ProcessBuilder (@nicolas-grekas)

feature #22675 [FrameworkBundle] KernelTestCase: deprecate not using KERNEL_CLASS (@ogizanagi)

feature #22917 [VarDumper] Cycle prev/next searching in HTML dumps (@ro0NL)

feature #23044 Automatically enable the routing annotation loader (@GuilhemN)

feature #22696 [PropertyInfo] Made ReflectionExtractor's prefix lists instance variables (@neemzy)

feature #23056 [WebProfilerBundle] Remove WebProfilerExtension::dumpValue() (@ogizanagi)

feature #23035 Deprecate passing a concrete service in optional cache warmers (@romainneutron)

feature #23036 Implement ServiceSubscriberInterface in optional cache warmers (@romainneutron)

feature #23046 [Form] Missing deprecated paths removal (@ogizanagi)

feature #23022 [Di] Remove closure-proxy arguments (@nicolas-grekas)

feature #22758 Remove HHVM support (@fabpot)

feature #22743 [Serializer] Remove support for deprecated signatures (@dunglas)

feature #22907 [Serializer] remove remaining deprecated features (@xabbuh)

feature #22886 [HttpKernel] remove deprecated features (@xabbuh)

feature #22906 [Console] remove remaining deprecated features (@xabbuh)

feature #22879 [Translation] remove deprecated features (@xabbuh)

feature #22880 [Routing] remove deprecated features (@xabbuh)

feature #22903 [DI] Deprecate XML services without ID (@ro0NL)

feature #22770 [Yaml] remove deprecated features (@xabbuh)

feature #22785 [ProxyManagerBridge] remove deprecated features (@xabbuh)

feature #22800 [FrameworkBundle] Remove deprecated code (@ogizanagi)

feature #22597 [Lock] Re-add the Lock component in 3.4 (@jderusse)

feature #22860 [Form] remove deprecated features (@xabbuh)

feature #22803 [DI] Deprecate Container::initialized() for privates (@ro0NL)

feature #22773 [DependencyInjection] remove deprecated autowiring_types feature (@hhamon)

feature #22809 [DI] Remove deprecated generating a dumped container without populating the method map (@ro0NL)

feature #22764 [DI] Remove deprecated dumping an uncompiled container (@ro0NL)

feature #22820 Remove PHP < 7.1.3 code (@ogizanagi)

feature #22763 [DI] Remove deprecated isFrozen() (@ro0NL)

feature #22837 [VarDumper] remove deprecated features (@xabbuh)

feature #22777 [Console] Remove deprecated console.exception event (@mbabker)

feature #22792 [PhpUnitBridge] remove deprecated features (@xabbuh)

feature #22821 [Security] remove deprecated features (@xabbuh)

feature #22750 [DependencyInjection] remove deprecated code in YamlFileLoader class (@hhamon)

feature #22828 [Finder] Deprecate FilterIterator (@ogizanagi)

feature #22791 [MonologBridge] remove deprecated features (@xabbuh)

feature #22740 [SecurityBundle][Security][Finder] Remove deprecated code paths (@ogizanagi)

feature #22823 [PropertyAccess] remove deprecated features (@xabbuh)

feature #22826 [Validator] improve strict option value deprecation (@xabbuh)

feature #22799 [Console] Remove deprecated features (@chalasr)

feature #22786 [ClassLoader][HttpKernel] Remove ClassLoader component & Kernel::loadClassCache (@ogizanagi, @xabbuh)

feature #22795 [Validator] remove deprecated features (@xabbuh)

feature #22784 [DoctrineBridge] remove deprecated features (@xabbuh)

feature #22749 Remove deprecated container injections and compiler passes (@chalasr)

feature #22796 [EventDispatcher] remove deprecated features (@xabbuh)

feature #22797 [Ldap] remove deprecated features (@xabbuh)

feature #22794 [ExpressionLanguage] remove deprecated features (@xabbuh)

feature #22779 [BC Break] Removed BC layers for ControllerResolver::getArguments() (@iltar)

feature #22782 [Debug][VarDumper] Remove the symfony_debug C extension (@nicolas-grekas)

feature #22771 [Workflow] Removed deprecated features (@lyrixx)

feature #22741 [Serializer] Remove deprecated DoctrineCache support (@dunglas)

feature #22733 Bump minimum version to PHP 7.1 for Symfony 4 (@fabpot, @dunglas, @nicolas-grekas)

Want to upgrade to this new release? Fortunately, because Symfony protects backwards-compatibility very closely, this should be quite easy. Read our upgrade documentation to learn more.

Want to be notified whenever a new Symfony release is published? Or when a version is not maintained anymore? Or only when a security issue is fixed? Consider subscribing to the Symfony Roadmap Notifications.