Skip to content

Releases: coreshop/CoreShop

3.0.2

20 Nov 07:39
1794d8a
Compare
Choose a tag to compare

Please make sure you also start the messenger worker for the CoreShop Tasks
bin/console messenger:consume coreshop_notification coreshop_index --time-limit=300

Features

Bugs

  • [CartPiceRules] fix OrderItem not finding Order with CartItemPriceRules (#2116)
  • [StorageList] fix storage-list priority (#2113)
  • [ResourceBundle] class names with lower-case names (#2097)
  • [Checkout] introduce Payment Provider Validator to check if the selected one is still valid (#2111)
  • [Unit] fix issues with unit selection in ui (#2104)
  • [CustomerAssignment] Fix typo when passing the company ID to the router (#2102)
  • [CoreBundle] fix cart-item-rule discount action form (#2101)
  • [IndexBundle] fix: index table o_classId type fix (#2095)
  • [Menu] Use correct permission definition for product unit menu item (#2094)

3.0.1

11 Oct 05:48
9670ae1
Compare
Choose a tag to compare

Bugs

  • [Translations] fix order object translations (#2091)
  • [Psalm] fixes (#2089)
  • [CustomerTransformHelper] Use company's name initial as parent folder for companies (#2082)
  • [StorageListBundle] PimcoreStorageListRepository: Comply to PSR-4 autoloading standards (#2081)
  • [ProductVariantTrait] Prevent MySQL syntax error (#2086)
  • [Wishlist] add tests and fix routing (#2084)

3.0.0-beta.3

08 Apr 10:37
db96b57
Compare
Choose a tag to compare

Changes

  • [IndexBundle] fix: generate the correct menu route (#1815)
  • [All] rename document coreshop editables (#1822)
  • [CoreBundle] Fix fetch of checkout_finisher url from request (#1814)
  • [FrontendBundle] Fix "Invoice Address is Shipping Address" in checkout address step (#1823)
  • [CoreBundle] Add address parent check (#1825)
  • [Core] add is_null in isNewEntity for Customer (#1830)
  • [IndexBundle] add boolean filter condition (#1834)
  • [IndexBundle] add clear button for filter preSelect combos (#1833)
  • [OrderBundle] fix session cart subscriber when no session is available (#1836)
  • [OrderBundle] cart context returns latest cart even if multiple found (#1800)
  • [ResourceBundle] fix resource list calling Pimcore Event and CoreShop Event to open object (#1838)
  • [CoreBundle] Fix doctrine type in migration (followup of #1839) (#1840)
  • [List] fix open CoreShop Entry and Pimcore DataObject (#1845)
  • [Cache] optimize Pimcore cache with doctrine entities (#1843)
  • [FrontendBundle] fix: Since symfony/http-kernel 5.1: Referencing controllers with a single colon is deprecated (https://github.com/coreshop/CoreShop/pull/1848/commits)
  • [IndexBundle] Migrate to SettingsStoreAwareInstaller (#1847)
  • [FrontendBundle] Make category sort options configurable (#1850)
  • [Theme] fallback to SettableThemeContext (#1851)
  • [PimcoreBundle] added SluggableSlugger for SluggableListener (#1857)
  • [Pimcore] Definition Updater: check if we should use 'childs' or 'children' (#1858)
  • [Core] address assignment manager should check for null (#1863)
  • [IndexBundle] decimal should be 10,2 (#1862)
  • [IndexBundle] QuantityValue ID's are strings (#1861)
  • [IndexBundle] Add pimcore.dataobject.postAdd event to index DataObjects (#1866)
  • [PaymentBundle] Added payum payment model fields to coreshop payment model (#1854)
  • [Taxation] add taxRate to TaxItemInterface (#1867)
  • [CoreBundle] fix quote notification sending (#1868)
  • [CoreBundle] fix quote notification sending 3.x (#1869)
  • [FrontendBundle] fix createQuoteAction (#1870)
  • [IndexBundle] FIX:double click on field group adds them to indices (#1871)
  • [CoreBundle] fix user-reset password notification sending (#1877)
  • [IndexBundle] FIX: localized fields from brick and fieldcollections can be added to index (#1872)
  • [CurrencyBundle] fix exchange rate saving/deleting (#1879)
  • [PaymentBundle] FIX: coreshop_payment_provider editable select, wrong property name (#1883)
  • [ResourceBundle] Make stack of classes not extended in CoreBundle working (#1882)
  • [IndexBundle] FIX: select from multiselect throws error if no value is pre-selected (#1880)
  • [ThemeBundle] improve loading theme when document cannot be loaded (#1884)
  • [ResourceBundle] fix entity-merger to delete collection entries (#1887)
  • [ProductBundle] fix translations (#1888)
  • [IndexBundle] fixed issue 1891, fix totalCount for pagination (#1892)
  • [UserBundle] Email field required on request reset password form (#1893)
  • [FrontendBundle] Category select template fix (#1890)
  • [IndexBundle] category multiselect (#1899)
  • [IndexBundle] extending condition proccesor adds empty tag (#1900)
  • [OrderBundle] Error during serialization of OrderInvoice (#1903)
  • [CoreBundle] don't load settings if user has no permission (#1902)
  • [NotificationBundle] Fixed invoice, payment, shipment state condition in notifications (#1905)
  • [CoreBundle] Order mail note fix (#1906)
  • [ShippingBundle] Removed free shipping checkbog from carrier (#1910)
  • [FrontendBundle] logo in _header.html.twig no longer hardcoded (#1908)
  • [ProductBundle] duplicated unit definition title in product view in admin (https://github.com/coreshop/CoreShop/pull/1894/files)
  • [OrderBundle] Fix xvfb error (#1911)
  • [FrontendBundle] fix: paginator prev/next links point to first/last page (#1923)
  • [CoreBundle] fix currency conversion (#1889)
  • [FrontendBundle] fix: use only first-level categories in CategoryController::menuAction (#1914)
  • [FrontendBundle] fix configuration for controller names (#1919)
  • [IndexBundle] don't lower-case interpreter types (#1925)
  • [IndexBundle] Category multiselect filter condition (#1909)
  • [PimcoreBundle] make command "coreshop:app:migration:generate" not hidden (#1927)
  • [Installer] mark migrations as migrated in the installer (#1928)
  • [IndexBundle] fix saving quantity values for index conditions ([IndexBundle] fix saving quantity values for index conditions)
  • [IndexBundle] Search filter (#1924)
  • [NotificationBundle] fix reloading of Notification Conditions/Actions (#1930)
  • [Slug] fallback to ID if nameForSlug is null (#1932)
  • [ResourceBundle] fix creating static routes (#1934)
  • [FrontendBundle] Cart update and checkout validation for cart (#1920)
  • [FrontendBundle] fix styling of reset-password-request submit button (#1935)
  • [ProductBundle] fix ProductUnitDefinition unmarshal (#1936)
  • [Routing] fix route name coreshop_cart_create_quote (#1937)
  • [IndexBundle] Search filter dynamic name (#1938)
  • [IndexBundle] Fixed wrong categories returned when concatenator is AND (#1939)
  • [CoreBundle] Profiler fix (#1941)
  • [FrontendBundle] Fix redirect to profile if customer is present (https://github.com/coreshop/CoreShop/pull/1942/files)
  • [MoneyBundle] allow Money to be nullable (#1949)
  • [Pimcore] use min Pimcore 10.3 and fix tests ([Pimcore] use min Pimcore 10.3 and fix tests)
  • [Quotes] introduce simple state machine (#1948)
  • [FrontendBundle] Add submit buttons for voucher submit and form update in cart form (#1950)
  • [NotificationBundle] fix saving multiple emails (#1954)

3.0.0-beta.2

13 Dec 08:39
5b218bf
Compare
Choose a tag to compare

Changes

  • [Order] remove unused CartRepository (#1801)
  • [PimcoreBundle] add coreshop:migration:migrate and coreshop:migration:generate (#1802)
  • [FrontendBundle] fix new form namespace (#1807)
  • [Index] make ListingInterface a Pimcore PaginateListingInterface (#1790)
  • [Cart] fix existing cart initialization on customer login (#1779)
  • [CoreBundle] fix saving stores in PaymentProvider (#1783)
  • [Index] make IndexProcess compatible with the interface (#1782)
  • [User] remove md5 password and use password_hash (#1780)
  • [ThemeBundle] refactor theme-context to work with area-bricks (#1778)
  • [ThemeBundle] remove sylius theme-aware-translator, that doesn't work well with Pimcore (#1777)
  • [ResourceBundle] allow easier custom resources (#1776)
  • [Index] remove dbal connection in AbstractListing (#1769)
  • [Store select / multiselect] Support getOptions() via option provider (#1773)
  • [CoreExtensions] refactor how Doctrine Entities are cloned (#1770)
  • [Faker] use fakerphp/faker (#1768)
  • [CoreBundle] remove duplicate paymentTotal and convertedPaymentTotal from class definition (#1766)
  • [OrderBundle] fix admin en translations (#1764)
  • [All] remove installed translations and use symfony translations instead (#1762)

3.0.0

14 Sep 12:53
0ee44a6
Compare
Choose a tag to compare

🎉 🍻

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)

3.0.0-beta.5

01 Aug 07:30
35cf92a
Compare
Choose a tag to compare
3.0.0-beta.5 Pre-release
Pre-release

This will be the last BETA for the final release.

Bugs

  • [Frontend] fix controller overwriting (#2017)
  • Replaced old Registration Service with Customer Manager (#2020)
  • Update install guide while it is in beta (#2019)
  • [Frontend] fix getQuantityModifier return type (#2024)
  • Fix TagManagerEnhancedEcommerce (#2027)
  • [ProductBundle] fix saving of Price Rule Conditions and Actions when creating (#2029)
  • [FrontendBundle] Consider UrlSlugs in the locale switcher (#2032)
  • [DB] Remove Migrate and ClassUpdate rename and fix psalm issues (#2034)
  • fix: property must not be accessed before initialization (#2036)
  • [MoneyBundle] bugfix unmarshalVersion for coreShopMoney (#2037)
  • [ThemeBundle] add document pre_renderer listener to resolve theme (#2041)
  • [OrderBundle] fix "coreshop_admin_order_find" route (#2045)
  • [Pimcore] add tests for ^10.5 (#2043)
  • [Events] fix pimcore events BC break (#2046)
  • [Tests] test against pimcore ^11.0 (#2047)
  • [CoreBundle] add typecasts for MoneyFormatter in Reports, bugfix SQL (#2048)
  • [MoneyBundle] bugfix marshalVersion for coreShopMoney (#2051)
  • [MoneyBundle] bugfix setter code for FieldCollection (#2052)
  • [CoreBundle] check for null value in CartStockAvailabilityValidator (#2053)

3.0.0-beta.4

09 Jun 13:50
4852624
Compare
Choose a tag to compare
3.0.0-beta.4 Pre-release
Pre-release

Feature

Bugs

  • [Store] add Store Resolver for document save from Pimcore Admin (#1962)
  • [ResourceBundle] add feature to clone resources (#1965)
  • [CartPriceRules] fix cart-price-rules with over 100% discount (#1966)
  • [Tests] re-enable cart tests (#1970)
  • [FrontendBundle] fix: paginator.html.twig prepends four spaces to URLs (#1968)
  • [IndexBundle] fix Argument #2 ($values) must be of type array, string given (#1967)
  • [CoreBundle] use themeHelper to resolve template in StoreMailActionProcessor (#1973)
  • [Condition] fix rules being active even if inactive when having no conditions (#1977)
  • [CoreBundle] Handle null addresses when persisting customers (#1979)
  • [ResourceBundle] fix ResourceSettingsController getConfigAction (#1981)
  • [CoreBundle] fix registered user validator (#1980)
  • [CustomerBundle] fix: wiring non-existing User classes which were migrated to CustomerBundle (#1984)
  • [CoreBundle] Remove duplicate assignment (#1985)
  • [CoreBundle] Fix Typo in notifcation.yml (#1988)
  • [ResourceBundle] Fix grid view for orders/quotes/carts in admin (#1989)
  • [OrderBundle] Fix for order grid configs (#1992)
  • [Taxation] pass context into TaxCalculatorFactory (#1978)
  • [CoreBundle] use TaxationDisplayProvider in CarrierChoiceType (#1994)
  • [CoreBundle] Fix newsletter double opt in mail not sending (#1993)
  • [CoreBundle] added newline before phoneNumber in CountryFixture (#1995)
  • [CoreBundle] fix variant js, added variant select template (#1997)
  • [Checkout] change thank-you to work with token and fix strict samesite cookies (#1999)
  • [Variant] add concrete return type to ui configuration (#1996)
  • [CoreBundle] fix event listeners for variants (#2000)
  • [Rule] use tags for TraceableRuleConditionsValidationProcessor (#2002)
  • [Guest] improve guest checkout to change address or use different one for shipping (#2003)
  • [CoreBundle] use the index for categories to allow fine tuning the menus (#1915)
  • [Pimcore] add dirname() and basename() to expression function provider (#2007)
  • [Product Model] Allow getIndexableName() to return null (#2009)
  • [Doctrine] Use doctrine-extension 3.6.0 (#2012)

3.0.0-beta.1

25 Oct 14:55
af00fc5
Compare
Choose a tag to compare
3.0.0-beta.1 Pre-release
Pre-release

Changes

  • PHP8.0 Return Types (#1288, #1666)
  • Cart eq Order eq Quote - one Object to rule them all (#1289)
  • Strict Types (#1294)
  • make service-aliases deprecated and change all internal uses of it (#1320)
  • change IndexableInterface and pass IndexInterface (#1326)
  • remove php template helpers (#1323)
  • [Panther] Implement ui-tests (#1335, #1347)
  • introduce class translations (#1349)
  • change cart/order base-currency conversion (#1324)
  • Allow to create a new Customer within the order-creation Process (#1236)
  • introduce currency fraction display provider service (#1394)
  • introduce tax-display service (#1393)
  • integration to dachcom-digital/pimcore-seo (#1399)
  • remove usage of ItemKeyTransformer Service and use DataObject\Service directly (#1411)
  • create default address if customer doesn't have one (#1435)
  • apply confirm and pay transition for orders with value of 0 (#1434)
  • resolve theme only if not in admin (#1505)
  • Pimcore X Compatibility (#1511, #1574, #1599, #1621)
  • migrate to sylius/theme-bundle (#1513)
  • implement new JS Routing and start with first backend tests (#1420)
  • some JMS fixes and payum concurrency test (#1550)
  • cleanup proposal stuff and fix serialization of Doctrine collections (#1641)
  • migrate migrations to Doctrine Migrations Bundle (#1635)
  • Feature/customer list (#1667)
  • Fix merge for index-conditions (#1673)
  • fix voucher modifier with empty voucher code (#1672)
  • [ResourceBundle] fix unserialization of CoreShop entities saved by pimcore auto save (#1674)
  • split customer and user into seperate entities (#1669)
  • add proper events for cart-item add and remove (#1676)
  • Introduce a folder creation service which loads the paths directly from the metadata (#1677)
  • Introduce payum payment bundle (#1675)
  • [Slug] default generate slugs and use instead of static routes for product and category (#1678, #1701)
  • [FrontendBundle] Macro "price" is not defined in template (#1684)
  • [SEO - ImageExtractor] Add thumbnail definition coreshop_seo (#1688)
  • [Shipping] Ability to hide carrier from checkout (#1693)
  • [Psalm] Introduce Psaml Tests for Components (#1727)
  • Removed security.yaml, since Pimcore 10, you have to define the security config yourself, (#1599)

2.2.11

13 Dec 06:46
71c89d5
Compare
Choose a tag to compare

Bugs:

  • [CoreExtensions] refactor how Doctrine Entities are cloned (#1770)
  • [Frontend] After renaming formtypes with coreshop[], form elements where not found (#1791)
  • [Checkout] fix new form namespace (#1807)

2.1.7

04 May 08:30
91bc180
Compare
Choose a tag to compare

Bugs: