New features since 7.x-3.1:
Issue #1380772: Update product display via ajax when add-to-cart form data changes (e.g. attributes).
Issue #1533286: Add support for Variable module to allow translation of checkout messages.
Issue #1553700: Implement add to cart, print invoice and set order status as Views Bulk Operations.
Issue #1566306: Add setter callbacks for product node properties.
Issue #859724: Add help message explaining how to use PayPal in 2Checkout.
Issue #730120: Add dimensions and package quantity fields to Views.
Issue #1060810: Add shippable field and filter to Views.
Issue #1603740: Allow hook_uc_cart_pane_alter() to change weight and enabled values.
Issue #1655398: Add option to notify when bulk changing the order status.
Issue #1380772: Add identifying classes to replaceable product node elements.
Issue #1380772: Set Ajax ID on attribute subform.
Issue #998630: Add support for 2Checkout header redirect method.
Issue #1556368: Allow 'Notify customer when a role is revoked' conditions to check for role being revoked.
Issue #1744998: Add id to order total preview table.
Bug fixes since 7.x-3.1:
Issue #1587336: uc_order depends on uc_product.
Issue #1487268: Fix entity creation callback for orders.
Issue #1621410 by jacksinn: Remove $ from in front of variable_get
Issue #658176: Remove inline CSS.
Issue #1547314: Fix date conversion in test gateway, and improve credit card expiry date tests.
Issue #1626766: Do not show 'added to cart' message for product kits when message option is deselected.
Issue #1250234: Don't log payments when setting reference in Authorize.net.
Issue #1596544: Entity API delete callback has been incorrectly implemented.
Issue #1621742: uc_authorizenet_charge() will decline the transaction if there is more then 2 decimal places.
Issue #1578482: customerShippingAddressId needs to be added to uc_authorizenet CIM payments.
Issue #1532036: Use more of Drupal API while filling store token values.
Issue #1670950: Length format variable used for form #default_value had wrong name.
Issue #1443316: Fatal error: __clone method called on non-object in uc_product\uc_product.module.
Issue #1677394 by reswild, longwave: Query string missing from cart redirect links.
Issue #1559596: Google Checkout Shipping price returned but not included in order or invoice.
Issue #1677876: Trying to get property of non-object in uc_product_kit_update() when adding extra products to a kit.
Issue #1665586: Add __set_state magic method to UcAddress for compatibility with Strongarm.
Followup to issue #1553700 by natuk: Do not redirect when bulk adding multiple items to cart using Views.
Issue #1468156: Remove unnecessary #maxlength on shipment form.
Issue #1626838: Review Order fails with product kit in cart and required fields left empty.
Issue #1706912: Improve validation of quantity fields.
Issue #1482384: Alternate SKU may be displayed incorrectly on the product adjustments tab.
Issue #1707184: Undefined index: recurse_directories in uc_file_admin_files_form_action_submit().
Issue #892876: Fix 2Checkout checksum calculation for live and demo modes.
Issue #834290 by longwave, MegaChriz: Address fields are no longer multilingual variables and cannot be translated.
Issue #1701022: Avoid errors when previewing new product nodes.
Issue #1710350: Notice: Trying to get property of non-object in uc_roles_cron().
Issue #1734838: Product kit should not allow decimal quantities.
Issue #1723796: Add alt attribute to PayPal icons.
Issue #1690466: Add CyberSource transaction request ID to payment data.
Issue #1764964: Strict warning: Creating default object from empty value in uc_shipping_shipment_edit_submit().
Issue #1470012: uc_cybersource.module does not store comment from charge decision.
Issue #1672648: uc_roles_revoke() does not update $account instance.
Followup to issue #305496: Remove legacy hidden fields from shipping quote forms, now uc_quote.js has been removed.
Issue #1776634: Remove unused theme_uc_product_body().
Issue #1772854 by DanZ: Fix function prototype in shipping documentation. Add function comments.
Issue #1772884: Notice: Undefined property: stdClass::$label_image in uc_shipping_order_packages().
Issue #1778176: Reset the notification flag when a role is renewed.
Issue #1776504 by longwave: Fix PDOException when cloning tax rates.
plus numerous other coding standards, test, documentation and other minor fixes.