This week, the upcoming Symfony 6.3 version added an enum function in ExpressionLanguage component, made some improvements in the Profiler, updated its entire source code to use PHP arrow functions when possible and introduced a feature to set private services with the test container.
Symfony development highlights
This week, 76 pull requests were merged (39 in code and 37 in docs) and 51 issues were closed (30 in code and 21 in docs). Excluding merges, 31 authors made 8,717 additions and 5,025 deletions. See details for code and docs.
- 996f93e: [FrameworkBundle] restore call to addGlobalIgnoredName
- 05582da: [DoctrineBridge] fix detecting mapping with one line annotations
- 3af7d1d: [HttpClient] move Http clients data collecting at a late level
- c3f17ac: [DependencyInjection] fix dumping inlined withers
- 003ccbd: [FrameworkBundle] fix deprecation when accessing a "container.private" service from the test container
- 22b5860: [DependencyInjection] fix support for named arguments on non-autowired services
- 7ed818b: [VarExporter] fix exporting enums
- 3c154c7: [HttpClient] let curl handle content-length headers
- dd23b8b: [DependencyInjection] fix dump order of inlined deps
- 3ca58ba: [SecurityBundle] fix using same handler for multiple authenticators
- 0096175: [Serializer] use method_exists() instead of catching reflection exceptions
- fe23f0f: [PropertyInfo] fixes constructor extractor for mixed type
- f3df429: [Validator] fix bad handling of nulls when the 'fields' option of the Unique constraint is set
- 92481ba: [Intl] get emoji-test.txt from unicode.org
- f05cc8d: [VarExporter] fix signature of LazyTrait::createLazy()
- 309c141: [DependencyInjection] fixes validation of non-scalar attribute values
- 918967f: [PhpUnitBridge] add enum_exists mock
- c759e4e: [ExpressionLanguage] add enum expression function
- 8fee664: [DependencyInjection] add message to install symfony/config for additional debugging information
- 0aa12cd: [Mime] allow Usage of ContentId in HTML
- 675ee80: [WebProfilerBundle] use a dynamic SVG favicon in the profiler
- f65e098: [HttpKernel] use TZ from clock service in DateTimeValueResolver
- a8ad6bb, 2ffc73f: [WebProfilerBundle] improve accessibility of tabs and some links
- 991c2ba: [DomCrawler] add argument $normalizeWhitespace to Crawler::innerText() and make it return the first non-empty text
- 309c141: [DependencyInjection] fixes validation of non-scalar attribute values
- b50442c: [Messenger] allow password in redis dsn when using sockets
- 5e71acb: [HttpKernel] check preload items returned by cache warmers
- acb7a98: leverage arrow function syntax for closure
- 5f6e65e: [FrameworkBundle] allow setting private services with the test container
- 3d92007: [HttpKernel] fix tests by using the actual system's temporary directory
- d4c27d9: [ErrorHandler] try to read SYMFONY_PATCH_TYPE_DECLARATIONS from superglobal arrays too
Newest issues and pull requests
- [Console] Add multiple usages at once
- [RFC][DIC] Allow logging from extensions
- Allow to define a specific controller value resolver
- Performance regression in DomCrawler v6
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 5.4.21 version with the following changes:
- Fix Symfony CLI to work with Platform.sh CLI v4.x (@akalipetis)
SymfonyCasts Updates
SymfonyCasts is the official way to learn Symfony. Select a track for a guided path through 100+ video tutorial courses about Symfony, PHP and JavaScript.
These were some of the most relevant SymfonyCasts updates of the week:
- (Video) Netgen Layouts: Building Pages with Symfony, Chapter 26: Custom Item View Type
- (Video) Netgen Layouts: Building Pages with Symfony, Chapter 27: Block Plugins
They talked about us
- Symfony Station Communiqué - 13 January 2023
- Symfony service subscribers
- Using Symfony service tags to keep code maintainable
- Using Behat to write functional test of a Symfony command
- Création d’un système d’authentification (login & registration) en utilisant Symfony 6
- Utiliser Behat pour écrire les tests fonctionnels d'une commande Symfony
Call to Action
- Follow Symfony on Twitter and retweet this article.
- Subscribe to the Symfony blog RSS and never miss a Symfony story again.