This changelog references the relevant changes (bug and security fixes) done in 7.2 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/v7.2.0...v7.2.1
-
7.2.0-BETA2 (2024-11-06)
-
bug #58776 [DependencyInjection][HttpClient][Routing] Reject URIs that contain invalid characters (nicolas-grekas)
-
bug #58772 [DoctrineBridge] Backport detection fix of Xml/Yaml driver in DoctrineExtension (MatTheCat)
-
bug #58706 [TwigBridge] use reproducible variable names in the default domain node visitor (xabbuh)
-
security #cve-2024-51736 [Process] Use PATH before CD to load the shell on Windows (nicolas-grekas)
-
security #cve-2024-50342 [HttpClient] Filter private IPs before connecting when Host == IP (nicolas-grekas)
-
security #cve-2024-50345 [HttpFoundation] Reject URIs that contain invalid characters (nicolas-grekas)
-
security #cve-2024-50340 [Runtime] Do not read from argv on non-CLI SAPIs (wouterj)
-
bug #58765 [VarDumper] fix detecting anonymous exception classes on Windows and PHP 7 (xabbuh)
-
bug #58757 [RateLimiter] Fix DateInterval normalization (danydev)
-
bug #58764 [Mime] Don't require passing the encoder name to
TextPart
(javiereguiluz) -
bug #58712 [HttpFoundation] Fix support for
\SplTempFileObject
inBinaryFileResponse
(elementaire) -
bug #58762 [WebProfilerBundle] re-add missing profiler shortcuts on profiler homepage (xabbuh)
-
bug #58754 [Security] Store original token in token storage when implicitly exiting impersonation (wouterj)
-
bug #58753 [Cache] Fix clear() when using Predis (nicolas-grekas)
-
bug #58713 [Config] Handle Phar absolute path in
FileLocator
(alexandre-daubois) -
bug #58728 [WebProfilerBundle] Re-add missing Profiler shortcuts on Profiler homepage (welcoMattic)
-
bug #58739 [WebProfilerBoundle] form data collector check passed and resolved options are defined (vltrof)
-
bug #58752 [Process] Fix escaping /X arguments on Windows (nicolas-grekas)
-
bug #58735 [Process] Return built-in cmd.exe commands directly in ExecutableFinder (Seldaek)
-
bug #58723 [Process] Properly deal with not-found executables on Windows (nicolas-grekas)
-
bug #58711 [Process] Fix handling empty path found in the PATH env var with ExecutableFinder (nicolas-grekas)
-
bug #58704 [HttpClient] fix for HttpClientDataCollector fails if proc_open is disabled via php.ini (ZaneCEO)
-
bug #58703 [TwigBridge] Use INTERNAL_VAR_NAME instead of getVarName (pan93412)
-
7.2.0-BETA1 (2024-10-27)
-
feature #58467 [PhpUnitBridge] support
ClockMock
andDnsMock
with PHPUnit 10+ (xabbuh) -
feature #58506 [FrameworkBundle] Add
--no-fill
option totranslation:extract
command (jawira) -
feature #58428 [Config] Add
StringNode
(raffaelecarelle) -
feature #58322 [Notifier] Add Sweego bridge (welcoMattic)
-
feature #58527 [Notifier] Add LINE Bot bridge (pan93412)
-
feature #58552 [Console][Messenger] Add
$seconds
tokeepalive()
methods (valtzu) -
feature #51041 [Form] Use
form.post_set_data
inResizeFormListener
(HeahDude) -
feature #58287 [WebProfilerBundle] Render the toolbar stylesheet (smnandre)
-
feature #58512 [Validator] Pass context to expressions used in
When
constraints (KoNekoD) -
feature #52503 [DoctrineBridge][Form] Introducing new
LazyChoiceLoader
class andchoice_lazy
option forChoiceType
(yceruto) -
feature #58109 [Lock] Add
NullStore
(xabbuh) -
feature #58490 [Config] Allow using
defaultNull()
onBooleanNodeDefinition
(alexandre-daubois) -
feature #58095 [Security] Implement stateless headers/cookies-based CSRF protection (nicolas-grekas)
-
feature #53508 [Console][Messenger] Asynchronously notify transports which messages are still being processed (HypeMC)
-
feature #57829 [FrameworkBundle] Finetune
AboutCommand
(JoppeDC) -
feature #58264 [Mailer] Support region in sendgrid bridge (MrYamous)
-
feature #50324 [Webhook] Add Mailchimp webhook (johanadivare)
-
feature #58361 [Mailer][Mime] Support unicode email addresses (arnt, OskarStark)
-
feature #53533 [Console] Add ability to schedule alarm signals and a
ConsoleAlarmEvent
(HypeMC) -
feature #54664 [DependencyInjection] Resolve container parameter used in index attribute of service tags (Marvin Feldmann)
-
feature #57576 [Console] Add finished indicator to
ProgressIndicator
(LauLaman) -
feature #58448 [TwigBridge] Update main.css email stylesheet to latest foundation-emails release (phasdev)
-
feature #58408 [Translation] Allow sort when extracting translation files (danut007ro)
-
feature #58427 [Notifier] [GatewayAPI] Add support for label parameter (Nico Hiort af Ornäs)
-
feature #58341 [ExpressionLanguage] Add support for logical
xor
operator (HypeMC) -
feature #58385 [String] Add the
AbstractString::kebab()
method (alexandre-daubois) -
feature #58403 [Mailer][Webhook] Mailtrap webhook support (kbond)
-
feature #58351 [Mailer] deprecate the TransportFactoryTestCase (xabbuh)
-
feature #58401 [Mailer][Webhook] Fix SendGrid Webhook parsing (kbond)
-
feature #58366 [HttpKernel] Improve accessibility (javiereguiluz)
-
feature #58352 [Translation] deprecate the ProviderFactoryTestCase (xabbuh)
-
feature #58248 [Webhook] Allow request parsers to return multiple
RemoteEvent
's (kbond) -
feature #58308 [Serializer] Deprecate
AdvancedNameConverterInterface
(mtarld) -
feature #58335 [Notifier] deprecate the TransportFactoryTestCase (xabbuh)
-
feature #57270 [Messenger] Allow to skip message in
FailedMessagesRetryCommand
(Thibaut Chieux) -
feature #58141 [AssetMapper] Search & filter assets in
debug:asset-mapper
command (smnandre) -
feature #58386 [WebProfilerBundle] Update the contents of the Config panel (javiereguiluz)
-
feature #58161 [FrameworkBundle][HttpKernel] Add support for
SYMFONY_TRUSTED_PROXIES
,SYMFONY_TRUSTED_HEADERS
,SYMFONY_TRUST_X_SENDFILE_TYPE_HEADER
andSYMFONY_TRUSTED_HOSTS
env vars (nicolas-grekas) -
feature #53632 [Console] Add silent verbosity suppressing all output, including errors (wouterj)
-
feature #56823 [Serializer] Introduce named serializers (HypeMC)
-
feature #57611 [DependencyInjection][FrameworkBundle] Introducing container non-empty parameters (yceruto)
-
feature #58249 [FrameworkBundle] Add ability to use existing service as lock/semaphore resource (HypeMC)
-
feature #58166 [Security][SecurityBundle] Allow passing attributes to passport via
Security::login()
(alexandre-daubois) -
feature #58205 [Translation] Added segment-attributes metadata for Xliff2 files to preserve the "state" attribute of translations (jbtronics)
-
feature #58228 [String] Add Spanish inflector with some rules (dennistobar)
-
feature #58252 [Mailer] add Mailtrap bridge (kbond)
-
feature #57805 [FrameworkBundle] Deprecate
session.sid_length
andsession.sid_bits_per_character
config options (alexandre-daubois) -
feature #58199 [FrameworkBundle] Add
--resolve-env-vars
option tolint:container
command (ostrolucky) -
feature #58244 [HttpFoundation] Deprecate more options in
NativeSessionStorage
(alexandre-daubois) -
feature #58246 [Serializer][Uid] Add the
Uuid::FORMAT_RFC_9562
andUidNormalizer::NORMALIZATION_FORMAT_RFC9562
constants (alexandre-daubois) -
feature #58258 [Process] Add Laravel Herd php detection path (mpociot)
-
feature #58182 make test case classes compatible with PHPUnit 10+ (xabbuh)
-
feature #58165 [FrameworkBundle] Remove default value for
gc_probability
config option (nicolas-grekas) -
feature #58154 [HttpFoundation] Add
PRIVATE_SUBNETS
as a shortcut for private IP address ranges toRequest::setTrustedProxies()
(nicolas-grekas) -
feature #58145 allow Twig 4 (xabbuh)
-
feature #58072 [Translation] [Loco] Ability to configure value of
status
query-variable (mathielen) -
feature #57793 [Serializer] Support subclasses of
DateTime
andDateTimeImmutable
(amcsi) -
feature #58042 [Ldap] Add support for sasl_bind and whoami LDAP operations (manu0401)
-
feature #58074 [Console][Process] Add
$verbosity
argument tomustRun
helper method (willrowe) -
feature #58129 [VarExporter] Allow reinitializing lazy objects with a new initializer (nicolas-grekas)
-
feature #57683 [Notifier] Support for desktop notifications via
jolicode/JoliNotif
(ahmedghanem00) -
feature #58035 [DependencyInjection] Add support for
key-type
inXmlFileLoader
(alexandre-daubois) -
feature #58047 [Webhook] Pass original request to
RequestParserInterface
(alexandre-daubois) -
feature #58052 [ExpressionLanguage] Add support for
<<
,>>
, and~
bitwise operators (alexandre-daubois) -
feature #58062 [Validator] Add $groups and $payload to Compound constructor (derrabus)
-
feature #58038 [HttpFoundation] Add optional
$v4Bytes
and$v6Bytes
parameters toIpUtils::anonymize()
(alexandre-daubois) -
feature #58060 [Serializer] Add SnakeCaseToCamelCaseNameConverter (dunglas)
-
feature #49547 [Validator] Add
CompoundConstraintTestCase
to ease testing Compound Constraints (alexandre-daubois) -
feature #57833 [VarDumper] Add support for virtual properties (alexandre-daubois)
-
feature #57960 [Form] Add support for the
calendar
option inDateType
(alexandre-daubois) -
feature #52951 [Messenger] Add previous to the exception output (ToshY)
-
feature #54179 [HttpClient] Add support for amphp/http-client v5 (nicolas-grekas)
-
feature #57577 [FrameworkBundle][HttpKernel] Let
RequestPayloadValueResolver
consider mapped argument type (unixslayer) -
feature #58001 [Scheduler] Add capability to skip missed periodic tasks, only the last schedule will be called (eltharin)
-
feature #57827 [Serializer][Translation] Deprecate passing a non-empty CSV escape char (alexandre-daubois)
-
feature #58007 [Security] Deprecate empty user identifier (ajgarlag)
-
feature #57431 [Mailer] Add Sweego bridge (welcoMattic)
-
feature #58028 [TwigBridge] Render a
block
via the#[Template]
attribute (smnandre) -
feature #58004 [DependencyInjection] Add
ContainerBuilder::registerChild()
shortcut method (HypeMC) -
feature #57881 [Webhook] decouple the Webhook component from the Serializer component (xabbuh)
-
feature #57804 [FrameworkBundle] enable detailed error messages by default when debug enabled (xabbuh)
-
feature #57777 [VarDumper] Add support for
FORCE_COLOR
environment variable (artshade) -
feature #57915 [Messenger] Allow setting retry delay by RecoverableExceptionInterface (valtzu)
-
feature #57927 [FrameworkBundle] Deprecate making
cache.app
adapter taggable (alexandre-daubois) -
feature #57935 [DoctrineBridge] Loosened CollectionToArrayTransformer::transform() to accept ReadableCollection (timdev)
-
feature #57940 [Uid] Add support for binary, base-32 and base-58 representations in
Uuid::isValid()
(alexandre-daubois) -
feature #57908 [Validator] Add
Week
constraint (alexandre-daubois) -
feature #57934 [DependencyInjection] Deprecate
!tagged
tag, use!tagged_iterator
instead (alexandre-daubois) -
feature #57903 [Mailer] Implement Postal mailer (jonasclaes)
-
feature #57938 [Validator] Add support for RFC4122 format in the
Ulid
constraint (alexandre-daubois) -
feature #57879 [AssetMapper] Truncate public digests to 8 characters (smnandre)
-
feature #57909 [HttpFoundation] Add
$requests
parameter toRequestStack
constructor (alexander-schranz) -
feature #57839 [Form] Deprecate VersionAwareTest trait (derrabus)
-
feature #57836 [Cache] Add optional ClockInterface to ArrayAdapter (jasiolpn)
-
feature #54593 [PhpUnitBridge] Add
ExpectUserDeprecationMessageTrait
(derrabus) -
feature #57525 [SecurityBundle] Improve profiler’s authenticators tab (MatTheCat)
-
feature #57618 [TypeInfo] Add
PhpDocAwareReflectionTypeResolver
(mtarld) -
feature #57702 [Cache] Stop defaulting to
igbinary
inDefaultMarshaller
(Martijn Croonen) -
feature #57773 [Security] pass the current token to the
checkPostAuth()
method of user checkers (xabbuh) -
feature #57797 [FrameworkBundle] terminate with non-zero exit code when a secret could not be read (xabbuh)
-
feature #57716 [Validator] Add the
WordCount
constraint (alexandre-daubois) -
feature #57694 [SecurityBundle] Update web-token/jwt-library version and adjust checker parameters (Spomky)
-
feature #57692 [SecurityBundle] Link to the profile the token was (de)authenticated (MatTheCat)
-
feature #57685 [ExpressionLanguage] Allow passing any iterable as
$providers
list (HypeMC) -
feature #57670 [FrameworkBundle] Add
exit
option tosecrets:decrypt-to-local
command (dciprian-petrisor) -
feature #57671 [Messenger] Let WrappedExceptionsInterface extend the native Throwable interface (xabbuh)
-
feature #57658 [Notifier] Remove the Gitter bridge (fabpot)
-
feature #57627 [Notifier] Add Sipgate bridge (Lukas Kaltenbach, sakul95)
-
feature #57243 [String] Add
TruncateMode
mode totruncate
methods (Korbeil) -
feature #57456 [Mailer] Add mailomat bridge (scuben)
-
feature #57399 [HtmlSanitizer] Add support for configuring the default action (Seldaek)
-
feature #57595 [Yaml] Deprecate duplicate mapping keys containing null (xabbuh)
-
feature #57507 [Messenger] Introduce
#[AsMessage]
attribute for message routing (pounard) -
feature #57518 Unify how --format is handled by commands (fabpot)
-
feature #57379 [DependencyInjection] Add
#[WhenNot]
attribute (alexandre-daubois) -
feature #54978 [ExpressionLanguage] Add comment support to expression language (valtzu)
-
feature #57438 [Validator] Add the
format
option to theUlid
constraint to allow accepting different ULID formats (alexandre-daubois) -
feature #57426 [Messenger] Add
--format
option to themessenger:stats
command (xvilo) -
feature #57369 [Security] Display authenticators in the profiler even if they are all skipped (MatTheCat)
-
feature #57425 [SecurityBundle] Improve profiler’s data (MatTheCat)
-
feature #57436 [Validator] Add
errorPath
to Unique constraint (norkunas) -
feature #57408 [FrameworkBundle] Simpler Kernel setup with
MicroKernelTrait
(yceruto) -
feature #57424 [Mailer] [Infobip] Add trackClicks, trackOpens and trackingUrl as supp… (ndousson)
-
feature #57380 [Validator] fix IBAN validator fails if IBAN contains non-breaking space (antten)
-
feature #53749 [Validator] Add
Yaml
constraint for validating YAML content (symfonyaml) -
feature #57313 [Uid] Make
AbstractUid
implementDs\Hashable
if available (jahudka) -
feature #52679 [Process]
ExecutableFinder::addSuffix()
has no effect (TravisCarden) -
feature #54879 BicValidator add strict mode to validate bics in strict mode (maxbeckers)
-
feature #54679 [TypeInfo] Proxies methods to non-nullable and fail gracefully (mtarld)
-
feature #54737 [Notifier] [Slack] Add button block element and
emoji
/verbatim
options to section block (cvergne) -
feature #54757 [ExpressionLanguage] Support non-existent names when followed by null coalescing (adamkiss)
-
feature #54747 [Notifier] Add Primotexto bridge (Samael tomas)
-
feature #54975 [Mime] Support custom encoders in mime parts (KDederichs)
-
feature #54894 [PropertyInfo] Adds static cache to
PhpStanExtractor
(mvhirsch) -
feature #57101 [Translation] Add
lint:translations
command (Kocal) -
feature #56985 [FrameworkBundle] Derivate
kernel.secret
from the decryption secret when its env var is not defined (nicolas-grekas) -
feature #57073 [AssetMapper][FrameworkBundle] Do not require
http_client
service (ruudk) -
feature #54678 [FrameworkBundle] Add support for setting
headers
withTemplateController
(HypeMC) -
feature #54756 [Notifier] [Bluesky] Allow to attach image (jdecool)
-
feature #54854 [Stopwatch] Add
ROOT
constant to make it easier to reference (hacfi) -
feature #54855 [Stopwatch] Add
getLastPeriod
method toStopwatchEvent
(hacfi) -
feature #56838 [Security] Deprecate argument $secret of RememberMeToken and RememberMeAuthenticator (nicolas-grekas)
-
feature #54881 [Validator] Make
PasswordStrengthValidator::estimateStrength()
public (yalit)