A white paragraph.
Welcome to this week's Symfony Station Communiqué. It's your weekly review of the essential news in the Symfony and PHP development communities. We also cover the cybersecurity world.
Take your time and enjoy the items most relevant and valuable to you.
Please note that links will open in a new browser window. My opinions will be in bold.
As always, we will start with the official news from Symfony.
Highlight -> “This week, Symfony continued fixing bugs on its upcoming Symfony 6.1 version. We also finished some new features for it, such as the support for Monolog 3. In addition, Symfony shut down the legacy infrastructure of Symfony Flex, because most people have already upgraded, and the migration process is simple for those who haven't upgraded yet.”
Javier Eguiluz continues to update us on what’s coming in 6.1 with:
Symfony had a variety of announcements about events.
SymfonyCasts announced, “Big stuff this week on our quest to upgrade to Symfony 6!
Recipe Upgrades! Our last big recipe is for Webpack Encore. While we're here, we'll update from "stimulus v2" to "@hotwired/stimulus v3" and make all the changes needed to keep our asset setup shiny and new!
PHP 8! To get to Symfony 6, we'll need to use PHP 8! Promoted properties + other goodies... all automated thanks to Rector.
PHP 8 Attributes And...one of the nicest parts about being on PHP 8 is that we can use PHP attributes! We refactor EVERY annotation to a shiny new PHP 8 attribute. And we'll do it in just 5 minutes, thanks to Rector!”
Platform .sh asks:
Although it’s not the most important post of the week, we are tooting our own horn again.
Our mission is not only to cover Symfony and PHP. We also serve their respective developer communities. One way to do that is to help more developers write about Symfony and PHP.
If you are reading this communiqué , you are interested in technical topics. You might even publish a newsletter and/or articles covering them. If so, we created this resource for you. If you don’t, we hope you will start soon. It is a way to give back to the community that helped make you successful.
Mateusz Kolasa writes, “Software developers are very opinionated when it comes to the ‘frameworks’ and ‘libraries’ that they love. But what are these frameworks and libraries exactly? In this article, I’ll briefly cover how these tools help developers get work done, and showcase an example of React and Symfony being used to create a fully functional app.”
Azay Karimli continues his series:
Tanvir Ahmad shows us:
Dejan Angelov notes, “that by using custom PHP attributes, we can have our Symfony Messenger message handlers placed in any service in our application. The only requirement for them is to be methods that are able to receive the message object as an argument. In this post, we will see how we can avoid that requirement, and register any method as a message handler, by automatically passing any of the message’s properties as values for the handler’s arguments.”
Aymeric Ratinaud says, “I would like to share with you how override the query of a collection in API Platform and keep the pagination, filters and doctrine extensions on it.”
Using Symfony Components, Artisans Web shows us:
PHP Magazine writes, “Centreon is an open source network, system and application monitoring tool. It is the only AIOps Platform Providing Holistic Visibility to Complex IT Workflows from Cloud to Edge.
Tomas Votruba says, “ECS runs on Symfony container configuration to build the service model. While it brings automated autowiring, array autowiring, and native container features, the downside is that ECS configuration syntax is complex and talkative.
We decided to simplify it so ECS is truly easy to use.”
DrupalEasy notes, “DDEV is a Docker-based local development environment solution that allows developers to run local copies of all their Drupal and WordPress projects in a personal development environment. Much like similar Docker-based solutions, DDEV hides most of the complexity of Docker — allowing Drupal and WordPress developers to focus on what they like best.”
Iain Houston shows us how to move:
RabbitMQ has a new version.
Robin Ingelbrecht opines that:
Its founder has:
This is self-explanatory.
Lemberg Solutions shares their:
Jacob Rocowitz writes, “Happily, standardization, simplification, and acceleration became the key benefits of my Schema.org Blueprints module. I am looking forward to doing a show-n-tell about it for you below.”
Lucas Teixeira dos Santos Santana shows us how to create admin forms in Magento 2. (Portuguese)
The PHP Foundation interviewed its new core developers.
Daniel Benzie notes, “When writing software, you will spend a large portion of time creating code that takes an object, validates it, and then performs some actions. One of the core tenets of SOLID code is the Single Responsibility Principle, and this means there should be a separation of the code that validates the object and the code that executes the action.”
Caen provides an introduction to the internal architecture of his creation, HydePHP.
Eden AI shows us:
Victor Todoran encourages us to:
Alexandru Năstase writes, “Some applications require a PHP extension that is not present on the local system or there might be some specific php.ini configuration that is set on the production server. It is considered as part of the infrastructure rather than the application itself but can cause problems because of inconsistency. Using Docker can solve these problems and has the added benefit of being a good way to develop applications.”
Lucas Pereyra has an in-depth look at:
Roberto B. says, “In a WebSocket "scenario" you have a server-side part and multiple clients. A client can connect with the server side part, and if a client wants to communicate with other clients, it can do it by sending messages to the server. The server will forward or will send messages to the client.
The connection between the client and the server is persistent and allows for a two-way conversation for multiple messages.”
Pascal Landau continues his tutorial series:
Vishwa Chikate writes, “The SplObjectStorage class provides a map from objects to data or, by ignoring data, an object set. This dual purpose can be useful in many cases involving the need to uniquely identify objects.”
Chuck Watson looks at building an:
Gagan Chordia explores:
Selcuk Mart looks at:
He also has:
Please visit our Support Ukraine page to learn how you can help kick Russia out of Ukraine (eventually).
The cyber response to Russia’s War Crimes
Lawfare reports, “On April 28, the Biden administration announced a new global partnership that sets norms for the use of technology by nation-states: the Declaration for the Future of the Internet. While the declaration might seem like a reproach of the digital authoritarianism of Russia and China, it is far more likely to warn off wavering democracies from internet transgressions.”
Via the EU, “EU sanctions support the objectives of the EU’s common foreign and security policy, such as conflict resolution, the fight against terrorism, non-proliferation of weapons of mass destruction, and the promotion of democracy, rule of law and human rights.
While EU sanctions are adopted by the Council of the EU, Member States are responsible for their enforcement, the European Commission monitors the implementation and enforcement of EU sanctions across Member States.
The EU Sanctions Whistleblower Tool protects your identity and allows you to contact us anonymously to report violations of EU sanctions.”
TechCrunch reports that:
The Guardian reports on brave Russians daring to speak the truth to power.
Insider shows us how:
The Evil Empire Strikes Back
Insider also says:
PCMag reports that:
The Guardian also reports that:
The Hill reports that:
The NextWeb reports:
VentureBeat looks at:
GitHub has this:
Ars Technica reports that:
Consensus Enterprises writes that “For the past few months, we’ve been working with the Drupal Association on a project to enhance the security of the Drupal.org software repository. The most succinct way of describing this project is: Securing automated software deployments from supply chain attacks.”
Ryan Loos opines:
Silicon Angle looks at:
MiŠko Hevery believes:
In an interview with Rich Harris, The New Stack looks at:
This article is one I need to read. ;)
Joshua Otwell explores
Finally, the annual survey from JetBrains is now open and, of course, there is a section about PHP.
That's it for this week. Thanks for making it to the end of another edition. I look forward to sharing next week's Symfony and PHP news with you on Friday.
Please share this post. :) Also, 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. And since it may be turning into Shitter, we are now on Mastodon as well at @email@example.com. Consider joining the @phpc.social instance.
Do you own or work for an organization that would be interested in our promotion opportunities? If so, please get in touch with us. We’re in our infancy, so it’s extra economical. ;)
More importantly, if you are a Ukrainian company with coding-related products, we can offer free promotion on our Support Ukraine page. Or, if you know of one, get in touch.
Keep coding Symfonistas!
You can find a vast array of curated evergreen content.