There is a new build number for this release. We reverted using the translation icon for translating attribute names and labels as it caused unexpected translations to appear within the filters compared to the attributes on product records. This build also contains Square saved cards functionality, a fix for broken CMS fields, and a fix to prevent integration jobs importing a significant volume of data from failing with a storage error.
There is a high-risk breaking change for Spire CMS. See below for more information.
The following is a list of the bug fixes and enhancements provided in the March 2023 Release. Some of the bug fixes listed below may address existing Support Articles. A comprehensive list is at the bottom of this page.
March 2023 release highlights
- You can now set the default variant at the product level, rather than at the variant trait level. This feature allows you to set a child product as the default variant, which is useful if you have different variant products with the same variant traits.
- You can now configure Full Width using Site Configurations in the Style Guide
- You can now add code to <head> directly within the Style Guide. You can use this to connect to other products like Web Experimentation.
Important notes/Breaking changes
Optimizely recently discovered that setting the Delete Behavior Action in the job step configuration to Delete Record results in incorrect functionality. Although this issue has existed for an undetermined amount of time, it has been resolved with the March 2023 release. To ensure that our customers and partners are fully aware of this change, please note that the Delete Record option of the Delete Behavior Action setting will now do the following:
If the Action setting has a value of Delete Record and Use Delta Dataset has a value of No, then the job deletes all items for the given dataset from Configured Commerce unless the data import contains the items. You can manage this further with the Run Options Max Deactivation % setting on the job definition, which identifies a limit (%) for the number of deletes and will not delete any if that limit is reached during one run.
High risk breaking changes for Spire:
- Upgraded Typescript from 3.7.1-rc to 4.9.4
- There are several new rules that have been added between these versions. Partners will likely see errors related to these new rules in their build output. These issues will need to be resolved on a case-by-case basis.
- There is a new TypeScript rule that requires targets of the 'delete' operator to be optional. This required changing the logic for 'cleaning' API models in some of the Spire handlers. The TypeScript linter will most likely call these instances out in partner code. Partners should review any places in their code that reference a variable whose logic for a 'delete' operation is changed.
- TypeScript 4.9.4 has new typings for the Google Analytics objects. Any custom Google Analytics implementations might need to be updated.
- TypeScript 4.9.4 removed Internet Explorer types from the global Navigator interface. Since IE is not supported by Configured Commerce, references to those values in base code have been removed.
Low risk breaking changes:
- Moved AdminActionPermissionType into the Insite.Data.Entities namespace after discovering it was not in one. Converted to file scoped namespaces. This is a breaking change that may recover recompiling and adding using statements. It is unlikely that AdminActionPermissionType is used in any Extensions.
- Added new IDeleteProcessor.Execute method, which takes an additional parameter IDictionary<string, string> additionalParameters. This was done to pass the firstTimeDeltaSetJobRun variable from JobPostprocessorFieldMap.
- Got Classic AUI tests running in net6, which were missed when replacing HttpContext stuff with IHttpContextProvider to make it compatible with both net48 and net7.
Partners/Developers: You can view a cumulative list of breaking changes, including Spire breaking changes, at the bottom of this page. (Note the two tabs at the bottom of the spreadsheet: one for cumulative breaking changes, one for Spire breaking changes.)
No changes to note.
- Added the ability to set header, footer, and site content to Full Width using Site Configurations in the Style Guide
- You can now add code to <head> directly within the Style Guide.
- Updated the Minimum Banner Height field in the Banner Widget to be contextual for responsiveness.
- Added Square saved card functionality.
- Added code supporting Beta of Vendor Managed Inventory (VMI).
- Added the ability to set the default variant at the product level.
- Added the Paystand payment gateway.
- Added the Payware payment gateway.
- Added vaulting support for Payeezy Soap API.
- Added the ability to send custom parameters to OpenID identity provider.
- Added the ability for ISC_Implementer roles to enable Elavon 3DSecure settings.
- Improved reliability and performance of the ETag Cache feature.
- Improved application performance when under memory pressure.
- Updated Adyen Drop-in node package module.
- Reverted using the translation icon for translating attribute names and labels as it caused unexpected translations to appear within the filters compared to the attributes on product records.
- Fixed broken CMS fields.
- Fixed an issue where integration jobs importing a significant volume of data would fail with a storage error.
- Fixed an issue with Mobius overrides.
- Fixed an issue where the Avalara connector failed to calculate the correct taxable amount.
- Fixed an issue where Azure Blob Storage did not work as integration storage after the SDK upgrade.
This fix does not include Product Recommendations.
- Fixed an issue with the incorrect URL being generated for Abandoned Cart emails.
- Fixed an issue where the AD Product Refresh would fail when optional files were missing.
- Fixed an issue when importing content under a new category name consisting of the previous parent category name with the character "-" and a child category name between environments in Spire.
- Fixed an issue where product images disappeared when comparing products with at least one 360-degree image in Spire.
- Fixed a filtering issue in Spire that caused the load products API calls to loop indefinitely on the Product List page.
- Fixed console errors with Google Maps.
- Fixed an issue where users would see an empty page when Maintenance Mode was set to "on" and website access was set to "Sign in Required to Browse" in Spire.
- Fixed an issue where the State field would not save after creating a shipping address while checking out as a guest in Spire.
- Fixed an issue where the shipping code would display instead of the shipping description for Order History shipping methods in Spire.
- Fixed an issue where the Windows Integration Service (WIS) would not create an Archive folder or give a warning if the folder did not exist.
- Fixed a NullReference error message in the UpdateCart pipeline when a Punchout order's ShipVia gets overruled in the CalculateShipping pipeline.
- Fixed an issue in Classic where the user was redirected to the parent site when using the content editor of a microsite.
- Fixed an issue where field mapping with the delta dataset would result in double mapping.
- Fixed an issue where the source type Product Title would not display in search results on the Field Translations page.
- Fixed an issue where inline error messages would not clear when visiting a different account.
- Fixed an issue where the Order History page would not display the correct record after selecting a different customer's address on the checkout page.
- Fixed an issue where the Brands page would not scroll down to show the listed brands for a letter.
- Removed the SharedContent option from the AllowedForPageType dropdown while editing Layouts in Spire.
- Fixed an issue where the site would not load completely, preventing the Sign In button from displaying and the site from working as expected.
- Fixed an issue in Classic where unstyled content would briefly appear.
- Fixed an issue where the Auto-Package Builder Inconsistent Round caused an infinite loop.
- Fixed an issue where integration jobs importing a significant volume of data would fail and display a storage error.
Related support articles
Cumulative breaking changes spreadsheet