WooCommerce 10.4.2 has been released.
WooCommerce 10.4.2 has been release and the stable tag has been updated. This update is recommended for all stores.
WooCommerce 10.4.1 has been rolled into the 10.4.2 patch release, addressing a number of stability issues, including WordPress 6.9 compatibility fixes and iAPI cart fixes.
What’s fixed
Fix: iAPI cart actions shouldn’t be cached (#62403)
The Interactivity API Mini Cart wasn’t updating when products were added to the cart because browsers were caching the Store API responses and returning stale data. This fix adds cache: ‘no-store’ to all cart-related fetch requests, ensuring fresh data is always retrieved from the server. The fix aligns the new iAPI cart store with how the existing cart store already handles caching.
Fix: HPOS (High-Performance Order Storage) sync-on-read optimization reverted (#62408)
Due to a bug in the metadata comparison function, when orders contained complex metadata (like nested arrays with objects), the faulty comparison was triggering unnecessary order saves, which caused the woocommerce_after_order_object_save hook to fire unexpectedly. This created compatibility issues with plugins like Jetpack Sync that rely on that hook to detect actual order changes.
Fix: PHP notices that appeared on fresh WooCommerce installations (#62419)
When as_unschedule_all_actions was called before the Action Scheduler data store was initialized, a PHP notice would appear. The premature call also triggered translation loading too early, resulting in multiple PHP warnings and broken headers on the wp-admin screen. The fix ensures these actions are properly deferred until the appropriate initialization hook.
Fix: Excessive debug logging in the get_provider_links() method (#62404)
The method was logging an “invalid country code” debug message every time an empty country code was passed, but since the country_code parameter is optional and defaults to an empty string, this caused unnecessary log spam whenever payment gateways loaded without a country context. The fix skips validation for empty country codes while still tracking genuinely invalid ones.
Fix: Compatibility issue where the Post_Content renderer (#62420)
Post_Content renderer was interfering with other plugins, particularly MailPoet. The problem caused forms to not render properly in block-based themes. The fix ensures the Post_Content renderer uses stateless logic only in email contexts and dynamically swaps the callback to prevent conflicts with other plugins.
Fix: Product Editor crash on WordPress 6.9 (#62428)
If you’re using the block-based Product Editor and clicked “Full editor” in the Description section, it would crash with a JavaScript error on WordPress 6.9. This happened because WordPress 6.9 removed some Gutenberg editor mode features that WooCommerce still referenced. The fix removes this deprecated code and cleans up related unused components.
Leave a Reply