Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
🎉 🍻
This it it, the final release of CoreShop 3.0.0. After more than 2 years of development, we finally made it with a final release to Pimcore X. Took a bit longer than we thought, but good things need time.
What are the biggest newest changes
Order DataObject is now Cart and Quote
Conceptually, the Order, Cart and Quote are the same. They hold the same amount of information, they are calculated the same and work the same. So why differentiate the 3? With CoreShop 3 we now see them as one and use them as one. The way to differentiate between them is with a State. The Workflow State Machine can change the Status from Cart to Order or Quote.
Variants
CoreShop never really solved the Variant Selection Problem. Reason was that the concept of Variants can be quite difficult with Pimcore. With CoreShop 3.0 we introduce a simple solution to configure and display Variants in Frontend. Simply use the AttributeGroups and Attributes on your DataObjects and Variants and let CoreShop do the rest.
Tests
CoreShop always used Test Suites to validate itself. From PHPUnit, to BEHAT to PHPSTAN. With this Release, we also have
automated Frontend Tests of CoreShops FrontendBundle. For every Pull Request made, we spin up a Webserver and a Browser that clicks through the Website and tests it. Best part: It uses Behat with Gherkin to describe the test-case in a human readable way.
Alongside that, we do static analysis of the Code with PHPSTAN and now PSALM too. Two is better :)
Pimcore X
As already mentioned, with this 3.0.0 final Release, CoreShop now is compatible with Pimcore X. To be more specific, with Pimcore 10.5.
Wishlist, StorageList
A huge new addition is the persisted Wishlist. A Wishlist works quite similar to a cart. Therefore we decided to refactor the Wishlist and Order to use the same underlying Functionalities and therefore work quite the same.
Order Item Rules
With CoreShop 3.0.0 you can now define Cart Price Rules based on Order Items. That means, you can precisely fine-tune how and on which Items you apply discounts or surcharges on.
License
CoreShop 3.0.0 is now licensed under GPLv2 and CCL (CoreShop Commercial License)