Download commerce-8.x-2.0-beta7.tar.gztar.gz 385.1 KB
MD5: a527e7961cda3d2f9154e56f9a6c78c9
SHA-1: dc6bf28cb92b66b2f193b2ce5036f1627b10fbbb
SHA-256: cd0ba01898a359e165bf95d3f9d56048dbc00b188e304c49c723a274345ad734
Download commerce-8.x-2.0-beta7.zipzip 862.27 KB
MD5: bb9f9ea5ce77650579fb3198e800743b
SHA-1: 0fef31aac8156d5f279d345e34b2a8377f9533a9
SHA-256: df240c62b64ed542bfd3f6d8a4c28beabe75a80da920b7b59c4cad337b7e37fd

Release info

Created by: bojanz
Created on: 9 May 2017 at 11:43 UTC
Last updated: 12 Jul 2017 at 22:44 UTC
Core compatibility: 8.x
Release type: Bug fixes, New features

Release notes

Major changes:

- The checkout sidebar can now contain panes.
- The checkout complete page is now powered by a Twig template ('commerce-checkout-completion-message.html.twig')

- Major work on promotions:
1) Refactored and simplified API
2) Redesigned UI (listing, add/edit form)
3) Basic compatibility settings (Any promotion / Not with any other promotions)
4) New usage API (track and limit usage per promotion and per coupon)

The redesigned promotion add/edit form. Click to expand.

- Brand new Tax submodule:
1) Supports entering prices with or without tax
2) Supports tax registrations (collect tax from other countries based on a store setting)
3) Remote (allowing for Avalara, Taxamo, etc) and local tax type plugins
4) Custom tax type plugin which allows entering multiple rates and specifying a zone
5) EuropeanUnionVat tax type plugin with predefined rates for all EU countries, and physical VS digital logic.
6) Tax rate resolvers (choose a reduced rate / no rate for specific order items, etc)
This replaces the tax code that was removed before beta1, rewritten for optimal performance and more features.

The Custom tax type. Click to expand.

Changes since 8.x-2.0-beta6:

  • #2876660 by bojanz: The Custom tax type should allow decimal amounts
  • #2874054 part 2: Handle the prices-include-tax and no-applicable-rate scenario
  • #2874054 part 1: Small refactorings of the tax plugins.
  • Go back to requiring a stable version of Profile.
  • #2875060 by bojanz: Incorrect unit price in the non-tax-inclusive price + display-inclusive tax scenario
  • #2874720 by bradjones1: TaxOrderProcessor should respect tax type status flag
  • #2874715 by bradjones1: Code cleanup in phpdoc and function signatures for Tax
  • #2869818 by Dom., mglaman: Checkout progress block does not set current step appropriately when 'go back' link is used (#728)
  • #2873394 by bojanz: Make taxes functional
  • #2872190 by bojanz: Create tax rate resolvers
  • Make payment gateway form extend RenderElement (#724)
  • #2861664 by mglaman: Order assignment should generate a log to mark the customer conversion (#680)
  • #2840683: Re-implement the tax module.
  • #2871924: Rework the promotion end date widget
  • #2763255 by mglaman, bojanz: Implement a nicer discount listing
  • #2831945 by mglaman, bojanz: The payment step is always present in the checkout progress block
  • #2865233: Provide a more precise error message when a malformed product references no stores
  • #2870179 by Dom.: Warning : array_flip(): Can only flip STRING and INTEGER values! on ProductPercentageOff
  • #2867046 by vasike, bojanz: Don't run order processors if the order has no items
  • #2868637 by vasike: AddToCartFormatter not working in Views
  • #2867019 part II: Fix the build instability.
  • issue #2859570 Create a generic entity bundle delete form (#688)
  • #2866419 by vasike, bojanz: Order total summary missing in cart
  • #2871709 part 2: Add support for included adjustments in the UI.
  • #2867789 by mglaman: Cart form and block strip trailing zeros in currency format (#717)
  • #2871709: Add support for included adjustments
  • #2869333 by agoradesign: Move store context from PriceDefaultFormatter to PriceCalculatedFormatter (#713)
  • #2870849 by mglaman: Operator in order total condition is not saved to configuration
  • Convert CommerceElementBase to a trait to work around a bug with value callbacks nested form elements in profile select forms (#721)
  • #2841365 by vasike, bojanz: Require Drupal 8.3.x
  • #2867019 by bojanz: Clean up the integration between coupons and promotions
  • #2863051 by bojanz: Allow the checkout sidebar to contain panes
  • #2862287 by Bojan Živkov, niko-, bojanz: Use a twig template for the CompletionMessage pane
  • Update PaymentCheckoutTest for latest Profile -dev.
  • #2862154 by niko-, mglaman, bojanz: Expose the operator in form of OrderTotalPrice promotion condition
  • #2763245 by bojanz, vasike: Create a custom widget for usage limits
  • #2865705 by mglaman, bojanz: Promotions should operate on orders only
  • #2834339 by sumanthkumarc, vasike, bojanz: [Multicurrency] CurrencyMismatchException when adding products to cart
  • Clean up tests, always create orders with order items.
  • #2860646: The order total doesn't always include order item adjustments (#700)
  • #2865687 by bojanz: Add a helper for extracting entity IDs and labels
  • Fix Currency docblock, buggy CurrencyForm behavior when fraction digits is 0.
  • #2863495 by mglaman: Make the promotion form more friendly
  • #2864882: Missing update hook for the promotion weight field
  • #2864852 by bojanz: Delete usage when a promotion is deleted
  • #2763705 by mglaman, bojanz: Implement a usage API
  • #2862945 by mglaman: Prevent a promotion from applying if other promotions present
  • #2863860 by mglaman: Promotions need a sort order (#696)
  • #2863458 by mglaman, droath: Commerce log throws fatal error when installing without commerce module enabled
  • #2863805 by mglaman: Plugin select widgets show weight field exposed when AJAX, and broken (#693)
  • #2863830 by mglaman: Disabled coupons still apply
  • #2859423 by mglaman, mikeNCM, bmcclure, bojanz: PluginSelect element creates plugin using raw form values for configuration
  • Fix array() usage in LogViewBuilder.
  • #2861663 by mglaman: Activity view only shows 5 logs, and can be out of order


The selected release is the release that will be used for automated testing. Optional projects are only used for testing.