Symfony 8.1.7 has just been released.

Read the Symfony upgrade guide to learn more about upgrading Symfony and use the SymfonyInsight upgrade reports to detect the code you will need to change in your project.

Tip

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.

Changelog Since Symfony 8.1.6

  • data #66075 Release v8.1.7
  • minor #66070 [Security] Explain why a remember-me login counts as interactive (@nicolas-grekas)
  • minor #66060 [Form] Add the BoundsType compare message translation unit (@seb-jean)
  • bug #66059 [Messenger] Keep the worker running when a keepalive fails (@nicolas-grekas)
  • bug #66057 [Messenger] Do not drop the Beanstalkd keepalive raised during a command (@nicolas-grekas)
  • bug #66056 [Messenger] Fix keepalive on the Amazon SQS transport (@nicolas-grekas)
  • bug #66049 [Messenger] Make PhpSerializer::getMessageType() agree with unserialize() (@nicolas-grekas)
  • bug #66048 [HttpFoundation] Remove the ambiguity that makes HeaderUtils::split() backtrack (@nicolas-grekas)
  • bug #66043 [TwigBridge] Compose form theme blocks with Twig's BlockChain when available (@fabpot)
  • bug #66041 [Form] Describe the options of a type extension registered on a type extension (@fabpot)
  • bug #66039 [Messenger][Amqp] Fix polling an empty queue counting as a message in flight (@nicolas-grekas)
  • bug #66037 [Translation] Resolve Phrase locales by their code instead of by their name (@nicolas-grekas)
  • bug #66031 [Console] Report a validation error instead of a TypeError on numeric arguments and options (@tanguychenier)
  • bug #66032 [Messenger] Drop the messages queued by a failed nested dispatch (@nicolas-grekas)
  • bug #66027 [AssetMapper][FrameworkBundle] Stop versioning the assets the mapper already resolved (@Amoifr)
  • bug #66023 [HttpFoundation] Fix IpUtils::anonymize() for non-canonical IPv4-mapped addresses (@GabeSilvaDev)
  • bug #66034 [Doctrine][Messenger] Do not lose the signals raised while fetching (@nicolas-grekas)
  • bug #65995 [String] Keep the case of a leading acronym in ByteString::camel() (@Amoifr)
  • bug #66003 [DoctrineBridge][FrameworkBundle][HttpKernel][TwigBundle] Escape percent signs in kernel path parameters (@nicolas-grekas)
  • bug #65986 [DependencyInjection] Deep-clone only the mutable parts of a prototype definition (@nicolas-grekas)
  • minor #65985 [Tui] Scroll overheight frames that grow instead of repainting the viewport (@fabpot)
  • bug #65976 [Console] Keep messages containing malformed UTF-8 when wrapping (@Meacue)
  • bug #65966 [Tui] Fix cursor jumps and partial rendering of overheight frames (@ineersa)
  • bug #65963 [Finder] Only treat a leading hash as a gitignore comment and strip trailing spaces only (@fabpot)
  • bug #65974 [FrameworkBundle] Fix the fatal when a cache pool cannot be cleared (@nicolas-grekas)
  • bug #65967 [Mailer] Reconnect when the server closed the transmission channel (@ousamabenyounes)
  • bug #65962 [Finder] Fix building the gitignore regex for files with many patterns (@fabpot)
  • bug #65961 [Finder] Fix ignoreVCSIgnored() when the search directory is reached through a symlink (@fabpot)
  • bug #65929 [Tui] Measure malformed UTF-8 instead of throwing (@fabpot)
  • minor #65964 [SecurityBundle] Make two tests survive the FrameworkBundle split of the branch above (@nicolas-grekas)
  • bug #65953 [Security] Do not follow redirects on the OIDC JWKS, OAuth2 introspection and CAS validation endpoints (@nicolas-grekas)
  • bug #65952 [Security] Do not follow redirects on the OIDC UserInfo endpoint (@nicolas-grekas)
  • minor #65926 [Form][Validator] Review Romanian (ro) translations (@robertiulianstoica)
  • bug #65923 [Messenger] Fix Beanstalkd keepalive when triggered during another command (@HypeMC)
  • bug #65922 [Messenger] Fix Beanstalkd reconnect mechanism (@HypeMC)
  • bug #65914 [HttpClient] Suppress warnings from failed DNS lookups (@Toflar)
  • bug #65913 [Security] Read the OAuth2 verified claims as booleans (@nicolas-grekas)
  • bug #65912 [Security] Read the OIDC verified claims as booleans (@nicolas-grekas)
  • bug #65904 [Messenger] Fix sub-second delays being ignored by the in-memory transport (@nicolas-grekas)
  • bug #65907 [Serializer] Don't reuse list items with deep_object_to_populate (@nicolas-grekas)
  • bug #65906 [FrameworkBundle] Fix configuring the S/MIME encrypter cipher (@nicolas-grekas)
  • bug #65893 [Cache] Don't close lock handles that are still in use when evicting a slot (@nicolas-grekas)
  • bug #65889 [FrameworkBundle] Fix HTTP client request assertion matching (@X-Coder264)
  • bug #65890 [FrameworkBundle] Fix referencing "lock.factory" when no default lock resource is configured (@nicolas-grekas)
  • bug #65888 [Validator] Drop unreachable territory keys from IBAN formats (@lazerg)
  • bug #65886 [FrameworkBundle] Fix container compilation when a JsonPath function is registered (@nicolas-grekas)
  • bug #65883 [FrameworkBundle] Fix the "framework.remote-event" config node being impossible to set (@nicolas-grekas)
  • bug #65881 [Security] Read the "active" member of an introspection response as a boolean (@Spomky)
  • bug #65870 [Security] Answer 401 instead of 500 when the introspection request fails (@Spomky)
  • minor #65876 [Validator] Add missing Arabic translation for validation units (@EmanFateen)
  • bug #65867 [Cache] Add support for relay 0.50 (@nicolas-grekas)
  • minor #65863 [Console] Type the autocompleter callback as returning a list (@nicolas-grekas)
  • bug #65859 [Security] Reset the login rate limiter on successful login with a peekable limiter (@lazerg)
  • bug #65861 [Tui] Fix bottom viewport rendering after content shrinks (@fabpot)
  • minor #65860 [Console] Disambiguate the autocompleter callback return type (@SanderMuller)
  • minor #65854 [Validator] Review Hungarian translations (@1ed)
  • minor #65856 Review Catalan validator translations (@Victor-369)
  • bug #65855 [Console] Reject #[AsCommand] on both a class and its __invoke() method (@nicolas-grekas)
  • bug #65851 [Console] Make method-level #[AsCommand] names relative to the class-level one (@nicolas-grekas)
  • bug #65852 [Console] Fix signal handling of invokable commands registered through the container (@nicolas-grekas)
  • bug #65846 [String] Fix localeTitle() titlecasing only the first word when the locale has no transliterator (@nicolas-grekas)
  • bug #65843 [HtmlSanitizer] Drop relative URLs whose first path segment contains a colon instead of throwing (@nicolas-grekas)
  • bug #65844 [Mime] Reject header names containing non-printable or non-ASCII characters (@nicolas-grekas)
  • bug #65840 [Scheduler] Fix duplicated schedule message when multiple methods in a class use #[AsCronTask] (@lazerg)
  • bug #65837 [PropertyInfo] Do not prefer a method returning the declaring class as the property accessor (@lazerg)
  • minor #65836 [HttpFoundation] Fix hitting the PCRE size limit with many trusted host patterns (@nicolas-grekas)
  • bug #65835 [VarDumper] Fix dumping class names to the dump server (@lazerg)
  • minor #65832 [Validator] Complete Traditional Chinese translations (@HsukqiLee)
  • bug #65823 [String] Fix singularization of words ending in -ives (@dylanpulver)
  • bug #65822 [WebProfilerBundle] Fix a TypeError when the ajax toolbar panel is missing from the page (@lazerg)
  • bug #65818 [Console] Do not evaluate the command line in the zsh completion (@GromNaN, @nicolas-grekas)
  • minor #65815 [Console] Fix the bash completion of "--option=value" and of an aliased command (@GromNaN)
  • bug #65811 [Console] Fix the bash completion on macOS and cover more option modes (@GromNaN)
  • minor #65804 [Notifier] Fix typo in Bluesky transport exception message (@mdalikadar)
  • bug #65801 [Finder] Fix prune filters not applied to nested directories and with path excludes (@nicolas-grekas)
  • bug #65795 [JsonStreamer] Fix generator stream exhaustion on chunked file reading (@vlastv)
  • minor #65786 Review Italian validator translations (@JJordan0C)
  • bug #65780 [Form] Accept UTC-equivalent timezones for date and time model data (@ousamabenyounes)
  • bug #65784 [Process] Use an absolute path for the cmd.exe fallback on Windows (@nicolas-grekas)
  • bug #65783 [Console] Test the shell completion scripts and fix the escaping (@GromNaN)
  • minor #65782 [Validator] Review Bosnian (bs) translations (@ivanoviczeljko)
  • bug #65779 [Messenger] Fix a crash when a Redis stream entry is not a JSON object (@nicolas-grekas)
  • bug #65778 [Mime] Never emit a raw control character in a header (@Spomky)
  • bug #65776 [Notifier][Vonage] Verify the payload_hash claim of signed webhooks (@nicolas-grekas)
  • bug #65775 [HttpFoundation] Match paths with the DOTALL modifier (@nicolas-grekas)
  • bug #65774 [Mailer][Notifier] Verify webhook signatures before parsing the payload (@nicolas-grekas)
  • bug #65773 [Mailer][Sendgrid] Verify the webhook signature before parsing the payload (@nicolas-grekas)
  • bug #65777 [Mime] Do not treat an "@" inside the domain as the addr-spec separator (@Spomky)
  • bug #65772 [Webhook] Reject a malformed request body with a 406 instead of a 500 (@nicolas-grekas)
  • bug #65769 [Mailer] Reject an empty secret in the Mailtrap, MailerSend and Sweego webhook parsers (@nicolas-grekas)
  • bug #65768 [Notifier] Reject an empty secret in the Twilio webhook parser (@nicolas-grekas)
  • bug #65763 [Mailer][Notifier] Reject an empty secret in the AhaSend, Mailchimp and Sweego webhook parsers (@nicolas-grekas)
  • minor #65766 [Mailer][Notifier] Mark webhook secrets as sensitive (@nicolas-grekas)
  • minor #65765 [Mailer] Mark the Sendgrid webhook secret as sensitive (@nicolas-grekas)
  • minor #65762 [FrameworkBundle] Describe the webhook routing secret in the config reference (@nicolas-grekas)
  • minor #65756 [Form] Stop capturing Options in the upload_max_size_message closure (@bendavies)
Published in #Releases