packagist symfony/symfony v8.1.0-BETA1

2 hours ago

Changelog (v8.0.10...v8.1.0-BETA1)

  • data #64149 Release v8.1.0-BETA1
  • data #64145 Release v8.0.10
  • feature #63751 [DependencyInjection][HttpKernel] Add support for resetting non-shared services (@Pechynho)
  • feature #63689 [Routing] Allow collection prefixes to disable trailing slash on root (@vvaswani)
  • feature #62127 [RateLimiter] Add calendar-aligned mode to FixedWindowLimiter (@Crovitche-1623)
  • bug #64128 [Messenger] Fix "--fetch-size" option rejecting valid values (@xeno-suter)
  • feature #64118 [Security] Revert "Add per-username login rate-limit to prevent brute-force attacks" (@wouterj)
  • bug #63976 [FrameworkBundle] Remove console service definitions already declared by ConsoleBundle (@Jean-Beru)
  • feature #64094 [Messenger] Deprecate StopWorkerOnTimeLimitListener in favor of time_limit worker option (@Toflar)
  • feature #64104 [Security] Add per-username login rate-limit to prevent brute-force attacks (@ayyoub-afwallah)
  • feature #63862 [Console] Use ECH sequence for block padding (@Amoifr)
  • feature #64087 [HttpKernel][VarDumper][WebProfilerBundle] Forward CSP nonce to dump() instead of disabling CSP (@Amoifr)
  • feature #64079 [ErrorHandler] Trigger @method deprecation notices for abstract classes (@lacatoire)
  • feature #46654 [Serializer] Add COLLECT_EXTRA_ATTRIBUTES_ERRORS and full deserialization path (@NorthBlue333)
  • feature #62112 [Console] Add support for OSC 9;4 escape sequence for progress reporting (@canvural)
  • feature #52173 [Serializer] Add AbstractObjectNormalizer::ENABLE_TYPE_CONVERSION for scalar type transformation (@Jeroeny)
  • feature #60008 [HttpFoundation] Add SessionHasFlashMessage test constraint (@Pierstoval)
  • feature #63810 [VarDumper] Dump class-strings as class stubs with source location and static properties (@lyrixx)
  • feature #63929 [TwigBundle] Add twig.safe_class resource tag to register safe classes for the escaper (@GromNaN)
  • feature #62801 [Notifier][Prelude] Add bridge (@zairigimad)
  • feature #63727 [Form] Use translation_domain for expanded ChoiceType placeholder (@eyupcanakman)
  • feature #63762 [VarDumper] Add CSP nonce support to HtmlDumper (@Amoifr)
  • bug #63789 [ObjectMapper] Fix #[Map] attribute breaking auto-mapping of other properties (@Amoifr)
  • feature #63809 [Workflow] Add support for dumping listeners in Graphviz diagrams (@lyrixx)
  • feature #63879 [JsonStreamer] Add DateTimeZone value object support (@mtarld)
  • feature #63905 [FrameworkBundle] Add --sort option to debug:router command (Michael Thieulin)
  • feature #63907 [RateLimiter] Add #[RateLimit] attribute to rate limit controllers declaratively (@ayyoub-afwallah)
  • feature #63925 [MonologBridge] Add $subjectMaxLength option to MailerHandler (@Amoifr)
  • feature #63945 [Validator] Make constraint validators reentrant instead of being stateful (@stof)
  • feature #64055 [Runtime] Add FRANKENPHP_RESET_KERNEL to reset the kernel between requests (@nicolas-grekas)
  • feature #63988 [DependencyInjection] Support autowiring env vars as closures or Stringable when using #[Autowire(env: 'FOO')] (@nicolas-grekas)
  • feature #64070 [Messenger] Release deduplication lock on definitive failure (@ousamabenyounes)
  • feature #63778 [Tui] Add the component (@fabpot)
  • feature #64049 [VarExporter] Deprecate Hydrator and Instantiator classes (@nicolas-grekas)
  • feature #64009 Improve phpdoc types (@stof)
  • feature #63910 [DependencyInjection] Allow inline Definition as factory and configurator (@GromNaN)
  • bug #63962 [DependencyInjection] Fix empty bundle cache when container is rebuilt (@HypeMC)
  • feature #63943 [WebProfilerBundle] Improve toolbar accessibility for screen reader (@Nitram1123)
  • feature #63912 [JsonStreamer] Improve error message when unable to encode (@GaryPEGEOT)
  • bug #63921 [DependencyInjection] Fix bundles cache freshness check (@HypeMC)
  • feature #63695 [VarExporter] Make DeepCloner::__serialize() return a pure array and add toArray()/fromArray() (@nicolas-grekas)
  • bug #63913 [ErrorHandler] Fix http_response_code() warning on PHP 8.5 for max execution time errors (@ruudk)
  • feature #63880 [DependencyInjection] Add #[RequiredBundle], ServicesBundle and ConsoleBundle (@nicolas-grekas)
  • bug #63765 [VarExporter] Fix serialization of objects with __serialize/__unserialize (@Amoifr)
  • bug #63895 [HttpKernel] Fix cache warmers running on every kernel boot instead of only on compilation (@nicolas-grekas)
  • feature #63877 [DependencyInjection] Add AddBehaviorDescribingTagsPass (@nicolas-grekas)
  • feature #63875 [EventDispatcher] Add hot-path and no-preload support to AddEventAliasesPass (@nicolas-grekas)
  • bug #63863 [Console] Allow nullable #[Autowire] service references in command arguments (@ruudk)
  • feature #63710 [DependencyInjection] Add Kernel and Bundle infrastructure for HTTP-less DI-powered apps (@nicolas-grekas)
  • feature #63771 [Security] Add enforce_key_usage_verification option to OIDC discovery (@ruudk)
  • feature #60334 [Twig] Add daisyUI form layout (@Oviglo)
  • feature #63742 [JsonStreamer] Add DateInterval value object support (@mtarld)
  • feature #63745 [FrameworkBundle][HttpKernel] Deprecate Bundle::registerCommands() (@derrabus)
  • feature #63735 [JsonStreamer] Support date time timezone (@mtarld)
  • feature #63714 [Console] Add validation constraints support to #[MapInput] (@chalasr)
  • bug #63704 [VarExporter] Fix DeepCloner crash with objects using __serialize() (@pcescon)
  • feature #63709 [Console] Add optional PSR container parameter to Application (@nicolas-grekas)
  • feature #57598 [Console] Expose the original input arguments and options and to unparse options (@theofidry)
  • feature #52134 [HttpKernel] Add option to map empty data with MapQueryString and MapRequestPayload (@Jeroeny)
  • feature #41574 [Messenger] Add AmqpPriorityStamp for per-message priority on AMQP transport (Valentin Nazarov)
  • feature #63661 [Runtime] Add FrankenPhpWorkerResponseRunner for simple response return (@guillaume-sainthillier)
  • feature #63666 [Messenger] Allow configuring the service reset interval in the messenger:consume command via the --no-reset option (@nicolas-grekas)
  • feature #63665 [Messenger] Add MessageExecutionStrategyInterface and refactor Worker to use it (@nicolas-grekas)
  • feature #63662 [Messenger] Add a --fetch-size option to the messenger:consume command to control how many messages are fetched per iteration (@nicolas-grekas)
  • feature #63663 [Contracts] Add ContainerAwareInterface (@nicolas-grekas)
  • feature #63631 [Form] Add labels option to DateType to customize year/month/day sub-field labels (@guillaumeVDP)
  • feature #62823 [JsonPath] Add custom function support (@alexandre-daubois)
  • bug #63640 [VarExporter] Fix readonly deep-cloning and Instantiator cache priming (@nicolas-grekas)
  • feature #63590 [DependencyInjection] Add support for using service stacks as decorators (@nicolas-grekas)
  • feature #63595 [ObjectMapper] Add IsNotNull built-in condition (@Nayte91)
  • feature #63612 [VarExporter] Add DeepCloner for COW-friendly deep cloning (@nicolas-grekas)
  • feature #51379 [HttpKernel] Adding new #[MapRequestHeader] attribute and resolver (@StevenRenaux)
  • feature #63585 [Security] Deprecate erase_credentials config, container parameter and AuthenticatorManager constructor argument (@guillaumeVDP)
  • feature #62029 [Mailer][SES] Allow configuring port and tls options (@adars)
  • feature #63615 [Uid] Pass invalid UID value to InvalidArgumentException for better debug (@rela589n)
  • feature #63339 [JsonStreamer] Handle value objects (@mtarld)
  • feature #63383 [ObjectMapper] Allow class FQDN arrays as TargetClass and SourceClass param (@rrajkomar)
  • feature #63520 [FrameworkBundle] Allow configuring Webhook's header names and signing algo (@lacatoire)
  • feature #63593 [Uid] Add Uuid47Transformer support for UUIDv7/v4 conversion (@nicolas-grekas)
  • feature #63528 [TypeInfo] Resolve tentative return types (@valtzu)
  • feature #63546 [Console] Add outline-style block methods to SymfonyStyle (@guillaumeVDP)
  • feature #63581 [FrameworkBundle][Messenger] Deprecate "senders" nesting level in routing config (@W0rma)
  • feature #63441 [HttpClient] Default CachingHttpClient's $maxTtl to 86400s to prevent eternal cache items (@Lctrs, @nicolas-grekas)
  • bug #63597 [FrameworkBundle] Fix wiring of "debug.console.argument_resolver" (@nicolas-grekas)
  • feature #63541 [HttpFoundation] Deprecate setting public properties of Request and Response objects directly (@nicolas-grekas)
  • feature #63552 [Runtime] Add SymfonyRuntime::resolveType() for customizing how types are resolved in extending runtimes (@Kingdutch)
  • feature #63481 [ErrorHandler] Allow namespace remapping in DebugClassLoader to relax the "same vendor" constraint (@mpdude)
  • feature #63524 [Translation][Crowdin] Replace deprecated Upload Translations method with Import Translations (@bhdnb)
  • feature #63505 [FrameworkBundle] Deprecate terminate_on_cache_hit http_cache option (@Mynyx)
  • feature #63538 [Console] Sort suggested commands alphabetically (@javiereguiluz)
  • feature #63537 [Console] Replace executeCommand() by runCommand() when testing commands (@javiereguiluz)
  • feature #45553 [Translation] Extract locale fallback computation into a dedicated class (@mpdude)
  • feature #63433 [HttpClient] Add GuzzleHttpHandler that allows using Symfony HttpClient as a Guzzle handler (@nicolas-grekas)
  • feature #63465 [Translation] Add support for XLIFF PGS (Plural, Gender, and Select Module) (@alexandre-daubois)
  • feature #62888 [Messenger] Route decode failures through failure handling (@nicolas-grekas)
  • feature #63453 [Console][WebProfilerBundle] Trace argument value resolvers (@chalasr)
  • feature #52055 [Console] Deprecate combining incompatible mode flags in InputArgument and InputOption (@jnoordsij)
  • feature #52058 [Console] Allow setting a boolean default value on InputOption::VALUE_NEGATABLE options (@jnoordsij)
  • feature #45081 [Form] Add support for submitting forms with unchecked checkboxes in request handlers (@filiplikavcan)
  • feature #63443 [Console] Add customization to SymfonyStyle progressBar (@guillaumeVDP)
  • feature #63451 [PropertyInfo] Add support for property hook settable types (@alexandre-daubois)
  • feature #63455 [Translation] Add support for XLIFF versions 2.1 and 2.2 (@alexandre-daubois)
  • feature #63427 [WebLink] : Adding consts for as attributes (@ThomasLandauer)
  • feature #63426 [DependencyInjection] Deprecate named autowiring alias that don't use #[Target] (@nicolas-grekas)
  • feature #63429 [FrameworkBundle] Add MicroKernelTrait::$allowedEnvs to enforce allowed values for APP_ENV (@vincentpabst)
  • bug #63402 [Messenger] Improve PostgreSQL LISTEN/NOTIFY idle listener (@nicolas-grekas)
  • feature #61494 [Console] Allow to test the different streams at the same time with a new result-based testing API for CommandTester (@theofidry)
  • feature #63371 [Form] Add uid_format option to EntityType (@lacatoire)
  • feature #61462 [Messenger] Add ListableReceiverInterface support to RedisReceiver (@mudassaralichouhan)
  • feature #49388 [CssSelector] Add :has() support (@franckranaivo)
  • feature #63242 [FrameworkBundle] Add decoration stack to debug:container command (@ayyoub-afwallah)
  • bug #63385 [Contracts] skip property hook check on PHP < 8.4 (@xabbuh)
  • feature #63373 [HttpFoundation] Add BinaryFileResponse::shouldDeleteFileAfterSend() (@lacatoire)
  • feature #49518 Create #[Serialize] Attribute to serialize Controller Result (@Koc)
  • feature #63355 [Validator] Add ValidatorBuilder::enablePropertyMetadataExistenceCheck() (@lacatoire)
  • feature #63335 [TwigBridge] Add form_flow_* helper functions (@ker0x)
  • feature #63356 [FrameworkBundle] Configure custom marshaller per cache pool (@mvanduijker)
  • feature #63359 [Console] Allow passing Validator constraints to QuestionHelper and #[Ask] (@chalasr)
  • feature #54817 [HttpKernel] Support variadic with #[MapRequestPayload] (@DjordyKoert)
  • feature #63360 [Validator] Add clock-awareness to comparison and range validators (@lacatoire)
  • bug #63361 [FrameworkBundle] Properly set tag "lock.store" on flock and semaphore stores when they're used (@nicolas-grekas)
  • feature #63346 [Messenger][AMQP] Allow disabling default queue binding via queues option (@xammmue)
  • feature #52265 [HttpClient] Configure MockClient if mock_response_factory has been set on a scoped client (@tarjei)
  • feature #63293 [Console] Add image support to QuestionHelper and #[Ask] (@chalasr)
  • feature #47969 [Filesystem] rename Filesystem::mirror() option copy_on_windows to follow_symlinks (@maxbeckers)
  • feature #58871 [Form] BirthdayType has automatic attr when widget is single_text (@nicolas-grekas)
  • feature #59202 [Semaphore] Add a semaphore store based on locks (@alexander-schranz)
  • bug #63341 [WebProfilerBundle] fix compatibility with HttpKernel component < 8.1 (@xabbuh)
  • feature #47666 [Messenger] Move PostgreSQL LISTEN/NOTIFY blocking to worker idle event listener (@d-ph)
  • feature #62638 [DependencyInjection] Add tag decoration support (@mtarld)
  • feature #62320 [WebProfiler] add cURL copy/paste to request tab (@darkweak)
  • feature #63214 [Form] Allow ViolationMapperInterface injection for ValidatorExtension and FormTypeValidatorExtension (@ktherage)
  • feature #63304 [Contracts][DependencyInjection] Support hooked properties in ServiceMethodsSubscriberTrait (@derrabus)
  • feature #63277 [Messenger] Add idle timeout option to BatchHandlerTrait (@HypeMC)
  • feature #61458 [HttpKernel] Validate typed request attribute values before calling controllers (@mudassaralichouhan)
  • feature #63274 [HttpKernel] Add ControllerEvent::evaluate() et al. to help with evaluating expressions or closures in controller attributes (@nicolas-grekas)
  • feature #63032 [HttpKernel] Dispatch events named after controller attributes (@nicolas-grekas)
  • feature #63263 [FrameworkBundle][Lock] Scope semaphore and flock stores by project dir by default (@nicolas-grekas)
  • feature #61457 [FrameworkBundle] Deprecate container parameters router.request_context.scheme and .host (@stollr)
  • feature #63092 [HttpKernel] Expose controller metadata throughout the request lifecycle (@nicolas-grekas)
  • feature #58273 Allow usage of expressions for defining validation groups in #[MapRequestPayload] (@Brajk19)
  • feature #63201 [Security] Add this to #[IsGranted] subject expression vars when available (@valtzu)
  • bug #63256 [Validator] Fix Xml constraint behavior when ext-simplexml/ext-dom are not installed (@nicolas-grekas)
  • feature #63181 [DependencyInjection] Add target parameter to #[AsAlias] attribute (@ayyoub-afwallah)
  • feature #53559 [DomCrawler] Allow to add choices to single select (@norkunas)
  • feature #53998 [Security] Add retrieval of parent role names (@PierreCapel)
  • feature #62875 [Messenger] Add regex support for transport name matching in messenger:consume command (@santysisi)
  • feature #58732 [Finder] Allow finder to set the UNIX_PATH flag when recursing directories (Shane McKinley)
  • feature #62754 [ExpressionLanguage] Add support for null-safe syntax for array access (@cancan101)
  • feature #57365 [Validator] Add Xml constraint (@sfmok)
  • feature #58966 [Serializer] Trigger deprecation when could not parse date with default format (@alexndlm)
  • feature #57769 [Notifier] [Telegram] Add support for local API server (@ahmedghanem00)
  • feature #57653 [FrameworkBundle] Allow default action in HtmlSanitizer configuration (@Neirda24)
  • feature #54866 [Messenger] Added the ability to force RedisCluster (@adideas)
  • feature #63130 [Console] Add TesterTrait::assertCommandFailed and TesterTrait::assertCommandIsInvalid helpers (@darovic)
  • feature #63095 [FrameworkBundle] Add shortcut to run console command in tests (@Koc)
  • feature #63097 [Security] Decouple SameOriginCsrfTokenManager from event listening (@jprivet-dev)
  • feature #62599 [FrameworkBundle][JsonStreamer] Add default options (@mtarld)
  • feature #63061 [Messenger] Add support for custom type in Serializer Transport (@lyrixx)
  • feature #62885 [TypeInfo] Allow resolving object shapes (@bnf)
  • feature #63183 [Console] Allow object as default for input options and arguments (@chalasr)
  • feature #63157 [Security] Add support for enums in SignatureHasher::computeSignatureHash() (@nicolas-grekas)
  • feature #63024 [ObjectMapper] Add targetClass on MapCollection transform (@soyuka)
  • feature #63111 [DependencyInjection] Add argument exclude to ContainerConfigurator::import() (@tilaven)
  • feature #63135 [Scheduler] Add option to order recurring messages by next run date in debug command (@yoye)
  • feature #62434 [HttpKernel] deprecate the Extension class (@xabbuh)
  • feature #63059 [Semaphore] Add SemaphoreKeyNormalizer (@clegginabox)
  • feature #62909 [FrameworkBundle] Enable mocking non-shared services in tests (@HypeMC)
  • feature #62751 [HttpClient] Add support of the persistent cURL handles (@Koc)
  • feature #63121 [Translation][FramworkBundle] Allow using env vars in the list of enabled locales (@nicolas-grekas)
  • feature #62566 [FrameworkBundle] Add AbstractController::createFormFlowBuilder (@silasjoisten)
  • feature #62917 [Console] Add ArgumentResolver (@chalasr)
  • feature #63090 [HttpKernel] Return attributes as a flat list when using Controller[Arguments]Event::getAttributes(*) (@nicolas-grekas)
  • feature #63039 [PhpUnitBridge] add logic for checking for dist.xml, xml.dist and xml phpunit config (@gennadigennadigennadi)
  • feature #62941 [HttpKernel] Allow the Cache attribute to be applied conditionally (@HypeMC)
  • feature #62511 [ObjectMapper] merge nested properties when targeting the same class (@soyuka)
  • bug #63050 [ObjectMapper] improve test expectations (@soyuka)
  • feature #62835 [DependencyInjection] Allow environment variables with . in them (Max Baldanza)
  • bug #63028 [FrameworkBundle] Fix debug:container --tag=service.tag not showing priority of #[AsTaggedItem] (@ayyoub-afwallah)
  • feature #62957 [ObjectMapper] Throw exception for invalid transform callable (@calm329, @Asenar)
  • feature #62522 [FrameworkBundle][ObjectMapper] Add automatic class-map array based on map attributes (@Orkin)
  • feature #63023 [Uid] Add argument $format to Ulid::isValid() (@mms-uret)
  • feature #62854 [HttpClient] Add support for the max_connect_duration option (@alexandre-daubois)
  • feature #62940 [HttpKernel] Allow using closures with the Cache attribute (@HypeMC)
  • feature #62925 [HttpKernel] Deserialize UploadedFile for #[MapRequestPayload] (@Grafikart)
  • feature #62911 [Console] Add #[AskChoice] attribute for interactive choice questions (@yceruto)
  • feature #62939 [HttpKernel] Improve Cache attribute expression vars (@HypeMC)
  • feature #62850 [HttpKernel] Decouple controller attributes from source code and add ResponseEvent::getControllerAttributes() (@nicolas-grekas)
  • feature #62567 [Console] Add support for method-based commands (@yceruto)
  • feature #62538 [HttpKernel] Add support for SOURCE_DATE_EPOCH environment variable (Charles-Édouard Coste)
  • feature #62824 [DependencyInjection][SecurityBundle] Leverage #[AsTaggedItem] for voters (@ayyoub-afwallah)
  • feature #62339 [DependencyInjection] Deprecate default index/priority methods when defining tagged locators/iterators (@nicolas-grekas)
  • feature #62792 [DoctrineBridge] Deprecate RegisterMappingsPass::$aliasMap (@GromNaN)
  • feature #62800 [HttpKernel] Add support for bundles as compiler passes (@yceruto)
  • feature #62578 [Form] Add reset button in NavigatorFlowType (@Nayte91)
  • feature #62572 [Messenger] Use clock in DelayStamp and RedeliveryStamp instead of native time classes and methods (@bluemmb)
  • feature #62483 [DependencyInjection] Deprecate invalid options when using from_callable (@yoeunes)
  • feature #60372 [Mailer][SendGrid] add support for scheduling delivery via send_at API parameter (Mickael GOETZ, @MrMitch)
  • feature #62322 [Security] add missing Clear-Site-Data directives (@xabbuh)
  • feature #62390 [Mailer] Add support of ipPoolId for infobip mailer transport (@jbdelhommeau)

Don't miss a new symfony release

NewReleases is sending notifications on new releases.