Bien Nguyen
Feb 5, 2018
  2834
(10 votes)

Planned Breaking Changes in Commerce 2018

We are working on a number of changes in Commerce which are considered breaking since that will change some behaviors and APIs and therefore will be released as a new major version of Commerce.

Here is a short summary of what we are considering, the details will be announced at a later stage:

Improved calculators

The calculators will be re-structured to make them work more efficiently. The tax calculator will calculate only tax values at the lowest level – line item. The tax calculation for shipment, order form, and order group will be moved to corresponding calculator. The default implementations for calculations will be also improved so that it will reduce unnecessary calls to calculators when getting tax values of order entities or getting shipping cost of shipments.

 

Re-worked how to use taxes in Commerce

The current default implementations for calculations is done based on the assumption that prices are excluding tax and tax is added at the end. And if your catalog has prices including taxes (mostly in Europe), you have to re-implement the entire tax calculation or use a third party service. Now, a setting indicating whether prices includes tax will be added on market, and the calculations will take that setting into account.

 

Adding market info on order group for completeness

A saved purchase order or cart should be as complete as possible, without any real need to reference other tables / entities. Currently we only have a reference to the market but that will not be needed anymore, an order group will just have the info what it needs about market, not the whole market entity.

 

Clean Up Previously Deprecated APIs

There are a number of APIs that have been marked as obsolete for a long time, and will now be removed.

The current estimate for this new major version is Q1 2018.

Feb 05, 2018

Comments

Magnus Rahl
Magnus Rahl Feb 5, 2018 03:17 PM

Just a clarification because the question came up last year when I posted a similar note: No, we are not changing the naming scheme so that the new version is going to be called "Commerce 2018". The headline just means release will happen in 2018. It is going to be called Commerce 12 unless something unexpected and urgent requiring a breaking change comes up before these changes are released.

Quan Mai
Quan Mai Feb 5, 2018 07:34 PM

And also this is not a promise that Commerce 12 will be the only major release in 2018. With our velocity I would personally think it's likely to have one more major release in 2018. To move forward and to make nice things, we need to break old things here and there, and in that senses, major releases are inevitable.

Again, another major release in 2018, is not a promise.

We will let you know about our release plan as soon as we have it firmly.

Sebastian Enberget
Sebastian Enberget Feb 6, 2018 10:55 AM

Make sense that this will not be the only major version this year. Personaly I prefer that it is more major releases during a year as a year is quiet long :) But I understand other developers that work with many solutions, while I only work with one solution and decide when to upgrade.

I like what I read about the taxes.. that will most likely simplify some work for me as we are soon going live with entity in US, and the way I did it now is not pretty, but works :) Looking forward to try the new tax calculations!

Quan Mai
Quan Mai Feb 7, 2018 11:34 AM

@Sebastian: Absolutely. We want to have sizeable major releases, not too big, not too small, so with enough new features to be attractive and not too many breaking changes to be scary :) 

Please login to comment.
Latest blogs
Recraft's image generation with AI-Assistant for Optimizely

Recraft V3 model is outperforming all other models in the image generation space and we are happy to share: Recraft's new model is now available fo...

Luc Gosso (MVP) | Nov 8, 2024 | Syndicated blog

ExcludeDeleted(): Prevent Trashed Content from Appearing in Search Results

Introduction In Optimizely CMS, content that is moved to the trash can still appear in search results if it’s not explicitly excluded using the...

Ashish Rasal | Nov 7, 2024

CMS + CMP + Graph integration

We have just released a new package https://nuget.optimizely.com/package/?id=EPiServer.Cms.WelcomeIntegration.Graph which changes the way CMS fetch...

Bartosz Sekula | Nov 5, 2024

Block type selection doesn't work

Imagine you're trying to create a new block in a specific content area. You click the "Create" link, expecting to see a CMS modal with a list of...

Damian Smutek | Nov 4, 2024 | Syndicated blog

.NET 8 FAQ

I have previously written about .NET compatibility in general and .NET 8 in particular, see blog posts here , here and here . With the end of suppo...

Magnus Rahl | Nov 4, 2024

Dynamic packages in Commerce Connect

In Optimizely Commerce Connect, you can group different items using packages and bundles. Package: A package has one or more versions of a product...

K Khan | Nov 1, 2024