This week, Symfony 3.4.42, 4.4.10, 5.0.10 and 5.1.1 maintenance versions were released. Meanwhile, the upcoming Symfony 5.2 version added support for true colors in the Console, continued improving async features in HttpClient and started moving config from XML to PHP thanks to a massive community effort.
Symfony development highlights
This week, 126 pull requests were merged (80 in code and 46 in docs) and 67 issues were closed (58 in code and 9 in docs). Excluding merges, 53 authors made 6,361 additions and 2,947 deletions. See details for code and docs.
- e26d5f2: [Cache] fixed forward compatibility with Doctrine DBAL 3
- b1f19c4: [Form] rework form validator tests
- f87c993: [FrameworkBundle] fixed type annotation on ControllerTrait::addFlash()
- 54c9054: [HttpKernel] fixed regression where Store does not return response body correctly
- 1f83212: [Form] switched the context when validating nested forms
- 4d6a02a: updated the Welcome page to mention the debug mode
- 017af04: [FrameworkBundle] fixed XSD definition
- 9b132bc: [Mailer] fixed generator bug when creating multiple transports using Transport::fromDsn
- 5b719d1: [Mime] used fromString when creating a new Address
- f88570a: [Mailer] added the reply-to addresses to the API SES transport request
- c70241e: [Ldap] fixed refreshUser() ignoring extra_fields
- 7107080: [HttpClient] fixed offset computation for data chunks
- b1f2a14: [DependencyInjection] always resolve parameters in CheckTypeDeclarationsPass
- 51be09c: [FrameworkBundle] removed non-existing arg and param from serializer service config
- fd51aeb: [DependencyInjection] handled unresolved parameters pointing to environment variables in CheckTypeDeclarationsPass
- 72ca171: [Console] allowed cursor to be used even when STDIN is not defined
- 9760d37: [SecurityBundle] fixed the session listener registration under the new authentication manager
- fbc9f1c: [FrameworkBundle] removed reference to APP_SECRET in MicroKernelTrait
- 9e1a8f0: [HttpClient] improved monitoring of timeouts with AmpHttpClient
- 9760d37: [SecurityBundle] fixed the session listener registration under the new authentication manager
- 5cefcc2: [PhpUnitBridge] fixed ExpectDeprecationTrait::expectDeprecation() conflict
- 292be5f: [Lock] fixed reading locks from replica set secondary nodes
- 7c892ee: [Routing] keeping routes priorities after add a name prefix to the collection
- 8169581: [HttpClient] disabled AMP inactivity timeout
- 69c37c0: [String] fixed ellipsis of truncate when not using cut option
- faafec4: [DependencyInjection] applied ExpressionLanguageProviderPass to router.default
- 080eef0: [SecurityBundle] fixed register csrf protection listener
- a89cc6b: [SecurityBundle] run functional tests for the authenticator system
- d75ef18: [HttpClient] added AsyncDecoratorTrait to ease processing responses without breaking async
- c459c80: [HttpClient] added support for pausing responses with a new pause_handler callable exposed as an info item
- 4d477ec: [FrameworkBundle, Mailer] added a way to configure some email headers from semantic configuration
- 691b604, 6b499e6: allow to override cache and log folders location using env vars
- 6d6d989: [DependencyInjection] added check around class_alias for generated proxy classes
- 4972ee0: [DependencyInjection] display alternatives when a service is not found in CheckExceptionOnInvalidReferenceBehaviorPass
- dee6d43: [PropertyInfo] support using the SerializerExtractor with no group check
- bb70cc8: [ExpressionLanguage] added details for error messages
- 4984ce1: [DependencyInjection] added abstract_arg() and param()
- ea956b1: [Console] added support for true colors
- 753cac7, 9b08626: use PHP instead of XML as the prefered service/route configuration in core
- d1b014a: [Mime] added DKIM support
- 6ab2198: [HttpClient] made DNS resolution lazy with NativeHttpClient
- 7107080: [HttpClient] fixed offset computation for data chunks
- 88a06c9: [FrameworkBundle] added support for tagged_iterator/tagged_locator in unused tags util
- faafec4: [DependencyInjection] applied ExpressionLanguageProviderPass to router.default
- cef93ea: [Notifier] removed default transport property in Transports class
- 131682f: [Notifier] moved configuration to PHP
- 1b086ee: [Mime] moved configuration to PHP
- 7a9f9e4: [FrameworkBundle] moved Secrets configuration to PHP
- 263d54f: [FrameworkBundle] moved ErrorRenderer configuration to PHP
- 124c139: [PropertyInfo] moved configuration to PHP
- c48a30e: [FrameworkBundle] moved Security CSRF configuration to PHP
- 188a985: [FrameworkBundle] moved Debug configuration to PHP
- 3c5f9d1: [FrameworkBundle] moved SSI configuration to PHP
- afed5ea: [FrameworkBundle] moved Profiler configuration to PHP
- 4b22f97: [FrameworkBundle] moved Identity Translator configuration to PHP
- f6d1869: [FrameworkBundle] moved Fragment Renderer configuration to PHP
- 1d84e8b: [FrameworkBundle] moved Data Collector configuration to PHP
- c0a3a64: [SecurityBundle] moved Templating configuration to PHP
- b667eed: [FrameworkBundle] moved Web and WebLink configuration to PHP
- 3acc72a: [FrameworkBundle] moved Lock configuration to PHP
- 806fd22: [FrameworkBundle] moved PropertyAccess configuration to PHP
- 8d27e45: [FrameworkBundle] moved Console configuration to PHP
- f5310ce: [FrameworkBundle] moved Session configuration to PHP
- 187936d: [FrameworkBundle] moved Validator configuration to PHP
- 1b41bde: [FrameworkBundle] moved Cache configuration to PHP
Symfony CLI
Symfony CLI is a must-have tool when developing Symfony applications on your local machine. It includes the Symfony Local Server, the best way to run local Symfony applications. This week Symfony CLI released its new 4.16.0, 4.16.1 and 4.16.2 versions with the following changes:
- Make git optional for most of SymfonyCloud related command if the
project
flag is used - Make vars that end with _KEY sensitive by default
- Fix the CLI can ask for re-authentication while in the background
- Fix PHP-CGI support with recent versions of Symfony (stderr logging)
- [BC BREAK] Fix Mailer exposed env vars in a local Docker Compose environment
- Fix local domains to be removed when starting the local web server
- Prevent the use of the Windows binary under WSL
- Increase autoupdate backups count to 2
- Fix
self:update
is not cleaning up backups - Fix 'cannot move the file' errors during autoupdate when using more than one filesystem
- Add more book requirements checks, tweak command output
- Remove 'extra' spinners when not needed
Newest issues and pull requests
- Move internal Container configuration from XML to PHP
- Use classes for container tags
- [Routing] Add ability to generate URLs with placeholders from Router
- [DomCrawler] Support using php functions in xpath expressions
- [Messenger] Allow amqp-messenger queues to have more than one binding
- Login throttling
They talked about us
- How Much of a Performance Boost Can You Expect for a Symfony 5 App with PHP OPcache Preloading?
- Symfony - Console Crash Course
- Why We Use Symfony
- Symfony Messenger with SQS and SNS AWS-Services
- 9 reasons to use Symfony
- Facebook Log Id button with Symfony Guard
- Drupal 9: ¿Qué hay de nuevo?
- Gérer ses miniatures avec Symfony et Glide
Call to Action
- Follow Symfony on Twitter and retweet this article.
- Subscribe to the Symfony blog RSS and never miss a Symfony story again.