== Changelog == = 10.5.1 2026-02-10 = **WooCommerce** * Fix - Admin: revert to the previous version of the recent reviews widget, as errors have been reported in some setups. [#63195](https://github.com/woocommerce/woocommerce/pull/63195) * Fix - Fix issue that caused the shop page not to show up in Divi under certain circumstances [#63205](https://github.com/woocommerce/woocommerce/pull/63205) * Fix - Only disable add-to-cart button in variable products when wc-add-to-cart-variation is enqueued [#63194](https://github.com/woocommerce/woocommerce/pull/63194) * Enhancement - Add additional validation in the PayPal Standard shipping callback method. [#63193](https://github.com/woocommerce/woocommerce/pull/63193) = 10.5.0 2026-02-04 = **WooCommerce** * Fix - Add conditional checks to prevent the WooCommerce Accordion block from appearing in the block inserter on WordPress 6.9 and later. [#62626](https://github.com/woocommerce/woocommerce/pull/62626) * Fix - Added validation for PayPal Standard purchase unit amount in create-order requests to prevent errors when order totals are invalid. [#62385](https://github.com/woocommerce/woocommerce/pull/62385) * Fix - Adds an ID for the setup wizard, avoiding a deprecation error under PHP 8.5. [#62288](https://github.com/woocommerce/woocommerce/pull/62288) * Fix - Add support for collectable shipping methods in local pickup functionality [#62623](https://github.com/woocommerce/woocommerce/pull/62623) * Fix - Add the CallbackUtil class and fix get_price_hash for variations [#61779](https://github.com/woocommerce/woocommerce/pull/61779) * Fix - Add to Cart Button: use a11y utils from script module [#62014](https://github.com/woocommerce/woocommerce/pull/62014) * Fix - Compatibility with WP 6.9: improve the way WooCommerce block theme styles are enqueued [#62048](https://github.com/woocommerce/woocommerce/pull/62048) * Fix - Ensure block email content preview displays the correct item. [#62206](https://github.com/woocommerce/woocommerce/pull/62206) * Fix - Ensure discount fees are included in the order subtotal calculation on the admin order view [#62454](https://github.com/woocommerce/woocommerce/pull/62454) * Fix - Ensure guest orders cannot be read by customers without providing the key and billing address. [#62559](https://github.com/woocommerce/woocommerce/pull/62559) * Fix - Fix: order being incorrectly changed to Completed [#62191](https://github.com/woocommerce/woocommerce/pull/62191) * Fix - Fix: Store API: Orders endpoint now returns an empty array for the `variation` field on simple products, matching cart endpoint behavior. [#62162](https://github.com/woocommerce/woocommerce/pull/62162) * Fix - Fix a bug where Preact warns in development about inconsistent rendering between SSR content and client. [#62155](https://github.com/woocommerce/woocommerce/pull/62155) * Fix - Fix a bug where the `Dimension` block attribute of Mini-Cart Contents was not respected. [#62384](https://github.com/woocommerce/woocommerce/pull/62384) * Fix - Fix Analytics Products report to support product types extending WC_Product_Variable by checking variations array as fallback. [#62648](https://github.com/woocommerce/woocommerce/pull/62648) * Fix - Fix bottom margin deprecation notices for controls in the Product Collection block. [#62705](https://github.com/woocommerce/woocommerce/pull/62705) * Fix - Fix decoding attribute option name [#62562](https://github.com/woocommerce/woocommerce/pull/62562) * Fix - Fixed enqueuing of the whole `wordpress/editor` script where unnecessary. [#62438](https://github.com/woocommerce/woocommerce/pull/62438) * Fix - Fixed order creation failures in PayPal Standard when items contain negative amounts or fractional quantities by omitting the item breakdown in these cases, allowing orders to proceed with the total amount only. [#62576](https://github.com/woocommerce/woocommerce/pull/62576) * Fix - Fixed REST API handling of attribute names containing special characters when creating product variations [#61939](https://github.com/woocommerce/woocommerce/pull/61939) * Fix - Fixes breadcrumbs sometimes throwing errors when categories inconsistencies happened in the Database. [#62210](https://github.com/woocommerce/woocommerce/pull/62210) * Fix - Fixes for Migrator CLI [#61453](https://github.com/woocommerce/woocommerce/pull/61453) * Fix - Fix fatal error when viewing old orders with legacy tax data format in order item metadata. The fix preserves tax values and attempts to infer the tax rate ID from order context for better backwards compatibility. Applies to product, shipping, and fee order items. [#62352](https://github.com/woocommerce/woocommerce/pull/62352) * Fix - Fix Import Status Bar UI overlap with filter dropdowns and add loading state feedback [#62675](https://github.com/woocommerce/woocommerce/pull/62675) * Fix - Fix intermittent blank shop page when WordPress resolves by `slug` instead of `page ID`. [#61788](https://github.com/woocommerce/woocommerce/pull/61788) * Fix - Fix minicart focus when multiple minicarts are in the page [#62494](https://github.com/woocommerce/woocommerce/pull/62494) * Fix - Fix minicart prices formatted with too many decimals [#62355](https://github.com/woocommerce/woocommerce/pull/62355) * Fix - Fix missing order attribution elements when checkout page is pre-rendered. [#62609](https://github.com/woocommerce/woocommerce/pull/62609) * Fix - Fix PHP warning undefined array key "post_type". [#55354](https://github.com/woocommerce/woocommerce/pull/55354) * Fix - Fix product permalinks to use deepest category instead of highest parent term ID when product is assigned to multiple categories. [#62321](https://github.com/woocommerce/woocommerce/pull/62321) * Fix - Fix REST API V4 country/state validation to accept state codes with country prefixes (e.g., DE:DE-BY) for compatibility with V3 API format. [#62495](https://github.com/woocommerce/woocommerce/pull/62495) * Fix - Fix scheduled sales starting/ending at wrong times by using per-product Action Scheduler events instead of relying solely on daily cron. [#62115](https://github.com/woocommerce/woocommerce/pull/62115) * Fix - Fix tax calculation for manual orders when using fixed total price mode (woocommerce_adjust_non_base_location_prices filter). [#62271](https://github.com/woocommerce/woocommerce/pull/62271) * Fix - Fix Tracks events being rejected when array properties are passed by automatically converting arrays to valid formats [#61729](https://github.com/woocommerce/woocommerce/pull/61729) * Fix - Fix using null as array index warning in variable products data store [#62452](https://github.com/woocommerce/woocommerce/pull/62452) * Fix - Fix variation date_modified not updating when toggling POS visibility on variable products. [#62827](https://github.com/woocommerce/woocommerce/pull/62827) * Fix - Fix warning when rendering subcategory thumbnails if the thumbnail attachment lookup fails. [#62198](https://github.com/woocommerce/woocommerce/pull/62198) * Fix - Flat rate: allow empty main cost so class-only rates work again [#61313](https://github.com/woocommerce/woocommerce/pull/61313) * Fix - Handles authorization already captured errors on PayPal Standard by ignoring the error and properly setting the PayPal order status meta to `CAPTURED`. [#62582](https://github.com/woocommerce/woocommerce/pull/62582) * Fix - Improved Shipping Method block alignment and mobile responsiveness when shipping method titles are long. [#62610](https://github.com/woocommerce/woocommerce/pull/62610) * Fix - Limit ProductControl component to loading a maximum of 25 variations at once [#61853](https://github.com/woocommerce/woocommerce/pull/61853) * Fix - Migrate BlocksSharedState to a class with static methods to fix a bug where state was duplicated between block instances. [#62168](https://github.com/woocommerce/woocommerce/pull/62168) * Fix - Navigation store: don't call deprecated onHistoryChange [#62049](https://github.com/woocommerce/woocommerce/pull/62049) * Fix - Prevent an error that occurred when duplicating a product if the duplicate's SKU matched the SKU of a trashed product [#62628](https://github.com/woocommerce/woocommerce/pull/62628) * Fix - Prevent delay/jarring rendering of pickup location in checkout block. [#61852](https://github.com/woocommerce/woocommerce/pull/61852) * Fix - Prevent errors when plugins incorrectly call wc_add_notice before session is initialized [#62310](https://github.com/woocommerce/woocommerce/pull/62310) * Fix - Prevent fatal errors when retrieving orders with deleted products on Store API [#62074](https://github.com/woocommerce/woocommerce/pull/62074) * Fix - Prevent Select2 styles from leaking into other plugins [#61956](https://github.com/woocommerce/woocommerce/pull/61956) * Fix - Product Collection: Remove unnecessary margin-top when there's no store notices displayed [#62144](https://github.com/woocommerce/woocommerce/pull/62144) * Fix - Product Gallery: Fix arrows gap on the frontend [#62261](https://github.com/woocommerce/woocommerce/pull/62261) * Fix - Product Gallery: Fix variation image not displayed when it's the same as the product main image [#62803](https://github.com/woocommerce/woocommerce/pull/62803) * Fix - Product Gallery: improve layout of full page gallery [#62172](https://github.com/woocommerce/woocommerce/pull/62172) * Fix - Remove unnecessary data from shipping zone objects [#62157](https://github.com/woocommerce/woocommerce/pull/62157) * Fix - Remove usage of feature_is_enabled in ProductVersionStringInvalidator::init [#62665](https://github.com/woocommerce/woocommerce/pull/62665) * Fix - Respect “Sold individually” for variable products in Order Again; normalize variation attributes, enforce qty=1, prevent duplicate variations; add unit test. [#61344](https://github.com/woocommerce/woocommerce/pull/61344) * Fix - Stores the PayPal Standard order status upon creation and skips capture when payer action is required. [#62433](https://github.com/woocommerce/woocommerce/pull/62433) * Fix - Styling and copy improvements to Launch Your Store screen [#62254](https://github.com/woocommerce/woocommerce/pull/62254) * Fix - Support embeds in V4 order endpoint when using plain permalinks. [#62366](https://github.com/woocommerce/woocommerce/pull/62366) * Fix - Update the email content block to display the correct information. [#62010](https://github.com/woocommerce/woocommerce/pull/62010) * Fix - Update woocommerce_block_asset_resource_hints to work per-site, rather than across the network on multisite instances [#62211](https://github.com/woocommerce/woocommerce/pull/62211) * Fix - Use WordPress core Accordion block in Product Details block for WP 6.9+, with fallback for older versions. [#62339](https://github.com/woocommerce/woocommerce/pull/62339) * Fix - Ensure there's no deprecation warning about deprecated feature flags when plugins are activated. [#62939](https://github.com/woocommerce/woocommerce/pull/62939) * Fix - Prevent PHP warnings when accessing templates without content [#62909](https://github.com/woocommerce/woocommerce/pull/62909) * Fix - Fix fatal error when third-party plugins instantiate REST controllers before WooCommerce is fully initialized. [#63069](https://github.com/woocommerce/woocommerce/pull/63069) * Add - Add a basic RestApiCache trait [#61798](https://github.com/woocommerce/woocommerce/pull/61798) * Add - Add ability to hide products from Point of Sale. [#62534](https://github.com/woocommerce/woocommerce/pull/62534) * Add - Add analytics-scheduled-import feature flag to control scheduled analytics imports feature [#62149](https://github.com/woocommerce/woocommerce/pull/62149) * Add - Add analytics import mode setting to Settings API [#62169](https://github.com/woocommerce/woocommerce/pull/62169) * Add - Add analytics import status and manual trigger endpoints [#62196](https://github.com/woocommerce/woocommerce/pull/62196) * Add - Add a new controller for generating a product feed for the Woo mobile app. [#62313](https://github.com/woocommerce/woocommerce/pull/62313) * Add - Add block email template for Fulfillment emails. [#62146](https://github.com/woocommerce/woocommerce/pull/62146) * Add - Add configurable clone mode to WC_Data to support both duplication and caching workflows while maintaining backward compatibility. [#61591](https://github.com/woocommerce/woocommerce/pull/61591) * Add - Add currency data to the order item response in REST API V4 [#61415](https://github.com/woocommerce/woocommerce/pull/61415) * Add - Add date status and manual update UI to Analytics pages [#62276](https://github.com/woocommerce/woocommerce/pull/62276) * Add - Add default scheduled import option for new installations [#62331](https://github.com/woocommerce/woocommerce/pull/62331) * Add - Add DELETE endpoint for shipping zone methods in REST API v4. [#62015](https://github.com/woocommerce/woocommerce/pull/62015) * Add - Add DELETE endpoint for shipping zones in REST API v4. [#62016](https://github.com/woocommerce/woocommerce/pull/62016) * Add - Add import mode control to Analytics settings, allowing users to choose between scheduled (every 12 hours) and immediate updates [#62187](https://github.com/woocommerce/woocommerce/pull/62187) * Add - Add password manager support to password fields in my account screen. [#62625](https://github.com/woocommerce/woocommerce/pull/62625) * Add - Add REST API endpoint `/wc/v4/fulfillments/providers` to expose shipping provider information including labels, icons, and tracking URLs for CIAB Next Admin integration. [#61910](https://github.com/woocommerce/woocommerce/pull/61910) * Add - Adds Blaze as a default marketing channel [#62160](https://github.com/woocommerce/woocommerce/pull/62160) * Add - Add scheduled updates promotion inbox note [#62226](https://github.com/woocommerce/woocommerce/pull/62226) * Add - Add scheduled updates promotion notices [#62225](https://github.com/woocommerce/woocommerce/pull/62225) * Add - Add support for filtering product categories by parent level in the Store API. [#62447](https://github.com/woocommerce/woocommerce/pull/62447) * Add - Add support to Hydration class to get store API responses with url and query params. [#62057](https://github.com/woocommerce/woocommerce/pull/62057) * Add - Add variation_id in error data for `order_item_product_invalid_variation_id` errors. [#62240](https://github.com/woocommerce/woocommerce/pull/62240) * Add - Add WordPress environment type to site status report. [#62458](https://github.com/woocommerce/woocommerce/pull/62458) * Add - Add `woocommerce_email_content_post_data` filter hook for customizing email template post data before creation. [#62512](https://github.com/woocommerce/woocommerce/pull/62512) * Add - Breadcrumbs: Set preferred term in core Breadcrumbs block to keep compatibility with Woo's block [#62746](https://github.com/woocommerce/woocommerce/pull/62746) * Add - Implement cache control headers for REST API responses [#61476](https://github.com/woocommerce/woocommerce/pull/61476) * Add - Introduce Product Object feature for improved performance. [#62041](https://github.com/woocommerce/woocommerce/pull/62041) * Add - Make refunds embeddable and payment gateway settings embeddable in Order V4 [#61463](https://github.com/woocommerce/woocommerce/pull/61463) * Add - New block for the email editor that lets users add a coupon code in their emails * Add - Product Gallery: add active Thumbnails outline style to existing overlay [#62253](https://github.com/woocommerce/woocommerce/pull/62253) * Add - Product Gallery Large Image: allow inserting other blocks [#62030](https://github.com/woocommerce/woocommerce/pull/62030) * Add - Set Product Categories as the preferred taxonomy for the Breadcrumbs block [#62283](https://github.com/woocommerce/woocommerce/pull/62283) * Update - Add additional customization to RestApiCache trait [#61838](https://github.com/woocommerce/woocommerce/pull/61838) * Update - Add caching and cache control headers for product REST API responses [#62258](https://github.com/woocommerce/woocommerce/pull/62258) * Update - Add db update to autoload frequently used options [#62036](https://github.com/woocommerce/woocommerce/pull/62036) * Update - Add HTTP headers to cached outputs in RestApiCache [#61931](https://github.com/woocommerce/woocommerce/pull/61931) * Update - Add N-Genius Online to Recommended Payment Partners [#62807](https://github.com/woocommerce/woocommerce/pull/62807) * Update - Add prefixes to checkout autocomplete attributes to help with Safari autofill [#62513](https://github.com/woocommerce/woocommerce/pull/62513) * Update - Add relevant hooks tracking for cached outputs in RestApiCache [#61878](https://github.com/woocommerce/woocommerce/pull/61878) * Update - Add REST API backend caching and cache control headers configuration [#61986](https://github.com/woocommerce/woocommerce/pull/61986) * Update - Adds a woocommerce_shipping_tax_class filter to allow dynamically calculating the shipping tax class. [#62040](https://github.com/woocommerce/woocommerce/pull/62040) * Update - Allow “Email FROM” to automatically use the “Store Title” as the value unless the merchant manually changes it. [#62369](https://github.com/woocommerce/woocommerce/pull/62369) * Update - Blocks Checkout design improvements for multiple shipping packages. [#61625](https://github.com/woocommerce/woocommerce/pull/61625) * Update - Customize Your Store: remove unnecessary code upon simplifying the journey [#62161](https://github.com/woocommerce/woocommerce/pull/62161) * Update - Customize Your Store: Simplify the flow [#62158](https://github.com/woocommerce/woocommerce/pull/62158) * Update - Deprecate the marketplace feature flag - the in-app marketplace is now always enabled and the feature check is no longer necessary. [#62264](https://github.com/woocommerce/woocommerce/pull/62264) * Update - Ensure rewrite rules are updated whenever new block email templates are generated. [#62117](https://github.com/woocommerce/woocommerce/pull/62117) * Update - Product Gallery: Call the block stable [#62278](https://github.com/woocommerce/woocommerce/pull/62278) * Update - Product Gallery: Rename Large Image block to Viewer [#62163](https://github.com/woocommerce/woocommerce/pull/62163) * Update - Reduce option loading in Brands code. [#62000](https://github.com/woocommerce/woocommerce/pull/62000) * Update - Reduce options queried on admin page loads. [#62033](https://github.com/woocommerce/woocommerce/pull/62033) * Update - Refactor Add to Cart + Options grouped product template part to decrease the gap between quantity selector and product name [#62702](https://github.com/woocommerce/woocommerce/pull/62702) * Update - Refactored the address update functionality of PayPal Standard with improved status tracking to prevent duplicate requests. [#62418](https://github.com/woocommerce/woocommerce/pull/62418) * Update - Remove database option fetch for legacy coupon menu display preference. [#62053](https://github.com/woocommerce/woocommerce/pull/62053) * Update - Update hooks alternatives documentation [#62263](https://github.com/woocommerce/woocommerce/pull/62263) * Update - Update WordPress Abilities API to v0.4.0 [#62027](https://github.com/woocommerce/woocommerce/pull/62027) * Update - Re-add the AccessiblePrivateMethods trait [#63088](https://github.com/woocommerce/woocommerce/pull/63088) * Dev - Add @template annotations to DI container for better PHPStan type inference. [#62301](https://github.com/woocommerce/woocommerce/pull/62301) * Dev - Add a checkbox for automatic milestone assignment on pull requests [#62063](https://github.com/woocommerce/woocommerce/pull/62063) * Dev - Add cache invalidation interface and product invalidator [#61613](https://github.com/woocommerce/woocommerce/pull/61613) * Dev - Add E2E tests for analytics scheduled updates feature [#62332](https://github.com/woocommerce/woocommerce/pull/62332) * Dev - Added deprecation notices for deprecated methods in 'WC_Gateway_Paypal_Helper' and 'WC_Gateway_Paypal_Notices' classes. [#62645](https://github.com/woocommerce/woocommerce/pull/62645) * Dev - Add mechanism to detect scripts not declaring blocks dependencies [#62229](https://github.com/woocommerce/woocommerce/pull/62229) * Dev - Add performance guidance to WC_Product_Variable::get_available_variations() docblock [#62715](https://github.com/woocommerce/woocommerce/pull/62715) * Dev - Add PHPStan analyze support and Github action to run on each PR. [#62064](https://github.com/woocommerce/woocommerce/pull/62064) * Dev - Add PHPStan conditional return type to WC_Product_Variable::get_available_variations(). [#62656](https://github.com/woocommerce/woocommerce/pull/62656) * Dev - CI: Update the latest PHP version in use to 8.5 [#62650](https://github.com/woocommerce/woocommerce/pull/62650) * Dev - Deprecate orders v2 related methods in WC_Gateway_Paypal_Request class in favor of the Automattic\WooCommerce\Gateways\PayPal\Request class. [#62640](https://github.com/woocommerce/woocommerce/pull/62640) * Dev - Deprecate WC_Gateway_Paypal_Buttons class in favor of Automattic\WooCommerce\Gateways\PayPal\Buttons class. [#62633](https://github.com/woocommerce/woocommerce/pull/62633) * Dev - Deprecate WC_Gateway_Paypal_Constants class in favor of Automattic\WooCommerce\Gateways\PayPal\Constants. [#62595](https://github.com/woocommerce/woocommerce/pull/62595) * Dev - Deprecate WC_Gateway_Paypal_Helper class in favor of Automattic\WooCommerce\Gateways\PayPal\Helper. [#62596](https://github.com/woocommerce/woocommerce/pull/62596) * Dev - Deprecate WC_Gateway_Paypal_Notices class in favor of Automattic\WooCommerce\Gateways\PayPal\Notices class. [#62599](https://github.com/woocommerce/woocommerce/pull/62599) * Dev - Deprecate WC_Gateway_Paypal_Transact_Account_Manager class in favor of Automattic\WooCommerce\Gateways\PayPal\TransactAccountManager class. [#62624](https://github.com/woocommerce/woocommerce/pull/62624) * Dev - Deprecate WC_Gateway_Paypal_Webhook_Handler class in favor of Automattic\WooCommerce\Gateways\PayPal\WebhookHandler class. [#62630](https://github.com/woocommerce/woocommerce/pull/62630) * Dev - Fix analytics overview flaky tests [#62244](https://github.com/woocommerce/woocommerce/pull/62244) * Dev - Fix flaky mini-cart e2e test by handling page closure during localStorage cleanup [#61950](https://github.com/woocommerce/woocommerce/pull/61950) * Dev - Introduces new constants to store PayPal Standard order meta keys. [#62635](https://github.com/woocommerce/woocommerce/pull/62635) * Dev - Pass input element as context in quantity selector [#62045](https://github.com/woocommerce/woocommerce/pull/62045) * Dev - Reduce PHPStan level from 9 to 8 to improve developer productivity while maintaining strong type safety [#62387](https://github.com/woocommerce/woocommerce/pull/62387) * Dev - Remove skipped E2E tests for WordPress versions <= 6.7 [#62391](https://github.com/woocommerce/woocommerce/pull/62391) * Dev - Remove the AccessiblePrivateMethods trait [#62200](https://github.com/woocommerce/woocommerce/pull/62200) * Dev - Update AI backend skill to always be invoked before writing tests [#62531](https://github.com/woocommerce/woocommerce/pull/62531) * Dev - [Experimental] Add to Cart + Options: improve quantity selection by removing imperative DOM manipulation. [#61821](https://github.com/woocommerce/woocommerce/pull/61821) * Dev - Update PayPal REST API controllers to use new namespaced classes instead of deprecated WC_Gateway_Paypal_* classes. [#63040](https://github.com/woocommerce/woocommerce/pull/63040) * Tweak - - Includes a source parameter for requests to the `/update-check` and `/subscriptions` endpoints on WooCommerce.com if the request originates from the Refresh button on My Subscriptions - Fix source parameter for other requests to the `/subscriptions` endpoint originating from the My Subscriptions page [#62674](https://github.com/woocommerce/woocommerce/pull/62674) * Tweak - Add a hook enabling Woo extensions to set the Personalizer context for their personalization tags. [#62337](https://github.com/woocommerce/woocommerce/pull/62337) * Tweak - Add deprecated tag to wc_enqueue_js(). [#62219](https://github.com/woocommerce/woocommerce/pull/62219) * Tweak - Add null-check to cart handler--prevents accessing cart if not initialized [#62644](https://github.com/woocommerce/woocommerce/pull/62644) * Tweak - Auto-paginate variation loading in the `ProductControl` component. [#62114](https://github.com/woocommerce/woocommerce/pull/62114) * Tweak - Clarify account creation setting description [#60404](https://github.com/woocommerce/woocommerce/pull/60404) * Tweak - Improved the translation string for order headings in the dashboard orders widget. [#62362](https://github.com/woocommerce/woocommerce/pull/62362) * Tweak - Improve UX for tax-inclusive pricing configuration by adding validation notice and clearer setting description when base tax rate is not configured. [#61471](https://github.com/woocommerce/woocommerce/pull/61471) * Tweak - Moved package_id and package_name generation from CartController to WC_Cart::get_shipping_packages() method to ensure these fields are always present in shipping packages, regardless of how they are accessed. [#62393](https://github.com/woocommerce/woocommerce/pull/62393) * Performance - Add index to user_email within woocommerce_downloadable_product_permissions to improve performance [#62101](https://github.com/woocommerce/woocommerce/pull/62101) * Performance - Add to Cart + Options: Avoid loading unnecessary scripts when rendering 3rd-party product types [#62681](https://github.com/woocommerce/woocommerce/pull/62681) * Performance - Cache tax display option to avoid repeated get_option() calls in variation price loop [#61782](https://github.com/woocommerce/woocommerce/pull/61782) * Performance - Fix: Set expiration time for filter data cache to avoid autoloading all cache data [#62575](https://github.com/woocommerce/woocommerce/pull/62575) * Performance - Implement batched pixel requests for improved performance when sending tracking events [#62461](https://github.com/woocommerce/woocommerce/pull/62461) * Performance - Optimize ProductImage block to avoid unnecessary gallery image calculations. [#62107](https://github.com/woocommerce/woocommerce/pull/62107) * Performance - Performance: clean up filter data transients cache along with the product/shop transients cache. [#62591](https://github.com/woocommerce/woocommerce/pull/62591) * Performance - Prime caches before fetching child products in grouped product price calculations [#61784](https://github.com/woocommerce/woocommerce/pull/61784) * Performance - Recent Reviews widget: improve widget performance. [#62680](https://github.com/woocommerce/woocommerce/pull/62680) * Performance - Rely on case-insensitive collation when looking coupon codes up. [#62145](https://github.com/woocommerce/woocommerce/pull/62145) * Performance - Replace get_available_variations() with get_visible_children() and get_price() in product-image.php template for better performance. [#62777](https://github.com/woocommerce/woocommerce/pull/62777) * Enhancement - Add missing UTM Parameters to order attribution [#60397](https://github.com/woocommerce/woocommerce/pull/60397) * Enhancement - Disable add to cart button in variable products until the script has loaded [#62631](https://github.com/woocommerce/woocommerce/pull/62631) * Enhancement - Eliminate hard-coded 'grouped' product handling in frontend of quantity selector block [#61496](https://github.com/woocommerce/woocommerce/pull/61496) * Enhancement - Show tax suffix on new line in order email totals [#62059](https://github.com/woocommerce/woocommerce/pull/62059) * Enhancement - Updated wc-analytics/customers API route to include location filtering (country and state), and user type filtering (registered or guest) [#62267](https://github.com/woocommerce/woocommerce/pull/62267) * Enhancement - Update WooEmailTemplate to simplify style application. [#62051](https://github.com/woocommerce/woocommerce/pull/62051) = 10.4.3 2025-12-22 = **WooCommerce** * Fix - Ensure guest orders cannot be read by customers without providing the key and billing address. [#62557](https://github.com/woocommerce/woocommerce/pull/62557) * Fix - Fix undo button after cart item removal in the cart shortcode [#62529](https://github.com/woocommerce/woocommerce/pull/62529) * Fix - Improve handling of order modified date during HPOS sync on read to prevent infinite loops. [#62532](https://github.com/woocommerce/woocommerce/pull/62532) * Update - Add automatic currency transition from BGN to EUR for Bulgaria effective January 1, 2026 [#62478](https://github.com/woocommerce/woocommerce/pull/62478) = 10.4.2 2025-12-12 = **WooCommerce** * Fix - Product Editor: Remove editor mode and unused rich text components [#62428](https://github.com/woocommerce/woocommerce/pull/62428) = 10.4.1 2025-12-12 = **WooCommerce** * Fix - Fix cached API request in iAPI cart store [#62416](https://github.com/woocommerce/woocommerce/pull/62416) * Fix - Prevent excessive debug logging from the Payments Settings page. [#62404](https://github.com/woocommerce/woocommerce/pull/62404) * Fix - Prevent notice as_unschedule_all_actions() was called before the Action Scheduler data store was initialized [#62419](https://github.com/woocommerce/woocommerce/pull/62419) * Fix - Revert to previous sync-on-read logic to prevent unnecessary writes when HPOS and compat mode are enabled. [#62408](https://github.com/woocommerce/woocommerce/pull/62408) = 10.4.0 2025-12-10 = **WooCommerce** * Fix - Adds validation for currency support on PayPal Standard based on the official PayPal currency table for the Orders V2 API. [#62032](https://github.com/woocommerce/woocommerce/pull/62032) * Fix - Add to Cart + Options: add up quantities when the same product is in the cart multiple times as different cart items [#61445](https://github.com/woocommerce/woocommerce/pull/61445) * Fix - Add to Cart + Options: hide Product Quantity block if its inner input is hidden [#61796](https://github.com/woocommerce/woocommerce/pull/61796) * Fix - Add to Cart + Options: hide the Product Quantity and Add to Cart Button blocks in out of stock variations [#61520](https://github.com/woocommerce/woocommerce/pull/61520) * Fix - Add to Cart + Options: improve editor display for users without permissions to edit the template parts [#61663](https://github.com/woocommerce/woocommerce/pull/61663) * Fix - Add to Cart + Options: make grouped product inner blocks show sample data when the store has no products [#61349](https://github.com/woocommerce/woocommerce/pull/61349) * Fix - Add to Cart + Options: support the Product block when a variation is selected [#61639](https://github.com/woocommerce/woocommerce/pull/61639) * Fix - Align Payment Settings header size with other tabs under WC Settings [#61671](https://github.com/woocommerce/woocommerce/pull/61671) * Fix - All Products: Prevent image interaction in the editor [#61951](https://github.com/woocommerce/woocommerce/pull/61951) * Fix - Coerce order total into float when empty string is provided in setter [#61257](https://github.com/woocommerce/woocommerce/pull/61257) * Fix - Consistently format empty strings in decimal format utils [#59368](https://github.com/woocommerce/woocommerce/pull/59368) * Fix - Correctly handle deleted meta in legacy > HPOS sync. [#61193](https://github.com/woocommerce/woocommerce/pull/61193) * Fix - Ensure checkout/place order logger respects log level threshold [#61842](https://github.com/woocommerce/woocommerce/pull/61842) * Fix - Ensure legacy > HPOS sync correctly handles deleted orders deleted while sync was off. [#61290](https://github.com/woocommerce/woocommerce/pull/61290) * Fix - Featured Product block: Fixed default color of title inner block to have better contrast. [#61554](https://github.com/woocommerce/woocommerce/pull/61554) * Fix - Fix: block notice template version. [#61421](https://github.com/woocommerce/woocommerce/pull/61421) * Fix - Fix: order metadata being deleted when order logs were deleted [#61635](https://github.com/woocommerce/woocommerce/pull/61635) * Fix - Fix Abilities API integration tests for WordPress 6.9+ compatibility with backward compatibility for earlier versions. [#61560](https://github.com/woocommerce/woocommerce/pull/61560) * Fix - Fix a bug preventing UAE and Singapore merchants from onboarding in WooPayments. [#61448](https://github.com/woocommerce/woocommerce/pull/61448) * Fix - Fix CES edit survey not displaying [#61660](https://github.com/woocommerce/woocommerce/pull/61660) * Fix - Fix COGS calculation for product order items [#61694](https://github.com/woocommerce/woocommerce/pull/61694) * Fix - Fixes a notice with agentic commerce webhooks due to checking whether the feature was enabled before init. [#61424](https://github.com/woocommerce/woocommerce/pull/61424) * Fix - Fixes flat rate shipping cost input locale formatting issue where comma decimal separator is replaced with a dot resulting in incorrect display and saving at later times. [#61382](https://github.com/woocommerce/woocommerce/pull/61382) * Fix - Fix floating-point precision bug in price conversion where prices like 10.04 would display as 10.03. [#61377](https://github.com/woocommerce/woocommerce/pull/61377) * Fix - Fix isDiscount check for order summary to fix display issues when product is discounted to 0 [#61256](https://github.com/woocommerce/woocommerce/pull/61256) * Fix - Fix issue in where pagination with the modified orderby was causing duplicates in Variation and Product endpoints. [#61410](https://github.com/woocommerce/woocommerce/pull/61410) * Fix - Fix issue where tax reports where showing duplicate rows for orders with multiple tax rates. [#61400](https://github.com/woocommerce/woocommerce/pull/61400) * Fix - Fix issue where updating the woocommerce_default_date_range option was saving stringified undefined values. [#61971](https://github.com/woocommerce/woocommerce/pull/61971) * Fix - Fix keyboard navigation in iAPI minicart [#61716](https://github.com/woocommerce/woocommerce/pull/61716) * Fix - Fix Mini-Cart footer to show only enabled calculation types (shipping, taxes, discounts) instead of always showing all three. [#61861](https://github.com/woocommerce/woocommerce/pull/61861) * Fix - Fix missing data in certain WooCommerce blocks inside the Product block when editing as an author [#61718](https://github.com/woocommerce/woocommerce/pull/61718) * Fix - Fix order summary description text overflow in checkout [#61207](https://github.com/woocommerce/woocommerce/pull/61207) * Fix - Fix PHP notice for indirect modification of overloaded property in WC_Tracks [#61362](https://github.com/woocommerce/woocommerce/pull/61362) * Fix - Fix undefined array key warning when firing woocommerce_variation_prices [#61472](https://github.com/woocommerce/woocommerce/pull/61472) * Fix - Flush subscription usage cache when WooCommerce.com license is activated [#61606](https://github.com/woocommerce/woocommerce/pull/61606) * Fix - For HPOS sync-on-read, ensure metadata is fully read from the CPT datastore. [#61293](https://github.com/woocommerce/woocommerce/pull/61293) * Fix - Hide PayPal Standard for orders v2 from the checkout page when the email is empty in the settings. [#62083](https://github.com/woocommerce/woocommerce/pull/62083) * Fix - iAPI Mini Cart - Fix a bug where attributes were not rendered correctly due to incorrect key. [#61764](https://github.com/woocommerce/woocommerce/pull/61764) * Fix - Improve accessibility of emails by setting the aria-role of layout tables to presentation. [#60447](https://github.com/woocommerce/woocommerce/pull/60447) * Fix - Normalize the URLs in PayPal Standard request data to prevent errors due to unsupported URL format in PayPal. [#62082](https://github.com/woocommerce/woocommerce/pull/62082) * Fix - Patterns: fix duplicated product image in Product Gallery pattern [#61953](https://github.com/woocommerce/woocommerce/pull/61953) * Fix - Prevent accidental syncing of order with placeholder post when HPOS compat mode is enabled. [#61381](https://github.com/woocommerce/woocommerce/pull/61381) * Fix - Prevent core-provided payment gateways from showing deactivation actions on the Payments settings page. [#61700](https://github.com/woocommerce/woocommerce/pull/61700) * Fix - Prevent rendering Mini Cart Footer block when it's hidden [#61828](https://github.com/woocommerce/woocommerce/pull/61828) * Fix - Prevent saving the dummy products in email preview [#61810](https://github.com/woocommerce/woocommerce/pull/61810) * Fix - Prevent unnecessary querying of non-existent options on the admin. [#61818](https://github.com/woocommerce/woocommerce/pull/61818) * Fix - Product Collection: improve accessibility of carousel layout [#61780](https://github.com/woocommerce/woocommerce/pull/61780) * Fix - Product Collection: show 'Preview' label when editing the Products by Brand template [#61401](https://github.com/woocommerce/woocommerce/pull/61401) * Fix - Product Filter: Fix Canonical URL encoding issue [#61766](https://github.com/woocommerce/woocommerce/pull/61766) * Fix - Product Filter: support unicode value [#61769](https://github.com/woocommerce/woocommerce/pull/61769) * Fix - Product Filters: add support for databases using ANSI_QUOTES [#61630](https://github.com/woocommerce/woocommerce/pull/61630) * Fix - Product Gallery: fix mobile layout issue in editor [#61531](https://github.com/woocommerce/woocommerce/pull/61531) * Fix - Redirect payments-related tasks to the Payments Settings page. [#62012](https://github.com/woocommerce/woocommerce/pull/62012) * Fix - Remove glboal event handler for a['role=button'] and assign specific ones to elements that needs it [#61506](https://github.com/woocommerce/woocommerce/pull/61506) * Fix - Remove link to product page when already viewing the product in missing variation ID error message [#61532](https://github.com/woocommerce/woocommerce/pull/61532) * Fix - Remove unnecessary animation from Add to Cart + Options block skeleton [#61597](https://github.com/woocommerce/woocommerce/pull/61597) * Fix - Remove `Dinero` dependency and use always `raw_prices` [#61233](https://github.com/woocommerce/woocommerce/pull/61233) * Fix - Replace foreign since variable. [#61419](https://github.com/woocommerce/woocommerce/pull/61419) * Fix - Return correct singular version for "Adresses" in My Account Menu Item [#61667](https://github.com/woocommerce/woocommerce/pull/61667) * Fix - Show Cart and Checkout blocks when minicart footer is empty [#61954](https://github.com/woocommerce/woocommerce/pull/61954) * Fix - Support both WordPress 6.9+ and pre-6.9 action hook names for Abilities API registration to ensure compatibility across WordPress versions. [#61562](https://github.com/woocommerce/woocommerce/pull/61562) * Fix - Support same item with different props in the iAPI minicart. [#61542](https://github.com/woocommerce/woocommerce/pull/61542) * Fix - This PR fixes the bug where Customer Analytics are not getting populated for DBs with ANSI_QUOTES enabled [#61212](https://github.com/woocommerce/woocommerce/pull/61212) * Fix - Trigger order status transition hooks regardless of dirty state. (Reverts #46887) [#61459](https://github.com/woocommerce/woocommerce/pull/61459) * Fix - Trigger term recounts for products after visibility terms change instead of after product saving. [#61457](https://github.com/woocommerce/woocommerce/pull/61457) * Fix - Use email $template_base when generating initial templates [#61305](https://github.com/woocommerce/woocommerce/pull/61305) * Fix - Use event handler to reload page, eliminates deprecated warning in checkout block. [#61498](https://github.com/woocommerce/woocommerce/pull/61498) * Fix - Fix fatal error in needs_shipping() when order contains permanently deleted product [#62103](https://github.com/woocommerce/woocommerce/pull/62103) * Fix - Fix PHP 8.4 fatal error in WooCommerce Helper updater when transient contains malformed data [#62094](https://github.com/woocommerce/woocommerce/pull/62094) * Fix - Restore original HPOS status filtering behavior to exclude internal order statuses when status='any', matching post-based storage behavior. [#62106](https://github.com/woocommerce/woocommerce/pull/62106) * Fix - Fix issue in which regular Checkout requests were getting counted toward rate limit if rate limiting is enabled. [#62318](https://github.com/woocommerce/woocommerce/pull/62318) * Fix - Fix Mini Cart showing undefined product title on slow network connections. [#62275](https://github.com/woocommerce/woocommerce/pull/62275) * Fix - Fix PayPal webhook endpoint URL to use home URL instead of site URL. [#62199](https://github.com/woocommerce/woocommerce/pull/62199) * Fix - Fix text visibility in select inputs [#62292](https://github.com/woocommerce/woocommerce/pull/62292) * Fix - Revert payment options icon selector change [#62291](https://github.com/woocommerce/woocommerce/pull/62291) * Add - Add Agentic Commerce checkout `complete` endpoint and `agentic_commerce` payment gateway feature support. [#61271](https://github.com/woocommerce/woocommerce/pull/61271) * Add - Add an entity versions cache [#61600](https://github.com/woocommerce/woocommerce/pull/61600) * Add - Add a new line when concatenating translations in a script for the Mini-Cart block [#61923](https://github.com/woocommerce/woocommerce/pull/61923) * Add - Add BlockEmailRenderer with email context support and Cart Contents product collection [#61546](https://github.com/woocommerce/woocommerce/pull/61546) * Add - Add debug tool to backfill order fulfillment status in Analytics data. [#61721](https://github.com/woocommerce/woocommerce/pull/61721) * Add - Add fulfillment_status column to wc_order_stats table for new installations to enable order fulfillment tracking in analytics. [#61487](https://github.com/woocommerce/woocommerce/pull/61487) * Add - Add GET endpoint for retrieving individual shipping zone methods in REST API v4, allowing direct access to shipping method data by instance ID. [#61957](https://github.com/woocommerce/woocommerce/pull/61957) * Add - Add hook 'woocommerce_update_order_refund' for refund updates. [#61225](https://github.com/woocommerce/woocommerce/pull/61225) * Add - Add offline payments V4 API endpoint. [#61123](https://github.com/woocommerce/woocommerce/pull/61123) * Add - Adds an agentic commerce integration page when the agentic commerce feature is enabled. [#61427](https://github.com/woocommerce/woocommerce/pull/61427) * Add - Adds the checkout_sessions route for the agentic commerce protocol as an experimental feature [#61216](https://github.com/woocommerce/woocommerce/pull/61216) * Add - Add v4 API routes for fetching and updating payment gateways. [#61278](https://github.com/woocommerce/woocommerce/pull/61278) * Add - Add webhook functionality for agentic commerce protocol. [#61325](https://github.com/woocommerce/woocommerce/pull/61325) * Add - Add `/products/catalog` endpoints to v3 API with mock response behind a local feature flag. [#61332](https://github.com/woocommerce/woocommerce/pull/61332) * Add - Allow HTML tags in the cart product item data fields [#61437](https://github.com/woocommerce/woocommerce/pull/61437) * Add - Auto fill tracking url with the tracking number and the selected shipping provider. [#61368](https://github.com/woocommerce/woocommerce/pull/61368) * Add - Customers V4 endpoint [#61336](https://github.com/woocommerce/woocommerce/pull/61336) * Add - Refactor WooCommerce block entity registration and settings [#61131](https://github.com/woocommerce/woocommerce/pull/61131) * Add - Support for reply-to address in transactional emails [#61355](https://github.com/woocommerce/woocommerce/pull/61355) * Add - V4 sorting options in rest api for customers [#61507](https://github.com/woocommerce/woocommerce/pull/61507) * Add - Display an admin notice when the store's currency is not supported by PayPal Standard. [#62285](https://github.com/woocommerce/woocommerce/pull/62285) * Add - Display a notice when merchant's PayPal Standard account is locked or restricted by PayPal. [#62252](https://github.com/woocommerce/woocommerce/pull/62252) * Update - Add back the : symbol to the cart item data name element [#61839](https://github.com/woocommerce/woocommerce/pull/61839) * Update - Added display support for "Unique product id" in wp-admin products table. [#60049](https://github.com/woocommerce/woocommerce/pull/60049) * Update - Add notice to Add to Cart + Options block encouraging users to upgrade from Product Image Gallery block to Product Gallery [#61201](https://github.com/woocommerce/woocommerce/pull/61201) * Update - Add provider onboarding unsupported handling for the Payments settings page. [#61574](https://github.com/woocommerce/woocommerce/pull/61574) * Update - Adds authorization for agentic checkout [#61592](https://github.com/woocommerce/woocommerce/pull/61592) * Update - Add support for conditional "Finish checkout" button text in cart collections for email rendering [#61822](https://github.com/woocommerce/woocommerce/pull/61822) * Update - Add support for storing COGS values for orders when HPOS is disabled [#61307](https://github.com/woocommerce/woocommerce/pull/61307) * Update - Add to Cart + Options: show spinner when grouped product inners blocks are loading in the editor [#61242](https://github.com/woocommerce/woocommerce/pull/61242) * Update - Add to Cart + Options: stretch Product Quantity to the same height as the Add to Cart Button [#61713](https://github.com/woocommerce/woocommerce/pull/61713) * Update - Apply tighter font sizes and spacing in cart and checkout blocks [#59787](https://github.com/woocommerce/woocommerce/pull/59787) * Update - Check user capability before saving any settings. [#61218](https://github.com/woocommerce/woocommerce/pull/61218) * Update - Deprecate wc_enqueue_js in favor of wp_add_inline_script(). [#61474](https://github.com/woocommerce/woocommerce/pull/61474) * Update - Do not preload leaderboards and performance indicators data outside of Analytics screens. [#61190](https://github.com/woocommerce/woocommerce/pull/61190) * Update - E2E tests: adjust the E2E tests to WP 6.9 [#61648](https://github.com/woocommerce/woocommerce/pull/61648) * Update - Enable the Interactivity API-powered Mini Cart by default. [#60823](https://github.com/woocommerce/woocommerce/pull/60823) * Update - Group agentic commerce settings for better comprehension. [#61477](https://github.com/woocommerce/woocommerce/pull/61477) * Update - Implement approved download dirs cache to prevent duplicate queries. [#61159](https://github.com/woocommerce/woocommerce/pull/61159) * Update - Move HPOS Datastore Caching out of experimental phase. [#61521](https://github.com/woocommerce/woocommerce/pull/61521) * Update - Move order logs deletion to a scheduled action [#61121](https://github.com/woocommerce/woocommerce/pull/61121) * Update - Optimize caching of price data for variations [#61286](https://github.com/woocommerce/woocommerce/pull/61286) * Update - Payment gateways can now implement get_provider_links() to provide contextual provider links for the Payments settings page. [#61681](https://github.com/woocommerce/woocommerce/pull/61681) * Update - Prevent unnecessary queries in admin notices. [#61462](https://github.com/woocommerce/woocommerce/pull/61462) * Update - Product Gallery: remove temporary backwards compatible code for beta block [#61934](https://github.com/woocommerce/woocommerce/pull/61934) * Update - Remove CedCommerce from onboarding marketing task [#61758](https://github.com/woocommerce/woocommerce/pull/61758) * Update - Updated all PHP dependencies. [#61753](https://github.com/woocommerce/woocommerce/pull/61753) * Update - Updated MCP adapter to v0.3.0 and refactored initialization process. [#61974](https://github.com/woocommerce/woocommerce/pull/61974) * Update - Update offline methods REST API v4 route to settings/payments/offline-methods. [#61250](https://github.com/woocommerce/woocommerce/pull/61250) * Update - Update payments recommendations in South Africa. [#61922](https://github.com/woocommerce/woocommerce/pull/61922) * Update - Update WooCommerce email titles and descriptions when the block email editor is enabled. [#61883](https://github.com/woocommerce/woocommerce/pull/61883) * Update - Use 'publish' as the default post status for new email editor posts. [#61814](https://github.com/woocommerce/woocommerce/pull/61814) * Update - Add order meta to prevent duplicate PayPal Standard API calls when we have already received a 404 response for a capture request on an authorised payment. [#62314](https://github.com/woocommerce/woocommerce/pull/62314) * Update - Ensure PayPal Standard capture later flow uses the correct authorization ID. [#62212](https://github.com/woocommerce/woocommerce/pull/62212) * Update - Include WooCommerce version in PayPal Standard gateway requests. [#62203](https://github.com/woocommerce/woocommerce/pull/62203) * Update - Include WooCommerce version in the PayPal Standard request header. [#62286](https://github.com/woocommerce/woocommerce/pull/62286) * Update - Update version requirements to WordPress 6.8 and PHP 7.4 in readme.txt and woocommerce.php. [#62341](https://github.com/woocommerce/woocommerce/pull/62341) * Dev - Add wc/v4/shipping-zone-method endpoint for creating a shipping zone with Core Data compatibility and modern v4 architecture patterns. [#61275](https://github.com/woocommerce/woocommerce/pull/61275) * Dev - Add wc/v4/shipping-zone-method endpoint for updating a shipping zone with Core Data compatibility and modern v4 architecture patterns. [#61337](https://github.com/woocommerce/woocommerce/pull/61337) * Dev - Add wc/v4/shipping-zone-method endpoints (POST/PUT) for creating and updating shipping methods with Core Data compatibility and modern v4 architecture patterns. [#61124](https://github.com/woocommerce/woocommerce/pull/61124) * Dev - dev: add ctrf reporter for e2e tests [#61915](https://github.com/woocommerce/woocommerce/pull/61915) * Dev - dev: update CI config for Blocks e2e tests - WP pre-release job [#61537](https://github.com/woocommerce/woocommerce/pull/61537) * Dev - dev: Update sharding arguments for e2e tests to improve distribution [#61280](https://github.com/woocommerce/woocommerce/pull/61280) * Dev - Don't pass attributes: undefined while registering some blocks [#61945](https://github.com/woocommerce/woocommerce/pull/61945) * Dev - E2E tests: add JUnit report configuration [#61450](https://github.com/woocommerce/woocommerce/pull/61450) * Dev - Efficiency improvements to linter config [#61411](https://github.com/woocommerce/woocommerce/pull/61411) * Dev - Fix: [Flaky Test] can upload the CSV file and import products [#61273](https://github.com/woocommerce/woocommerce/pull/61273) * Dev - Implement skills for Claude [#61811](https://github.com/woocommerce/woocommerce/pull/61811) * Dev - Improve instructions for Claude Code [#61489](https://github.com/woocommerce/woocommerce/pull/61489) * Dev - Migrate usage of wc_enqueue_js() to wp_add_inline_script(). [#61494](https://github.com/woocommerce/woocommerce/pull/61494) * Dev - Move the business logic for v4 endpoints for shipping zones and methods from the global model to a dedicated service. [#61714](https://github.com/woocommerce/woocommerce/pull/61714) * Dev - prevent block settings warnings for checkout areas [#61830](https://github.com/woocommerce/woocommerce/pull/61830) * Dev - Remove notice to downgrade from Product Collection to Products (Beta) block [#61203](https://github.com/woocommerce/woocommerce/pull/61203) * Dev - skip iapi blocks E2E tests with WP 6.7 [#61850](https://github.com/woocommerce/woocommerce/pull/61850) * Dev - Update @automattic/webpack-rtl-plugin version [#59425](https://github.com/woocommerce/woocommerce/pull/59425) * Dev - Update email-editor dependency in WooCommerce composer.json to load the mirrored version [#61181](https://github.com/woocommerce/woocommerce/pull/61181) * Tweak - Angle brackets are now encoded in hex when rendered in a `