Welcome to this week's Symfony Station Communiqué. It's your weekly review of the most essential news in the Symfony and PHP development communities. Take your time and enjoy the items most valuable for you.
Please note that links will open in a new browser window. My opinions, if I present any, will be in bold.
As always, we will start with the official news from Symfony.
Highlight -> “This week, Symfony introduced the Twig 3 certification and updated the official Symfony book to showcase Symfony 5.4 and 6.0 versions. In addition, SymfonyLive Paris 2022 conference announced more speakers and more workshops.”
SymfonyLive Paris, the French Symfony conference welcomes the latest conference speakers and their talks.
They also announced that:
Happily, we ran across this oldie-but-goodie. Sometimes wit works best. It will be your favorite read of the week.
Jordi Bassaganas writes “a few more issues have been closed recently on the ChesslabLab organization on GitHub, this time on the Chess API repository. As you probably know, the PHP Symfony framework is being used to deploy a REST API with awesome features that chess web developers will absolutely love, and now you can download images and videos representing your favorite games.”
Sumit has this for us:
Łukasz Chruściel writes “You might have already heard about it – Sylius v1.11 is live! The release comes with a long-expected feature – Catalog Promotions, but this is not all that has changed since the previous release. Also, the feature itself comes with a few details that you may be curious about. All these updates will be covered here.”
Andreas von Studnitz says, “In this blog post, I’d like to discuss some (recent Magento) announcements and address some misconceptions currently expressed by some members of the e-commerce community.”
Mickaël Andrieu writes “je travaille sur un projet de segmentation de base clients pour la validation de mon titre d’Ingénieur Machine Learning et je fais bosser mes propres élèves en Master 2 Data Marketing sur la segmentation d’un site e-commerce développé sur PrestaShop.”
Webkul notes “In this blog, we are going to learn how to set up namespace and define services in Prestashop and also, how to get the service in a Symfony container.”
Looking to pull in a Spotify playlist? Here’s how.
Dariusz Włodarczyk notes “Symfony form handler allows using different input types like
ChoiceType etc. while using
Array based type the result is an empty array. The only one working case is
TextType but it still yields just raw json — but that’s undesired result.
After struggling for a while, the only working solution I’ve found is providing new input type (
JsonType) and new
Marco Pfeiffer says that “Finally use your multi-core CPU to run your tests multiple times faster, even with complex test setups.”
In the first of a series, Guillaume examines whether to use a CMS or not. En francais.
He follows up with:
Joomla announces that “in this article, Dimitris Grammatiko shares his insights and presents the definitive way to add images in Joomla 4 as well as how you can backport these advantages into older Joomla versions. Dimitris explains the history and usage of native support for lazy loading images and also with a new concept of adapters for storing images, both of which shipped in Joomla 4.0.5.
Matt Glaman writes “This past weekend was at Florida Drupal Camp, and I gave a talk about using PHPStan to tighten up your Drupal codebase. For the past two years, the Drupal community has been leveraging PHPStan indirectly through the drupal-check and Upgrade Status modules to find usages of deprecated code as we journeyed from Drupal 8 to Drupal 9. This is barely the tip of the iceberg of what value PHPStan provides, but it had an immense impact.”
This was a great presentation. I’ll try to share all the Camp presentations once they are available.
Speaking of Drupal they need your help.
Tomas Vortruba asks “How can we create 2 tests scenarios for the Symfony Kernel project with 2 different parameters? How can we inject 2 different instances of the same interface? How can we do it in the same way we already configure both of them?
Today we'll look at a little trick that allows us to create Symfony Kernel with different configs.”
While researching for when we can finally have automatic core updates in Drupal I found this helpful post.
We published our second sponsored article on Symfony Station exploring how code-driven monitoring helps you deliver successful Symfony products. Like all our articles it is now available via audio.
All sponsored articles are for products we have vetted and stand behind. We either use them or would do so if they were applicable to the Symfony Station site.
Simon Bisson says, “.NET is much more than Microsoft’s own tools and languages. The open source PeachPie brings PHP to the table.”
Eelco Verbrugge writes “Type hinting are type declarations to function arguments, return values and class properties. PHP ensures the value is of the same type you declared or throws an TypeError. It isn't required but very useful to catch mistakes and helpful to others reading your code to understand what is up.”
Azraar Azward has a solid review of SOLID for us. ;)
And Roberto B. has this:
And this as well.
Frank de Jonge notes “Event-driven systems come in all sorts of shapes and sizes. The obvious commonality is they all use events to communicate information. These events come in many shapes and sizes and determining what goes into an event has an immense impact on the design of your system.
In this post, I'd like to go over three different types of events. I hope clarifying these types will allow you to have better discussions about event-driven architectures and integrations.”
No CS Degrees shares “Chris and his partner bought their dream house after Chris learned PHP and became a developer. We talked through his motivations for learning PHP, the benefits of learning programming, and his tips for beginners.”
Speaking of learning, sometimes you need a good reference. Julian Maury has you covered with an extensive new PHP 8 cheatsheet.
Matthew Weier O'phinney shows us how to:
In a recent project, Cees-Jan Kiewiet discovered that “A feature that we really needed to make our fiber integration complete is the cancellation of them. Or to be more precise, the cancellation of any awaited promise yielding operations in that fiber and as a consequence the fiber that those are awaited in. This post goes into detail on how different cancelation scenarios work for the PR introducing it and was originally part of that PR's documentation but was replaced by a simpler section.”
Paul Ducklin writes “If you’re using PHP in your network, check that you’re using the latest version, currently 8.1.3.
Released [2022-02-17], this version fixes various memory mismanagement bugs, including CVE-2021-21708, which is a use-after-free blunder in a function called
(Versions 8.0 and 7.4 are still supported and are vulnerable too; if you aren’t using the latest 8.1 flavor of PHP then you need 8.0.16 and 7.4.28 respectively.)
The third build of the Early Access Program for PhpStorm 2022.1 is now available!
This post explores WordPress in particular but has excellent ideas for any website creation platform.
The NewStack writes “Can real-world programming problems be solved with state-of-the-art AI? This month DeepMind explored that question, confronting the world with a fresh perspective on programming, and on the capabilities and limits of artificial intelligence.”
Derrick Harris notes “Try as they may, critics of SQL (syntax query language) have never really been able to dent its popularity. Decades after its creation, the majority of the world’s databases still run on SQL, and the majority of data analysis still happens via SQL queries. It’s not too big a stretch to say that the digital world runs on SQL.”
Kinsta compares HTML and XML.
Germano says, “When developing real-time web applications, WebSockets might be the first thing that comes to your mind. However, Server-Sent Events (SSE) are a simpler alternative that is often superior.”
Mark Nottingham writes “The orange site is currently discussing an article about Server-Sent Events, especially as compared with WebSockets (and the emerging WebTransport). Both the article and discussion are well-informed, but I think they miss out on one aspect that has fairly deep implications.”
Finally, “in an era of talent shortages and fast delivery, the low-code market is taking off. Citizen development on a low-code platform may be the solution to organization’s internal needs.” Brian Bates asks:
That's it for this week. Thanks for making it to the end of another extended edition. I look forward to sharing next week's Symfony and PHP news with you on Friday.
Please share this post. :) Be sure to join our newsletter list at the bottom of our site’s pages. Joining gets you each week's communiqué in your inbox (a day early). And follow us on Twitter at @symfonfystation.
Do you own or work for an organization that would be interested in our promotion opportunities? If so, please contact us. We’re in our infancy so it’s extra economical. ;)
Happy coding Symfonistas!