WooCommerce Per Product Shipping Version 2.7.6 Changelog
* Fix – Declare class properties explicitly in WC_Shipping_Legacy_Per_Product to resolve PHP 8.2+ deprecated dynamic property warnings.
* Fix – Declare class properties explicitly in WC_Shipping_Legacy_Per_Product to resolve PHP 8.2+ deprecated dynamic property warnings.
* Fix: Launch PayPal compatibility module to disable Smart Pay Buttons on Name Your Price products.
* Fix – `Uncaught TypeError: WeakMap key must be an object` on certain versions of PHP 8.0.x and 8.1.x
* Dev – Update SkyVerge Plugin Framework to 6.1.4
* Fix – Weight based shipping calculations with fractional quantities.
* Fix – Set minimum girth to 1" to prevent 400 errors with small dimensions.
* Tweak – Add a setting to control whether converted prices use locale-specific or global store formatting
* Fix – Fix zero-trimming corrupting converted prices for currencies that use a different decimal separator than the store
* Fix – Add capabilities check to the AWeber account connection redirect to prevent unauthorized actions (CVE-2024-33944)
* Fix – Prevent warranty status from leaking into WooCommerce HPOS orders search, causing "No items found".
* Tweak – Trim whitespaces from postcodes at checkout to minimize AVS postal code mismatch errors in some cases
* Misc – Strip sourcemap comments from minified JS and CSS files in release builds to prevent browser console warnings
* Tweak – Allow selecting which WooCommerce order statuses to sync as sales to Lightspeed POS R-Series (defaults to paid statuses only)
* Tweak – Properly handle the absence of a refresh token in R-Series requests so that merchants are prompted to reconnect and re-authorize the plugin
* Fix – Address some PHP warnings when accessing some setting pages in the R-Series integration
* HPOS compatibility – use order meta methods instead of post meta
* Fix IP address detection to use WC_Geolocation
* Fix external IP lookup to use HTTPS
* Fix missing break in payment error handling (case 2 fall-through)
* Replace deprecated woocommerce_clean() with wc_clean()