Release notes Shopware 6.7.3.0
Abstract
The language handling completely moved to the core, no plugin necessary from now on. Also, American English is pre-installed as one of the default languages. Additionally, this release comes with at least 161 bug fixes.
System requirements
- tested on PHP 8.2 and 8.4
- tested on MySQL 8 and MariaDB 11
Improvements
Language handling
American English can be used in installer
American English can now be downloaded in the installer and can become the default shop language like any other language in Shopware.
Available languages can be managed from Shopware core
No plugin needed anymore to install languages available from the Shopware translation platform! The entire plugin has been built into the core. Simply fetch and activate the language of your choice via the new bin/console
commands. Later, this feature will become available in administration.
However, for any other language pack not available from the Shopware translation platform, you will still need a plugin.
You can fetch Shopware translations from the Shopware translation platform, which are stored on Github. You can even help provide translations and use them in your shop a short time later!
Please note: As these are community-provided translations, we cannot guarantee that everything is translated 100% correctly.
Good news: The Language Pack plugin will continue to be maintained under our usual release policy.
Please see the ADR for more details.
Country-Agnostic Language Layer
Working with language codes in Shopware, such as en-GB
(a combination of language and country), generally works well. However, this approach can be quite maintenance-heavy: using multiple dialects, for example, British and American English, always leads to duplicated language snippets and can quickly become frustrating for translators.
To address this, we introduced an additional translation layer that reduces dialects to patch files, limiting duplication to only a small portion of the snippets.
Read the full story in this ADR. You can also find a detailed concept document for further reference.
CMS / Shopping Experience
Block type labels
See the type of blocks directly when working with it as an editor. This is especially useful if using third party plugins. Thanks to @amenk!
https://github.com/shopware/shopware/pull/12334
3D/canvas switching
Slider viewers are now rendered in respect to their visibility modus. This gives us a bit of more performance. Thanks to @ffrank913 😉
https://github.com/shopware/shopware/pull/12642
Performance: Faster product category loading with a new index
Thanks to this pull request, queries on product.categories
shall run ways faster than before: See https://github.com/shopware/shopware/pull/12657 by @vienthuong
Checkout & Promotions: More reliable shipping price matrix, credit notes, and promotion discount calculations
- https://github.com/shopware/shopware/pull/12560 by @untilu29 actually fixes Shipping method cannot be applied to products below 1 EUR due to “Cart price from” default by @cramytech.
- https://github.com/shopware/shopware/pull/12589 by @ennasus4sun fixes Credit notes are created cumulatively by @swagTKA.
- https://github.com/shopware/shopware/pull/12603 by @socrec fixes Fixed Price delivery promotions cannot be excluded by janobi
3D Viewer: Improved visuals with better camera distance and model placement
- https://github.com/shopware/shopware/pull/12682 by ffrank913 fixes Incorrect model focus in SW6 standard CMS by himself
- https://github.com/shopware/shopware/pull/12654 by ffrank913 fixes Incorrect frontend display of 3D glb files in SW6 standard CMS by MaximilianFo
More tech updates
- Framework & API: Store-API cookie groups, new route exception handling, cleaner query parsing
- Platform ops / DX: Environment variable improvements, cache directory configurability, profiler disabled by default in production
- Build tooling: Admin build target updated to ES2023 (plugin authors should check compatibility)
- Deprecations / Breaking changes:
- Removal of controllerName/controllerAction variables in templates
- Deprecation of SalesChannelContextSwitcher
- Upgrade notes: DB migration for the new category index, admin build target upgrade, profiler defaults
Please checkout the changelog for more detailed information.
Fixed bugs
- #7780 - Limit cache permutations due to rules to improve TCO and page load performance
- #12231 - fix: change background color on even data grid rows
- #12234 - fix: saas related permissions missing in test (backport: 6.7.3.x)
Click to see more fixed bugs
- #12223 - fix: saas related permissions missing in test
- #12212 - fix: Composer plugins can be removed when in custom/plugins
- #12224 - fix: Media thumbnail generation with null media thumbnail size
- #12208 - chore: Enable overwriteVariablesWithLoop phpstan parameter
- #12176 - fix: Consider parent sources in api aware flag
- #12363 - fix: missing product rule filter (backport: 6.7.2.x)
- #12357 - chore: add missing assertions in tests of core/content integration suite
- #12318 - fix: Zugferd invoice BasisQuantity should not be lineitem quantity
- #12358 - chore: add missing assertions in tests of core/system integration suite
- #12356 - chore: add missing assertions in tests of core/framework integration suite
- #12241 - ci(deps): bump the all group across 1 directory with 7 updates
- #12314 - feat: Add ScheduledTaskMessageInterface
- #12311 - fix: improve tags, update config endpoint OpenAPI schema
- #12346 - chore: Enable closureUsesThis phpstan parameter
- #12214 - fix: intra community zugferd invoice
- #12332 - feat: add visual test for Themes
- #12204 - chore: Enable several phpstan strict rules
- #12205 - chore: Enable disallowedImplicitArrayCreation phpstan parameter
- #12249 - feat: interpret checkbox custom fields as bool in rules
- #12266 - fix: apply sales channel specific settings for showing product reviews
- #12263 - fix: load core snippets in Shopware 6.8.0
- #12406 - chore: merge back into trunk 6.7.2.1 (backport: 6.7.3.x)
- #12403 - chore: merge back into trunk 6.7.2.1
- #12230 - feat: allow accessing vite dev server with any host
- #12371 - fix: provide discount id to discount component card
- #12407 - fix: contribution typo
- #12362 - fix: apply request limit for product store-api endpoints again
- #12228 - feat: improve languages admin ui resolves #11414
- #12408 - feat: update tsc target version for administration to ES2023
- #12427 - fix: Update test for seo url persister
- #11099 - fix: Wrong customer context on login if entry from sales_channel_api_context table is expired
- #12455 - fix: Update test for seo url persister (backport: 6.7.3.x)
- #12458 - fix: Wrong customer context on login if entry from sales_channel_api_context table is expired (backport: 6.7.3.x)
- #12319 - feat: Add handle to get router path
- #12439 - chore: improve ThemePrepareIconsCommandTest and prevent parsing empty files in ThemePrepareIconsCommand
- #12377 - chore: disallow risky tests for phpunit (devops, integration, unit)
- #12444 - chore: Fix document_base_config migration
- #12418 - fix: initialization of DiscountCampaignStruct, add additional properties
- #12453 - test: use named argument for constraint in EntityNotExistsValidatorTest
- #12435 - fix: cast XML config values for Length constraint to int to prevent type errors
- #12390 - fix: fix email recovery in admin login
- #12463 - fix: initialization of DiscountCampaignStruct, add additional properties (backport: 6.7.3.x)
- #12342 - chore: Change invitation mail wording
- #12180 - fix: revert theme field name change
- #12472 - fix: cast XML config values for Length constraint to int to prevent type errors (backport: 6.7.2.x)
- #12474 - fix: theme config boolean values
- #12484 - fix: theme config boolean values (backport: 6.7.3.x)
- #12466 - fix: deletion of active customer address
- #12490 - fix: media search is partially broken
- #12436 - fix: Fix inherited switch value
- #12489 - fix: deletion of active customer address (backport: 6.7.2.x)
- #12488 - fix: deletion of active customer address (backport: 6.7.3.x)
- #12426 - fix: Do not rely on relative path of bleeding edge PHPStan config
- #12429 - fix: Do not rely on relative path of bleeding edge PHPStan config (backport: 6.7.3.x)
- #12364 - ci: update web service image to php8.4-node24-caddy
- #12361 - fix: missing product rule filter
- #12373 - fix: Custom fields with the same name as FKs can be saved
- #12262 - feat: recover stuck tasks
- #12414 - test: optimise CartCompressorTest unit test
- #12345 - chore: Enable numericOperandsInArithmeticOperators phpstan parameter
- #12468 - ci: only set milestones if pr is merged fixes #12461
- #12539 - fix: getAllCodes returns only string array
- #12560 - fix: cart price initialization in shipping method price matrix settings
- #10354 - feat: cookie groups store-api endpoint
- #12543 - fix: Change incorrect variable name and grace-period option description
- #12552 - fix: remove duplicated featureSet criteria in product detail
- #12512 - fix: product properties inherited
- #12513 - fix: after sales visual bugs
- #12325 - fix: wrong import, improve description for RuntimeException
- #12531 - fix: remove Elasticsearch dependencies in Core namespace
- #12542 - fix: correct color for active column in product list
- #12457 - fix: fix memory leaks in administration
- #12558 - fix: product properties inherited (backport: 6.7.3.x)
- #12382 - fix(admin): prevent page reload during order creation confirmation dialog
- #12500 - chore: update releases.json with 6.7.1.0/6.7.2.0
- #12396 - fix: missing product rule filter (backport: 6.7.3.x)
- #12496 - fix: disable profiler in production
- #12526 - chore: merge back 6.7.2.2
- #12529 - fix: disable profiler in production (backport: 6.7.3.x)
- #12238 - chore: extract package metadata generation from log processor, also make it public
- #12392 - feat: Ensure ENTITY_NAME constant is implemented in EntityDefinitions
- #12548 - fix: remove Elasticsearch dependencies in Core namespace (backport: 6.7.3.x)
- #12460 - fix: Elasticsearch indexing when a sales channel lacks the system default language
- #12240 - chore: Add language download to installer
- #12334 - feat: Add block type label in CMS sidebar
- #12419 - chore: Adjust refresh token handling
- #12605 - feat: make APP_ENV toggleable via environment variable
- #12532 - ci: fix repo name for release
- #12186 - feat: Remove language plugin download from first run wizard
- #12470 - chore(ci): support updates of in-repo ATS snapshots
- #12627 - fix: allow request in event
- #12643 - fix: allow request in event (backport: 6.7.3.x)
- #12576 - fix: getAllCodes returns only string array (backport: 6.7.3.x)
- #12592 - feat(product-analytics): Add Feature Flag for Product Analytics
- #12577 - fix: only create install.lock on successful installation
- #12351 - fix: Allow updating Customer Profile account type to private when also enable Company signup form
- #12565 - feat: make string template renderer cache directory configurable
- #12326 - feat: add guest login functionality to OrderRoute
- #12582 - feat: add hash to cookie route
- #12551 - chore: remove unnecessary default rules
- #12604 - chore: Move files from Administration to Core
- #12654 - fix: Fixed incorrect model placement.
- #12642 - feat: Dynamic canvas switching
- #12624 - chore: Fix document footer style
- #12610 - chore: Clarify integration documentation
- #12219 - fix: Added missing 30 days period for export cleanup
- #12640 - feat: normalize query string parser for using shortcut filter path
- #12657 - feat: add index for product categories
- #12629 - fix: flaky document snapshot tests
- #12614 - chore(administration): Add lint:scss and format to lint:all command
- #12690 - refactor: deprecate SalesChannelContextSwitcher
- #12683 - fix: styling for blockquotes
- #12475 - feat: add media visual test
- #12681 - fix: extract url encoder utility
- #12692 - chore: Fix login
- #12656 - fix: document validation
- #12694 - chore: Fix login (backport: 6.7.3.x)
- #12621 - ci: add audit check for npm packages
- #12589 - fix: credit notes list credit items cumulatively
- #12394 - fix(admin): Correct line-height for sw-field labels
- #12668 - fix: original values for color functions in SCSS Validator
- #12606 - fix: Localise language selection in installer
- #12682 - fix: Decreased camera clipping distance in 3D viewer.
- #12653 - feat: custom exception for missing route
- #12712 - fix: Fix base_url validation
- #12714 - fix: Fix base_url validation (backport: 6.7.3.x)
- #12725 - fix: promotion discount entity property initialization error in shopping cart (backport: 6.7.2.x)
- #12723 - refactor: Remove not needed shipping detail SCSS
- #12708 - fix: added missing request header to address manager
- #12710 - refactor: Various PHP code modernizations
- #12615 - feat: warn in rules when DPG indexing is disabled
- #12676 - fix: default shipping address should reset on cart deletion
- #12603 - fix: PromotionDeliveryCalculator exclusion logic
- #12639 - fix: Add missing refreshTokenTtl context field to administration template
- #12510 - fix: promotion discount entity property initialization error in shopping cart
- #12715 - fix: Ensure cache events produce same hash
- #12608 - fix: google analytics product id
- #12679 - fix: validate custom field name
- #12747 - fix: google analytics product id (backport: 6.7.3.x)
- #12728 - fix: added missing request header to address manager (backport: 6.7.3.x)
- #12557 - chore: Resolve reportWrongPhpDocTypeInVarTag core phpstan issues
- #12626 - test: visual test for product list layout
- #12749 - fix: Remove wrong theme assocation from media definition
- #12762 - fix: Remove wrong theme assocation from media definition (backport: 6.7.3.x)
- #12495 - feat(admin-snippets): Implement auto snippet locale registration for admin
- #12794 - feat(admin-snippets): Implement auto snippet locale registration for admin (backport: 6.7.3.x)
- #12504 - test: add storefront tag to storefront facing tests
- #12698 - chore: Added PHPStan rule to forbid update statements in executeQuery…
- #12717 - fix: typo in select sales channel alert
- #12405 - feat(demodata): add sales channel domain to have language switch
- #12415 - fix(test): ats packages bump
- #12724 - fix: Properly calculate the padding of the admin modal
- #12780 - fix: missing empty state description (backport: 6.7.3.x)
- #12636 - feat: add llm context files and update gitignore for ai tools
- #12350 - chore: remove DOD from bug_report template
- #12854 - chore: Update 6.7.3.0 changelog
- #12684 - feat: add IDs to buttons for product analytics
- #12851 - ci: add Claude PR Assistant workflow
Credits
Thanks to all diligent friends for helping us make Shopware better and better with each pull request!
More resources
- Detailed diff on Github to the former version
- Changelog on GitHub for this version.
- Release News corporate blog post
- Installation overview
- Update from a previous installation
Get in touch
Discuss about decisions, bugs you might stumble upon, etc in our community discord. See you there 😉