*** WooCommerce Measurement Price Calculator Changelog ***

2025.06.03 - version 3.23.8
* Fix - "Translations loaded too early" errors
* Misc - Update the SkyVerge Plugin Framework to version 5.15.10
 * Fix - Improve consistency with our usage of precision filters (particularly with Quantity Calculator). This addresses issues where we had hard-coded rounding to 2 decimal places instead of using the filtered amount.

2025.02.03 - version 3.23.7
* Misc - Update the SkyVerge Plugin Framework to version 5.15.0
* Fix - Ensure area and volume fields are not rounded
* Tweak - Introduce `wc_measurement_price_calculator_measurement_precision_for_display` filter to customize precision for front-end display
* Fix - Using "order again" feature could result in incorrect pricing and/or inventory handling
* Fix - Ensure price calculator "Overage" is applied correctly in cart when "Calculated Inventory" is enabled

2024.08.12 - version 3.23.6
* Fix - Avoid "division by zero" fatal errors when adding some items to cart
* Tweak - The number of decimals used when rounding can now be adjusted using the "wc_measurement_price_calculator_measurement_precision" filter (recommended when dealing with very small values)
* Tweak - Update product data lookup table with correct minimum and maximum prices, this ensures MPC products can be accurately sorted by price
* Fix - Ensure prices are displayed correctly when using these settings: prices entered exclusive of tax, prices displayed including tax

2024.08.02 - version 3.23.5
* Fix - Some area/volume values were appearing as `0.00` incorrectly when the value contained decimals.
* Fix - Correctly restore full measurement quantity upon issuing a refund.

2024.07.10 - version 3.23.4
* Fix - Resolve a Pricing Table issue where certain measurement values were unable to be added to the cart
* Fix - Improve handling of non-US currency prices, particularly price per unit calculations for variable products
* Fix - Resolve an issue where customers are unable to manually enter a decimal length when an increment is specified
* Tweak - Ensure measurement values are saved in the database in the same format for both simple and variable products

2024.07.02 - version 3.23.3
* Fix - Resolve an issue with the price calculator not allowing the width to be independently changed.
* Fix - Resolve an issue with products "Sold Individually" unexpectedly having their price changed when updating the quantity of a different item in the same cart

2024.04.22 - version 3.23.2
 * Fix - Resolve an issue with variable products and decimal comma separator where the incorrect default empty values would be saved for variations
 * Fix - Ensure that pricing calculator products are considered in stock when they have a stock quantity greater than 0 but lower than 1
 * Fix - Do not allow user-defined negative input values when accepting free-form customer input

2024.02.22 - version 3.23.1
 * Tweak - Ignore the thousands separator when displaying a large value in the area or volume fields
 * Fix - When saving area or volume, make sure decimal values are properly formatted before saving to the database to avoid floating point issues

2024.02.19 - version 3.23.0
 * Feature - Add support for the cart and checkout blocks
 * Tweak - Properly format measurement values before saving them to the database
 * Fix - Resolve an issue with the decimal separator not being honored in the area and volume fields for product variations
 * Fix - Resolve an issue where the front-end price range for products wasn't calculated properly based on the decimal separator

2024.02.05 - version 3.22.2
 * Fix - Ensure that the pricing table shortcode will not output data for a product that is unpublished or is private

2023.11.17 - version 3.22.1
 * Misc - Add admin notices to help merchants reverting to the cart or checkout shortcodes if the corresponding blocks are used instead

2023.07.11 - version 3.22.0
 * Fix - Resolve a compatibility issue with some third party plugins causing fatal errors when saving product data
 * Fix - Resolve issues with calculations for perimeter and surface area measurements
 * Misc - Add compatibility for WooCommerce High Performance Order Storage (HPOS)

2023.01.12 - version 3.21.1
 * Fix - Compatibility with WC 6.6+ comma decimal separator handling

2022.12.06 - version 3.21.0
 * Misc - Require PHP 7.4 and WordPress 5.6

2022.08.15 - version 3.20.2
 * Fix - Replace deprecated usages of `is_ajax()` in favor of `wp_doing_ajax()`
 * Misc - Require WooCommerce 3.9.4 or newer
 * Dev - Add hooks to allow product data to be filtered before display

2021.09.23 - version 3.20.1
 * Fix - Address some PHP notices when handling measurement products without pricing rules in newer PHP versions
 * Fix - Address an issue where a "rounding necessary" error occurs when adding a product to cart under certain configurations

2021.09.13 - version 3.20.0
 * Fix - Address some floating point math issues by using BigNumber.js and Brick\Math libraries

2021.07.15 - version 3.19.2
 * Tweak - Format available stock number for measurement products with thousands and decimal separators
 * Misc - Remove support for the legacy woo-includes functions

2021.02.17 - version 3.19.1
 * Fix - Address a PHP 8 compatibility issue when adding to cart products without specifying a measurement

2020.12.07 - version 3.19.0
 * Misc - Add compatibility for WooCommerce 4.7
 * Misc - Require PHP 7.0 or newer

2020.11.24 - version 3.18.3
 * Misc - Add PHP 8 support

2020.11.13 - version 3.18.2
 * Fix - Enable "Calculated Inventory" setting only if a variable product has at least one variation with stock management enabled

2020.09.30 - version 3.18.1
 * Misc - Remove the SkyVerge help menu item as part of the plugin assets

2020.08.24 - version 3.18.0
 * Misc - Add SkyVerge help menu for support on WooCommerce.com connected sites

2020.06.02 - version 3.17.5
 * Fix - When using a comma as the decimal separator in a quantity mode calculator, ensure that the actual amount displayed uses the same separator consistently

2020.05.05 - version 3.17.4
 * Misc - Add support for WooCommerce 4.1

2020.03.19 - version 3.17.3
 * Fix - In quantity mode, make sure that when updating the quantity and using a decimal separator other than a period, the updated needed amount retains the intended separator
 * Fix - If multiple amount needed inputs are present while in quantity mode, do not automatically change the amounts needed while adjusting quantity
 * Fix - Prevent the price for Measurement Price Calculator products from appearing without tax when WooCommerce is configured to display prices including tax

2020.03.04 - version 3.17.2
 * Misc - Add support for WooCommerce 4.0

2020.01.02 - version 3.17.1
 * Misc - Add support for WooCommerce 3.9

2019.11.18 - version 3.17.0
 * Fix - Ensure calculated inventory stock is replenished when marking orders as cancelled
 * Misc - Add support for WooCommerce 3.8

2019.10.02 - version 3.16.2
 * Fix - Fix "Editable" product setting checkbox becoming unintentionally editable

2019.09.24 - version 3.16.1
 * Fix - Prevent products with calculated inventories from being incorrectly adjusted in WC 3.6+

2019.09.24 - version 3.16.0
 * Feature - Add minimum price support for variable products

2019.09.11 - version 3.15.1
 * Fix - Update amount needed when quantity is changed

2019.08.08 - version 3.15.0
 * Localization - Edits to ensure the right variables are used in the French translation
 * Misc - Add support for WooCommerce 3.7
 * Misc - Remove support for WooCommerce 2.6
 * Misc - Require PHP 5.6+

2019.06.19 - version 3.14.2
 * Fix - Use core WooCommerce loader function to include settings classes to prevent possible conflicts with some third party plugins
 * Dev - Adds a variation arg to the wc_measurement_price_calculator_measurement_needed_surface_area and wc_measurement_price_calculator_measurement_needed filters

2019.04.16 - version 3.14.1
 * Misc - Add support for WooCommerce 3.6
 * Misc - Require PHP 5.4+

2019.03.06 - version 3.14.0
 * Fix - Remove potential PHP errors by gracefully bailing out on edge cases where product measurement values are null
 * Fix - When ordering again a product, make sure cart price determined from measurements is correct if the originally ordered item is a product variation
 * Fix - Address a JavaScript browser compatibility issue with Microsoft Explorer
 * Dev - Introduce a filter hook to modify the final calculated price for an item with measurements
 * Misc - Drop support for PHP version 5.2: PHP 5.3 becomes the minimum supported version
 * Misc - Update the SkyVerge Plugin Framework to version 5.3

2019.01.15 - version 3.13.7
 * Fix - Fix incorrect price display on the product page for certain measurement values
 * Fix - Don't change the entered measurement needed to the actual amount in quantity mode
 * Fix - Ensure weight attributes are displayed as per-unit after variations are chosen on the product page
 * Fix - Don't replace the amount needed input value with the actual calculated amount when clicking away from the input

2018.10.25 - version 3.13.6
 * Tweak - Show notices in "quantity" mode if customer enters area more than the available stock
 * Fix - Adjust rounding in the price preview on the product page to always match the cart value
 * Fix - Adjust decimal precision in actual amount
 * Fix - Resolve a conflict with the Teams for WooCommerce Memberships extension on the product edit screen
 * Fix - Resolve a conflict with the WooCommerce Quick View extension when non-ajax trigger is selected
 * Misc - Add support for WooCommerce 3.5

2018.07.04 - version 3.13.5
 * Tweak - Improve product front end input validation and add some inline guidance to help customers entering a required measurement value in the expected format
 * Fix - When entering area or volume amounts in the product shipping data, add input field validation to make sure the values entered are in the expected format
 * Fix - In user-defined mode, ensure no console errors are thrown in front end when "Accept a limited set of customer inputs" is selected and with decimals or fractions in the product configuration
 * Fix - In user-defined mode, when "Accept free-form customer input" is selected and a minimum and a maximum values are set, make sure that in front end customers can enter the expected measurement values without an error being thrown upon adding to cart
 * Fix - In quantity-based mode, ensure that the calculated measurement reflects the decimal separator in use
 * Fix - When entering fractions in "Accept a limited set of customer inputs", but the store uses comma as decimal separator, make sure there are no miscalculations in front end when converting those fraction values into floats
 * Dev - Introduce a filter to allow the calculator script to be enqueued when using a product shortcode

2018.05.23 - version 3.13.4
 * Misc - Add support for WooCommerce 3.4

2018.03.15 - version 3.13.3
 * Fix - Round the measurement needed on add to cart validation to match the decimal precision used to round the value on the product page

2018.02.22 - version 3.13.2
 * Fix - Fix an issue with calculated weights for variations which inherit the per unit weight from the parent product

2018.02.13 - version 3.13.1
 * Tweak - Allow multiple decimal places when defining accepted minimum and maximum values for product measurements
 * Fix - Fix support for mixed fractions in measurement options

2018.01.23 - version 3.13.0
 * Misc - Add support for WooCommerce 3.3
 * Misc - Remove support for WooCommerce 2.5

2017.12.20 - version 3.12.9
 * Fix - Ensure product price is re-calculated after reloading the product page
 * Fix - Do not use pricing table ranges to override regular price unless pricing tables are currently in use

2017.12.12 - version 3.12.8
 * Tweak - Use browser decimal separator for number inputs
 * Tweak - Allow the use of a semi-colon to create a set of limited input options for sites where the comma is the decimal separator

2017.11.29 - version 3.12.7
 * Fix - Product page calculated price could use incorrect decimal place placement when rounding in some cases
 * Fix - Variations with measurements enabled hide the sale price "schedule" link

2017.11.22 - version 3.12.6
 * Fix - Ensure restricted inputs in pricing mode work when commas are used as the decimal separator
 * Fix - In some edge cases, product page calculator rounding would not match cart rounding
 * Fix - Ensure calculated price rounding on product page matches the rounding in cart

2017.11.08 - version 3.12.5
 * Tweak - Allow customers to enter measurements using the store's configured "thousands" number separator on product pages
 * Fix - Allow more decimal places when defining accepted increments for product measurements

2017.09.06 - version 3.12.4
 * Tweak - Add additional validation when limiting user-defined measurements for mobile browsers

2017.08.03 - version 3.12.3
 * Fix - In some browsers, when toggling between "Accept free-form customer input" and "Accept a limited set of customer inputs", if some values were entered in the previous fields corresponding to the alternative option, the product could not be saved until the fields were cleared
 * Fix - When a minimum price is set on a Simple Product before switching to a Variable Product, the minimum price setting remains active, but is no longer visible or editable until switching back to Simple Product
 * Fix - Ensure products with sale prices in pricing table are shown when using the `sale_products` shortcode (requires saving again the product from the admin product edit screen)
 * Dev - Added wc_measurement_price_calculator_get_price_html and wc_measurement_price_calculator_settings_rule filters to help plugins like WooCommerce Memberships filtering price rules
 * Localization - Added Italian translation

2017.07.12 - version 3.12.2
 * Fix - "Order Again" functionality includes measurement data in WooCommerce 3.0+
 * Fix - Hardened add to cart validation to ensure pricing table breaks can't be manipulated in the browser

2017.06.27 - version 3.12.1
 * Fix - Fix issue in WooCommerce 3.0+ where an incorrect calculated quantity was added to the cart for calculated inventory/customer-defined measurement products
 * Fix - Ensure products created prior to v3.12 use dropdowns when input options are limited

2017.06.13 - version 3.12.0
 * Feature - Add a percentage overage or cut estimate when accepting customer-defined measurements
 * Feature - Optionally limit customer-defined measurements with minimum value, maximum value, or increment
 * Fix - Ensure "remaining stock" checks do not fail when inventory is being calculated, but remaining inventory is less than 1 (requires WooCommerce 3.1+)
 * Fix - Always persist user inputs if add-to-cart validation fails

2017.05.03 - version 3.11.4
 * Fix - Ensure calculated inventory reduction is correct when using IPN gateways in WooCommerce 3.0+
 * Fix - "Sold Individually" setting respected when "Calculated Inventory" is enabled in WooCommerce 3.0+
 * Fix - Incorrect unit prices for simple products or variations displayed when using quantity-based pricing in WooCommerce 3.0+
 * Fix - Incorrect line item price when using unit price and a remaining stock of "1" in WooCommerce 3.0+
 * Fix - Ensure variations fallback to parent product measurements if not set in quantity-based mode

2017.04.18 - version 3.11.3
 * Fix - Potential timeouts for non-measurement products with certain configurations
 * Fix - PHP notices when inventory is calculated in WooCommerce 3.0+
 * Fix - Product weight missing from "Additional Information" tab when not using measurements

2017.04.12 - version 3.11.2
 * Fix - Show the correct price range when using a pricing table
 * Fix - Calculated inventory only accounted for entered measurement, not quantity in WooCommerce 3.0+

2017.04.04 - version 3.11.1
 * Fix - Errors with simple products that have "calculated price" enabled

2017.03.28 - version 3.11.0
 * Fix - Compatibility error with Min / Max Quantities plugin
 * Fix - Avoid overriding the shop "add to cart" text when measurement products are out of stock
 * Misc - Added support for WooCommerce 3.0
 * Misc - Removed support for WooCommerce 2.4

2017.01.11 - version 3.10.2
 * Fix - PHP notices when a measurement product is back-ordered
 * Fix - PHP 7.1 warning when product sale price is not set
 * Dev - Updated single-product/price-calculator.php and single-product/quantity-calculator.php templates

2016.09.07 - version 3.10.1
 * Tweak - Allow merchants to filter the measurement options select to add additional data to the measurement labels
 * Tweak - Allow plugins to force price calculations to round to the set decimal places
 * Fix - Ensure the quantity input doesn't have a maximum value when calculated inventory is enabled
 * Fix - Fix a rare issue where the calculated total price doesn't display below the calculator
 * Fix - Fix incorrect cart contents weight when using products with the pricing calculator inventory feature enabled
 * Fix - Fix a rounding error which can occur with large quantities
 * Fix - A user's entered measurements for a pricing calculator product will not clear if add-to-cart validation fails with a page refresh
 * Fix - Ensure the pricing calculator displays below the variation description

2016.06.02 - version 3.10.0
 * Misc - Added support for WooCommerce 2.6
 * Misc - Removed support for WooCommerce 2.3

2016.05.18 - version 3.9.1
 * Fix - Improve Google Product Feed compatibility

2016.01.14 - version 3.9.0
 * Misc - Added support for WooCommerce 2.5
 * Misc - Removed support for WooCommerce 2.2

2015.12.14 - version 3.8.1
 * Fix - Fix a PHP warning when backorders are allowed
 * Tweak - Use the maximum pricing rules price in Google Product Feed

2015.11.06 - version 3.8.0
 * Feature - Google Product Feed compatibility
 * Tweak - Display the maximum price per unit in the price rich snippet for pricing calculator products

2015.09.10 - version 3.7.1
 * Fix - Quantity calculator pricing per unit display for variable products in WooCommerce 2.4
 * Fix - Ensure a variation's area and volume are updated when variations are saved via AJAX in WooCommerce 2.4
 * Fix - Ensure a variation's meta is inherited from the parent when not set

2015.07.28 - version 3.7.0
 * Feature - Catalog Visibility Options compatibility
 * Fix - Measurement product pricing now respects the tax display settings :)
 * Fix - Compatibility fix with Dynamic Pricing 2.9.0+
 * Fix - Ensure variation meta is inherited from the parent if not set
 * Fix - Virtual products are allowed again
 * Fix - Compatibility fix with Request a Quote
 * Fix - Allow mixed fractions to be used in measurement options
 * Fix - Fix incorrect cart contents count when using products with the pricing calculator inventory feature enabled
 * Tweak - Use `woocommerce_get_price_html` and `woocommerce_get_variation_price_html` to filter the per-unit price HTML
 * Tweak - Skip saving the `_wc_price_calculator` meta if the measurement type is set to 'None'
 * Tweak - Translatable quantity calculator actual amount label
 * Tweak - Display the weight per unit label on the Additional Information product tab for products with calculated weight enabled
 * Misc - WooCommerce 2.4 Compatibility

2015.02.24 - version 3.6.1
 * Fix - Ensure variation meta is properly saved in WooCommerce 2.3

2015.02.09 - version 3.6.0
 * Misc - WooCommerce 2.3 Compatibility

2015.01.27 - version 3.5.5
 * Fix - Fix stock availability for variable products using pricing rules
 * Fix - Fix a potential rounding issue when using PayPal as a payment gateway
 * Tweak - Introduce `wc_measurement_price_calculator_no_price_available_notice_text` filter

2014.12.03 - version 3.5.4
 * Fix - Fix an error with the price for simple pricing rules products once placed in the cart

2014.12.02 - version 3.5.3
 * Fix - Fix an error with the price for variable pricing rules products once placed in the cart

2014.11.18 - version 3.5.2
 * Tweak - Introduce 'wc_measurement_price_calculator_measurement_needed' filter
 * Tweak - Introduce 'wc_measurement_price_calculator_measurement_dimension' filter
 * Tweak - Introduce 'wc_measurement_price_calculator_measurement_area' filter
 * Tweak - Introduce 'wc_measurement_price_calculator_measurement_perimeter' filter
 * Tweak - Introduce 'wc_measurement_price_calculator_measurement_volume' filter
 * Fix - Display sale badge on pricing rules products

2014.10.07 - version 3.5.1
 * Fix - Fix an error when using variable measurement products

2014.10.06 - version 3.5.0
 * Feature - Surface area calculator
 * Tweak - Support for measurement price calculator pricing products sold individually
 * Tweak - Separate price and pricing label with a slash
 * Fix - Fix an issue with variation measurement meta in WooCommerce 2.2

2014.09.10 - version 3.4.3
 * Fix - Compatibility with Cost of Goods Sold

2014.09.07 - version 3.4.2
 * Misc - WooCommerce 2.2 Compatibility

2014.08.22 - version 3.4.1
* Fix - Fix bug with fractions calculations

2014.08.19 - version 3.4.0
 * Feature - Users can now enter measurements needed in fractions such as "1/4" or "8 1/4"
 * Tweak - Show pricing as a range for better compatibility with rich snippets
 * Tweak - Show price suffix after the pricing label for quantity calculator products
 * Tweak - Frontend measurement label is filterable with wc_measurement_price_calculator_label
 * Fix - Include price suffix for products that use the pricing calculator
 * Fix - Fix price rich snippet for pricing calculator products
 * Fix - Total measurement needed can no longer be altered from the browser

2014.05.27 - version 3.3.3
 * Fix - Error that can occur during WPML translation

2014.04.25 - version 3.3.2
 * Fix - Product variation with pricing table support

2014.02.24 - version 3.3.1
 * Fix - Quantity calculator pricing per unit display for variable products

2014.01.20 - version 3.3
 * Misc - Uses SkyVerge Plugin Framework
 * Misc - WooCommerce 2.1 Compatibility
 * Localization - Changed text domain to woocommerce-measurement-price-calculator and moved languages directory to i18n

2013.12.13 - version 3.2
 * Feature - Perimeter calculator
 * Fix - Improved shipping handling for pricing quantity calculator products
 * Fix - Corrected Volume (LxWxH) calculation for metric units
 * Localization - Fixed text domain

2013.10.18 - version 3.1.3
 * Fix - Allow non-integer stock quantities
 * Fix - Pricing calculator compatibility with WooCommerce Dynamic Pricing plugin
 * Fix - Improved compatbility with WooCommerce Product Addons

2013.09.06 - version 3.1.2
 * Tweak - Improved customizability of the frontend unit label field

2013.07.16 - version 3.1.1
 * Fix - Bug fix on edit product page

2013.07.12 - version 3.1
 * Feature - Pricing calculator product minimum price
 * Tweak - Pricing Calculator Product compatibility with WooCommerce Product Addons 2.0.9+

2013.05.31 - version 3.0.1
 * Tweak - Frontend unit label is filterable with wc_measurement_price_calculator_unit_label
 * Tweak - Measurement unit labels are localized on frontend

2013.05.17 - version 3.0
 * Feature - Fixed values or select dropdowns can be configured for pricing calculator product measurement fields
 * Feature - Price per unit (ie $/sq ft) can be displayed on frontend for quantity calculator products
 * Feature - Customizable pricing calculator products inventory can now be managed "per unit" (requires WC 2.0.4+)
 * Feature - Customizable pricing calculator products weight can now be calculated "per unit"
 * Feature - Pricing table for configuring stepped prices for pricing calculator products
 * Feature - Pricing Calculator Product compatibility with WooCommerce Product Addons
 * Tweak - Total amount displayed on frontend for derived pricing calculator products
 * Tweak - Measurement units are localized on frontend
 * Fix - Improved "order again" support for pricing calculator customizable products (requires WC 2.0.4+)

2013.01.13 - version 2.0
 * Feature - Pricing per unit calculator
 * Feature - Quantity calculator variation support
 * Localization - added German translation by Stephanie Schlieske
 * WC 2.0 compatibility

2012.12.17 - version 1.0.2
 * Fix - cleaned up frontend javascript minor issues
 * Localization - added French translation by Olivier Herzog

2012.12.04 - version 1.0.1
 * New updater

2012.07.09 - version 1.0
 * Initial Release
