Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
Install
Works with Drupal: 8.xUsing Composer to manage Drupal site dependencies
Alternative installation files
Download commerce-8.x-2.8.tar.gztar.gz
494.74 KB
MD5: 516720a4fc8817c9eb907f5bcc2eada5
SHA-1: 76e5bf799c340af0215ea04126efa2911b78edbc
SHA-256: e66eec5276cad0985a028c1f97854fc04f4a5dfe23bf20411b115ca2051a9446
Download commerce-8.x-2.8.zipzip
1.08 MB
MD5: 4610212b29fdfd46f7852581a49507be
SHA-1: 4313bc3e409081b27e05448803565e39270bb75a
SHA-256: eb7f60cea90d4a9974b137f03edc2552312c5ee4a6cd8d499cff8152721a3955
Release notes
This release has backwards compatibility breaks!
The breaks affect custom promotion offer plugins, tax types, order processors.
Please see the following change records:
https://www.drupal.org/node/2981446
https://www.drupal.org/node/2982334
Contributors (20)
bojanz, andyg5000, caseylau, Dom., mglaman, lisastreeter, MegaChriz, jonnyeom, sagesolutions, edurenye, Hubbs, dev.tim, swickham, istavros, wrany, joachim, Londova, john.lee, Dionsj, zengenuity
Changelog
Issues: 37 issues resolved.
Changes since 8.x-2.7:
Bug
- #2985893 by bojanz: BuyXGetYTest is failing on PHP 5
- #2932690 by andyg5000, bojanz: Explicitly cast the Custom tax type percentage, to avoid crashes when the class is extended but without schema
- #2893367 by bojanz: The Product: Quantity condition doesn't take into account non-combined order items
- #2981941: Tests are still using the deprecated "amount" setting for order_percentage_off offers
- #2897190 by MegaChriz, jonnyeom, bojanz, sagesolutions, edurenye, Hubbs, dev.tim: Tax calculations do not take discounts (promotions) into account
- #2929103 by istavros, bojanz: Promotions have incorrect condition logic when the operator is "OR"
- #2911542 by joachim, mglaman, bojanz: "Add payment" and "Add order" routes need to use _entity_create_any_access, not _entity_create_access
- #2949235 by lisastreeter, bojanz: Bundle entity types (product type, order type, etc) need to support the "view label" access check
- #2915163 by Dionsj, lisastreeter, bojanz: Order Item fields not taken into account when merging
Feature
- #2917418 by bojanz: Add "Product categories" / "Order has product categories" conditions
- #2866003 by caseylau, bojanz, Dom.: Add a "Buy X Get Y" promotion offer
- #2980702 by bojanz: Allow conditions to optionally be aware of the parent entity
- #2982198 by bojanz: Add order-level product/product_type/variation_type conditions
- #2911346 by lisastreeter, mglaman, bojanz: When creating a product type, add option to create new variation type
- #2980205 by bojanz: OrderItem's getAdjustedUnitPrice() and getAdjustedTotalPrice() should support limiting by adjustment type
- #2964719 by zengenuity, bojanz: Introduce PaymentProcess::redirectToStep() to allow for easier overriding
Task
- #2985783 by bojanz: The OrderProduct/OrderItemProduct conditions should save UUIDs instead of IDs to allow exporting
- #2985782: The product category conditions should store UUIDs instead of IDs to allow exporting
- #2980700 by bojanz: Introduce offer conditions
- #2982202 by bojanz: Update promotion offer UX
- #2981944 by bojanz: Re-organize the base offer plugin classes
- #2980195 by mglaman, bojanz: Fixed order offers should reduce each order item
- #2981526 by bojanz: Percentage order offers should make sure that the per-item discounts add up to the expected subtotal one
- #2980713 by bojanz: Switch order item adjustments from per-unit to per-line rounding
- #2981432 by bojanz: Extract the tax-exempt price logic from LocalTaxTypeBase, into TaxOrderProcessor
- #2980694 by bojanz: Replace the Offer radio buttons with a select box
- #2979649 by mglaman, bojanz: The "New" prefix for payment methods is confusing as an end user
- #2980696 by bojanz: Rename conditions to remove the "Limit by" prefix
- #2865701 by swickham, mglaman, edurenye, bojanz: Percentage order offers should reduce each order item
- #2979905 by bojanz: ProductAttributeValue is missing a getAttribute() method
- #2979157 by wrany, bojanz: Autocomplete fields should not be limited by #maxlength
- #2910847 by Londova, bojanz: Give authenticated users the "manage own commerce_payment_method" permission by default
- #2977052 by john.lee: Give authenticated users the "view own commerce_order" permission by default