|
| 1 | +CHANGELOG for 6.4.x |
| 2 | +=================== |
| 3 | + |
| 4 | +This changelog references the relevant changes (bug and security fixes) done |
| 5 | +in 6.4 minor versions. |
| 6 | + |
| 7 | +To get the diff for a specific change, go to https://github.com/symfony/symfony/commit/XXX where XXX is the change hash |
| 8 | +To get the diff between two versions, go to https://github.com/symfony/symfony/compare/v6.4.0...v6.4.1 |
| 9 | + |
| 10 | +* 6.4.0-BETA1 (2023-10-21) |
| 11 | + |
| 12 | + * feature #51847 [AssetMapper] Allowing for files to be written to some non-local location (weaverryan) |
| 13 | + * feature #52079 [HttpKernel] Add parameters `kernel.runtime_mode` and `kernel.runtime_mode.*`, all set from env var `APP_RUNTIME_MODE` (nicolas-grekas) |
| 14 | + * feature #51348 [FrameworkBundle][Validator] Allow implementing validation groups provider outside DTOs (Yonel Ceruto) |
| 15 | + * feature #51577 [Notifier][Novu] Implement overrides (wouter-toppy) |
| 16 | + * feature #51211 [Workflow] List place and transition listeners in profiler (lyrixx) |
| 17 | + * feature #51220 [Workflow] Add a `TraceableWorkflow` (lyrixx) |
| 18 | + * feature #52120 [AssetMapper] Split ImportmapManager into 2 (weaverryan) |
| 19 | + * feature #51849 [AssetMapper] Warn of missing or incompat dependencies (weaverryan) |
| 20 | + * feature #52032 [FrameworkBundle][Routing][Translation][Workflow] Move some compiler passes from FrameworkBundle to components (fancyweb) |
| 21 | + * feature #52166 [HtmlSanitizer] Add support for sanitizing unlimited length of HTML document (lyrixx) |
| 22 | + * feature #48095 [Messenger] [Sqs] Add `AddFifoStamp` middleware (tyx) |
| 23 | + * feature #52160 [DoctrineBridge] Change argument `$lastUsed` of `DoctrineTokenProvider::updateToken()` to accept `DateTimeInterface` (nicolas-grekas) |
| 24 | + * feature #52140 [Translation] Add argument `$buildDir` to `DataCollectorTranslator::warmUp()` (nicolas-grekas) |
| 25 | + * feature #52047 [HttpFoundation][Runtime] Add $flush parameter to Response::send() (fancyweb) |
| 26 | + * feature #51470 [FrameworkBundle][Serializer] Deprecate annotations (alexandre-daubois) |
| 27 | + * feature #51483 [FrameworkBundle][Routing] Deprecate annotations (alexandre-daubois) |
| 28 | + * feature #47416 [Console][FrameworkBundle][HttpKernel][WebProfilerBundle] Enable profiling commands (HeahDude) |
| 29 | + * feature #50391 [FrameworkBundle][HttpKernel] Introduce `$buildDir` argument to `WarmableInterface::warmup` to warm read-only artefacts in `build_dir` (Okhoshi) |
| 30 | + * feature #52087 [Scheduler] Add `FailureEvent` (alli83) |
| 31 | + * feature #51828 [AssetMapper] Put importmap in polyfill so it can be hosted locally easily (weaverryan) |
| 32 | + * feature #52024 [AssetMapper] Add a "package specifier" to importmap in case import name != package+path (weaverryan) |
| 33 | + * feature #50734 [ErrorHandler] Improve fileLinkFormat handling (nlemoine) |
| 34 | + * feature #52002 [HttpFoundation] Cookies Having Independent Partitioned State (CHIPS) (fabricecw) |
| 35 | + * feature #51805 [Scheduler] pre_run and post_run events (alli83) |
| 36 | + * feature #51926 [Mime] Forbid messages that are generators to be used more than once (fabpot) |
| 37 | + * feature #50946 [Routing][SecurityBundle] Add `LogoutRouteLoader` (MatTheCat) |
| 38 | + * feature #52038 [Console] Dispatch `ConsoleTerminateEvent` when exiting on signal (HeahDude) |
| 39 | + * feature #49893 [Serializer] Add `XmlEncoder::CDATA_WRAPPING` context option (AndoniLarz) |
| 40 | + * feature #50877 [Finder] Add early directory prunning filter support (mvorisek) |
| 41 | + * feature #51829 [AssetMapper] Automatically preload CSS files if WebLink available (weaverryan) |
| 42 | + * feature #51011 [FrameworkBundle] Add parameters deprecations to the output of `debug:container` command (HeahDude) |
| 43 | + * feature #51888 [WebProfiler] Profiler improvements / extract Font from stylesheet (smnandre) |
| 44 | + * feature #51058 [FrameworkBundle] Add `--exclude` option to the `cache:pool:clear` command (MatTheCat) |
| 45 | + * feature #51845 [AssetMapper] Add outdated command (Maelan LE BORGNE) |
| 46 | + * feature #51976 [Workflow] Revert deprecation about Registry (lyrixx) |
| 47 | + * feature #50537 [Console] Add placeholders to ProgressBar for exact times (maxbeckers) |
| 48 | + * feature #51717 [Notifier] [Telegram] Extend options for `location`, `document`, `audio`, `video`, `venue`, `photo`, `animation`, `sticker` & `contact` (igrizzli) |
| 49 | + * feature #49044 [Messenger] Mention the transport which failed during the setup command (thePanz) |
| 50 | + * feature #51786 [AssetMapper] Always downloading vendor files (weaverryan) |
| 51 | + * feature #51832 [DependencyInjection] Add `#[AutowireIterator]` attribute and improve `#[AutowireLocator]` (nicolas-grekas, kbond) |
| 52 | + * feature #50934 [Form] Add `duplicate_preferred_choices` option to `ChoiceType` (arnaud-deabreu) |
| 53 | + * feature #51650 [AssetMapper] Add audit command (Jean-Beru) |
| 54 | + * feature #51800 [DoctrineBridge] Pass `Request` to `EntityValueResolver`'s expression (HypeMC) |
| 55 | + * feature #51848 [Messenger] Resend failed retries back to failure transport (ro0NL) |
| 56 | + * feature #51811 Add "dev" keyword to symfony/symfony package (nicolas-grekas) |
| 57 | + * feature #51276 [Notifier] Transport possible to have null (StaffNowa) |
| 58 | + * feature #50662 [FrameworkBundle] Add `HttpClientAssertionsTrait` which provide shortcuts to assert HTTP calls was triggered (welcoMattic) |
| 59 | + * feature #50392 Move UriSigner from HttpKernel to HttpFoundation package (alexander-schranz) |
| 60 | + * feature #51804 [Security] Make `impersonation_path()` argument mandatory and add `impersonation_url()` (alexandre-daubois) |
| 61 | + * feature #50127 [TwigBridge] Add `FormLayoutTestCase` class (ker0x) |
| 62 | + * feature #50030 Add new twig bridge function to generate impersonation path (PhilETaylor) |
| 63 | + * feature #50109 [FrameworkBundle] Add --show-aliases option to debug:router command (fancyweb) |
| 64 | + * feature #50141 Allow sending scheduled messages through the slack API (Insanfly) |
| 65 | + * feature #50321 [TwigBridge] Add `AppVariable::getEnabledLocales()` (jmsche) |
| 66 | + * feature #51676 [RateLimiter] Add SlidingWindowLimiter::reserve() (Jeroeny) |
| 67 | + * feature #51538 [HttpFoundation] Support root-level Generator in StreamedJsonResponse (Jeroeny) |
| 68 | + * feature #51653 [Messenger] Add WrappedExceptionsInterface for nested exceptions (Jeroeny) |
| 69 | + * feature #51690 [Mime] Add `TemplatedEmail::locale()` to set the locale for the email rendering (alexander-schranz) |
| 70 | + * feature #51525 [Messenger][Scheduler] Add AsCronTask & AsPeriodicTask attributes (valtzu) |
| 71 | + * feature #51795 [Scheduler] Make debug:scheduler output more useful (fabpot) |
| 72 | + * feature #51793 [FrameworkBundle] Change BrowserKitAssertionsTrait::getClient() to be protected (fabpot) |
| 73 | + * feature #44629 [FrameworkBundle] Allow BrowserKit relative URL redirect assert (julienfalque) |
| 74 | + * feature #51756 [Messenger] RejectRedeliveredMessageException should not be retried (nikophil) |
| 75 | + * feature #51779 [Serializer] Make `ProblemNormalizer` give details about Messenger’s `ValidationFailedException` (MatTheCat) |
| 76 | + * feature #51772 [WebProfilerBundle] Support `!` negation operator in url filter (SzymonKaminski) |
| 77 | + * feature #51729 [AssetMapper] Allow simple, relative paths in importmap.php (weaverryan) |
| 78 | + * feature #51697 [PropertyInfo] Make isWriteable() more consistent with isReadable() when checking snake_case properties (jbtronics) |
| 79 | + * feature #51543 [AssetMapper] Add support for CSS files in the importmap (weaverryan) |
| 80 | + * feature #51593 [Messenger] Add the `--all` option to the `messenger:failed:remove` command (alexandre-daubois) |
| 81 | + * feature #51542 [Scheduler] Trigger unique messages at runtime (Jeroeny) |
| 82 | + * feature #51415 [Clock] Add `DatePoint`: an immutable DateTime implementation with stricter error handling and return types (nicolas-grekas) |
| 83 | + * feature #51553 [Scheduler] Allow modifying the schedule at runtime and recalculate heap (Jeroeny) |
| 84 | + * feature #51712 Deprecate `Kernel::stripComments()` (alamirault) |
| 85 | + * feature #51687 [Messenger] Add support for multiple Redis Sentinel hosts (digilist) |
| 86 | + * feature #51153 [Translation] Add `--as-tree` option to `translation:pull` command (syffer) |
| 87 | + * feature #51601 [Mime] Allow to add some headers as a strings (Oipnet) |
| 88 | + * feature #51684 [Translation] Give current locale to `LocaleSwitcher::runWithLocale()`'s callback (alexander-schranz) |
| 89 | + * feature #51651 [Scheduler] Fix stateful scheduler (valtzu) |
| 90 | + * feature #51638 [FrameworkBundle] [Test] add token attributes in `KernelBrowser::loginUser()` (Valmonzo) |
| 91 | + * feature #51558 [HttpClient] Enable using EventSourceHttpClient::connect() for both GET and POST (wivaku) |
| 92 | + * feature #51476 [Serializer] Allow Context to target classes (mtarld) |
| 93 | + * feature #50438 [Validator] Add is_valid function to Expression constraint (verdet23, DEVizzent) |
| 94 | + * feature #51585 [Security] Add badge resolution to profiler (Jean-Beru) |
| 95 | + * feature #51523 [AssetMapper] Allow specifying packages to update with importmap:update (jmsche) |
| 96 | + * feature #50705 [Mailer][Webhook] Add Sendgrid webhook support (WoutervanderLoopNL) |
| 97 | + * feature #51450 [Mailer] [Smtp] Add DSN param `peer_fingerprint` for fingerprint verification (xdavidwu) |
| 98 | + * feature #51484 [Workflow] deprecate `GuardEvent::getContext` method (hhamon) |
| 99 | + * feature #51351 [AssetMapper] Add command to download missing downloaded packages (jmsche) |
| 100 | + * feature #51454 [Validator] Un-deprecate passing an annotation reader to AnnotationLoader (derrabus) |
| 101 | + * feature #51434 [Security] [Throttling] Hide username and client ip in logs (Spomky) |
| 102 | + * feature #51425 [FrameworkBundle][Validator] Deprecate annotation occurrences (alexandre-daubois) |
| 103 | + * feature #51392 [DependencyInjection] add `#[AutowireLocator]` attribute (kbond) |
| 104 | + * feature #51365 [Clock] Add $modifier argument to the now() helper (nicolas-grekas) |
| 105 | + * feature #51327 [FrameworkBundle] Add `AbstractController::renderBlock()` and `renderBlockView()` (nicolas-grekas) |
| 106 | + * feature #51357 [FrameworkBundle] Deprecate not setting some options (uid, validation) (Jean-Beru) |
| 107 | + * feature #51325 [FrameworkBundle] Deprecate not setting some options (Jean-Beru) |
| 108 | + * feature #51412 [Clock] Throw `DateMalformedStringException`/`DateInvalidTimeZoneException` when appropriate (nicolas-grekas) |
| 109 | + * feature #51368 [DomCrawler] Added argument `$default` to method `Crawler::attr()` (Rastishka) |
| 110 | + * feature #51315 [Notifier][Webhook] Add Vonage support (smnandre) |
| 111 | + * feature #51349 [Notifier] Add GoIP bridge (ahmedghanem00) |
| 112 | + * feature #51332 [SecurityBundle] Deprecate the `require_previous_session` config option (alamirault) |
| 113 | + * feature #51284 [FrameworkBundle][HttpKernel][MonologBridge] Revisit wiring of debug loggers (nicolas-grekas) |
| 114 | + * feature #50306 [DomCrawler][FrameworkBundle] Add `assertAnySelectorText*` (SVillette) |
| 115 | + * feature #51263 [Scheduler] Add --all to debug:schedule (fabpot) |
| 116 | + * feature #50939 [SecurityBundle] Add `$badges` argument to `Security::login` (MatTheCat) |
| 117 | + * feature #50951 [FrameworkBundle] Support APP_BUILD_DIR (ro0NL) |
| 118 | + * feature #51264 [RemoteEvent][Webhook] Add Brevo support (blaugueux) |
| 119 | + * feature #50502 [RemoteEvent][Webhook] Add Mailjet support (blaugueux) |
| 120 | + * feature #51250 Remove remaining experimental classes (fabpot) |
| 121 | + * feature #51249 [RemoteEvent] Mark component as non experimental (fabpot) |
| 122 | + * feature #51248 [Webhook] Mark component as non experimental (fabpot) |
| 123 | + * feature #51247 [AssetMapper] Mark component as non experimental (fabpot) |
| 124 | + * feature #51246 [Scheduler] Mark component as non experimental (fabpot) |
| 125 | + * feature #51245 [Scheduler] Only use toString if defined for message (fabpot) |
| 126 | + * feature #51244 [Scheduler] Add --date to schedule:debug (fabpot) |
| 127 | + * feature #51210 [Workflow] Add PHP attributes to register listeners and guards (lyrixx) |
| 128 | + * feature #48485 [Process] Introducing a new `PhpSubprocess` handler (Toflar) |
| 129 | + * feature #51215 [FrameworkBundle] Enable `json_decode_detailed_errors` in dev by default (ostrolucky) |
| 130 | + * feature #51004 [HttpKernel] Support backed enums in `#[MapQueryParameter]` (andersmateusz) |
| 131 | + * feature #51230 [Scheduler] add `ScheduledStamp` to `RedispatchMessage` (kbond) |
| 132 | + * feature #51218 [Workflow] Support multiline descriptions in PlantUML (valtzu) |
| 133 | + * feature #51073 [Intl] Add support for ISO 3166-1 numeric codes (benr77) |
| 134 | + * feature #51191 [Mime] Update mimetypes (fabpot) |
| 135 | + * feature #47422 [Process] Support using `Process::findExecutable()` independently of `open_basedir` (BlackbitDevs) |
| 136 | + * feature #48907 [Validator] Validate time without seconds (xepozz) |
| 137 | + * feature #51204 [Workflow] Add a profiler (lyrixx) |
| 138 | + * feature #47715 [Form] Removing self-closing slash from `<input>` (ThomasLandauer) |
| 139 | + * feature #50212 [FrameworkBundle][Serializer] Add TranslatableNormalizer (Jean-Beru) |
| 140 | + * feature #50767 [HttpKernel] RequestPayloadValueResolver Add support for custom http status code (zim32) |
| 141 | + * feature #51172 [Serializer] Add support for seld/jsonlint (ostrolucky) |
| 142 | + * feature #49231 [Translation] Phrase translation provider (wickedOne) |
| 143 | + * feature #50974 [Workflow] Add support for storing the marking in a property (lyrixx) |
| 144 | + * feature #51092 [Scheduler] make `ScheduledStamp` "send-able" (kbond) |
| 145 | + * feature #51197 [PsrHttpMessageBridge] Support `php-http/discovery` for auto-detecting PSR-17 factories (derrabus) |
| 146 | + * feature #48841 [BrowserKit] Add argument $serverParameters to click() and clickLink() (syl20b) |
| 147 | + * feature #49594 [Serializer] Groups annotation/attribute on class (Brajk19) |
| 148 | + * feature #50879 [Notifier] support local development for sns by adding sslmode option (Ferror) |
| 149 | + * feature #51152 [Scheduler] Add `AbstractTriggerDecorator` (kbond) |
| 150 | + * feature #49814 [Console][Messenger] add `RunCommandMessage` and `RunCommandMessageHandler` (kbond) |
| 151 | + * feature #50978 [Messenger] Allow accessing all options on a handler descriptor (ruudk) |
| 152 | + * feature #50911 [HttpKernel] Enhance exception if possible (lyrixx) |
| 153 | + * feature #50136 [Notifier] [SpotHit] Support `smslong` and `smslongnbr` API parameters (camillebaronnet) |
| 154 | + * feature #50907 [Validator] Update `Type` constraint, add `number`, `finite-float` and `finite-number` validations (guillaume-a) |
| 155 | + * feature #51130 [VarDumper] Dump uninitialized properties (nicolas-grekas) |
| 156 | + * feature #51144 [Templating] deprecate the component (kbond) |
| 157 | + * feature #51014 [Mailer] Add Scaleway bridge (MrMicky-FR) |
| 158 | + * feature #51167 [PsrHttpMessageBridge] Remove ArgumentValueResolverInterface from PsrServerRequestResolver (derrabus) |
| 159 | + * feature #51100 [PsrHttpMessageBridge] Import the bridge into the monorepo (fabpot, dunglas, KorvinSzanto, xabbuh, aimeos, ahundiak, Danielss89, rougin, csunolgomez, Jérôme Parmentier, mtibben, Nyholm, ajgarlag, uphlewis, samnela, grachevko, nicolas-grekas, tinyroy, danizord, Daniel Degasperi, rbaarsma, Ekman, 4rthem, derrabus, mleczakm, iluuu1994, Tobion, chalasr, lemon-juice, franmomu, cidosx, erikn69, AurelienPillevesse) |
| 160 | + * feature #49815 [HttpClient][Messenger] add `PingWebhookMessage` and `PingWebhookMessageHandler` (kbond) |
| 161 | + * feature #49813 [Messenger][Process] add `RunProcessMessage` and `RunProcessMessageHandler` (kbond) |
| 162 | + * feature #51148 [FrameworkBundle] Simplify marking store configuration (nicolas-grekas) |
| 163 | + * feature #51128 [SecurityBundle] Allow an array of `pattern` in firewall configuration (lyrixx, chalasr) |
| 164 | + * feature #119 Implement ValueResolverInterface (derrabus) |
| 165 | + * feature #117 Leverage `Request::getPayload()` to populate the parsed body of PSR-7 requests (AurelienPillevesse) |
| 166 | + * feature #50931 [Form] Support Translatable Enum (Seb33300) |
| 167 | + * feature #49358 [Routing] Deprecate annotations in favor of attributes (derrabus) |
| 168 | + * feature #50982 [Validator] Deprecate annotations in favor of attributes (derrabus) |
| 169 | + * feature #50983 [Serializer] Deprecate annotations in favor of attributes (derrabus) |
| 170 | + * feature #51043 [Form] Deprecate `FormEvent::setData()` for events that do not allow it (HeahDude) |
| 171 | + * feature #50888 [FrameworkBundle] Deprecate doctrine/annotations integration (derrabus) |
| 172 | + * feature #50997 [Messenger] Deprecate `StopWorkerOnSignalsListener` (HypeMC) |
| 173 | + * feature #50290 [Security] Make `PersistentToken` immutable and tell `TokenProviderInterface::updateToken()` implementations should accept `DateTimeInterface` (nicolas-grekas) |
| 174 | + * feature #50883 [TwigBundle] Allow omitting the `autoescape_service_method` option when `autoescape_service` is set to an invokable service id (nicolas-grekas) |
| 175 | + * feature #50718 [DependencyInjection] Improve reporting named autowiring aliases (nicolas-grekas) |
| 176 | + * feature #50295 [PropertyAccess] Auto-cast from/to DateTime/Immutable when appropriate (nicolas-grekas) |
| 177 | + * feature #50420 [Console] add support for catching `\Throwable` errors (lyrixx) |
| 178 | + * feature #50148 [Mailer] Add X-Infobip-Track header to be able to disable tracking (ndousson) |
| 179 | + * feature #50200 [Mailer] Adds `assertEmailSubjectContains` and `assertEmailSubjectNotContains` methods (johanadivare) |
| 180 | + * feature #50302 [Mailer] New Brevo mailer bridge (formerly Sendinblue) (PEtanguy) |
| 181 | + * feature #50296 [Notifier] Add Brevo bridge (formerly Sendinblue) (PEtanguy) |
| 182 | + * feature #50842 Add missing return types to magic methods (wouterj) |
| 183 | + * feature #50868 [SecurityBundle] Deprecate `Security::*` consts and other cleanups (nicolas-grekas) |
| 184 | + * feature #50770 [TwigBridge] Allow to change element for `form_help` block (seb-jean) |
| 185 | + * feature #50814 [HttpClient] Allow custom working directory in TestHttpServer (ro0NL) |
| 186 | + * feature #46426 [Form] deprecate using the date and time types with date objects with not-matching timezones (xabbuh) |
| 187 | + * feature #50791 [DependencyInjection] Add `defined` prefix for env var processor (GaryPEGEOT) |
| 188 | + * feature #50754 [HttpKernel] when configuring the container add services_{env} with php extension (helyakin) |
| 189 | + * feature #50425 [Validator] Allow single constraint to be passed to the `constraints` option of the `When` constraint (alexandre-daubois) |
| 190 | + * feature #50396 [Validator] Allow single integer for the `versions` option of the `Uuid` constraint (alexandre-daubois) |
| 191 | + * feature #50621 [FrameworkBundle][Workflow] Add metadata dumping support for `GraphvizDumper` (Louis-Proffit) |
| 192 | + * feature #50170 [Notifier] Added redlink notifier (plotkabytes) |
| 193 | + * feature #50615 [DependencyInjection] Deprecate `ContainerAwareInterface`, `ContainerAwareTrait` and `ContainerAwareLoader` (alexandre-daubois) |
| 194 | + * feature #50084 [Routing] Add FQCN and FQCN::method aliases when applicable (fancyweb) |
| 195 | + * feature #50691 [Console] Aligned multiline text in vertical table (jaytaph) |
| 196 | + * feature #50131 [Notifier] add Ntfy bridge (mikaelkael) |
| 197 | + * feature #50663 [Console] Add `SignalMap` to map signal value to its name (lyrixx) |
| 198 | + * feature #50414 [Notifier] Add Novu bridge (wouter-toppy) |
| 199 | + * feature #50240 [HttpClient] Add `max_retries` option to `RetryableHttpClient` (danielburger1337) |
| 200 | + * feature #50572 [Scheduler] Allow setting cron expression next run date timezone (danielburger1337) |
| 201 | + * feature #50579 [DoctrineBridge] Deprecate using the old DBAL logger system (derrabus) |
| 202 | + * feature #50335 [HttpKernel] Add optional `$className` param to `ControllerEvent::getAttributes()` (HypeMC) |
| 203 | + * feature #113 Bump psr/http-message version (erikn69) |
| 204 | + * feature #114 Drop support for Symfony 4 (derrabus) |
| 205 | + * feature #100 Allow Symfony 6 (chalasr) |
| 206 | + * feature #89 PSR HTTP message converters for controllers (derrabus) |
| 207 | + * feature #75 Remove deprecated code (fabpot) |
| 208 | + * feature #66 Add support for streamed Symfony request (Ekman) |
| 209 | + * feature #50 Add support for streamed response (danizord) |
| 210 | + * feature #62 bump to PHP 7.1 (nicolas-grekas) |
| 211 | + * feature #43 Create PSR-7 messages using PSR-17 factories (ajgarlag) |
| 212 | + * feature #45 Fixed broken build (Nyholm) |
| 213 | + * feature #1 Initial support (dunglas) |
| 214 | + |
0 commit comments