CHANGELOG for 3.1.x
===================

This changelog references the relevant changes (bug and security fixes) done
in 3.1 minor versions.

To get the diff for a specific change, go to https://github.com/symfony/symfony/commit/XXX where XXX is the change hash
To get the diff between two versions, go to https://github.com/symfony/symfony/compare/v3.1.0...v3.1.1

* 3.1.2 (2016-06-30)

 * bug #19227 [DoctrineBridge] fixed default parameter value in UniqueEntityValidator (HeahDude)
 * bug #18934 Fixed some issues of the AccessDecisionManager profiler (javiereguiluz)
 * bug #19217 [HttpKernel] Inline ValidateRequestListener logic into HttpKernel (nicolas-grekas)
 * bug #18688 [HttpFoundation] Warning when request has both Forwarded and X-Forwarded-For (magnusnordlander)
 * bug #19173 [Console] Decouple SymfonyStyle from TableCell (ro0NL)
 * bug #19204 [Security] Allow LDAP loadUser override (tucksaun)
 * bug #19189 [Console] Fix formatting of SymfonyStyle::comment() (chalasr)
 * bug #19211 [Form] fix post max size translation type extension for >= 2.8 (Tobion)
 * bug #17822 [WIP]  [Form] fix `empty_data` option in expanded `ChoiceType` (HeahDude)
 * bug #19159 [WebProfilerBundle] Added a conflict for Http-Kernel < 3.1 (HeahDude)
 * bug #19134 Distinguish between first and subsequent progress bar displays (rquadling)
 * bug #19061 [FORM] fix post_max_size_message translation (alt. 2) (David Badura)
 * bug #19100 [Console] Fixed SymfonyQuestionHelper multi-choice with defaults (sstok)
 * bug #18924 [DoctrineBridge] Don't use object IDs in DoctrineChoiceLoader when passing a value closure (webmozart)
 * bug #19138 [DomCrawler] No more exception on field name with strange format (guiled, fabpot)
 * bug #18935 [Form] Consider a violation even if the form is not submitted (egeloen)
 * bug #19127 [Form] Add exception to FormRenderer about non-unique block names (enumag)
 * bug #19118 [Process] Fix pipes cleaning on Windows (nicolas-grekas)
 * bug #19128 Avoid phpunit 5.4 warnings on getMock (2.7+) (iltar)
 * bug #19120 [FrameworkBundle] templating can be fully disabled (xabbuh)
 * bug #19114 [HttpKernel] Dont close the reponse stream in debug (nicolas-grekas)
 * bug #19101 [Session] fix PDO transaction aborted under PostgreSQL (Tobion)
 * bug #18501 [HttpFoundation] changed MERGE queries (hjkl)
 * bug #19081 [YAML] Fixed parsing problem with nested DateTime lists (jkphl, xabbuh)
 * bug #19062 [HttpFoundation] Fix UPSERT for PgSql >= 9.5 (nicolas-grekas)
 * bug #18548 [Form] minor fixes in DateTime transformers (HeahDude)
 * bug #18732 [PropertyAccess][DX] Enhance exception that say that some methods are missing if they don't (nykopol)

* 3.1.1 (2016-06-15)

 * bug #19048 [HttpFoundation] Use UPSERT for sessions stored in PgSql >= 9.5 (nicolas-grekas)
 * bug #19042 [Cache] Fix double fetch in ProxyAdapter (nicolas-grekas)
 * bug #19038 Fix feature detection for IE (Alsciende)
 * bug #18915 [DependencyInjection] force enabling the external XML entity loaders (xabbuh)
 * bug #19020 [Form] Fixed collapsed choice attributes (HeahDude)
 * bug #19028 [Yaml] properly count skipped comment lines (xabbuh)
 * bug #19009 [WebProfilerBundle] Fix invalid CSS style (romainneutron)
 * bug #17733 [Yaml] Fix wrong line number when comments are inserted in the middle of a block. (paradajozsef)
 * bug #18909 Fixed singular of committee (peterrehm)
 * bug #18911 Fixed singular of committee (peterrehm)
 * bug #18971 Do not inject web debug toolbar on attachments (peterrehm)
 * bug #18944 [Ldap] Fixed issue with legacy client initialisation (csarrazi)
 * bug #18974 Added missing APCU CacheProvider of doctrine/cache 1.6.x (Carsten Eilers)
 * bug #18954 [HttpKernel] Fix RequestDataCollector starting the session (romainneutron)
 * bug #18949 [Security] Fix DebugAccessDecisionManager when object is not a scalar (romainneutron)
 * bug #18959 [WebProfilerBundle] Fixed forwarded request data in templates (HeahDude)
 * bug #18943 [Ldap][Security] The Ldap user provider abstract service now has the correct number of arguments (csarrazi)
 * bug #18925 [Console] Fix BC break introduced by #18101 (dunglas)
 * bug #18908 [DependencyInjection] force enabling the external XML entity loaders (xabbuh)
 * bug #18893 [DependencyInjection] Skip deep reference check for 'service_container' (RobertMe)
 * bug #18812 Catch \Throwable (fprochazka)
 * bug #18821 [Form] Removed UTC specification with timestamp (francisbesset)
 * bug #18861 Fix for #18843 (inso)

* 3.1.0 (2016-05-30)

 * bug #18889 [Console] SymfonyStyle: Fix alignment/prefixing of multi-line comments (chalasr)
 * bug #18907 [Routing] Fix the annotation loader taking a class constant as a beginning of a class name (jakzal, nicolas-grekas)
 * bug #18899 [Yaml] search for colons in strings only (xabbuh)

* 3.1.0-RC1 (2016-05-26)

 * bug #18879 [Console] SymfonyStyle: Align multi-line/very-long-line blocks (chalasr)
 * bug #18881 [Security][Ldap] Fixed issue with password attribute containing an array of values. (csarrazi)
 * bug #18864 [Console][DX] Fixed ambiguous error message when using a duplicate option shortcut (peterrehm)
 * bug #18883 Fix js comment in profiler (linnaea)
 * feature #18867 [Cache] Drop counting hit/miss in ProxyAdapter (nicolas-grekas)
 * bug #18837 [Serializer] AbstractObjectNormalizer: be sure that isAllowedAttribute is called (dunglas)
 * bug #18838 [Serializer] ObjectNormalizer: add missing parameters (dunglas)
 * bug #18844 [Yaml] fix exception contexts (xabbuh)
 * bug #18840 [Yaml] properly handle unindented collections (xabbuh)
 * bug #18765 Catch \Throwable (fprochazka)
 * bug #18813 Catch \Throwable (fprochazka)
 * bug #18839 People - person singularization (Keeo)
 * bug #18820 [Config] Allow schemed paths in FileResource (nicolas-grekas)
 * bug #18828 [Yaml] chomp newlines only at the end of YAML documents (xabbuh)
 * bug #18814 Fixed server status command when port has been omitted (peterrehm)
 * bug #18759 [Validator] Support for DateTimeImmutable (krzysiekpiasecki)
 * bug #18799 Use levenshtein level for better Bundle matching (j0k3r)
 * bug #18413 [WebProfilerBundle] Fix CORS ajax security issues (romainneutron)

* 3.1.0-BETA1 (2016-05-13)

 * feature #18725 [Ldap] Added the possibility to configure all available Ldap options for connection (csarrazi)
 * feature #18715 [FrameworkBundle] Default to Apcu+Filesystem cache chain (nicolas-grekas)
 * feature #18184 [DomCrawler] Expose getter for uri (hason)
 * feature #18654 [Bridge/Doctrine] Use better exception in the register mapping pass (dantleech)
 * feature #18676 [HttpKernel] Add request method to logger messages (gnat42)
 * feature #18716 [Cache] Add nonce based cache invalidation to ApcuAdapter (nicolas-grekas)
 * feature #18762 [Translation] XLIFF Add `id` to meta data. (SpacePossum)
 * feature #18689 [Cache] Add support for Predis, RedisArray and RedisCluster (nicolas-grekas)
 * feature #18667 [FrameworkBundle] Semantic config for app/system/pool caches (tgalopin, nicolas-grekas)
 * feature #18685 move event listener method type hint docs to @Event annotations defau… (Haehnchen)
 * feature #18681 [Cache] Add DSN based Redis connection factory (nicolas-grekas)
 * feature #18656 Updating the error message of an AuthenticationEntryPointInterface (weaverryan)
 * feature #18069 [DoctrineBridge] deprecate `MergeDoctrineCollectionListener::onBind()` (HeahDude)
 * feature #18492 [LDAP] Check whether an entry attribute exists (hiddewie)
 * feature #18359 [Form] [DoctrineBridge] optimized LazyChoiceList and DoctrineChoiceLoader (HeahDude)
 * feature #18357 [Form] Let `TextType` implement `DataTransformerInterface` (HeahDude)
 * feature #18631 [FrameworkBundle] Add optional logger to cache pools (nicolas-grekas)
 * feature #18597 [Cache] Add CacheItem::validateKey utility method (nicolas-grekas)
 * feature #17660 	[Serializer] Integrate the PropertyInfo Component (recursive denormalization and hardening) (mihai-stancu, dunglas)
 * feature #18561 [FrameworkBundle] Fallback to default cache system in production for serializer (tgalopin)
 * feature #18567 [FrameworkBundle][Serializer] Fix APC cache service name (tgalopin)
 * feature #17959 [Serializer] Harden the ObjectNormalizer (dunglas)
 * feature #18547 DX: better error message if factory class is empty (dbu)
 * feature #18020 fix #17993 - Deprecated callable strings (hamza)
 * feature #18487 [Cache] Add DoctrineProvider, for using PSR-6 pools in Doctrine Cache (nicolas-grekas)
 * feature #18544 [FrameworkBundle] Fallback to default cache system in production for validation (tgalopin)
 * feature #18416 [FrameworkBundle] Calls support for debug:container (JhonnyL)
 * feature #18513 [Process] Turn getIterator() args to flags & add ITER_SKIP_OUT/ERR modes (nicolas-grekas)
 * feature #18371 [FrameworkBundle] integrate the Cache component (xabbuh, nicolas-grekas)
 * feature #18440 Add the kernel.controller_arguments event (stof)
 * feature #18308 Added an ArgumentResolver with clean extension point (iltar, HeahDude)
 * feature #18414 [Process] Implement IteratorAggregate to stream output (nicolas-grekas)
 * feature #18144 [DI] Only rebuild autowiring cache when actually needed (weaverryan)
 * feature #18386 [Process] Add InputStream to seamlessly feed running processes (nicolas-grekas)
 * feature #18167 [DependencyInjection] Fix a limitation of the PhpDumper (Ener-Getick)
 * feature #18387 [DX] [LDAP] Added default service name for the Security component's Ldap providers (csarrazi)
 * feature #18290 [Translation] deprecate the backup feature (xabbuh)
 * feature #18036 [Serializer] XmlEncoder: Make load flags configurable (dunglas)
 * feature #17589  [WebProfilerBundle] [DX] Feature allow forward and redirection detection in wdt (HeahDude)
 * feature #18260 Add Inflector component (from StringUtil of PropertyAccess) (teohhanhui)
 * feature #18356 [FrameworkBundle] Deprecated form types as services (HeahDude)
 * feature #17458 Add strict image validation (Koc)
 * feature #18350 [Process] Accept Traversable input (nicolas-grekas)
 * feature #18135 [Security] Deprecate onAuthenticationSuccess() (weaverryan)
 * feature #18294 [Yaml] dump non UTF-8 encoded strings as binary data (xabbuh)
 * feature #18215 [Cache] Add a Chain adapter (dunglas, nicolas-grekas)
 * feature #18242 [FrameworkBundle][TwigBundle] Make EngineInterface autowirable (dunglas)
 * feature #18197 Make Request::isFromTrustedProxy() public. (Peter Bex)
 * feature #18211 [Security] Use auth trust resolver to determine anonymous in ContextListener (WouterJ)
 * feature #18232 [Bridge\PhpUnit] Add "disabled" mode to SYMFONY_DEPRECATIONS_HELPER (nicolas-grekas)
 * feature #18181 [PhpUnitBridge] Mock DNS functions (nicolas-grekas)
 * feature #18176 [Cache] Restrict flushes to namespace scopes (nicolas-grekas)
 * feature #18172 [Cache] Redis adapter (gcds, nicolas-grekas)
 * feature #18101 [Console] Allow to register commands privately (Ener-Getick)
 * feature #18143 [DomCrawler] Exposed getter for baseHref (AAstakhov)
 * feature #18034 [FrameworkBundle] Deprecate absolute template paths (jakzal)
 * feature #18105 [HttpFoundation] Add support for sending raw cookies in the response (jakzal)
 * feature #17255 [Console] ApplicationTester - test stdout and stderr (SpacePossum)
 * feature #18024 [Cache] Add namespace handling to all adapters (nicolas-grekas)
 * feature #17734 [Cache] Count cache hits/misses in ProxyAdapter (nicolas-grekas)
 * feature #17887 Show more information in the security profiler (javiereguiluz)
 * feature #17642 [FrameworkBundle] [DX] Add `Controller::json` method to make it easy to send json (mcfedr)
 * feature #17484 [FrameworkBundle][DX] Add Levenshtein suggesters to AbstractConfigCommand (kix)
 * feature #17690 [FrameworkBundle] Use canBeEnabled() instead of canBeUnset() for consistency (Ener-Getick)
 * feature #17714 Adding new TargetPathTrait to get/set the authentication "target_path" (weaverryan)
 * feature #17852 Improved the logger panel when the log context is very long (javiereguiluz)
 * feature #17761 [Console] Add non-auto column width functionality (akeeman)
 * feature #17943 [Yaml] option to dump multi line strings as scalar blocks (xabbuh)
 * feature #17553 [Validator] Added a format option to the DateTime constraint. (dosten)
 * feature #17728 [Yaml] add option to dump objects as maps (xabbuh)
 * feature #17863 [Yaml] add support for parsing the !!binary tag (xabbuh)
 * feature #17738 [PropertyAccess] Throw an InvalidArgumentException when the type do not match (dunglas)
 * feature #17531 [PropertyInfo] Use last version of reflection docblock (joelwurtz)
 * feature #17782 Support autowiring for Doctrine\Common\Annotations\Reader (maryo)
 * feature #17603 [Serializer] Add a normalizer that support JsonSerializable objects (mcfedr)
 * feature #17630 [FrameworkBundle] Register the DateTimeNormalizer (dunglas)
 * feature #17631 [FrameworkBundle] Register the DataUriNormalizer (dunglas)
 * feature #17545 [Serializer] Add normalizer / denormalizer awarness (joelwurtz)
 * feature #17877 [DependencyInjection] Improving autowiring error messages (weaverryan)
 * feature #17732 [DEPRECATION] : deprecated support for Traversable in method ResizeFormListener::PreSubmit (ybensacq)
 * feature #17721 [Cache] Add FilesystemAdapter (nicolas-grekas)
 * feature #17836 [Yaml] support to parse and dump DateTime objects (xabbuh)
 * feature #17809 [Yaml] deprecate starting plain scalars with  characters (xabbuh)
 * feature #17817 [Ldap] Add write support for the Ldap component (csarrazi)
 * feature #17560 [Ldap] Improving the LDAP component (csarrazi)
 * feature #17726 [FrameworkBundle] Improve debug:container command (voronkovich)
 * feature #17743 [Yaml] dumper flag for enabling exceptions on invalid type (xabbuh)
 * feature #17746 [Yaml] deprecate the Dumper::setIndentation() method (xabbuh)
 * feature #17730 [Yaml] introduce flags to customize the parser behavior (xabbuh)
 * feature #17125 Webprofiler add status code to search form (oktapodia)
 * feature #17705 [TwigBridge] deprecate the boolean object support trigger (xabbuh)
 * feature #17578 [Yaml] dump customization option with dumper flags (xabbuh)
 * feature #17585  [DomCrawler] Abstract URI logic and crawl images (valeriangalliat)
 * feature #17654 [Cache] Don't clone, serialize (nicolas-grekas)
 * feature #16947 [FrameworkBundle] PropertyInfo: register the SerializerExtractor (dunglas)
 * feature #17611 [HttpKernel] Deprecate passing objects as URI attributes to the ESI and SSI renderers (jakzal)
 * feature #14288 [Console] Add getters for Application::$autoExit and $catchExceptions (VasekPurchart)
 * feature #17504 [Console] Show code when an exception is thrown (maidmaid)
 * feature #17540 [WebProfilerBundle] Add HTTP return code in the Ajax request list table (kucharovic)
 * feature #17446 [Serializer] Add PSR-6 adapter (dunglas)
 * feature #16917 [PropertyInfo] Cache support (dunglas)
 * feature #17532 [Asset] Version as service (ewgRa)
 * feature #17440 [Validator] Add a PSR-6 adapter (dunglas)
 * feature #17113 [Serializer] Add a MaxDepth option (dunglas)
 * feature #17530 [Cache] Handle and log errors properly (nicolas-grekas)
 * feature #17522 [Cache] Use generator in ArrayAdapter (gcds)
 * feature #16164 [Serializer] Add a data: URI normalizer (dunglas)
 * feature #15279 Added {{ value }} message placeholder to UniqueEntityValidator (jperovic)
 * feature #16652 [console] Add truncate method to FormatterHelper (mheki)
 * feature #17438 [Cache] Allow and use generators in AbstractAdapter (nicolas-grekas)
 * feature #17111 [HttpKernel] added a setter for the headers property in the HttpException (smatyas)
 * feature #17132 [DependencyInjection] Properly ignore invalid reference arguments in collection arguments (ogizanagi)
 * feature #17427 [Process] Allow a callback whenever the output is disabled (romainneutron)
 * feature #17327 Added support links to exception and toolbar (peterrehm)
 * feature #16909 Allows access to payload in callback validator (conradkleinespel)
 * feature #17402 [Profiler] make it possible to omit the link var (xabbuh)
 * feature #17411 [Serializer] Add a new DateTime normalizer (dunglas)
 * feature #17462 [Yaml] deprecate parsing the !!php/object tag (xabbuh)
 * feature #17408 [Cache] Symfony PSR-6 implementation (nicolas-grekas)
 * feature #17323 [DependencyInjection] Deprecate unsupported attributes/elements for alias (Ener-Getick)
 * feature #17305 [VarDumper] Add flags to allow fine tuning dumps representation (nicolas-grekas)
 * feature #17318 [HttpFoundation] Allow to get all the mime types associated to a format in the Request (Ener-Getick)
 * feature #17133 [DependencyInjection] Make YamlFileLoader raise a deprecation notice if a service definition contains unsupported keywords. (hhamon)
 * feature #17191 [Serializer] Move the normalization logic in an abstract class (dunglas)
 * feature #16994 [Form] Deprecate the "choices_as_values" option of ChoiceType (nicolas-grekas)
