* Add the wc_allow_changing_orders_storage_while_sync_is_pending filter
For HPOS the idea is to disallow changing the authoritative data
source for orders (new tables <--> posts table) while there are orders
pending synchronization, since this can lead to data loss. However,
while this was indeed disallowed in the features UI, it was still
possible to manually change the value of the corresponding option
(via "wp option" command); there was code in place to prevent this
(by throwing an exception) but it had been commented out to ease
testing during the development of the feature.
This commit restores that commented out code, so in principle,
trying to change value of the option while there are orders pending
synchronization will throw an exception. BUT a filter is introduced,
wc_allow_changing_orders_storage_while_sync_is_pending, to allow
bypassing this behavior: the filter returns "false" by default, but
if it returns "true", changing the option will never throw an
exception. This is needed for a few of the existing unit tests,
but otherwise it should never be done (and the filter is documented
as such).
Additionally, if the filter returns "true" it will be possible to
change the value of the option in the features UI; but a warning
message will be shown in red if there are orders pending sync.
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix code inadvertently duplicated when merging from trunk.
* Add changefile(s) from automation for the following project(s): woocommerce
* Fixes after manually undoing merge conflicts
* Fix linting issue
* Fix unit tests
* Fixed a bug that allowed changing the authoritative table from wp cli
even with orders pending synchronization
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix some more unit tests
* Delete duplicated changelog file
---------
Co-authored-by: github-actions <github-actions@github.com>
Allow removing postcode and state fields from the shipping calculator, if they're not needed for calculation, even if they're required at the checkout.
Fixes#28393
* Add tests for tax display for the shopper
* Add changelog
* Renamed .spec file
* Fixes for re-testability
* Fix a locator problem
---------
Co-authored-by: Jon Lane <jon.lane@automattic.com>