Today Shopware announced the availability of the new Shopware 6.5 RC. Interested people could download the pre-release and deliver feedback towards Shopware. Another official Shopware 6.4.20.0 is going to be released this month. But Shopware 6.5 is just around the corner. The RC will allow developers to the the pre-release and deliver feedback.
Download the Release Condidate here
These are the most important changes for developers:
Custom entities in Shopware CMS
Our content management system makes it easy for merchants to create, structure, and deliver all sorts of content to tell their stories to customers. To enrich the capabilities of individual content creation, we will offer app developers the possibility to use custom entities in our CMS.
With this implementation, developers can use the flag admin-aware
in their custom entity’s XML file, which will create a detail page into the content section in the administration panel automatically for such entities.
This will be the very first iteration of this feature. With it, developers can already try out the new flag for custom entities. More functionality will be added to this feature in future releases.
Combined rule conditions to make adding new rules more comfortable
Many admin components for rule conditions can be combined to use a single generic component instead, which handles fields based on a set configuration schema. With these changes, adding new rules becomes faster and easier.
Queue system changed
The new queue system is now completely based on the standards of Symfony Messenger. This allows changes to the queue memory/system from now on. Furthermore, multiple channels can be used to optimize the resources of the queue worker.
If you are using Cron Jobs, make sure to adapt them to the new commands.
Processing the standard queues in Shopware 6.5 is done via these commands:
bin/console messenger:consume async
Processes the messages that are put into queue
bin/console messenger:consume failed
Processes messages that have failed once before
Improved Shopware installer
With the official release of Shopware 6.5, the Shopware Community Edition will no longer be provided as zip files via the Shopware website. Downloading Shopware via the Website will instead provide you with a phar-file acting as an installer and updater. Among other things, this change removes the need for plugin-system based apps to include their dependencies and enables them to use composer to manage dependencies instead. Read all about the changes in this blog post.
Changed font family in the Shopware administration
The administration and all of its components are now using the font family “Inter“ for better readability. Inter is a free, open-source, sans-serif typeface designed by the Swedish designer and programmer Rasmus Andersson. More information can be found on GitHub.
Improved Shopware administration performance
The performance of the Shopware administration was significantly increased by introducing lazy loading and optimizing start-up calls as well as chunks.
New icons in Shopware administration panel
The icons of the Shopware administration panel have been replaced with the ones from the Meteor Icon Kit.
Bootstrap 5.2.2 Update
With Shopware 6.5, the Storefront will provide only Bootstrap version 5. Bootstrap v4 is no longer shipped with Shopware. The Bootstrap framework was also updated to the minor version of 5.2.2
.
Internet Explorer 11 is no longer supported
As Bootstrap v5 no longer supports Internet Explorer 11 (IE11) and the market share of IE11 has decreased significantly, the support of IE11 was dropped. This also allows for the usage of more modern web technologies in the future.
Removed jQuery dependency
Bootstrap v5 does not ship with jQuery as a dependency anymore. Also, the native Javascript APIs and their browser support have improved a lot in recent years. As a result, Shopware no longer provides jQuery as a dependency.
Removing the custom off-canvas implementation
Bootstrap v5 now includes an off-canvas component. With Shopware 6.5, the storefront uses this Bootstrap v5 off-canvas instead of a custom implementation. The API to operate the storefront off canvas remains the same.
Light design update in the storefront
The storefront experienced a small design update. The primary colors, as well as border colors, have been updated to improve contrast and readability.
New storefront Figma library available
The platform independent storefront Figma library will be released alongside Shopware 6.5 and is already available. This includes our updated storefront design as well as “properties” used in Figma instead of variants of the administration.
Quantity selectors changed
We changed the quantity selectors for products. Instead of a dropdown, input fields with plus and minus buttons are now used to specify the quantity of a product to be put or changed in the cart.
Update to webpack 5
The module bundler webpack, which is used to build the JavaScript modules for production, was updated to the most recent major 5.75.0
in the storefront. This also allowed us to update outdated webpack loaders and plugins.
Remove unneeded dependencies
With the removal of Internet Explorer 11 support, a lot of unneeded dependencies like polyfills and picturefills could be removed.
Prior to Bootstrap v5, the storefront supported older browsers, for example Internet Explorer 11. As IE11 support was dropped, now unneeded polyfills were removed.
Updates of ESlint, Stylelint, Sass & Babel setup
Previously, the storefront’s JavaScript code for production was optimized to work with Internet Explorer 11 and other now outdated browsers. This has changed and Babel was updated to the more recent version 7.20.12
and does no longer consider IE11. This also reduces the bundle size of the production JavaScript. The .browserslist
has also been updated to be aligned with Bootstrap v5.
Developer-Tooling like ESLint (now v8.31.0) and Stylelint (now v14.9.1) were also updated to a more recent version.
Consequent use of SameSite Cookie Strategy
We removed the CSRF protection in favor of the SameSite cookie strategy, which we already implemented in Shopware 6.
If you changed or added forms with CSRF protection, please remove all calls to the twig function sw_csrf
and every hidden input field which holds the csrf token. You can no longer use the JavaScript properties window.csrf
or window.storeApiProxyToken
. The route to frontend.csrf.generateToken
will no longer work.
You do not have to implement any additional request protection, as the SameSite cookie strategy is already in place.
Manifest schema for app programming upgraded
The manifest.xsd
schema for app-system based apps was upgraded and is now at v2.0.0, introducing breaking changes.
Follow the instructions in the changelog and update your app’s manifest.xml
file accordingly.
Remove prefixes in the manifest file
An app’s navigation entries in the administration were generated with the app name as prefix. This could lead to truncated navigation entries.
With Shopware 6.5, only the module label without the name of the app will be shown in the administration.
Make sure your module name is easily identifiable by the user. For more information, take a look at the changelog.
Breaking changes in the admin order module
The order module in the administration has received extensive changes to improve the user experience.
As a result, all plugin-system based apps that make changes to the order module in the administration need to be tested by their creators. There is a high probability these apps break with 6.5 and need to be adapted.