Commerce 1.4.0-rc2

We're thrilled to unveil the latest release of Commerce, version 1.4.0-rc2, packed with powerful features, improvements, and bug fixes to elevate your e-commerce experience.

If you missed it, check the announcement for version 1.4.0-rc1 here.

New Features for Enhanced Control:

  • Mail Event Enhancements: Say goodbye to limitations! Now, you can seamlessly set the to/cc/bcc/reply_to address through the Mail event, offering greater flexibility and customization [#1352]. You can now also specify the reply-to address on status change actions and email messages, giving you more control over your email interactions [#1354].
  • Field Flexibility: We understand that sometimes "0" is a valid value. With this release, we've allowed "0" to be a valid entry for required fields. [#1334].
  • Dashboard Convenience: Managing passwords and secrets is now easier with the addition of a view toggle button to password fields, streamlining the user experience [#1336].
  • Snippet Power: The commerce.get_matrix_first_product snippet now supports &toJson and &jsonFields, adding versatility to your product display options [S37086]. (We already added this to the commerce.get_product snippet in 1.4.0-rc1.)

Refinements for a Smoother Experience:

  • Price Precision: To ensure accuracy, we've type-cast prices to integers in the weight-based shipping method, offering a precautionary measure against errors if you manage to enter a non-number. [S37835].
  • Dashboard Enhancements: Typing in grid limit fields now benefits from debouncing, preventing issues and ensuring a smooth user experience. Additionally, selected rows in grids with bulk actions (e.g., orders) are now highlighted for easy tracking [#984, #1369].
  • Payments Upgrade: Stripe users, rejoice! Version-pinning (SDK v12) is now in place, simplifying API version configuration through the dashboard.

Bug Fixes for a Flawless Operation:

  • Financial Value Handling: No more fatal errors when trying to format invalid financial values with $commerce->formatValue(). Instead, you'll receive a user-friendly "[invalid value]" response [S37835].
  • Billing Information to Stripe: Rest assured that users' billing information is now correctly sent to Stripe (even without Customer records) [#1328].
  • Product Bundle Assurance: Product bundles now seamlessly load translations when building the form, ensuring a comprehensive and accurate product display [#1344].

This release announcement was put together from the raw changelog with the assistance of ChatGPT, allowing us to spend more time coding and less time writing. Let us know if you like this style of announcements in the comment below!