We are excited to announce that WooCommerce 4.5 is now publicly available! It has been in development since August 2020 and the core has been updated with about 643 commits from 25 contributors.
This is a minor release, which means everything is backward compatible with the previous version.
This release is relatively small compared to recent WooCommerce releases, and is being released with a focus on stability and compatibility. We are currently improving our testing processes based on learnings from recent releases, 4.4 in particular. These changes will allow us to return to our normal release size, and ensure that we are providing a reliable, stable product with each release.
As always, we recommend creating a backup of your site and making sure that themes and plugins are compatible before updating. You can check out this update guide for more information.
What’s new in 4.5?
The WooCommerce 4.5 release contains primarily fixes and improvements.
New onboarding guide
When you first visit your WooCommerce home screen, you’ll now see a guided tour that provides more information about the home screen. (#4890)
This release merges the REST API (#27100), which was previously a separate repository, back into WooCommerce Core. Any issues with the REST API should now be logged to the Core WooCommerce repository.
We have added new filters:
|woocommerce_cart_product_cannot_add_another_message||Filters message about more than 1 product being added to cart.|
|woocommerce_cart_product_out_of_stock_message||Filters message about a product being out of stock.|
|woocommerce_cart_product_not_enough_stock_message||Filters message about a product not having enough stock.|
|woocommerce_file_download_method||Filter download method.|
|woocommerce_query_for_reserved_stock||Allows filtering of the query for getting reserved stock of a product.|
Notable fixes and improvements
There are many fixes and stability improvements in this release, including
- When you have “hide shipping costs until an address is entered”, the shipping cost is now hidden until the complete address is entered. This fixes an issue where previously shipping costs were displayed prior to the complete address being entered. (#27143)
- If you cancel a pending order, coupon holds for that order are now released. This fixes an issue where cancelling a PayPal checkout caused the coupons that were in the cart to become invalid because they were used in a previous canceled order. (#27179)
- When manually creating orders, searches for variations will now fallback to the parent SKU if a child SKU is not specified. (#27171)
- Coupon codes are now always stored with HTML entities encoded. This increases security by ensuring that we don’t store unfiltered input. There is a database migration in place when 4.5 is installed, so this is a non-breaking change. (#27140)
You can find the complete changelog for this release on the changelog.txt file.
We’ve also made some changes to address issues with the filter by attribute widget when used with variable products in this release, but we recognize that it still may not work as expected. We’re tracking the issues with the widget in #27419 and welcome you follow along there as we work toward fixing this in the next release.
This release does not require any core database alteration. However, the 4.3 release did introduce a new table, so if you are upgrading from an earlier release than 4.3, make sure that WordPress user has permission to add a new table to the database.
A re-occurring worker will be scheduled after update to update coupon codes such that HTML entities are properly encoded. This will be done in batches and 10 and is backward compatible.
Minimum WordPress Requirement
While this release does not change the minimum PHP version, it does increase the minimum WordPress version to 5.3. Remember that you can read all about the new WordPress support policy in the developer blog post detailing it.
Much 💜 to all the contributors