We have arrived at Early Access v2 (EA2) and would like to give you a short overview of the current status, the planned roadmap and a look behind the scenes of Shopware 6. The release of this second official Early Access version is not entirely targeted at you as an external developer; after all, you are currently working on the master anyway, aren't you?
It's a release that represents a milestone for us internally and is designed to offer a certain set of features to the merchants and users out there. Per usual, EA2 will also be available as an installer on shopware.com.
But regardless of the fact that it's not exclusively a developer release, we'd like to introduce you to some interesting new features
Great new things
Basically, Shopware 6 does a lot. Of course, more than we can cover in a blog post. For that reason, our developers maintain a practical section in the documentation that lists all new features: Recent Changes
But now let’s talk about the raisins we picked out for you:
Static code analysis
In addition to PHPStan, Psalm is now also executed. Even though both tools work similarly, individually they have overlapping advantages, which you can now benefit from in their entirety. We have also added more rules for PHPStan. Everyone likes rules, don't they? ;)
A short documentation can be found here.
Improved plugin functions
Plugins differ in Shopware 6 from Symfony Bundles by the added lifecycle events.
This means that plugins from EA2 can now also map complex deactivation and activation logic. In addition, the order of the lifecycle events has been adjusted: The deactivate method is now always called before the uninstall method, even if the user only executes an uninstall without prior deactivation.
HTTP Cache Warmup
Already known from Shopware 5, the warmup of the HTTP cache now also returns to Shopware 6. This makes it possible to recreate the cache after it has been emptied by automatically calling up all routes or pages of the storefront.
Depending on the size of the shop, this can take some time, which is why we have made some improvements here. There is now an abstraction level between the actual storage (e.g. the file system) and Symfony. This makes it very easy to connect a Redis or similar as storage for the HTTP cache.
In addition, there are several parallel workers as an extended setup, which processes the storefront routes simultaneously and thus much faster.
In the standard system, there is only one worker, which is controlled via the admin. This ensures that the cache warmup can be accessed via the admin without additional setup (as already known from Shopware 5). For more detailed information, visit our HTTP caching documentation.
Improved theme handling
Changes in the theme configuration are now automatically detected and the configuration is updated. This also works with the command bin/console theme:refresh. Gone are the days when changes to the configuration required the complete theme to be reinstalled.
State machine refactored
Do you use Shopware 6 state machines in your plugins? Your life just got a lot easier. In short, we've cleared away a great deal of the boilerplate code previously required.
HTML in Snippets
Short but sweet: As of EA2, simple HTML for formatting in snippets is supported.
The first release of Shopware 6 is all about stability. That's why the features that will be available until then are limited. The easiest way to find planned features for merchants is to refer to the roadmap.
Apart from that, here are two things to look forward to:
- API versioning
- Multiple inheritances in the administration
Behind the scenes
The software does not write itself - at least not yet. For such a format like Shopware 6, a lot of people are needed who love what they do.
There are currently 200 people involved in the creation of Shopware 6. These include developers as well as everyone else who works at Shopware, and those who have been a part of the journey Shopware started back in 2000 when the company was founded.
But even the 200 employees are still too few to cover Shopware in its entirety. You are part of it, as a reader of this blog. The people who contribute code, who develop plugins, set up and use shops and tell their friends about this great blue shop system. The community is and remains what Shopware is all about, the people behind the code and the technology. This is, and not only consciously, what we love about Shopware: You. :)
Thank you for being part of Shopware!
(And if you see it differently: We still like you, thanks for reading the blog post.)
To make this a little more personal, here are a few answers to the question "What does Shopware mean to you?":